Details

Time bar (total: 9.4s)

analyze211.0ms (2.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
25%74.9%0.1%7
31.2%68.7%0.1%8
56.2%43.7%0.1%9
60.9%39%0.1%10
76.5%23.4%0.1%11
79.2%20.7%0.1%12
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.6s (17.2%)

Results
1.6s8256×body256valid
0.0msbody256invalid

preprocess74.0ms (0.8%)

Algorithm
egg-herbie
Rules
609×cancel-sign-sub-inv_binary64
398×associate-*l/_binary64
335×associate-*l*_binary64
324×distribute-rgt-out--_binary64
304×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01226
13526
28920
320120
440220
5109620
6520220
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
(/.f64 (-.f64 y x) (*.f64 (*.f64 y 2) x))
Outputs
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
(/.f64 (-.f64 x y) (*.f64 x (*.f64 y 2)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 (-.f64 y x) (*.f64 (*.f64 y 2) x))
(/.f64 (-.f64 y x) (*.f64 x (*.f64 y 2)))
(+.f64 (/.f64 1/2 x) (/.f64 -1/2 y))
(-.f64 (/.f64 -1/2 y) (/.f64 -1/2 x))
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify81.0ms (0.9%)

Algorithm
egg-herbie
Rules
921×fma-neg_binary64
628×times-frac_binary64
467×neg-mul-1_binary64
305×*-commutative_binary64
304×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
25310
312410
425610
554110
6108410
7406810
8790010
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
Outputs
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
(/.f64 (-.f64 x y) (*.f64 x (*.f64 2 y)))
(/.f64 (-.f64 x y) (*.f64 x (*.f64 y 2)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))

eval1.0ms (0%)

Compiler

Compiled 18 to 12 computations (33.3% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Compiler

Compiled 9 to 7 computations (22.2% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Compiler

Compiled 18 to 12 computations (33.3% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
1.0ms
y
@0
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
0.0ms
x
@inf
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
0.0ms
y
@inf
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
0.0ms
x
@-inf
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))

rewrite145.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
709×prod-diff_binary64
570×unpow-prod-down_binary64
410×log-prod_binary64
269×fma-def_binary64
233×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
116810
2251010
Stop Event
node limit
Counts
1 → 152
Calls
Call 1
Inputs
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 -1/2 x) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 -1 (/.f64 -1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 1/4 (*.f64 y y)))) (cbrt.f64 (/.f64 -1/2 y)) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 1/2 (/.f64 1 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (/.f64 1 x) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 x) 1 (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 -1/2 x) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 -1/2 x)) (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (cbrt.f64 (/.f64 -1/2 x)) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 x)) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/2 (/.f64 1 (neg.f64 x)) (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 x) -1/2 (neg.f64 (*.f64 (/.f64 1 (neg.f64 y)) 1/2))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 y))) 1/2 (*.f64 (/.f64 1 (neg.f64 y)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (/.f64 1 x) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (pow.f64 (-.f64 (/.f64 1 x) (/.f64 1 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (/.f64 1 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (pow.f64 (/.f64 1 (*.f64 x y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (pow.f64 (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (pow.f64 (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) 1) (pow.f64 (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 2) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2)) 1/3) (cbrt.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 2) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))) 1/3) (cbrt.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))) 2) 3) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x y) (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2)) (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))) (neg.f64 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3)))) (neg.f64 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y)))) (neg.f64 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y (*.f64 (*.f64 x -2) -1/2)) (*.f64 (*.f64 x -2) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/2 y) (*.f64 (neg.f64 x) -1/2)) (*.f64 (neg.f64 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y -2) (*.f64 (*.f64 x -2) 1)) (*.f64 (*.f64 x -2) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/2 (*.f64 y -2)) (*.f64 (neg.f64 x) 1)) (*.f64 (neg.f64 x) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1/2 (neg.f64 y)) (*.f64 x 1/2)) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 y) (*.f64 (*.f64 x -2) 1/2)) (*.f64 (*.f64 x -2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/2 (neg.f64 y)) (*.f64 (neg.f64 x) 1/2)) (*.f64 (neg.f64 x) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/8 (pow.f64 x -3) (*.f64 1/8 (pow.f64 y -3))) (+.f64 (pow.f64 (*.f64 x -2) -2) (-.f64 (pow.f64 (/.f64 1/2 y) 2) (*.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (pow.f64 (/.f64 1/2 y) 2)) (-.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/2 (*.f64 y -2) (neg.f64 x)) (*.f64 x (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x y) (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2)) (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (exp.f64 (/.f64 -1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 -1/2 x)) (+.f64 1 (expm1.f64 (/.f64 -1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (+.f64 1 (expm1.f64 (/.f64 -1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (exp.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (/.f64 1 (exp.f64 (/.f64 -1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1/2 y)) (exp.f64 (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1/2 y)) (+.f64 1 (expm1.f64 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (/.f64 -1/2 y))) (+.f64 1 (expm1.f64 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 1 x) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 1 x) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (neg.f64 (/.f64 1 y)) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (-.f64 (/.f64 1 x) (/.f64 1 y)) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (-.f64 (/.f64 1 x) (/.f64 1 y)) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (-.f64 (/.f64 1 x) (/.f64 1 y)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (-.f64 (/.f64 1 x) (/.f64 1 y)) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 x) 1 (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 x) 1 (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1 (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1 (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) 1 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 -1/2 x) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 -1/2 x) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y)) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 1/2 y) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) 2) (cbrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 -1/2 x)) (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 -1/2 x)) (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (cbrt.f64 (/.f64 -1/2 x)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x -2) -2)) (cbrt.f64 (/.f64 -1/2 x)) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 -1/2 y)) (neg.f64 (sqrt.f64 (/.f64 -1/2 y))) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (sqrt.f64 (+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 x)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 x)) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 1 y) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 1 (neg.f64 x)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 1 (neg.f64 x)) (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (/.f64 1 (*.f64 x y)) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (/.f64 1 (*.f64 x y)) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (/.f64 1 (*.f64 x y)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) (/.f64 1 (*.f64 x y)) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 -1/8 (pow.f64 x -3)) (*.f64 -1/8 (pow.f64 y -3))) (/.f64 1 (fma.f64 (/.f64 -1/2 y) (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y)) (pow.f64 (*.f64 x -2) -2))) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 x) -1/2 (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 x) -1/2 (*.f64 (/.f64 1/2 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x -2) -2) (/.f64 1/4 (*.f64 y y))) (/.f64 1 (+.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 1/2 y)) (sqrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (/.f64 -1/2 y))) (sqrt.f64 (/.f64 -1/2 y)) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 -1/2 y) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (fma.f64 (/.f64 1/2 y) 1 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (cbrt.f64 (/.f64 1/4 (*.f64 y y))) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (-.f64 (sqrt.f64 (/.f64 -1/2 x)) (sqrt.f64 (/.f64 -1/2 y))) (+.f64 (/.f64 1/2 y) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (/.f64 1/4 (*.f64 y y)))) (cbrt.f64 (/.f64 -1/2 y)) (/.f64 -1/2 x))))))

simplify104.0ms (1.1%)

Algorithm
egg-herbie
Rules
141×fma-def_binary64
102×fma-neg_binary64
46×cancel-sign-sub-inv_binary64
24×sub-neg_binary64
21×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013204
127204
243204
362204
491204
5140204
6229204
7322204
8400204
9513204
10567204
11573204
Stop Event
saturated
Counts
176 → 155
Calls
Call 1
Inputs
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
Outputs
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))

eval142.0ms (1.5%)

Compiler

Compiled 2856 to 2153 computations (24.6% saved)

prune92.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1514155
Fresh000
Picked011
Done000
Total1515156
Error
0.0b
Counts
156 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
6.1b
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
26.8b
(/.f64 1/2 y)
0.7b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
36.6b
(/.f64 -1/2 x)
Compiler

Compiled 48 to 37 computations (22.9% saved)

localize5.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize3.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize17.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x)
5.7b
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
Compiler

Compiled 38 to 25 computations (34.2% saved)

series9.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x)
1.0ms
y
@-inf
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
1.0ms
y
@0
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
1.0ms
y
@inf
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
1.0ms
x
@-inf
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)

rewrite82.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
651×log-prod_binary64
463×fma-def_binary64
298×pow2_binary64
239×fma-neg_binary64
208×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0923
122123
2347019
Stop Event
node limit
Counts
2 → 114
Calls
Call 1
Inputs
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
(/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -1/2 y) (*.f64 y x)) (/.f64 (*.f64 -1/2 x) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -1/2 (/.f64 y x)) y) (/.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (-.f64 y x)) (/.f64 1 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 (/.f64 1 x) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 2) (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (*.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 1/2 (-.f64 y x)) x) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (fma.f64 -1/2 (/.f64 y x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 y) (/.f64 (-.f64 y x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (-.f64 y x) 2))) y) (/.f64 (cbrt.f64 (*.f64 -1/2 (-.f64 y x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) y) (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) 1) (/.f64 (/.f64 1 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 1) (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 1 x) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (sqrt.f64 y)) (/.f64 (/.f64 1 x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y -1/2) (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3) (pow.f64 y 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 -2 (/.f64 x (-.f64 y x))) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y x) (*.f64 -1/2 (-.f64 y x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 -1/2 (/.f64 y x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 -1/2 (/.f64 y x) 1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -1/2 (/.f64 y x)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -1/2 (/.f64 y x) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 (-.f64 y x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 y x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (-.f64 y x)) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/2 (/.f64 y x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (-.f64 y x) 2))) (*.f64 (cbrt.f64 (*.f64 -1/2 (-.f64 y x))) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) (*.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 y x)) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 -1/2 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (/.f64 x (cbrt.f64 x))) (/.f64 (-.f64 y x) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) -2) (/.f64 (*.f64 -1/2 (-.f64 y x)) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (/.f64 (*.f64 -1/2 (-.f64 y x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (-.f64 y x) 2))) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 (-.f64 y x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (-.f64 y x) 2))) (/.f64 x (cbrt.f64 x))) (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) (/.f64 x (cbrt.f64 x))) (/.f64 (sqrt.f64 (*.f64 -1/2 (-.f64 y x))) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (-.f64 y x) 2))) (sqrt.f64 x)) (/.f64 (cbrt.f64 (*.f64 -1/2 (-.f64 y x))) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -2 (/.f64 x (-.f64 y x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 -1/2 (-.f64 y x)) 3) (pow.f64 x 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 -2 (/.f64 x (-.f64 y x))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/2 (/.f64 y x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 -1/2 (-.f64 y x)) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 y x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 y) (/.f64 1 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 (/.f64 y x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 y x))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 y x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 y x))) (sqrt.f64 (*.f64 -1/2 (/.f64 y x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 (/.f64 x (cbrt.f64 x))) (/.f64 y (cbrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) -2) (/.f64 (*.f64 -1/2 y) (cbrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 y (sqrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) (/.f64 (*.f64 -1/2 y) (sqrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 -1/2 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 y) 2)) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 y)) x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 y)) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 y)) x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (/.f64 x (cbrt.f64 x))) (/.f64 -1/2 (cbrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 y) 2)) (/.f64 x (cbrt.f64 x))) (/.f64 (cbrt.f64 (*.f64 -1/2 y)) (cbrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 y)) (/.f64 x (cbrt.f64 x))) (/.f64 (sqrt.f64 (*.f64 -1/2 y)) (cbrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 x)) (/.f64 -1/2 (sqrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 y) 2)) (sqrt.f64 x)) (/.f64 (cbrt.f64 (*.f64 -1/2 y)) (sqrt.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 y)) (sqrt.f64 x)) (/.f64 (sqrt.f64 (*.f64 -1/2 y)) (sqrt.f64 x)) 1/2)))))

simplify160.0ms (1.7%)

Algorithm
egg-herbie
Rules
1364×fma-neg_binary64
613×div-sub_binary64
516×fma-def_binary64
281×associate-/l/_binary64
210×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016372
135372
256372
378372
4121372
5222372
6438372
7682372
8930372
91258372
101499372
112146372
123652372
135054372
145412372
155578372
165640372
175900372
186076372
196080372
Stop Event
saturated
Counts
162 → 122
Calls
Call 1
Inputs
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
Outputs
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(*.f64 -1/2 (/.f64 y x))
(/.f64 (*.f64 -1/2 y) x)
(/.f64 -1/2 (/.f64 x y))
(/.f64 y (/.f64 x -1/2))
(*.f64 y (/.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(*.f64 -1/2 (/.f64 y x))
(/.f64 (*.f64 -1/2 y) x)
(/.f64 -1/2 (/.f64 x y))
(/.f64 y (/.f64 x -1/2))
(*.f64 y (/.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(*.f64 -1/2 (/.f64 y x))
(/.f64 (*.f64 -1/2 y) x)
(/.f64 -1/2 (/.f64 x y))
(/.f64 y (/.f64 x -1/2))
(*.f64 y (/.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(fma.f64 y (/.f64 -1/2 x) 1/2)

localize24.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
0.5b
(pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)
0.6b
(cbrt.f64 (/.f64 1/2 y))
Compiler

Compiled 37 to 28 computations (24.3% saved)

series13.0ms (0.1%)

Counts
3 → 15
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@0
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
2.0ms
y
@inf
(pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)
1.0ms
y
@0
(cbrt.f64 (/.f64 1/2 y))
1.0ms
y
@0
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
1.0ms
y
@0
(pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)

rewrite85.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
522×unpow-prod-down_binary64
430×log-prod_binary64
336×exp-prod_binary64
261×pow2_binary64
259×pow-prod-down_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
123525
2263325
Stop Event
node limit
Counts
3 → 161
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 1/2 y))
(pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 1/2 y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 1/2 y))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 1/2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 y)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 1 (neg.f64 y)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/2) (/.f64 1 (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/2) (pow.f64 (/.f64 1 (cbrt.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1/2 y) 1/6) (pow.f64 (/.f64 1/2 y) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 y)) (cbrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4)))) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 5) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (/.f64 1/2 y) 1/6)) (sqrt.f64 (sqrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (/.f64 1/2 y))) (sqrt.f64 (pow.f64 (/.f64 1/2 y) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4)))) (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (cbrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 5) 1/2) (sqrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4)))) 1) (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) 4) 1/3) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 1/2 y) 5/6) 1/3) (cbrt.f64 (pow.f64 (/.f64 1/2 y) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))) 2) 3) (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 y) (cbrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 -1/2) (cbrt.f64 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 1/2) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 1/2)) (neg.f64 (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 y) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/4 (pow.f64 y -2)) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 y) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 y) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 y)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y 2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cbrt.f64 y) (cbrt.f64 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y))))) (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 1/2 y))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (/.f64 1/2 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 1/2 y))) 1) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 y)) (cbrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (pow.f64 1 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/2) (pow.f64 (*.f64 (/.f64 1 y) (/.f64 1/2 y)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/4) (pow.f64 (/.f64 1 (cbrt.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/4) (pow.f64 (/.f64 1 y) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/4) (pow.f64 (/.f64 1 (neg.f64 y)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/4) (pow.f64 (pow.f64 y -2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1/2 y) 1/6) (sqrt.f64 (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 y)) (pow.f64 (/.f64 1/2 y) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 1/2 y)) (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 5) (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 y) 2/3) (cbrt.f64 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 2/3) (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4))) 2/3) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 5) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) 4) 2/3) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 1/2 y) 5/6) 2/3) (cbrt.f64 (cbrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)) 4) 2) 1/3) (cbrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 2) 3) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 1/4) (pow.f64 (cbrt.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 1/2 y))) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 1/2 y)) (cbrt.f64 1/2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 1/2 y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 1/4 (pow.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 (log.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 y))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 2/3 (log.f64 (/.f64 1/2 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 1) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 y)) 1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 1/2 y))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 1/2 y))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 -1/2 x) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 2) (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) (sqrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 2) 3) (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/2 (neg.f64 x) (*.f64 y 1/2)) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/2 (neg.f64 x) (*.f64 (neg.f64 y) 1/2)) (*.f64 (neg.f64 y) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 x (*.f64 (*.f64 y 2) 1/2)) (*.f64 (*.f64 y 2) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/2 x (*.f64 y -1/2)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/2 x (*.f64 (neg.f64 y) -1/2)) (*.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 (*.f64 y 2) -1/2)) (*.f64 (*.f64 y 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/2 (*.f64 x -2) y) (*.f64 y (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/2 (*.f64 x -2) (*.f64 (neg.f64 y) 1)) (*.f64 (neg.f64 y) (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x -2 (*.f64 (*.f64 y 2) 1)) (*.f64 (*.f64 y 2) (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 1/2 y) 3) (pow.f64 (/.f64 -1/2 x) 3)) (fma.f64 1/4 (pow.f64 y -2) (-.f64 (/.f64 1/4 (*.f64 x x)) (*.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/4 (pow.f64 y -2)) (/.f64 1/4 (*.f64 x x))) (-.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 2)) (cbrt.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))) (sqrt.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 y))) (exp.f64 (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1/2 y)) (+.f64 1 (expm1.f64 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 y))) (+.f64 1 (expm1.f64 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (exp.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 -1/2 x)) (+.f64 1 (expm1.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 x))) (+.f64 1 (expm1.f64 (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))) 1) 1))))))

simplify5.1s (53.9%)

Algorithm
egg-herbie
Rules
1859×sqr-pow_binary64
1858×pow-base-1_binary64
147×fma-def_binary64
95×fma-neg_binary64
41×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
015147
142114
267114
392114
4131114
5199114
6287114
7366114
8432114
9541114
10599114
11609114
12613114
13617114
14621114
15625114
16629114
17633114
18637114
19641114
20645114
21649114
22653114
23657114
24661114
25665114
26669114
27673114
28677114
29681114
30685114
31689114
32693114
33697114
34701114
35705114
36709114
37713114
38717114
39721114
40725114
41729114
42733114
43737114
44741114
45745114
46749114
47753114
48757114
49761114
50765114
51769114
52773114
53777114
54781114
55785114
56789114
57793114
58797114
59801114
60805114
61809114
62813114
63817114
64821114
65825114
66829114
67833114
68837114
69841114
70845114
71849114
72853114
73857114
74861114
75865114
76869114
77873114
78877114
79881114
80885114
81889114
82893114
83897114
84901114
85905114
86909114
87913114
88917114
89921114
90925114
91929114
92933114
93937114
94941114
95945114
96949114
97953114
98957114
99961114
100965114
101969114
102973114
103977114
104981114
105985114
106989114
107993114
108997114
1091001114
1101005114
1111009114
1121013114
1131017114
1141021114
1151025114
1161029114
1171033114
1181037114
1191041114
1201045114
1211049114
1221053114
1231057114
1241061114
1251065114
1261069114
1271073114
1281077114
1291081114
1301085114
1311089114
1321093114
1331097114
1341101114
1351105114
1361109114
1371113114
1381117114
1391121114
1401125114
1411129114
1421133114
1431137114
1441141114
1451145114
1461149114
1471153114
1481157114
1491161114
1501165114
1511169114
1521173114
1531177114
1541181114
1551185114
1561189114
1571193114
1581197114
1591201114
1601205114
1611209114
1621213114
1631217114
1641221114
1651225114
1661229114
1671233114
1681237114
1691241114
1701245114
1711249114
1721253114
1731257114
1741261114
1751265114
1761269114
1771273114
1781277114
1791281114
1801285114
1811289114
1821293114
1831297114
1841301114
1851305114
1861309114
1871313114
1881317114
1891321114
1901325114
1911329114
1921333114
1931337114
1941341114
1951345114
1961349114
1971353114
1981357114
1991361114
2001365114
2011369114
2021373114
2031377114
2041381114
2051385114
2061389114
2071393114
2081397114
2091401114
2101405114
2111409114
2121413114
2131417114
2141421114
2151425114
2161429114
2171433114
2181437114
2191441114
2201445114
2211449114
2221453114
2231457114
2241461114
2251465114
2261469114
2271473114
2281477114
2291481114
2301485114
2311489114
2321493114
2331497114
2341501114
2351505114
2361509114
2371513114
2381517114
2391521114
2401525114
2411529114
2421533114
2431537114
2441541114
2451545114
2461549114
2471553114
2481557114
2491561114
2501565114
2511569114
2521573114
2531577114
2541581114
2551585114
2561589114
2571593114
2581597114
2591601114
2601605114
2611609114
2621613114
2631617114
2641621114
2651625114
2661629114
2671633114
2681637114
2691641114
2701645114
2711649114
2721653114
2731657114
2741661114
2751665114
2761669114
2771673114
2781677114
2791681114
2801685114
2811689114
2821693114
2831697114
2841701114
2851705114
2861709114
2871713114
2881717114
2891721114
2901725114
2911729114
2921733114
2931737114
2941741114
2951745114
2961749114
2971753114
2981757114
2991761114
3001765114
3011769114
3021773114
3031777114
3041781114
3051785114
3061789114
3071793114
3081797114
3091801114
3101805114
3111809114
3121813114
3131817114
3141821114
3151825114
3161829114
3171833114
3181837114
3191841114
3201845114
3211849114
3221853114
3231857114
3241861114
3251865114
3261869114
3271873114
3281877114
3291881114
3301885114
3311889114
3321893114
3331897114
3341901114
3351905114
3361909114
3371913114
3381917114
3391921114
3401925114
3411929114
3421933114
3431937114
3441941114
3451945114
3461949114
3471953114
3481957114
3491961114
3501965114
3511969114
3521973114
3531977114
3541981114
3551985114
3561989114
3571993114
3581997114
3592001114
3602005114
3612009114
3622013114
3632017114
3642021114
3652025114
3662029114
3672033114
3682037114
3692041114
3702045114
3712049114
3722053114
3732057114
3742061114
3752065114
3762069114
3772073114
3782077114
3792081114
3802085114
3812089114
3822093114
3832097114
3842101114
3852105114
3862109114
3872113114
3882117114
3892121114
3902125114
3912129114
3922133114
3932137114
3942141114
3952145114
3962149114
3972153114
3982157114
3992161114
4002165114
4012169114
4022173114
4032177114
4042181114
4052185114
4062189114
4072193114
4082197114
4092201114
4102205114
4112209114
4122213114
4132217114
4142221114
4152225114
4162229114
4172233114
4182237114
4192241114
4202245114
4212249114
4222253114
4232257114
4242261114
4252265114
4262269114
4272273114
4282277114
4292281114
4302285114
4312289114
4322293114
4332297114
4342301114
4352305114
4362309114
4372313114
4382317114
4392321114
4402325114
4412329114
4422333114
4432337114
4442341114
4452345114
4462349114
4472353114
4482357114
4492361114
4502365114
4512369114
4522373114
4532377114
4542381114
4552385114
4562389114
4572393114
4582397114
4592401114
4602405114
4612409114
4622413114
4632417114
4642421114
4652425114
4662429114
4672433114
4682437114
4692441114
4702445114
4712449114
4722453114
4732457114
4742461114
4752465114
4762469114
4772473114
4782477114
4792481114
4802485114
4812489114
4822493114
4832497114
4842501114
4852505114
4862509114
4872513114
4882517114
4892521114
4902525114
4912529114
4922533114
4932537114
4942541114
4952545114
4962549114
4972553114
4982557114
4992561114
5002565114
5012569114
5022573114
5032577114
5042581114
5052585114
5062589114
5072593114
5082597114
5092601114
5102605114
5112609114
5122613114
5132617114
5142621114
5152625114
5162629114
5172633114
5182637114
5192641114
5202645114
5212649114
5222653114
5232657114
5242661114
5252665114
5262669114
5272673114
5282677114
5292681114
5302685114
5312689114
5322693114
5332697114
5342701114
5352705114
5362709114
5372713114
5382717114
5392721114
5402725114
5412729114
5422733114
5432737114
5442741114
5452745114
5462749114
5472753114
5482757114
5492761114
5502765114
5512769114
5522773114
5532777114
5542781114
5552785114
5562789114
5572793114
5582797114
5592801114
5602805114
5612809114
5622813114
5632817114
5642821114
5652825114
5662829114
5672833114
5682837114
5692841114
5702845114
5712849114
5722853114
5732857114
5742861114
5752865114
5762869114
5772873114
5782877114
5792881114
5802885114
5812889114
5822893114
5832897114
5842901114
5852905114
5862909114
5872913114
5882917114
5892921114
5902925114
5912929114
5922933114
5932937114
5942941114
5952945114
5962949114
5972953114
5982957114
5992961114
6002965114
6012969114
6022973114
6032977114
6042981114
6052985114
6062989114
6072993114
6082997114
6093001114
6103005114
6113009114
6123013114
6133017114
6143021114
6153025114
6163029114
6173033114
6183037114
6193041114
6203045114
6213049114
6223053114
6233057114
6243061114
6253065114
6263069114
6273073114
6283077114
6293081114
6303085114
6313089114
6323093114
6333097114
6343101114
6353105114
6363109114
6373113114
6383117114
6393121114
6403125114
6413129114
6423133114
6433137114
6443141114
6453145114
6463149114
6473153114
6483157114
6493161114
6503165114
6513169114
6523173114
6533177114
6543181114
6553185114
6563189114
6573193114
6583197114
6593201114
6603205114
6613209114
6623213114
6633217114
6643221114
6653225114
6663229114
6673233114
6683237114
6693241114
6703245114
6713249114
6723253114
6733257114
6743261114
6753265114
6763269114
6773273114
6783277114
6793281114
6803285114
6813289114
6823293114
6833297114
6843301114
6853305114
6863309114
6873313114
6883317114
6893321114
6903325114
6913329114
6923333114
6933337114
6943341114
6953345114
6963349114
6973353114
6983357114
6993361114
7003365114
7013369114
7023373114
7033377114
7043381114
7053385114
7063389114
7073393114
7083397114
7093401114
7103405114
7113409114
7123413114
7133417114
7143421114
7153425114
7163429114
7173433114
7183437114
7193441114
7203445114
7213449114
7223453114
7233457114
7243461114
7253465114
7263469114
7273473114
7283477114
7293481114
7303485114
7313489114
7323493114
7333497114
7343501114
7353505114
7363509114
7373513114
7383517114
7393521114
7403525114
7413529114
7423533114
7433537114
7443541114
7453545114
7463549114
7473553114
7483557114
7493561114
7503565114
7513569114
7523573114
7533577114
7543581114
7553585114
7563589114
7573593114
7583597114
7593601114
7603605114
7613609114
7623613114
7633617114
7643621114
7653625114
7663629114
7673633114
7683637114
7693641114
7703645114
7713649114
7723653114
7733657114
7743661114
7753665114
7763669114
7773673114
7783677114
7793681114
7803685114
7813689114
7823693114
7833697114
7843701114
7853705114
7863709114
7873713114
7883717114
7893721114
7903725114
7913729114
7923733114
7933737114
7943741114
7953745114
7963749114
7973753114
7983757114
7993761114
8003765114
8013769114
8023773114
8033777114
8043781114
8053785114
8063789114
8073793114
8083797114
8093801114
8103805114
8113809114
8123813114
8133817114
8143821114
8153825114
8163829114
8173833114
8183837114
8193841114
8203845114
8213849114
8223853114
8233857114
8243861114
8253865114
8263869114
8273873114
8283877114
8293881114
8303885114
8313889114
8323893114
8333897114
8343901114
8353905114
8363909114
8373913114
8383917114
8393921114
8403925114
8413929114
8423933114
8433937114
8443941114
8453945114
8463949114
8473953114
8483957114
8493961114
8503965114
8513969114
8523973114
8533977114
8543981114
8553985114
8563989114
8573993114
8583997114
8594001114
8604005114
8614009114
8624013114
8634017114
8644021114
8654025114
8664029114
8674033114
8684037114
8694041114
8704045114
8714049114
8724053114
8734057114
8744061114
8754065114
8764069114
8774073114
8784077114
8794081114
8804085114
8814089114
8824093114
8834097114
8844101114
8854105114
8864109114
8874113114
8884117114
8894121114
8904125114
8914129114
8924133114
8934137114
8944141114
8954145114
8964149114
8974153114
8984157114
8994161114
9004165114
9014169114
9024173114
9034177114
9044181114
9054185114
9064189114
9074193114
9084197114
9094201114
9104205114
9114209114
9124213114
9134217114
9144221114
9154225114
9164229114
9174233114
9184237114
9194241114
9204245114
9214249114
9224253114
9234257114
9244261114
9254265114
9264269114
9274273114
9284277114
9294281114
9304285114
9314289114
9324293114
9334297114
9344301114
9354305114
9364309114
9374313114
9384317114
9394321114
9404325114
9414329114
9424333114
9434337114
9444341114
9454345114
9464349114
9474353114
9484357114
9494361114
9504365114
9514369114
9524373114
9534377114
9544381114
9554385114
9564389114
9574393114
9584397114
9594401114
9604405114
9614409114
9624413114
9634417114
9644421114
9654425114
9664429114
9674433114
9684437114
9694441114
9704445114
9714449114
9724453114
9734457114
9744461114
9754465114
9764469114
9774473114
9784477114
9794481114
9804485114
9814489114
9824493114
9834497114
9844501114
9854505114
9864509114
9874513114
9884517114
9894521114
9904525114
9914529114
9924533114
9934537114
9944541114
9954545114
9964549114
9974553114
9984557114
9994561114
10004565114
10014569114
10024573114
10034577114
10044581114
10054585114
10064589114
10074593114
10084597114
10094601114
10104605114
10114609114
10124613114
10134617114
10144621114
10154625114
10164629114
10174633114
10184637114
10194641114
10204645114
10214649114
10224653114
10234657114
10244661114
10254665114
10264669114
10274673114
10284677114
10294681114
10304685114
10314689114
10324693114
10334697114
10344701114
10354705114
10364709114
10374713114
10384717114
10394721114
10404725114
10414729114
10424733114
10434737114
10444741114
10454745114
10464749114
10474753114
10484757114
10494761114
10504765114
10514769114
10524773114
10534777114
10544781114
10554785114
10564789114
10574793114
10584797114
10594801114
10604805114
10614809114
10624813114
10634817114
10644821114
10654825114
10664829114
10674833114
10684837114
10694841114
10704845114
10714849114
10724853114
10734857114
10744861114
10754865114
10764869114
10774873114
10784877114
10794881114
10804885114
10814889114
10824893114
10834897114
10844901114
10854905114
10864909114
10874913114
10884917114
10894921114
10904925114
10914929114
10924933114
10934937114
10944941114
10954945114
10964949114
10974953114
10984957114
10994961114
11004965114
11014969114
11024973114
11034977114
11044981114
11054985114
11064989114
11074993114
11084997114
11095001114
11105005114
11115009114
11125013114
11135017114
11145021114
11155025114
11165029114
11175033114
11185037114
11195041114
11205045114
11215049114
11225053114
11235057114
11245061114
11255065114
11265069114
11275073114
11285077114
11295081114
11305085114
11315089114
11325093114
11335097114
11345101114
11355105114
11365109114
11375113114
11385117114
11395121114
11405125114
11415129114
11425133114
11435137114
11445141114
11455145114
11465149114
11475153114
11485157114
11495161114
11505165114
11515169114
11525173114
11535177114
11545181114
11555185114
11565189114
11575193114
11585197114
11595201114
11605205114
11615209114
11625213114
11635217114
11645221114
11655225114
11665229114
11675233114
11685237114
11695241114
11705245114
11715249114
11725253114
11735257114
11745261114
11755265114
11765269114
11775273114
11785277114
11795281114
11805285114
11815289114
11825293114
11835297114
11845301114
11855305114
11865309114
11875313114
11885317114
11895321114
11905325114
11915329114
11925333114
11935337114
11945341114
11955345114
11965349114
11975353114
11985357114
11995361114
12005365114
12015369114
12025373114
12035377114
12045381114
12055385114
12065389114
12075393114
12085397114
12095401114
12105405114
12115409114
12125413114
12135417114
12145421114
12155425114
12165429114
12175433114
12185437114
12195441114
12205445114
12215449114
12225453114
12235457114
12245461114
12255465114
12265469114
12275473114
12285477114
12295481114
12305485114
12315489114
12325493114
12335497114
12345501114
12355505114
12365509114
12375513114
12385517114
12395521114
12405525114
12415529114
12425533114
12435537114
12445541114
12455545114
12465549114
12475553114
12485557114
12495561114
12505565114
12515569114
12525573114
12535577114
12545581114
12555585114
12565589114
12575593114
12585597114
12595601114
12605605114
12615609114
12625613114
12635617114
12645621114
12655625114
12665629114
12675633114
12685637114
12695641114
12705645114
12715649114
12725653114
12735657114
12745661114
12755665114
12765669114
12775673114
12785677114
12795681114
12805685114
12815689114
12825693114
12835697114
12845701114
12855705114
12865709114
12875713114
12885717114
12895721114
12905725114
12915729114
12925733114
12935737114
12945741114
12955745114
12965749114
12975753114
12985757114
12995761114
13005765114
13015769114
13025773114
13035777114
13045781114
13055785114
13065789114
13075793114
13085797114
13095801114
13105805114
13115809114
13125813114
13135817114
13145821114
13155825114
13165829114
13175833114
13185837114
13195841114
13205845114
13215849114
13225853114
13235857114
13245861114
13255865114
13265869114
13275873114
13285877114
13295881114
13305885114
13315889114
13325893114
13335897114
13345901114
13355905114
13365909114
13375913114
13385917114
13395921114
13405925114
13415929114
13425933114
13435937114
13445941114
13455945114
13465949114
13475953114
13485957114
13495961114
13505965114
13515969114
13525973114
13535977114
13545981114
13555985114
13565989114
13575993114
13585997114
13596001114
13606005114
13616009114
13626013114
13636017114
13646021114
13656025114
13666029114
13676033114
13686037114
13696041114
13706045114
13716049114
13726053114
13736057114
13746061114
13756065114
13766069114
13776073114
13786077114
13796081114
13806085114
13816089114
13826093114
13836097114
13846101114
13856105114
13866109114
13876113114
13886117114
13896121114
13906125114
13916129114
13926133114
13936137114
13946141114
13956145114
13966149114
13976153114
13986157114
13996161114
14006165114
14016169114
14026173114
14036177114
14046181114
14056185114
14066189114
14076193114
14086197114
14096201114
14106205114
14116209114
14126213114
14136217114
14146221114
14156225114
14166229114
14176233114
14186237114
14196241114
14206245114
14216249114
14226253114
14236257114
14246261114
14256265114
14266269114
14276273114
14286277114
14296281114
14306285114
14316289114
14326293114
14336297114
14346301114
14356305114
14366309114
14376313114
14386317114
14396321114
14406325114
14416329114
14426333114
14436337114
14446341114
14456345114
14466349114
14476353114
14486357114
14496361114
14506365114
14516369114
14526373114
14536377114
14546381114
14556385114
14566389114
14576393114
14586397114
14596401114
14606405114
14616409114
14626413114
14636417114
14646421114
14656425114
14666429114
14676433114
14686437114
14696441114
14706445114
14716449114
14726453114
14736457114
14746461114
14756465114
14766469114
14776473114
14786477114
14796481114
14806485114
14816489114
14826493114
14836497114
14846501114
14856505114
14866509114
14876513114
14886517114
14896521114
14906525114
14916529114
14926533114
14936537114
14946541114
14956545114
14966549114
14976553114
14986557114
14996561114
15006565114
15016569114
15026573114
15036577114
15046581114
15056585114
15066589114
15076593114
15086597114
15096601114
15106605114
15116609114
15126613114
15136617114
15146621114
15156625114
15166629114
15176633114
15186637114
15196641114
15206645114
15216649114
15226653114
15236657114
15246661114
15256665114
15266669114
15276673114
15286677114
15296681114
15306685114
15316689114
15326693114
15336697114
15346701114
15356705114
15366709114
15376713114
15386717114
15396721114
15406725114
15416729114
15426733114
15436737114
15446741114
15456745114
15466749114
15476753114
15486757114
15496761114
15506765114
15516769114
15526773114
15536777114
15546781114
15556785114
15566789114
15576793114
15586797114
15596801114
15606805114
15616809114
15626813114
15636817114
15646821114
15656825114
15666829114
15676833114
15686837114
15696841114
15706845114
15716849114
15726853114
15736857114
15746861114
15756865114
15766869114
15776873114
15786877114
15796881114
15806885114
15816889114
15826893114
15836897114
15846901114
15856905114
15866909114
15876913114
15886917114
15896921114
15906925114
15916929114
15926933114
15936937114
15946941114
15956945114
15966949114
15976953114
15986957114
15996961114
16006965114
16016969114
16026973114
16036977114
16046981114
16056985114
16066989114
16076993114
16086997114
16097001114
16107005114
16117009114
16127013114
16137017114
16147021114
16157025114
16167029114
16177033114
16187037114
16197041114
16207045114
16217049114
16227053114
16237057114
16247061114
16257065114
16267069114
16277073114
16287077114
16297081114
16307085114
16317089114
16327093114
16337097114
16347101114
16357105114
16367109114
16377113114
16387117114
16397121114
16407125114
16417129114
16427133114
16437137114
16447141114
16457145114
16467149114
16477153114
16487157114
16497161114
16507165114
16517169114
16527173114
16537177114
16547181114
16557185114
16567189114
16577193114
16587197114
16597201114
16607205114
16617209114
16627213114
16637217114
16647221114
16657225114
16667229114
16677233114
16687237114
16697241114
16707245114
16717249114
16727253114
16737257114
16747261114
16757265114
16767269114
16777273114
16787277114
16797281114
16807285114
16817289114
16827293114
16837297114
16847301114
16857305114
16867309114
16877313114
16887317114
16897321114
16907325114
16917329114
16927333114
16937337114
16947341114
16957345114
16967349114
16977353114
16987357114
16997361114
17007365114
17017369114
17027373114
17037377114
17047381114
17057385114
17067389114
17077393114
17087397114
17097401114
17107405114
17117409114
17127413114
17137417114
17147421114
17157425114
17167429114
17177433114
17187437114
17197441114
17207445114
17217449114
17227453114
17237457114
17247461114
17257465114
17267469114
17277473114
17287477114
17297481114
17307485114
17317489114
17327493114
17337497114
17347501114
17357505114
17367509114
17377513114
17387517114
17397521114
17407525114
17417529114
17427533114
17437537114
17447541114
17457545114
17467549114
17477553114
17487557114
17497561114
17507565114
17517569114
17527573114
17537577114
17547581114
17557585114
17567589114
17577593114
17587597114
17597601114
17607605114
17617609114
17627613114
17637617114
17647621114
17657625114
17667629114
17677633114
17687637114
17697641114
17707645114
17717649114
17727653114
17737657114
17747661114
17757665114
17767669114
17777673114
17787677114
17797681114
17807685114
17817689114
17827693114
17837697114
17847701114
17857705114
17867709114
17877713114
17887717114
17897721114
17907725114
17917729114
17927733114
17937737114
17947741114
17957745114
17967749114
17977753114
17987757114
17997761114
18007765114
18017769114
18027773114
18037777114
18047781114
18057785114
18067789114
18077793114
18087797114
18097801114
18107805114
18117809114
18127813114
18137817114
18147821114
18157825114
18167829114
18177833114
18187837114
18197841114
18207845114
18217849114
18227853114
18237857114
18247861114
18257865114
18267869114
18277873114
18287877114
18297881114
18307885114
18317889114
18327893114
18337897114
18347901114
18357905114
18367909114
18377913114
18387917114
18397921114
18407925114
18417929114
18427933114
18437937114
18447941114
18457945114
18467949114
18477953114
18487957114
18497961114
18507965114
18517969114
18527973114
18537977114
18547981114
18557985114
18567989114
18577993114
18587997114
Stop Event
node limit
Counts
176 → 166
Calls
Call 1
Inputs
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
Outputs
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y)))
(*.f64 1/2 (/.f64 1 y))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y)))
(*.f64 1/2 (/.f64 1 y))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 1 y))) (*.f64 1/2 (/.f64 1 x)))
(*.f64 1/2 (-.f64 (/.f64 1 y) (/.f64 1 x)))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))

eval135.0ms (1.4%)

Compiler

Compiled 5776 to 4334 computations (25% saved)

prune50.0ms (0.5%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New3492351
Fresh000
Picked011
Done134
Total3506356
Error
0b
Counts
356 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
37.3b
(/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x))) y)
6.1b
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
26.8b
(/.f64 1/2 y)
0.7b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
36.6b
(/.f64 -1/2 x)
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Compiler

Compiled 61 to 45 computations (26.2% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x)))
0.1b
(/.f64 -1/2 (sqrt.f64 x))
0.2b
(/.f64 (-.f64 y x) (sqrt.f64 x))
2.7b
(/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x))) y)
Compiler

Compiled 44 to 15 computations (65.9% saved)

series17.0ms (0.2%)

Counts
4 → 60
Calls

21 calls:

TimeVariablePointExpression
3.0ms
y
@-inf
(/.f64 (-.f64 y x) (sqrt.f64 x))
2.0ms
x
@-inf
(/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x))) y)
1.0ms
x
@-inf
(/.f64 (-.f64 y x) (sqrt.f64 x))
1.0ms
x
@0
(/.f64 (-.f64 y x) (sqrt.f64 x))
1.0ms
x
@inf
(/.f64 (-.f64 y x) (sqrt.f64 x))

rewrite132.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
717×prod-diff_binary64
679×log-prod_binary64
294×log-div_binary64
233×fma-def_binary64
214×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01038
123838
2378038
Stop Event
node limit
Counts
4 → 315
Calls
Call 1
Inputs
(/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x))) y)
(/.f64 (-.f64 y x) (sqrt.f64 x))
(/.f64 -1/2 (sqrt.f64 x))
(*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))) (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 1 (*.f64 (/.f64 y (-.f64 y x)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 x)) (*.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) 2) (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (*.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) (sqrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (*.f64 -1/2 (/.f64 (-.f64 y x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 (sqrt.f64 x)) 1) (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 1) (/.f64 (/.f64 -1/2 (sqrt.f64 x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 (sqrt.f64 x)) y) (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 2) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 (sqrt.f64 x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 -1/2 (sqrt.f64 x)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 (sqrt.f64 x)) (sqrt.f64 y)) (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (sqrt.f64 y)) (/.f64 (/.f64 -1/2 (sqrt.f64 x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y (*.f64 -1/2 (-.f64 y x))) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (*.f64 x y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 -1 (sqrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 x))) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 (neg.f64 (pow.f64 x 1/4)) (pow.f64 x 1/4) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (pow.f64 x 1/4))) (/.f64 (sqrt.f64 x) (pow.f64 x 1/4)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y (sqrt.f64 x)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 x -1/2) x))) (fma.f64 (neg.f64 (pow.f64 x -1/2)) x (*.f64 (pow.f64 x -1/2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2))))) (fma.f64 (neg.f64 (sqrt.f64 (cbrt.f64 x))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (sqrt.f64 (cbrt.f64 x)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (sqrt.f64 x) (pow.f64 1 1/2)))) (fma.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 1 1/2) (*.f64 (sqrt.f64 x) (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 1/2)) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2) (*.f64 (pow.f64 (cbrt.f64 x) 1/2) (pow.f64 (pow.f64 (cbrt.f64 x) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x))) (/.f64 (sqrt.f64 x) 1) (*.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 x)) (/.f64 (sqrt.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (*.f64 (/.f64 (cbrt.f64 x) (sqrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)) (*.f64 (/.f64 (sqrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (sqrt.f64 x) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 x)) (*.f64 (/.f64 x (cbrt.f64 (sqrt.f64 x))) (/.f64 1 (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)) (*.f64 (/.f64 (cbrt.f64 x) (cbrt.f64 (sqrt.f64 x))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 x (pow.f64 x 1/4))) (/.f64 1 (pow.f64 x 1/4)) (*.f64 (/.f64 x (pow.f64 x 1/4)) (/.f64 1 (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)) (*.f64 (/.f64 (cbrt.f64 x) (pow.f64 x 1/4)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 x 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)))) (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 y (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))) (cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 2) x)) (cbrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))) (sqrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 y x)) (/.f64 1 (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 (-.f64 y x) (cbrt.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 (-.f64 y x) (pow.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) 1) (/.f64 (cbrt.f64 (-.f64 y x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 y x)) 1) (/.f64 (sqrt.f64 (-.f64 y x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (cbrt.f64 x)) (cbrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 x)) (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 (-.f64 y x)) (pow.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x) (-.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 y x) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (-.f64 y x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 y (sqrt.f64 x))) (+.f64 1 (expm1.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 y (sqrt.f64 x))) (exp.f64 (neg.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 y (sqrt.f64 x))) (/.f64 1 (exp.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) (sqrt.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (pow.f64 x -1/2) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 y (sqrt.f64 x)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 y (sqrt.f64 x))) (cbrt.f64 (/.f64 y (sqrt.f64 x)))) (cbrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 y (sqrt.f64 x))) (sqrt.f64 (/.f64 y (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 y (cbrt.f64 (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 x 1/4)) (/.f64 y (pow.f64 x 1/4)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 x)) (/.f64 (cbrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 x)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 x 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (/.f64 (sqrt.f64 y) (pow.f64 x 1/4)) (neg.f64 (sqrt.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 -1/2 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x)))) (cbrt.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 -1/2 (sqrt.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 -1/2 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 (sqrt.f64 x))) (cbrt.f64 (/.f64 1/4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 x)) (cbrt.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 -1/2 (sqrt.f64 x))) (sqrt.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 1 (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1/2 (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1/2 (sqrt.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 -1/2 (sqrt.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 -1/2 (sqrt.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 x) -2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 -1/2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 -1/2 (sqrt.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 -1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 -1/2 (sqrt.f64 x))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))) (cbrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 x) (-.f64 y x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (*.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 (sqrt.f64 x) (/.f64 (-.f64 y x) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (sqrt.f64 x) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y x) (*.f64 (*.f64 (sqrt.f64 x) -2) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (*.f64 (sqrt.f64 x) -2) (/.f64 (sqrt.f64 x) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (sqrt.f64 x) (-.f64 y x)) (*.f64 (sqrt.f64 x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (*.f64 -1/2 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 x) (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (*.f64 (neg.f64 (sqrt.f64 x)) (/.f64 (sqrt.f64 x) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (*.f64 (/.f64 (sqrt.f64 x) (-.f64 y x)) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 y x)) (*.f64 (*.f64 (sqrt.f64 x) -2) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1/2 (-.f64 y x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 y x)) 1) (*.f64 (neg.f64 (sqrt.f64 x)) (*.f64 (sqrt.f64 x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 y x)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (neg.f64 (-.f64 y x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 (-.f64 y x))) (*.f64 (neg.f64 (sqrt.f64 x)) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 y x)) -1/2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) 1/2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 y x)) 1/2) (*.f64 (neg.f64 (sqrt.f64 x)) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2)) 1) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2)) (cbrt.f64 x)) (cbrt.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (-.f64 y x) (*.f64 (sqrt.f64 x) -2)) (pow.f64 x 1/4)) (pow.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (-.f64 y x) (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 y x)) (/.f64 -1/2 (sqrt.f64 x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (neg.f64 (-.f64 y x))) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 1/2) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 (sqrt.f64 x)) 3) (pow.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (-.f64 y x) (sqrt.f64 x)) 3) (pow.f64 (/.f64 -1/2 (sqrt.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 1))))))

simplify65.0ms (0.7%)

Algorithm
egg-herbie
Rules
574×associate-/r*_binary64
551×distribute-neg-frac_binary64
372×associate-/l/_binary64
346×fma-def_binary64
337×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040521
198521
2219521
3413521
41114521
54909521
Stop Event
node limit
Counts
375 → 333
Calls
Call 1
Inputs
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(*.f64 -1 (sqrt.f64 x))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(*.f64 y (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(*.f64 y (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(/.f64 -1/2 (pow.f64 (sqrt.f64 -1) 2))
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
Outputs
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) y))))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(*.f64 -1 (sqrt.f64 x))
(neg.f64 (sqrt.f64 x))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (*.f64 -1 (sqrt.f64 x)))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(*.f64 y (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(*.f64 y (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(+.f64 (*.f64 -1 (sqrt.f64 x)) (*.f64 y (sqrt.f64 (/.f64 1 x))))
(fma.f64 y (sqrt.f64 (/.f64 1 x)) (neg.f64 (sqrt.f64 x)))
(-.f64 (*.f64 y (sqrt.f64 (/.f64 1 x))) (sqrt.f64 x))
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(/.f64 -1/2 (pow.f64 (sqrt.f64 -1) 2))
1/2
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
(fma.f64 -1/2 (/.f64 y x) 1/2)
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
(fma.f64 -1/2 (/.f64 y x) 1/2)
(-.f64 (*.f64 1/2 (/.f64 y (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 1/2 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2))))
(fma.f64 -1/2 (/.f64 y x) 1/2)
1/2
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(*.f64 -1/2 (/.f64 y x))
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)
(+.f64 (*.f64 -1/2 (/.f64 y x)) 1/2)
(fma.f64 -1/2 (/.f64 y x) 1/2)

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.7b
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
Compiler

Compiled 29 to 15 computations (48.3% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@0
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
1.0ms
y
@inf
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
1.0ms
y
@-inf
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
1.0ms
x
@0
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
0.0ms
x
@-inf
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)

rewrite77.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
501×log-prod_binary64
387×exp-prod_binary64
274×pow-prod-down_binary64
256×pow2_binary64
179×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
118911
2272211
Stop Event
node limit
Counts
1 → 122
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 -1/2 y))) (sqrt.f64 (/.f64 -1/2 y)) (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (/.f64 (/.f64 y x) y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (*.f64 -1/2 y) x) (/.f64 1 y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) 2) (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 y -1/2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) 1) (/.f64 -1/2 y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) 1) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) 1) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 y x) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 -1/2 (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (sqrt.f64 y)) (/.f64 (/.f64 y x) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (sqrt.f64 y)) (/.f64 -1/2 (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 1 y) -1/2))) (fma.f64 (neg.f64 (/.f64 1 y)) -1/2 (*.f64 (/.f64 1 y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (/.f64 (/.f64 y x) y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (*.f64 -1/2 y) x) (/.f64 1 y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) 2) (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 y -1/2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) 1) (/.f64 -1/2 y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) 1) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) 1) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 y x) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 -1/2 (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (sqrt.f64 y)) (/.f64 (/.f64 y x) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (sqrt.f64 y)) (/.f64 -1/2 (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (/.f64 -1/2 y) 1))) (fma.f64 (neg.f64 (/.f64 -1/2 y)) 1 (*.f64 (/.f64 -1/2 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (/.f64 (/.f64 y x) y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (*.f64 -1/2 y) x) (/.f64 1 y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) 2) (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (cbrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 y -1/2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (sqrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) 1) (/.f64 -1/2 y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) 1) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) 1) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 y x) (cbrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 -1/2 (cbrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 -1/2 (sqrt.f64 y)) (/.f64 (/.f64 y x) (sqrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (/.f64 y x) (sqrt.f64 y)) (/.f64 -1/2 (sqrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 y))) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2) (*.f64 (cbrt.f64 (/.f64 -1/2 y)) (pow.f64 (cbrt.f64 (/.f64 -1/2 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (/.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) (cbrt.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -2)) (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (*.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (*.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (fma.f64 -1/2 (/.f64 y x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 1) (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y -1/2) (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 y x) 1/2)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3) (pow.f64 y 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 2)) (cbrt.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))) (sqrt.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2)) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 y (fma.f64 -1/2 (/.f64 y x) 1/2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (fma.f64 -1/2 (/.f64 y x) 1/2) y)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 (/.f64 y x) y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 -1/2 y) x) (/.f64 1 y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (/.f64 (*.f64 -1/2 y) x) y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) 2) (cbrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (sqrt.f64 (/.f64 (/.f64 (*.f64 -1/2 y) x) y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) -2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (cbrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 y -1/2) (/.f64 (/.f64 (*.f64 -1/2 y) x) (sqrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y x) 1) (/.f64 -1/2 y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) 1) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) 1) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) y) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (/.f64 y x) (cbrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 -1/2 (cbrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (cbrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 (sqrt.f64 y)) (/.f64 (/.f64 y x) (sqrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (/.f64 y x) (sqrt.f64 y)) (/.f64 -1/2 (sqrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (/.f64 (sqrt.f64 (/.f64 (*.f64 -1/2 y) x)) (sqrt.f64 y)) (neg.f64 (/.f64 -1/2 y)))))))

simplify34.0ms (0.4%)

Algorithm
egg-herbie
Rules
141×fma-def_binary64
102×fma-neg_binary64
46×cancel-sign-sub-inv_binary64
24×sub-neg_binary64
21×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013204
127204
243204
362204
491204
5140204
6229204
7322204
8400204
9513204
10567204
11573204
Stop Event
saturated
Counts
146 → 126
Calls
Call 1
Inputs
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
Outputs
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))

eval195.0ms (2.1%)

Compiler

Compiled 13374 to 6838 computations (48.9% saved)

prune65.0ms (0.7%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New4581459
Fresh000
Picked011
Done145
Total4596465
Error
0b
Counts
465 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
7.1b
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)
6.1b
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
26.8b
(/.f64 1/2 y)
0.7b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
36.6b
(/.f64 -1/2 x)
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Compiler

Compiled 60 to 46 computations (23.3% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 y x) x)
0.8b
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3)
5.7b
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)
5.9b
(cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))
Compiler

Compiled 51 to 22 computations (56.9% saved)

series28.0ms (0.3%)

Counts
4 → 72
Calls

24 calls:

TimeVariablePointExpression
4.0ms
y
@0
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3)
3.0ms
x
@inf
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3)
2.0ms
y
@0
(cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))
2.0ms
x
@inf
(cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))
2.0ms
y
@-inf
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)

rewrite93.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
610×log-prod_binary64
495×prod-diff_binary64
298×pow2_binary64
214×fma-def_binary64
209×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01142
125642
2341142
Stop Event
node limit
Counts
4 → 175
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3)
(/.f64 (-.f64 y x) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (cbrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) (cbrt.f64 -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6) (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 -1/2 (-.f64 y x))) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (+.f64 (/.f64 y x) -1) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 y x) -1) (*.f64 -1/2 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (*.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) 2) (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) (sqrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (*.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (/.f64 y x) -1) 1/2) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (/.f64 y x) -1) 1) (/.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1) (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) 1) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1) (/.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (+.f64 (/.f64 y x) -1) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (/.f64 y x) -1) (pow.f64 (cbrt.f64 y) 2)) (/.f64 -1/2 (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 y)) (/.f64 (+.f64 (/.f64 y x) -1) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (/.f64 y x) -1) (sqrt.f64 y)) (/.f64 -1/2 (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (sqrt.f64 y)) (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 x (-.f64 y x)) (/.f64 y -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 3) (pow.f64 y 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (/.f64 x (-.f64 y x)) (/.f64 y -1/2)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 (+.f64 (/.f64 y x) -1) y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (+.f64 (/.f64 y x) -1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (+.f64 (/.f64 y x) -1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (+.f64 (/.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (*.f64 (/.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 y x) -1) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))) (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) 2) (*.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6) (*.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6) (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 y x) -1)) (*.f64 (sqrt.f64 (+.f64 (/.f64 y x) -1)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) (sqrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (-.f64 y x)) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 -1/2) 3) (+.f64 (/.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (pow.f64 (cbrt.f64 x) 2)) (/.f64 (-.f64 y x) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) 2)) (cbrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (sqrt.f64 (+.f64 (/.f64 y x) -1))) (sqrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) 1) (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (cbrt.f64 -1/2)) (cbrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2)) (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6)) (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (*.f64 -1/2 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1/2 (-.f64 y x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (-.f64 y x)) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 y x)) -1/2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (neg.f64 (-.f64 y x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/2) (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (+.f64 (/.f64 y x) -1))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (/.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 y x) -1))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 y x) -1)))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (/.f64 y x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 y x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (/.f64 y x) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 y x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 y x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) (pow.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) 2) (cbrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 y x) -1)) (sqrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 y x)) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) 1) (/.f64 (cbrt.f64 (-.f64 y x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 y x)) 1) (/.f64 (sqrt.f64 (-.f64 y x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 x) 2)) (/.f64 (-.f64 y x) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (sqrt.f64 x)) (/.f64 (cbrt.f64 (-.f64 y x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 y x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 y x) -1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 y x) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (/.f64 y x) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (/.f64 y x) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 x 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 x (-.f64 y x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 y x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (/.f64 y x) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (/.f64 y x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (/.f64 y x) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (/.f64 y x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (/.f64 y x) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (/.f64 1 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 y x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) 2) (cbrt.f64 (/.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 y x)) (sqrt.f64 (/.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 x) 2)) (/.f64 y (cbrt.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 y (sqrt.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (cbrt.f64 y) (cbrt.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 x)) (/.f64 (cbrt.f64 y) (sqrt.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 y) (sqrt.f64 x)) (/.f64 (sqrt.f64 y) (sqrt.f64 x)) -1)))))

simplify81.0ms (0.9%)

Algorithm
egg-herbie
Rules
837×associate-*l/_binary64
716×associate-*r/_binary64
394×distribute-rgt-in_binary64
391×distribute-lft-in_binary64
331×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02632582
19482172
240332042
Stop Event
node limit
Counts
247 → 219
Calls
Call 1
Inputs
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3)))))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))))) (pow.f64 (cbrt.f64 -1) 2))) (+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3))))))
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)))))))
(cbrt.f64 1/2)
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (+.f64 (cbrt.f64 1/2) (*.f64 -1/9 (/.f64 (*.f64 (pow.f64 y 2) (cbrt.f64 1/2)) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))) (pow.f64 x 3))) (+.f64 (cbrt.f64 1/2) (*.f64 -1/9 (/.f64 (*.f64 (pow.f64 y 2) (cbrt.f64 1/2)) (pow.f64 x 2))))))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
1/2
(+.f64 1/2 (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x)))))))))
(+.f64 1/2 (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 1 (pow.f64 x 2))))))) (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1/2)) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))))) (cbrt.f64 -1))) (*.f64 2/27 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 3)))))))))) (pow.f64 y 3)) (+.f64 1/2 (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 1 (pow.f64 x 2))))))) (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x)))))))))))
1/2
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 1/2 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x)))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 1/2 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 2)) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))))))))
(+.f64 (*.f64 1/27 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 1/2 (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 2/27 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 3)) (pow.f64 1 1/3))) (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))))) (cbrt.f64 -1)))))) (pow.f64 x 3)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 (*.f64 1/6 (/.f64 (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 x 3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 3)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))))))))))))
1/2
(+.f64 1/2 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)))
(+.f64 (*.f64 -1/18 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 1/2 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)) (pow.f64 x 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)) (*.f64 1/9 (/.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(+.f64 (*.f64 -1/18 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/27 (pow.f64 y 3)) (+.f64 (*.f64 -1/6 (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))) (+.f64 (*.f64 1/3 (*.f64 y (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)))) (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 -2/27 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/3 (*.f64 (pow.f64 (cbrt.f64 1/2) 2) (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))))))))) (pow.f64 x 3))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)) (pow.f64 x 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)) (*.f64 1/9 (/.f64 (pow.f64 y 2) (pow.f64 x 2))))))))
-1
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
-1
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
-1
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
(-.f64 (/.f64 y x) 1)
Outputs
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))))))
(fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3)))))
(fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 (*.f64 -1/9 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y y)) (*.f64 x x))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 -1/2)))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 -1/2))))))
(+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) y) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))))) (pow.f64 (cbrt.f64 -1) 2))) (+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3))))))
(fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 3)) (fma.f64 -2/9 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (/.f64 1/27 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (pow.f64 (cbrt.f64 -1) 2)) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 (*.f64 -1/9 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y y)) (*.f64 x x))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)))))))
(fma.f64 1/3 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 (pow.f64 y 3) (*.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) -5/27))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 -1/2))))))))
(fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 -1) 2)) (*.f64 (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) -5/27)) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 -1/2)))))))
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))))))
(fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2))))))
(fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (*.f64 (*.f64 -1/9 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y y)) (*.f64 x x))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 -1/2)))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 -1/2))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) y) x))) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))))) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 y 2)) (pow.f64 x 2)))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (+.f64 (*.f64 -2/9 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 x 3))) (*.f64 (*.f64 -1/9 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y y)) (*.f64 x x))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) x) y) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)))) (*.f64 -1/3 (*.f64 (/.f64 (*.f64 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)) -5/27) (pow.f64 x 3)) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 -1) 2)))))))
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 x y)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) (fma.f64 -1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (/.f64 (*.f64 (pow.f64 y 3) -5/27) (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 -1/2)))))))
(cbrt.f64 1/2)
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (cbrt.f64 1/2))
(fma.f64 -1/3 (/.f64 y (/.f64 x (cbrt.f64 1/2))) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (+.f64 (cbrt.f64 1/2) (*.f64 -1/9 (/.f64 (*.f64 (pow.f64 y 2) (cbrt.f64 1/2)) (pow.f64 x 2)))))
(+.f64 (fma.f64 -1/3 (/.f64 y (/.f64 x (cbrt.f64 1/2))) (cbrt.f64 1/2)) (*.f64 -1/9 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 1/2)))))
(fma.f64 -1/3 (/.f64 y (/.f64 x (cbrt.f64 1/2))) (fma.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 1/2)) (cbrt.f64 1/2)))
(+.f64 (*.f64 -1/3 (/.f64 (*.f64 y (cbrt.f64 1/2)) x)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))) (pow.f64 x 3))) (+.f64 (cbrt.f64 1/2) (*.f64 -1/9 (/.f64 (*.f64 (pow.f64 y 2) (cbrt.f64 1/2)) (pow.f64 x 2))))))
(fma.f64 -1/3 (/.f64 y (/.f64 x (cbrt.f64 1/2))) (fma.f64 1/3 (/.f64 (cbrt.f64 1/2) (/.f64 (pow.f64 x 3) (*.f64 (pow.f64 y 3) -5/27))) (+.f64 (cbrt.f64 1/2) (*.f64 -1/9 (/.f64 (*.f64 y y) (/.f64 (*.f64 x x) (cbrt.f64 1/2)))))))
(fma.f64 -1/3 (/.f64 y (/.f64 x (cbrt.f64 1/2))) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 1/2) (pow.f64 x 3)) (*.f64 (pow.f64 y 3) -5/27)) (fma.f64 -1/9 (*.f64 (/.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 1/2)) (cbrt.f64 1/2))))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(/.f64 1/2 y)
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
(-.f64 (*.f64 1/2 (/.f64 1 y)) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (/.f64 1/2 y) (/.f64 1/2 x))
(+.f64 (/.f64 1/2 y) (/.f64 -1/2 x))
1/2
(+.f64 1/2 (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x)))))))))
(+.f64 1/2 (*.f64 y (fma.f64 -1/6 (*.f64 (/.f64 1 x) (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1)))))))))
(fma.f64 y (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3)) (*.f64 -1/6 (/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) x))) 1/2)
(fma.f64 y (fma.f64 (cbrt.f64 -1/2) (*.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 -1)) (cbrt.f64 -1)) (/.f64 x (pow.f64 (cbrt.f64 -1/2) 2))) 2/3) (*.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) (/.f64 -1/6 x))) 1/2)
(+.f64 1/2 (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 1 (pow.f64 x 2))))))) (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))))))))
(+.f64 1/2 (fma.f64 (*.f64 y y) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 -1/9 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))))))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1)))))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) x) (*.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 1 (*.f64 x x)))))) (*.f64 y (fma.f64 -1/6 (*.f64 (/.f64 1 x) (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))))))))))
(+.f64 1/2 (fma.f64 y (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3)) (*.f64 -1/6 (/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) x))) (*.f64 (*.f64 y y) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) -2/9))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3))) (*.f64 1/18 (/.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 x x))))))))
(+.f64 1/2 (*.f64 y (+.f64 (fma.f64 (cbrt.f64 -1/2) (*.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 -1)) (cbrt.f64 -1)) (/.f64 x (pow.f64 (cbrt.f64 -1/2) 2))) 2/3) (*.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) (/.f64 -1/6 x))) (*.f64 (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 -1/9 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (*.f64 (cbrt.f64 (cbrt.f64 -1)) 2/3)))) (*.f64 1/18 (/.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 x x))))) y))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7)) 1/3))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1/2)) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (*.f64 1/27 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))))) (cbrt.f64 -1))) (*.f64 2/27 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 3)))))))))) (pow.f64 y 3)) (+.f64 1/2 (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (+.f64 (*.f64 -1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 2)))))) (cbrt.f64 -1))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x))))) x) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 1 (pow.f64 x 2))))))) (*.f64 y (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 1 x))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3))) (*.f64 1/3 (*.f64 (pow.f64 (*.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x)))))))))))
(fma.f64 (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (/.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 x x) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1)))))))) (fma.f64 1/6 (fma.f64 -2/9 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (/.f64 1/27 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (/.f64 (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 -1/9 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))))))) (/.f64 x (cbrt.f64 -1/2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (fma.f64 -2/3 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (/.f64 (cbrt.f64 -1) (fma.f64 -2/9 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (/.f64 1/27 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))))) (*.f64 2/27 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 3)))))))) (pow.f64 y 3) (+.f64 1/2 (fma.f64 (*.f64 y y) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 -1/9 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))))))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1)))))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)))) x) (*.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 1 (*.f64 x x)))))) (*.f64 y (fma.f64 -1/6 (*.f64 (/.f64 1 x) (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (*.f64 1/3 (+.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1)))))))))))
(fma.f64 (pow.f64 y 3) (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) (/.f64 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3) x))) (fma.f64 (*.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) -5/27) 1/6 (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 -2/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 -1)) (*.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) -5/27)) (*.f64 2/27 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 3))))) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) -2/9)) x) (cbrt.f64 -1/2))))))) (+.f64 1/2 (fma.f64 y (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3)) (*.f64 -1/6 (/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) x))) (*.f64 (*.f64 y y) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 1/9 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)))) -2/9))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (cbrt.f64 (cbrt.f64 -1))) 2/3))) (*.f64 1/18 (/.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 x x)))))))))
(+.f64 (*.f64 y (+.f64 (fma.f64 (cbrt.f64 -1/2) (*.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 -1)) (cbrt.f64 -1)) (/.f64 x (pow.f64 (cbrt.f64 -1/2) 2))) 2/3) (*.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) (/.f64 -1/6 x))) (*.f64 (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 -1/9 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (cbrt.f64 -1/2) x) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (*.f64 (cbrt.f64 (cbrt.f64 -1)) 2/3)))) (*.f64 1/18 (/.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (*.f64 x x))))) y))) (fma.f64 (pow.f64 y 3) (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 7))) (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 x x)) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) x) (*.f64 (cbrt.f64 (cbrt.f64 -1)) 2/3)))) (fma.f64 (/.f64 -5/27 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) 1/6 (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (fma.f64 2/27 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 x 3)) (*.f64 (/.f64 -2/3 (cbrt.f64 -1)) (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) -5/27)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) x) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 -1/9 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 x x)))))))))) 1/2))
1/2
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 1/2 (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x)))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (+.f64 1/2 (*.f64 -1/6 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (fma.f64 (*.f64 -1/6 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4))) (/.f64 y x) 1/2))
(+.f64 1/2 (*.f64 (*.f64 y (/.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) x)) -1/2))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 1/2 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 2)) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (+.f64 1/2 (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (*.f64 -1/6 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x))) (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (fma.f64 -2/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2))) (*.f64 1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2)))))) (*.f64 x x)))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 -1/6 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 x x)) (*.f64 (cbrt.f64 -1) (*.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))))) -1/9))))) (fma.f64 (*.f64 -1/3 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4))) (/.f64 y x) 1/2)))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 -1/6 (*.f64 y (/.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) x)) (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 x x)) (*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 y (*.f64 y (pow.f64 (cbrt.f64 -1/2) 2)))) (cbrt.f64 -1)) -1/9)))) (fma.f64 (*.f64 -1/3 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1)))) (/.f64 y x) 1/2)))
(+.f64 (*.f64 1/27 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))))) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (+.f64 1/2 (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 2/27 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 3)) (pow.f64 1 1/3))) (*.f64 -2/3 (/.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))))) (cbrt.f64 -1)))))) (pow.f64 x 3)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))) (+.f64 (*.f64 1/6 (/.f64 (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 x 3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 y (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 3)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2)) 1/3))) (+.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/9 (*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (pow.f64 y 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 1/18 (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 -1)) 1/3) (/.f64 (pow.f64 y 2) (pow.f64 x 2)))) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (cbrt.f64 -1) 4)) 1/3) (/.f64 y x))))))))))))
(+.f64 (*.f64 1/27 (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3)))) (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (+.f64 1/2 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (fma.f64 2/27 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 (pow.f64 y 3) 1)) (*.f64 -2/3 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (/.f64 (cbrt.f64 -1) (+.f64 (*.f64 -2/9 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))))))))) (pow.f64 x 3))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (fma.f64 1/6 (/.f64 (+.f64 (*.f64 -2/9 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2))) (*.f64 1/27 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)))) (pow.f64 x 3)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) y) (fma.f64 -2/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2))) (*.f64 1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2)))))) (pow.f64 x 3))) (+.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 -1)) (fma.f64 -2/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2))) (*.f64 1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))) (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 -1/2) 2)))))) (*.f64 x x)) (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (*.f64 -1/6 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)))))))))))
(fma.f64 1/27 (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (+.f64 (+.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 x 3)) (*.f64 (cbrt.f64 -1) (fma.f64 -2/3 (*.f64 (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 -1)) (*.f64 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)) -5/27)) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 (pow.f64 y 3) 2/27))))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (fma.f64 1/6 (/.f64 (*.f64 (/.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 -1) 2)) -5/27) (pow.f64 x 3)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (/.f64 (cbrt.f64 -1/2) (/.f64 (/.f64 (pow.f64 x 3) y) (*.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))))) -1/9)))) (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 -1/6 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 -1) 4)) (/.f64 y x)) (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 x x)) (*.f64 (cbrt.f64 -1) (*.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 4))))) -1/9))))))))) (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) 1/2)))
(fma.f64 1/27 (/.f64 (pow.f64 y 3) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 x 3))) (+.f64 (+.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 x 3)) (*.f64 (cbrt.f64 -1) (fma.f64 -2/3 (*.f64 (/.f64 (*.f64 (pow.f64 y 3) -5/27) (pow.f64 (cbrt.f64 -1) 2)) (/.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 -1))) (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (*.f64 (pow.f64 y 3) 2/27))))) (fma.f64 -1/3 (*.f64 y (/.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) x)) (fma.f64 1/6 (/.f64 (/.f64 (*.f64 (pow.f64 y 3) -5/27) (pow.f64 (cbrt.f64 -1) 2)) (pow.f64 x 3)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 x 3)) (*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 y (*.f64 y (pow.f64 (cbrt.f64 -1/2) 2)))) y) -1/9))) (fma.f64 1/18 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 -1/6 (*.f64 y (/.f64 (cbrt.f64 (*.f64 -1 (cbrt.f64 -1))) x)) (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 x x)) (*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 -1 (cbrt.f64 -1)))) (*.f64 y (*.f64 y (pow.f64 (cbrt.f64 -1/2) 2)))) (cbrt.f64 -1)) -1/9)))))))) (fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 -1))) (/.f64 (*.f64 y y) (*.f64 x x))) 1/2)))
1/2
(+.f64 1/2 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)))
(+.f64 1/2 (neg.f64 (/.f64 (*.f64 y 1/2) x)))
(-.f64 1/2 (/.f64 y (/.f64 x 1/2)))
(+.f64 1/2 (/.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 -1/18 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 1/2 (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)) (pow.f64 x 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)) (*.f64 1/9 (/.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1/18 (/.f64 (*.f64 y y) (*.f64 x x)) (+.f64 1/2 (+.f64 (/.f64 (*.f64 (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 1/2) 2)) -1/9) (/.f64 (*.f64 x x) (cbrt.f64 1/2))) (fma.f64 -1 (/.f64 (*.f64 y 1/2) x) (*.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x)))))))
(+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 y y) (*.f64 x x)) -1/18 1/2) (-.f64 (*.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 y (/.f64 x 1/2)))) (*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 1/2) 2) (*.f64 (*.f64 y y) -1/9)) (*.f64 x x)) (cbrt.f64 1/2)))
(+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 y y) (*.f64 x x)) -1/18 1/2) (fma.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (*.f64 -1/2 y) x))) (*.f64 (/.f64 (cbrt.f64 1/2) (*.f64 x x)) (*.f64 (*.f64 y y) (*.f64 (pow.f64 (cbrt.f64 1/2) 2) -1/9))))
(+.f64 (*.f64 -1/18 (/.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/27 (pow.f64 y 3)) (+.f64 (*.f64 -1/6 (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))) (+.f64 (*.f64 1/3 (*.f64 y (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)))) (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 -2/27 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/3 (*.f64 (pow.f64 (cbrt.f64 1/2) 2) (+.f64 (*.f64 1/27 (pow.f64 y 3)) (*.f64 -2/9 (pow.f64 y 3)))))))))) (pow.f64 x 3))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2))) (*.f64 -2/9 (*.f64 (pow.f64 y 2) (pow.f64 (cbrt.f64 1/2) 2)))) (cbrt.f64 1/2)) (pow.f64 x 2)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/6 y) (*.f64 1/3 y)) x)) (*.f64 1/9 (/.f64 (pow.f64 y 2) (pow.f64 x 2))))))))
(fma.f64 -1/18 (/.f64 (*.f64 y y) (*.f64 x x)) (+.f64 1/2 (fma.f64 -1 (/.f64 (fma.f64 -1/27 (pow.f64 y 3) (fma.f64 -1/6 (*.f64 (pow.f64 y 3) -5/27) (fma.f64 1/3 (*.f64 y (*.f64 (cbrt.f64 1/2) (*.f64 (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 1/2) 2)) -1/9))) (*.f64 (cbrt.f64 1/2) (fma.f64 -2/27 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2)) (*.f64 -2/3 (*.f64 (*.f64 (pow.f64 y 3) -5/27) (pow.f64 (cbrt.f64 1/2) 2)))))))) (pow.f64 x 3)) (+.f64 (/.f64 (*.f64 (*.f64 (*.f64 y y) (pow.f64 (cbrt.f64 1/2) 2)) -1/9) (/.f64 (*.f64 x x) (cbrt.f64 1/2))) (fma.f64 -1 (/.f64 (*.f64 y 1/2) x) (*.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x))))))))
(+.f64 (-.f64 (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 1/2) 2) (*.f64 (*.f64 y y) -1/9)) (*.f64 x x)) (cbrt.f64 1/2)) (-.f64 (*.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 y (/.f64 x 1/2)))) (/.f64 (+.f64 (fma.f64 1/3 (*.f64 (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2)) -1/9)) (*.f64 (cbrt.f64 1/2) (fma.f64 -2/27 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2)) (*.f64 -2/3 (*.f64 (*.f64 (pow.f64 y 3) -5/27) (pow.f64 (cbrt.f64 1/2) 2)))))) (fma.f64 (pow.f64 y 3) -1/27 (*.f64 (pow.f64 y 3) 5/162))) (pow.f64 x 3))) (fma.f64 (/.f64 (*.f64 y y) (*.f64 x x)) -1/18 1/2))
(+.f64 (+.f64 (*.f64 (/.f64 (cbrt.f64 1/2) (*.f64 x x)) (*.f64 (*.f64 y y) (*.f64 (pow.f64 (cbrt.f64 1/2) 2) -1/9))) (-.f64 (fma.f64 1/9 (/.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (*.f64 -1/2 y) x)) (/.f64 (+.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (cbrt.f64 1/2) 2)) -1/9)) (*.f64 (pow.f64 (cbrt.f64 1/2) 2) (+.f64 (*.f64 (pow.f64 y 3) -2/27) (*.f64 (*.f64 (pow.f64 y 3) -5/27) -2/3))))) (*.f64 (pow.f64 y 3) -1/162)) (pow.f64 x 3)))) (fma.f64 (/.f64 (*.f64 y y) (*.f64 x x)) -1/18 1/2))
-1
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(/.f64 y x)
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
-1
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
-1
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))
(-.f64 (/.f64 y x) 1)
(+.f64 (/.f64 y x) -1)
(+.f64 -1 (/.f64 y x))

eval126.0ms (1.3%)

Compiler

Compiled 5780 to 4356 computations (24.6% saved)

prune31.0ms (0.3%)

Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New2190219
Fresh000
Picked011
Done055
Total2196225
Error
0b
Counts
225 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
7.1b
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)
6.1b
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
26.8b
(/.f64 1/2 y)
0.7b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
36.6b
(/.f64 -1/2 x)
0.0b
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Compiler

Compiled 60 to 46 computations (23.3% saved)

regimes20.0ms (0.2%)

Counts
9 → 1
Calls
Call 1
Inputs
(/.f64 1/2 y)
(/.f64 -1/2 x)
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(/.f64 (-.f64 (*.f64 -1/2 (/.f64 y x)) -1/2) y)
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
(/.f64 (/.f64 (-.f64 (*.f64 -1/2 y) (*.f64 -1/2 x)) x) y)
(/.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (-.f64 y x) x))) 3) y)
(/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 x)) (/.f64 (-.f64 y x) (sqrt.f64 x))) y)
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 y)) 2) (cbrt.f64 (/.f64 1/2 y)) (/.f64 -1/2 x))
Outputs
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
Calls

3 calls:

6.0ms
x
6.0ms
y
5.0ms
(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(/.f64 (-.f64 x y) (*.f64 (*.f64 x 2) y))
Compiler

Compiled 100 to 65 computations (35% saved)

regimes22.0ms (0.2%)

Accuracy

Total -48.7b remaining (-369.2%)

Threshold costs -48.7b (-369.2%)

Counts
2 → 3
Calls
Call 1
Inputs
(/.f64 1/2 y)
(/.f64 -1/2 x)
Outputs
(/.f64 -1/2 x)
(/.f64 1/2 y)
(/.f64 -1/2 x)
Calls

2 calls:

12.0ms
x
9.0ms
y
Results
ErrorSegmentsBranch
15.1b3x
13.2b3y
Compiler

Compiled 14 to 10 computations (28.6% saved)

bsearch44.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
17.0ms
3.22847248493824e+68
4.99667817309752e+69
26.0ms
-1.0091262586043192e+40
-7.957082167433533e+39
Compiler

Compiled 16 to 11 computations (31.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
distribute-neg-frac_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01638
11838
22538
32738
42838
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(if (<=.f64 y -10091262586043192360900855511925347319808) (/.f64 -1/2 x) (if (<=.f64 y 322847248493824003430671440308153584463084180870780740067053126287360) (/.f64 1/2 y) (/.f64 -1/2 x)))
(/.f64 1/2 y)
Outputs
(-.f64 (/.f64 -1/2 x) (/.f64 -1/2 y))
(+.f64 (/.f64 -1/2 x) (/.f64 1/2 y))
(if (<=.f64 y -10091262586043192360900855511925347319808) (/.f64 -1/2 x) (if (<=.f64 y 322847248493824003430671440308153584463084180870780740067053126287360) (/.f64 1/2 y) (/.f64 -1/2 x)))
(/.f64 1/2 y)
Compiler

Compiled 33 to 25 computations (24.2% saved)

soundness161.0ms (1.7%)

Algorithm
egg-herbie
Rules
921×fma-neg_binary64
628×times-frac_binary64
467×neg-mul-1_binary64
305×*-commutative_binary64
304×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
25310
312410
425610
554110
6108410
7406810
8790010
Stop Event
node limit
Compiler

Compiled 303 to 219 computations (27.7% saved)

end26.0ms (0.3%)

Compiler

Compiled 29 to 21 computations (27.6% saved)

Profiling

Loading profile data...