Details

Time bar (total: 6.5s)

analyze60.0ms (0.9%)

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
25%74.9%0.1%5
37.5%62.4%0.1%6
56.2%43.7%0.1%7
65.6%34.3%0.1%8
76.5%23.4%0.1%9
82%18%0.1%10
87.8%12.1%0.1%11
90.7%9.2%0.1%12
Compiler

Compiled 10 to 7 computations (30% saved)

sample1.0s (16.2%)

Results
927.0ms7749×body256valid
45.0ms221×body1024valid
42.0ms150×body2048valid
20.0ms136×body512valid
0.0msbody256invalid

preprocess31.0ms (0.5%)

Algorithm
egg-herbie
Rules
446×fma-neg_binary64
114×fma-def_binary64
90×cancel-sign-sub-inv_binary64
62×sub-neg_binary64
52×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
12020
24020
37420
415520
532220
662316
799016
8128816
9134816
10135216
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(+.f64 x (/.f64 (-.f64 x y) 2))
(+.f64 y (/.f64 (-.f64 y x) 2))
Outputs
(+.f64 x (/.f64 (-.f64 x y) 2))
(fma.f64 -1/2 (-.f64 y x) x)
(fma.f64 x 3/2 (*.f64 y -1/2))
(+.f64 y (/.f64 (-.f64 y x) 2))
(-.f64 y (/.f64 (-.f64 x y) 2))
(fma.f64 -1/2 (-.f64 x y) y)
(fma.f64 (-.f64 x y) -1/2 y)
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify20.0ms (0.3%)

Algorithm
egg-herbie
Rules
254×fma-neg_binary64
112×fma-def_binary64
91×cancel-sign-sub-inv_binary64
47×sub-neg_binary64
40×distribute-rgt-in_binary64
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
0710
11310
22410
34310
48710
517110
632510
75078
87518
99918
1010498
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (/.f64 (-.f64 x y) 2))
Outputs
(+.f64 x (/.f64 (-.f64 x y) 2))
(-.f64 x (/.f64 (-.f64 y x) 2))
(+.f64 x (*.f64 -1/2 (-.f64 y x)))
(fma.f64 -1/2 (-.f64 y x) x)
(fma.f64 (-.f64 y x) -1/2 x)

eval1.0ms (0%)

Compiler

Compiled 15 to 9 computations (40% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 9 to 6 computations (33.3% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 20 to 9 computations (55% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
555×unpow-prod-down_binary64
395×log-prod_binary64
344×fma-def_binary64
289×exp-prod_binary64
259×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify11.0ms (0.2%)

Algorithm
egg-herbie
Rules
15×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
associate-+l+_binary64
associate-+r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014168
132168
246168
Stop Event
saturated
Counts
98 → 81
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
Outputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) x)
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 -1/2 y (*.f64 3/2 x))

eval28.0ms (0.4%)

Compiler

Compiled 1125 to 631 computations (43.9% saved)

prune24.0ms (0.4%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New681381
Fresh000
Picked101
Done000
Total691382
Error
0.0b
Counts
82 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
1.3b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 3)
30.9b
(*.f64 (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (-.f64 x (*.f64 (-.f64 x y) 1/2))))
31.5b
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)
0.1b
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
30.9b
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))
0.5b
(fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 x y) 1/2))
41.9b
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3))
1.0b
(fma.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) x)
1.3b
(*.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2))
31.7b
(*.f64 3/2 x)
32.8b
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 x y) 1/2))
30.8b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (-.f64 x (*.f64 (-.f64 x y) 1/2)))
31.7b
(*.f64 -1/2 y)
Compiler

Compiled 364 to 244 computations (33% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 19 to 13 computations (31.6% saved)

series2.0ms (0%)

Counts
1 → 6
Calls

6 calls:

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

rewrite55.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
862×pow1_binary64
805×add-log-exp_binary64
805×log1p-expm1-u_binary64
805×expm1-log1p-u_binary64
790×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11728
221818
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -1/2 y (*.f64 3/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 -1/2 y) 2) (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x))) (/.f64 (pow.f64 (*.f64 3/2 x) 2) (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/2 y (*.f64 3/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) (pow.f64 (cbrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) 2) (cbrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) (sqrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -1/8 (pow.f64 y 3)) (*.f64 27/8 (pow.f64 x 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 -1/2 y) 2) (*.f64 (*.f64 3/2 x) (-.f64 (*.f64 3/2 x) (*.f64 -1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 -1/2 y) 2) (pow.f64 (*.f64 3/2 x) 2)) (/.f64 1 (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 -1/2 y) 2) (*.f64 (*.f64 3/2 x) (-.f64 (*.f64 3/2 x) (*.f64 -1/2 y)))) (+.f64 (*.f64 -1/8 (pow.f64 y 3)) (*.f64 27/8 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x)) (-.f64 (pow.f64 (*.f64 -1/2 y) 2) (pow.f64 (*.f64 3/2 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -1/8 (pow.f64 y 3)) (*.f64 27/8 (pow.f64 x 3))) (+.f64 (pow.f64 (*.f64 -1/2 y) 2) (*.f64 (*.f64 3/2 x) (-.f64 (*.f64 3/2 x) (*.f64 -1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -1/8 (pow.f64 y 3)) (*.f64 27/8 (pow.f64 x 3))) (+.f64 (pow.f64 (*.f64 3/2 x) 2) (-.f64 (pow.f64 (*.f64 -1/2 y) 2) (*.f64 y (*.f64 -1/2 (*.f64 3/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 -1/2 y) 2) (pow.f64 (*.f64 3/2 x) 2)) (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 -1/8 (pow.f64 y 3)) (*.f64 27/8 (pow.f64 x 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 -1/2 y) 2) (*.f64 (*.f64 3/2 x) (-.f64 (*.f64 3/2 x) (*.f64 -1/2 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -1/2 y) 2) (pow.f64 (*.f64 3/2 x) 2))) (neg.f64 (+.f64 (*.f64 -1/2 y) (*.f64 -3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 3/2 x) 2) (pow.f64 (*.f64 -1/2 y) 2)) (-.f64 (*.f64 3/2 x) (*.f64 -1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/2 y (*.f64 3/2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 y (*.f64 3/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y -1/2 (*.f64 3/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (*.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (*.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 y) (*.f64 3/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 3/2 x) (*.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 3/2 x)) 2) (cbrt.f64 (*.f64 3/2 x)) (*.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 -1/2 y) 2)) (cbrt.f64 (*.f64 -1/2 y)) (*.f64 3/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 3/2 x)) (sqrt.f64 (*.f64 3/2 x)) (*.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -1/2 y)) (sqrt.f64 (*.f64 -1/2 y)) (*.f64 3/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/2 y (*.f64 3/2 x))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0724
1924
Stop Event
saturated
Counts
43 → 39
Calls
Call 1
Inputs
(*.f64 3/2 x)
(*.f64 -1/2 y)
(*.f64 -1/2 y)
(*.f64 -1/2 y)
(*.f64 3/2 x)
(*.f64 3/2 x)
Outputs
(*.f64 3/2 x)
(*.f64 -1/2 y)
(*.f64 -1/2 y)
(*.f64 -1/2 y)
(*.f64 3/2 x)
(*.f64 3/2 x)

localize5.0ms (0.1%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize28.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))
0.0b
(-.f64 x (*.f64 (-.f64 x y) 1/2))
0.0b
(pow.f64 (-.f64 x y) 2)
0.0b
(*.f64 (pow.f64 (-.f64 x y) 2) 1/4)
0.0b
(-.f64 x (*.f64 (-.f64 x y) 1/2))
0.2b
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))
11.9b
(-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))
28.9b
(/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))
Compiler

Compiled 89 to 44 computations (50.6% saved)

series20.0ms (0.3%)

Counts
4 → 96
Calls

24 calls:

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

rewrite136.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
840×fma-def_binary64
384×fma-neg_binary64
303×expm1-udef_binary64
303×log1p-udef_binary64
189×add-sqr-sqrt_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01685
137947
2541941
Stop Event
node limit
Counts
4 → 414
Calls
Call 1
Inputs
(/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))
(-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))
(/.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))
(-.f64 x (*.f64 (-.f64 x y) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 1) (/.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) -1/2 x) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2) (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (*.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 (-.f64 x y) -1/2 x)) (/.f64 1 (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 (fma.f64 (-.f64 x y) -1/2 x) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (/.f64 (fma.f64 (-.f64 x y) -1/2 x) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 1) (/.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (/.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (-.f64 x y) -1/2 x) (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3)))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (-.f64 x y) -1/2 x) (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 x y) 1/2 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 (-.f64 x y) -1/2 x) (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 3) (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (cbrt.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (cbrt.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (sqrt.f64 (/.f64 x (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 x (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (/.f64 x (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 (cbrt.f64 x) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (/.f64 (cbrt.f64 x) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (/.f64 (sqrt.f64 x) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3)))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4)) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (neg.f64 (/.f64 1/2 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4)) (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3)))) (neg.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))) (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 3)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 3) (pow.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 3)) (+.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 2) (-.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (*.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (-.f64 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 2) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))) (-.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (pow.f64 (exp.f64 1/4) (pow.f64 (-.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) x) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (exp.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) x) (/.f64 1 (pow.f64 (exp.f64 1/4) (pow.f64 (-.f64 x y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (/.f64 1 (pow.f64 (exp.f64 1/4) (pow.f64 (-.f64 x y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (exp.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (exp.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (+.f64 1 (expm1.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 1/4) (pow.f64 (-.f64 x y) 2))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 1/4) (pow.f64 (-.f64 x y) 2))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) -1/2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/4 (neg.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1 (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1 (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 1 (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 (-.f64 x y) -1/2 x) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (pow.f64 (-.f64 x y) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (*.f64 1/64 (pow.f64 (pow.f64 (-.f64 x y) 2) 3))) (/.f64 1 (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (pow.f64 x 4))) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 x y) -1/2) (*.f64 (-.f64 x y) 1/2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (fma.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (*.f64 1/16 (pow.f64 (-.f64 x y) 4))) (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (+.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (-.f64 x y) 2)) 1/4 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (cbrt.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))) (cbrt.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (cbrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (-.f64 x y) 1/2)) (hypot.f64 (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (-.f64 x y) 1/2)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 x x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 x y) 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (fma.f64 (-.f64 x y) -1/2 x)) (/.f64 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4) (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 -1 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2) -1) (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 1) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3)))) (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (fma.f64 (-.f64 x y) -1/2 x))) (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) 1) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (pow.f64 (exp.f64 1/2) (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 1/2) (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1/2) (-.f64 x y)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1/2) (-.f64 x y)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) 3) (pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x y) 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (-.f64 x y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 x y) 1/2) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 x y) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) 1 (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) 1/2 x) 1 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x y)) 2) (*.f64 (cbrt.f64 (-.f64 x y)) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 x y) 1/2)) (sqrt.f64 (*.f64 (-.f64 x y) 1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x y)) (*.f64 (sqrt.f64 (-.f64 x y)) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (/.f64 -1 (fma.f64 (-.f64 x y) 1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (/.f64 -1 (fma.f64 (-.f64 x y) 1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 x x) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) -1) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (/.f64 1 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) -1) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 x 4))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (*.f64 1/16 (pow.f64 (-.f64 x y) 4)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2) -1) (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 2) -1) (pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (pow.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 1) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 1) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) -1/2 x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3)))) (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3)))) (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (neg.f64 (fma.f64 (-.f64 x y) -1/2 x))) (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (neg.f64 (fma.f64 (-.f64 x y) -1/2 x))) (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) 1) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) 1) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) 2)) (cbrt.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4)) (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)))) (hypot.f64 x (sqrt.f64 (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (*.f64 (/.f64 1 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (pow.f64 (-.f64 x y) 2) -1/4 (*.f64 (pow.f64 (-.f64 x y) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (-.f64 x y)) 2)) (cbrt.f64 (-.f64 x y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 x y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 x y) 1/2 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) -1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) -1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 x y) -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3))) (/.f64 1 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (fma.f64 (-.f64 x y) 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (-.f64 x y) 1/2 x) (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4))) (neg.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3))) (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3)))) (neg.f64 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 x y) -1/2) 3)) (fma.f64 x x (-.f64 (*.f64 (*.f64 (-.f64 x y) -1/2) (*.f64 (-.f64 x y) -1/2)) (*.f64 x (*.f64 (-.f64 x y) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 x y) -1/2) (*.f64 (-.f64 x y) -1/2))) (-.f64 x (*.f64 (-.f64 x y) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 x y) -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 1/2) (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 x y) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (-.f64 x y) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 1 (pow.f64 (exp.f64 1/2) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 1 (pow.f64 (exp.f64 1/2) (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 x y) -1/2)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 1/2) (-.f64 x y))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 x y) -1/2)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 1/2) (-.f64 x y))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) -1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x y) -1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (neg.f64 (-.f64 x y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) -1/2 x) 1 (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) -1/2 x) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 x y) -1/2 x) 1 (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x x (*.f64 (pow.f64 (-.f64 x y) 2) -1/4)) (/.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 x y) -1/2 x) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 x y) -1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 x y) 1/2)) (neg.f64 (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) -1/2 x)) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (-.f64 x y) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3))) (/.f64 1 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x))) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3))) (/.f64 1 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (*.f64 1/8 (pow.f64 (-.f64 x y) 3))) (/.f64 1 (fma.f64 (*.f64 (-.f64 x y) 1/2) (fma.f64 (-.f64 x y) 1/2 x) (*.f64 x x))) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 x y)) 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 x y) -1/2)) (cbrt.f64 (*.f64 (-.f64 x y) -1/2))) (cbrt.f64 (*.f64 (-.f64 x y) -1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 x 4))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (-.f64 x y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 x 4))) (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 (*.f64 (-.f64 x y) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 x y) -1/2)) (sqrt.f64 (*.f64 (-.f64 x y) -1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2)) (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (-.f64 x y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (sqrt.f64 (*.f64 (-.f64 x y) 1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (fma.f64 (*.f64 (-.f64 x y) -1/2) 1 (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 x y) 1/2)) 2) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 x y) 1/2))) (fma.f64 -1/2 (-.f64 x y) (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 x y) -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 x y) -1/2 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 x y) -1/2 x)))))))

simplify88.0ms (1.4%)

Algorithm
egg-herbie
Rules
586×distribute-rgt-in_binary64
545×distribute-lft-in_binary64
513×cancel-sign-sub-inv_binary64
344×fma-def_binary64
312×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03073324
110692633
240572247
Stop Event
node limit
Counts
510 → 504
Calls
Call 1
Inputs
(/.f64 -2 y)
(-.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (*.f64 2 (/.f64 1 y)))
(-.f64 (+.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (*.f64 -18 (/.f64 (pow.f64 x 2) (pow.f64 y 3)))) (*.f64 2 (/.f64 1 y)))
(-.f64 (+.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (+.f64 (*.f64 -54 (/.f64 (pow.f64 x 3) (pow.f64 y 4))) (*.f64 -18 (/.f64 (pow.f64 x 2) (pow.f64 y 3))))) (*.f64 2 (/.f64 1 y)))
(/.f64 2/3 x)
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (*.f64 2/3 (/.f64 1 x))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 3))))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/3 (*.f64 y (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))))) (*.f64 -1/3 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 4))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 3)))))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(/.f64 2/3 x)
(+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))))) (pow.f64 x 3))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))))) (pow.f64 x 3))) (+.f64 (*.f64 2/3 (/.f64 (*.f64 y (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)))))) (pow.f64 x 4))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))) (pow.f64 x 4))) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2)))))))
(/.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (+.f64 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(/.f64 -2 y)
(-.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) (pow.f64 y 3)))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) (pow.f64 y 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) x)) (*.f64 -4 (*.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x))))) (pow.f64 y 4))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(/.f64 -2 y)
(-.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x) (pow.f64 y 3))) (*.f64 -8 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 y 3))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x) (pow.f64 y 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (*.f64 x (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x)) (*.f64 -8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))) (*.f64 -4 (*.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x))))) (pow.f64 y 4))) (*.f64 -8 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 y 3)))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(*.f64 3/4 (pow.f64 x 2))
(+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(*.f64 3/4 (pow.f64 x 2))
(+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2)) (*.f64 1/4 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(-.f64 (+.f64 y (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(-.f64 (+.f64 y (+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 y (-.f64 y (*.f64 3/2 y))))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x)))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(*.f64 3/2 x)
(+.f64 (*.f64 3/2 x) (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 3/2 x) (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) x)))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 3/2 x) (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y)))))) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) x)))
(/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 x (*.f64 1/2 x)))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y)) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y))) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))) (pow.f64 y 3)) (-.f64 x (*.f64 1/2 x))))))) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 -1/2 y) x) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) y)) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))) y)) (*.f64 -1 (-.f64 x (*.f64 1/2 x)))))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) (-.f64 x (*.f64 1/2 x))) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) y)) x))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))) y)) (*.f64 -1 (-.f64 x (*.f64 1/2 x)))))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 -1/2 y) x) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) y)) x)) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) (-.f64 x (*.f64 1/2 x))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) y)) x))) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 x)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 x)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(-.f64 x (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 y)
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 y)
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
Outputs
(/.f64 -2 y)
(-.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (*.f64 2 (/.f64 1 y)))
(-.f64 (*.f64 -6 (/.f64 x (*.f64 y y))) (/.f64 2 y))
(fma.f64 -6 (/.f64 x (*.f64 y y)) (/.f64 -2 y))
(-.f64 (+.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (*.f64 -18 (/.f64 (pow.f64 x 2) (pow.f64 y 3)))) (*.f64 2 (/.f64 1 y)))
(-.f64 (fma.f64 -6 (/.f64 x (*.f64 y y)) (*.f64 -18 (/.f64 (*.f64 x x) (pow.f64 y 3)))) (/.f64 2 y))
(fma.f64 -6 (/.f64 x (*.f64 y y)) (fma.f64 -18 (/.f64 x (/.f64 (pow.f64 y 3) x)) (/.f64 -2 y)))
(-.f64 (+.f64 (*.f64 -6 (/.f64 x (pow.f64 y 2))) (+.f64 (*.f64 -54 (/.f64 (pow.f64 x 3) (pow.f64 y 4))) (*.f64 -18 (/.f64 (pow.f64 x 2) (pow.f64 y 3))))) (*.f64 2 (/.f64 1 y)))
(-.f64 (fma.f64 -6 (/.f64 x (*.f64 y y)) (fma.f64 -54 (/.f64 (pow.f64 x 3) (pow.f64 y 4)) (*.f64 -18 (/.f64 (*.f64 x x) (pow.f64 y 3))))) (/.f64 2 y))
(+.f64 (fma.f64 -18 (/.f64 x (/.f64 (pow.f64 y 3) x)) (/.f64 (*.f64 -54 (pow.f64 x 3)) (pow.f64 y 4))) (fma.f64 -6 (/.f64 x (*.f64 y y)) (/.f64 -2 y)))
(/.f64 2/3 x)
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (*.f64 2/3 (/.f64 1 x))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(+.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (/.f64 2/3 x)) (*.f64 -4/9 (/.f64 y (*.f64 x x))))
(+.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (/.f64 2/3 x)) (*.f64 (/.f64 y (*.f64 x x)) -4/9))
(+.f64 (/.f64 2/3 x) (*.f64 (/.f64 (/.f64 y x) x) 2/9))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 3))))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(+.f64 (+.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (/.f64 2/3 x)) (neg.f64 (/.f64 (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y 2/3) (*.f64 y 2/9))) (pow.f64 x 3)))) (*.f64 -4/9 (/.f64 y (*.f64 x x))))
(+.f64 (-.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (/.f64 2/3 x)) (/.f64 (fma.f64 (*.f64 y y) -2/9 (*.f64 y (*.f64 (*.f64 y 2/9) 2/3))) (pow.f64 x 3))) (*.f64 (/.f64 y (*.f64 x x)) -4/9))
(+.f64 (-.f64 (/.f64 2/3 x) (/.f64 (*.f64 y (+.f64 (*.f64 y -2/9) (*.f64 (*.f64 y 2/9) 2/3))) (pow.f64 x 3))) (*.f64 (/.f64 (/.f64 y x) x) 2/9))
(-.f64 (+.f64 (*.f64 2/3 (/.f64 y (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/3 (*.f64 y (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))))) (*.f64 -1/3 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 4))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 2/3 (*.f64 y (-.f64 (*.f64 2/3 y) (*.f64 4/9 y))))) (pow.f64 x 3)))))) (*.f64 4/9 (/.f64 y (pow.f64 x 2))))
(+.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (fma.f64 -1 (/.f64 (fma.f64 -2/3 (*.f64 y (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y 2/3) (*.f64 y 2/9)))) (*.f64 -1/3 (*.f64 (*.f64 y y) (*.f64 y 2/9)))) (pow.f64 x 4)) (+.f64 (/.f64 2/3 x) (neg.f64 (/.f64 (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y 2/3) (*.f64 y 2/9))) (pow.f64 x 3)))))) (*.f64 -4/9 (/.f64 y (*.f64 x x))))
(+.f64 (fma.f64 2/3 (/.f64 y (*.f64 x x)) (-.f64 (-.f64 (/.f64 2/3 x) (/.f64 (fma.f64 (*.f64 y y) -2/9 (*.f64 y (*.f64 (*.f64 y 2/9) 2/3))) (pow.f64 x 3))) (/.f64 (fma.f64 -2/3 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 y 3) 2/9)) (*.f64 (pow.f64 y 3) -2/9)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) 2/9))) (pow.f64 x 4)))) (*.f64 (/.f64 y (*.f64 x x)) -4/9))
(+.f64 (-.f64 (-.f64 (/.f64 2/3 x) (/.f64 (*.f64 y (+.f64 (*.f64 y -2/9) (*.f64 (*.f64 y 2/9) 2/3))) (pow.f64 x 3))) (/.f64 (fma.f64 -2/3 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 y 3) 2/9)) (*.f64 (pow.f64 y 3) -2/9)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) 2/9))) (pow.f64 x 4))) (*.f64 (/.f64 (/.f64 y x) x) 2/9))
(/.f64 2/3 x)
(+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2))))
(+.f64 (/.f64 2/3 x) (neg.f64 (/.f64 (*.f64 y -2/9) (*.f64 x x))))
(-.f64 (/.f64 2/3 x) (*.f64 (/.f64 y x) (/.f64 -2/9 x)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))))) (pow.f64 x 3))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2)))))
(fma.f64 -1 (/.f64 (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y -2/3) (*.f64 y -2/9))) (pow.f64 x 3)) (+.f64 (/.f64 2/3 x) (neg.f64 (/.f64 (*.f64 y -2/9) (*.f64 x x)))))
(-.f64 (-.f64 (/.f64 2/3 x) (*.f64 (/.f64 y x) (/.f64 -2/9 x))) (/.f64 (fma.f64 (*.f64 y y) -2/9 (*.f64 y (*.f64 -2/3 (*.f64 y -2/9)))) (pow.f64 x 3)))
(+.f64 (/.f64 (*.f64 y 2/9) (*.f64 x x)) (-.f64 (/.f64 2/3 x) (/.f64 (*.f64 1/3 (*.f64 y (*.f64 y -2/9))) (pow.f64 x 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))))) (pow.f64 x 3))) (+.f64 (*.f64 2/3 (/.f64 (*.f64 y (+.f64 (*.f64 -2/9 (pow.f64 y 2)) (*.f64 -2/3 (*.f64 y (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)))))) (pow.f64 x 4))) (+.f64 (*.f64 2/3 (/.f64 1 x)) (+.f64 (*.f64 -1/3 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y))) (pow.f64 x 4))) (*.f64 -1 (/.f64 (-.f64 (*.f64 -2/3 y) (*.f64 -4/9 y)) (pow.f64 x 2)))))))
(fma.f64 -1 (/.f64 (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y -2/3) (*.f64 y -2/9))) (pow.f64 x 3)) (fma.f64 2/3 (/.f64 y (/.f64 (pow.f64 x 4) (fma.f64 -2/9 (*.f64 y y) (*.f64 (*.f64 y -2/3) (*.f64 y -2/9))))) (+.f64 (/.f64 2/3 x) (fma.f64 -1/3 (/.f64 (*.f64 y y) (/.f64 (pow.f64 x 4) (*.f64 y -2/9))) (neg.f64 (/.f64 (*.f64 y -2/9) (*.f64 x x)))))))
(-.f64 (fma.f64 2/3 (/.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) -2/9)) (*.f64 (pow.f64 y 3) -2/9)) (pow.f64 x 4)) (+.f64 (/.f64 2/3 x) (-.f64 (*.f64 -1/3 (/.f64 (*.f64 (pow.f64 y 3) -2/9) (pow.f64 x 4))) (*.f64 (/.f64 y x) (/.f64 -2/9 x))))) (/.f64 (fma.f64 (*.f64 y y) -2/9 (*.f64 y (*.f64 -2/3 (*.f64 y -2/9)))) (pow.f64 x 3)))
(+.f64 (fma.f64 2/3 (/.f64 (*.f64 1/3 (*.f64 (pow.f64 y 3) -2/9)) (pow.f64 x 4)) (/.f64 2/3 x)) (-.f64 (fma.f64 -1/3 (/.f64 (*.f64 (pow.f64 y 3) -2/9) (pow.f64 x 4)) (/.f64 (*.f64 y 2/9) (*.f64 x x))) (/.f64 (*.f64 1/3 (*.f64 y (*.f64 y -2/9))) (pow.f64 x 3))))
(/.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))
(/.f64 (+.f64 x (*.f64 -1/2 x)) (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))))
(*.f64 1/2 (/.f64 x (*.f64 (*.f64 x x) 3/4)))
(*.f64 1/2 (/.f64 x (*.f64 x (*.f64 x 3/4))))
(-.f64 (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(+.f64 (*.f64 y (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2)))) (/.f64 (+.f64 x (*.f64 -1/2 x)) (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))))
(fma.f64 y (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (*.f64 1/2 (/.f64 x (*.f64 (*.f64 x x) 3/4))))
(fma.f64 y (+.f64 (/.f64 1/2 (*.f64 x (*.f64 x 3/4))) (/.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 (pow.f64 x 4) 9/16))) (*.f64 1/2 (/.f64 x (*.f64 x (*.f64 x 3/4)))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(+.f64 (neg.f64 (*.f64 (*.f64 y y) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) x)) (/.f64 (*.f64 -1/4 (+.f64 x (*.f64 -1/2 x))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))))) (+.f64 (*.f64 y (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2)))) (/.f64 (+.f64 x (*.f64 -1/2 x)) (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))))))
(fma.f64 (*.f64 (neg.f64 y) y) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (/.f64 (*.f64 (*.f64 x x) 3/4) x)) (*.f64 -1/4 (/.f64 1/2 (/.f64 (pow.f64 (*.f64 (*.f64 x x) 3/4) 2) x)))) (fma.f64 y (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (*.f64 1/2 (/.f64 x (*.f64 (*.f64 x x) 3/4)))))
(-.f64 (fma.f64 y (+.f64 (/.f64 1/2 (*.f64 x (*.f64 x 3/4))) (/.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 (pow.f64 x 4) 9/16))) (*.f64 1/2 (/.f64 x (*.f64 x (*.f64 x 3/4))))) (*.f64 y (*.f64 y (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (pow.f64 x 4) 9/16)) (/.f64 (*.f64 (*.f64 x x) -1/4) (pow.f64 (*.f64 x (*.f64 x 3/4)) 3))) x) (/.f64 -1/4 (/.f64 (*.f64 (pow.f64 x 4) 9/16) (*.f64 x 1/2)))))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) y) (+.f64 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -1 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) x) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))) (*.f64 -1/4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) 2)))) x) (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))))))) (*.f64 1/2 (/.f64 x (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))
(+.f64 (fma.f64 -1 (*.f64 (*.f64 y y) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) x)) (/.f64 (*.f64 -1/4 (+.f64 x (*.f64 -1/2 x))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2)))) (+.f64 (fma.f64 (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))) y (/.f64 x (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))))) (neg.f64 (*.f64 (pow.f64 y 3) (fma.f64 -1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))) (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 -1/2 (*.f64 x (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x)))) (/.f64 (*.f64 1/2 (*.f64 x (+.f64 x (*.f64 -1/2 x)))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) x)) (/.f64 (*.f64 -1/4 (+.f64 x (*.f64 -1/2 x))) (pow.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) 2))))) (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))))))))) (*.f64 -1/2 (/.f64 x (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))))))
(+.f64 (-.f64 (-.f64 (fma.f64 y (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (/.f64 x (*.f64 (*.f64 x x) 3/4))) (*.f64 (pow.f64 y 3) (fma.f64 -1/4 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (*.f64 (*.f64 x x) 3/4)) (/.f64 (*.f64 -1/2 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (/.f64 (*.f64 (*.f64 x x) 3/4) x)) (*.f64 -1/4 (/.f64 1/2 (/.f64 (pow.f64 (*.f64 (*.f64 x x) 3/4) 2) x))))) (/.f64 (*.f64 (*.f64 x x) 3/4) x))))) (*.f64 (*.f64 y y) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) 3/4)) (/.f64 (pow.f64 (*.f64 x 1/2) 2) (pow.f64 (*.f64 (*.f64 x x) 3/4) 2))) (/.f64 (*.f64 (*.f64 x x) 3/4) x)) (*.f64 -1/4 (/.f64 1/2 (/.f64 (pow.f64 (*.f64 (*.f64 x x) 3/4) 2) x)))))) (*.f64 (/.f64 x (*.f64 (*.f64 x x) 3/4)) -1/2))
(+.f64 (-.f64 (-.f64 (fma.f64 y (+.f64 (/.f64 1/2 (*.f64 x (*.f64 x 3/4))) (/.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 (pow.f64 x 4) 9/16))) (/.f64 x (*.f64 x (*.f64 x 3/4)))) (*.f64 y (*.f64 y (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (pow.f64 x 4) 9/16)) (/.f64 (*.f64 (*.f64 x x) -1/4) (pow.f64 (*.f64 x (*.f64 x 3/4)) 3))) x) (/.f64 -1/4 (/.f64 (*.f64 (pow.f64 x 4) 9/16) (*.f64 x 1/2))))))) (*.f64 (pow.f64 y 3) (fma.f64 -1/4 (+.f64 (/.f64 1/2 (*.f64 (pow.f64 x 4) 9/16)) (/.f64 (*.f64 (*.f64 x x) -1/4) (pow.f64 (*.f64 x (*.f64 x 3/4)) 3))) (/.f64 (*.f64 (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (pow.f64 x 4) 9/16)) (/.f64 (*.f64 (*.f64 x x) -1/4) (pow.f64 (*.f64 x (*.f64 x 3/4)) 3))) x) (/.f64 -1/4 (/.f64 (*.f64 (pow.f64 x 4) 9/16) (*.f64 x 1/2)))) -1/2) (/.f64 (*.f64 x (*.f64 x 3/4)) x))))) (/.f64 -1/2 (/.f64 (*.f64 x (*.f64 x 3/4)) x)))
(/.f64 -2 y)
(-.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (*.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y)) (/.f64 -2 y)) (*.f64 -4 (/.f64 x (*.f64 y y))))
(+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) (pow.f64 y 3)))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (fma.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y)) (neg.f64 (/.f64 (fma.f64 8 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 -2 (*.f64 x (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x))))) (pow.f64 y 3)))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(-.f64 (-.f64 (*.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y))) (/.f64 (fma.f64 -2 (*.f64 x (*.f64 -4 (+.f64 x (*.f64 x 1/2)))) (*.f64 (*.f64 (*.f64 x x) 3/4) 8)) (pow.f64 y 3))) (fma.f64 (/.f64 x (*.f64 y y)) 4 (/.f64 2 y)))
(+.f64 (/.f64 (neg.f64 (fma.f64 -2 (*.f64 x (*.f64 -4 (*.f64 x 3/2))) (*.f64 (*.f64 x (*.f64 x 3/4)) 8))) (pow.f64 y 3)) (+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y)))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) (pow.f64 y 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x))) x)) (*.f64 -4 (*.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x))))) (pow.f64 y 4))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (fma.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y)) (*.f64 -1 (+.f64 (/.f64 (fma.f64 8 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 -2 (*.f64 x (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x))))) (pow.f64 y 3)) (/.f64 (fma.f64 2 (*.f64 x (fma.f64 8 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 -2 (*.f64 x (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x)))))) (*.f64 -4 (*.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x))))) (pow.f64 y 4))))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(-.f64 (-.f64 (-.f64 (*.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y))) (/.f64 (fma.f64 -2 (*.f64 x (*.f64 -4 (+.f64 x (*.f64 x 1/2)))) (*.f64 (*.f64 (*.f64 x x) 3/4) 8)) (pow.f64 y 3))) (/.f64 (fma.f64 2 (*.f64 x (fma.f64 -2 (*.f64 x (*.f64 -4 (+.f64 x (*.f64 x 1/2)))) (*.f64 (*.f64 (*.f64 x x) 3/4) 8))) (*.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 -4 (+.f64 x (*.f64 x 1/2))) -4))) (pow.f64 y 4))) (fma.f64 (/.f64 x (*.f64 y y)) 4 (/.f64 2 y)))
(+.f64 (-.f64 (/.f64 (neg.f64 (fma.f64 -2 (*.f64 x (*.f64 -4 (*.f64 x 3/2))) (*.f64 (*.f64 x (*.f64 x 3/4)) 8))) (pow.f64 y 3)) (/.f64 (fma.f64 2 (*.f64 x (fma.f64 -2 (*.f64 x (*.f64 -4 (*.f64 x 3/2))) (*.f64 (*.f64 x (*.f64 x 3/4)) 8))) (*.f64 (*.f64 x (*.f64 x 3/4)) (*.f64 (*.f64 -4 (*.f64 x 3/2)) -4))) (pow.f64 y 4))) (+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y)))
(/.f64 -2 y)
(-.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (*.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y)) (/.f64 -2 y)) (*.f64 -4 (/.f64 x (*.f64 y y))))
(+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x) (pow.f64 y 3))) (*.f64 -8 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 y 3))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (fma.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y)) (fma.f64 2 (/.f64 (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x)) (/.f64 (pow.f64 y 3) x)) (*.f64 -8 (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 y 3))))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(-.f64 (fma.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y)) (fma.f64 2 (*.f64 (/.f64 (*.f64 -4 (+.f64 x (*.f64 x 1/2))) (pow.f64 y 3)) x) (/.f64 (*.f64 (*.f64 (*.f64 x x) 3/4) -8) (pow.f64 y 3)))) (fma.f64 (/.f64 x (*.f64 y y)) 4 (/.f64 2 y)))
(+.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (pow.f64 y 3)) x) (*.f64 -8 (/.f64 (*.f64 x (*.f64 x 3/4)) (pow.f64 y 3)))) (+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y)))
(-.f64 (+.f64 (*.f64 -4 (/.f64 (-.f64 x (*.f64 1/2 x)) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x) (pow.f64 y 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (*.f64 x (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x)) x)) (*.f64 -8 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))))))) (*.f64 -4 (*.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 (*.f64 -4 (-.f64 x (*.f64 1/2 x))) (*.f64 4 x))))) (pow.f64 y 4))) (*.f64 -8 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 y 3)))))) (+.f64 (*.f64 2 (/.f64 1 y)) (*.f64 4 (/.f64 x (pow.f64 y 2)))))
(-.f64 (fma.f64 -4 (/.f64 (+.f64 x (*.f64 -1/2 x)) (*.f64 y y)) (fma.f64 2 (/.f64 (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x)) (/.f64 (pow.f64 y 3) x)) (fma.f64 -1 (/.f64 (fma.f64 -2 (*.f64 x (fma.f64 2 (*.f64 x (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x))) (*.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) -8))) (*.f64 -4 (*.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (+.f64 (*.f64 (+.f64 x (*.f64 -1/2 x)) -4) (*.f64 -4 x))))) (pow.f64 y 4)) (*.f64 -8 (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 y 3)))))) (+.f64 (/.f64 2 y) (*.f64 (/.f64 x (*.f64 y y)) 4)))
(-.f64 (fma.f64 -4 (*.f64 (/.f64 x y) (/.f64 1/2 y)) (fma.f64 2 (*.f64 (/.f64 (*.f64 -4 (+.f64 x (*.f64 x 1/2))) (pow.f64 y 3)) x) (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 x x) 3/4) -8) (pow.f64 y 3)) (/.f64 (fma.f64 -2 (*.f64 x (fma.f64 2 (*.f64 x (*.f64 -4 (+.f64 x (*.f64 x 1/2)))) (*.f64 (*.f64 (*.f64 x x) 3/4) -8))) (*.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 -4 (+.f64 x (*.f64 x 1/2))) -4))) (pow.f64 y 4))))) (fma.f64 (/.f64 x (*.f64 y y)) 4 (/.f64 2 y)))
(+.f64 (-.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (pow.f64 y 3)) x) (*.f64 -8 (/.f64 (*.f64 x (*.f64 x 3/4)) (pow.f64 y 3)))) (/.f64 (fma.f64 -2 (*.f64 x (fma.f64 (*.f64 x (*.f64 x 3/4)) -8 (*.f64 x (*.f64 2 (*.f64 -4 (*.f64 x 3/2)))))) (*.f64 (*.f64 x (*.f64 x 3/4)) (*.f64 (*.f64 -4 (*.f64 x 3/2)) -4))) (pow.f64 y 4))) (+.f64 (/.f64 (*.f64 -4 (*.f64 x 3/2)) (*.f64 y y)) (/.f64 -2 y)))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) -1/4)
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 1/2 (*.f64 y x)))
(fma.f64 (*.f64 y y) -1/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 y (+.f64 (*.f64 -1/4 y) (*.f64 x 1/2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(*.f64 3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) 3/4)
(*.f64 x (*.f64 x 3/4))
(+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2)))
(fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4))
(fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(*.f64 3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) 3/4)
(*.f64 x (*.f64 x 3/4))
(+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2)))
(fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4))
(fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (*.f64 3/4 (pow.f64 x 2))))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))
(*.f64 (*.f64 x x) 3/4)
(*.f64 x (*.f64 x 3/4))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2)) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4))
(fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) -1/4)
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 1/2 (*.f64 y x)))
(fma.f64 (*.f64 y y) -1/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 y (+.f64 (*.f64 -1/4 y) (*.f64 x 1/2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) -1/4)
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 1/2 (*.f64 y x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 1/2 (*.f64 y x)))
(fma.f64 (*.f64 y y) -1/4 (*.f64 y (*.f64 x 1/2)))
(*.f64 y (+.f64 (*.f64 -1/4 y) (*.f64 x 1/2)))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(-.f64 (+.f64 (*.f64 -1/4 (pow.f64 y 2)) (+.f64 (*.f64 1/2 (*.f64 y x)) (pow.f64 x 2))) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (fma.f64 1/2 (*.f64 y x) (*.f64 (*.f64 x x) 3/4)))
(fma.f64 (*.f64 y y) -1/4 (fma.f64 (*.f64 x x) 3/4 (*.f64 y (*.f64 x 1/2))))
(fma.f64 (*.f64 y y) -1/4 (*.f64 x (+.f64 (*.f64 y 1/2) (*.f64 3/4 x))))
(*.f64 -1/2 y)
(*.f64 y -1/2)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(*.f64 3/2 x)
(*.f64 x 3/2)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(-.f64 (+.f64 y (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(+.f64 y (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 x 3/2)) (fma.f64 3/2 y (/.f64 y (/.f64 x (+.f64 y (*.f64 y -3/2)))))))
(+.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (fma.f64 y -1/2 (*.f64 x 3/2))) (*.f64 (/.f64 y x) (*.f64 y 1/2)))
(+.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 0)
(-.f64 (+.f64 y (+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 y (-.f64 y (*.f64 3/2 y))))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x)))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(+.f64 y (-.f64 (fma.f64 -1 (/.f64 y (/.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 y y) -1/2) (*.f64 y (+.f64 y (*.f64 y -3/2)))))) (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 x 3/2))) (fma.f64 3/2 y (/.f64 y (/.f64 x (+.f64 y (*.f64 y -3/2)))))))
(+.f64 (*.f64 (/.f64 y x) (*.f64 y 1/2)) (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (-.f64 (fma.f64 y -1/2 (*.f64 x 3/2)) (*.f64 (/.f64 y (*.f64 x x)) (fma.f64 (*.f64 y y) -1/2 (*.f64 y (*.f64 y 1/2)))))))
(+.f64 (fma.f64 x 3/2 (fma.f64 y -1/2 (*.f64 0 (/.f64 y x)))) 0)
(*.f64 3/2 x)
(*.f64 x 3/2)
(+.f64 (*.f64 3/2 x) (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 3/2 x) (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) x)))
(+.f64 y (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 x 3/2)) (fma.f64 3/2 y (/.f64 y (/.f64 x (+.f64 y (*.f64 y -3/2)))))))
(+.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (fma.f64 y -1/2 (*.f64 x 3/2))) (*.f64 (/.f64 y x) (*.f64 y 1/2)))
(+.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 0)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 3/2 x) (+.f64 (*.f64 -1 (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y)))))) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1 y) (*.f64 -3/2 y))) x)))
(+.f64 y (-.f64 (fma.f64 -1 (/.f64 y (/.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 y y) -1/2) (*.f64 y (+.f64 y (*.f64 y -3/2)))))) (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 x 3/2))) (fma.f64 3/2 y (/.f64 y (/.f64 x (+.f64 y (*.f64 y -3/2)))))))
(+.f64 (*.f64 (/.f64 y x) (*.f64 y 1/2)) (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (-.f64 (fma.f64 y -1/2 (*.f64 x 3/2)) (*.f64 (/.f64 y (*.f64 x x)) (fma.f64 (*.f64 y y) -1/2 (*.f64 y (*.f64 y 1/2)))))))
(+.f64 (fma.f64 x 3/2 (fma.f64 y -1/2 (*.f64 0 (/.f64 y x)))) 0)
(/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (-.f64 x (*.f64 1/2 x)))
(/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (+.f64 x (*.f64 -1/2 x)))
(/.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 x 1/2))
(*.f64 3/4 (/.f64 x (/.f64 (*.f64 x 1/2) x)))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y)) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))) (-.f64 (*.f64 y (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2))))) (*.f64 1/4 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))))))
(+.f64 (*.f64 y (*.f64 1/2 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2))))) (/.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 x 1/2)))
(+.f64 (+.f64 y (*.f64 (*.f64 -1/2 (/.f64 (*.f64 x (*.f64 x 3/4)) (*.f64 x (*.f64 x 1/4)))) y)) (*.f64 3/4 (/.f64 x (/.f64 (*.f64 x 1/2) x))))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y))) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))) (-.f64 (fma.f64 -1 (*.f64 (*.f64 y y) (fma.f64 1/2 (/.f64 (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2)))) (+.f64 x (*.f64 -1/2 x))) (/.f64 1/4 (+.f64 x (*.f64 -1/2 x))))) (*.f64 y (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2)))))) (*.f64 1/4 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))))))
(+.f64 (-.f64 (*.f64 y (*.f64 1/2 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2))))) (*.f64 y (*.f64 y (+.f64 (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2)))) (*.f64 x 1/2)) (/.f64 1/4 (*.f64 x 1/2)))))) (/.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 x 1/2)))
(+.f64 (*.f64 y (-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 x (*.f64 x 3/4)) (*.f64 x (*.f64 x 1/4))))) (*.f64 (fma.f64 1/2 (+.f64 (/.f64 1 (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x (*.f64 x 3/4)) -1/2) (pow.f64 (*.f64 x 1/2) 3))) (/.f64 1/4 (*.f64 x 1/2))) y))) (*.f64 3/4 (/.f64 x (/.f64 (*.f64 x 1/2) x))))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))))) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) y) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 x (-.f64 x (*.f64 1/2 x)))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 (-.f64 x (*.f64 1/2 x)) 2)))) (-.f64 x (*.f64 1/2 x)))) (*.f64 1/4 (/.f64 1 (-.f64 x (*.f64 1/2 x))))) (pow.f64 y 3)) (-.f64 x (*.f64 1/2 x))))))) (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 x (*.f64 1/2 x)))))
(+.f64 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))) (-.f64 (fma.f64 -1 (*.f64 (*.f64 y y) (fma.f64 1/2 (/.f64 (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2)))) (+.f64 x (*.f64 -1/2 x))) (/.f64 1/4 (+.f64 x (*.f64 -1/2 x))))) (fma.f64 (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2)))) y (*.f64 1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 1/2 (-.f64 (/.f64 x (+.f64 x (*.f64 -1/2 x))) (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (pow.f64 (+.f64 x (*.f64 -1/2 x)) 2)))) (+.f64 x (*.f64 -1/2 x))) (/.f64 1/4 (+.f64 x (*.f64 -1/2 x)))) (/.f64 (+.f64 x (*.f64 -1/2 x)) (pow.f64 y 3)))))) (*.f64 1/4 (/.f64 (*.f64 x x) (+.f64 x (*.f64 -1/2 x))))))
(+.f64 (-.f64 (fma.f64 y (*.f64 1/2 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2)))) (*.f64 1/2 (*.f64 (/.f64 (+.f64 (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2)))) (*.f64 x 1/2)) (/.f64 1/4 (*.f64 x 1/2))) (*.f64 x 1/2)) (pow.f64 y 3)))) (*.f64 y (*.f64 y (+.f64 (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x x) 3/4) (pow.f64 (*.f64 x 1/2) 2)))) (*.f64 x 1/2)) (/.f64 1/4 (*.f64 x 1/2)))))) (/.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 x 1/2)))
(+.f64 (+.f64 (*.f64 y (-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 x (*.f64 x 3/4)) (*.f64 x (*.f64 x 1/4))))) (*.f64 (fma.f64 1/2 (+.f64 (/.f64 1 (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x (*.f64 x 3/4)) -1/2) (pow.f64 (*.f64 x 1/2) 3))) (/.f64 1/4 (*.f64 x 1/2))) y))) (/.f64 (*.f64 (fma.f64 1/2 (+.f64 (/.f64 1 (*.f64 x 1/2)) (/.f64 (*.f64 (*.f64 x (*.f64 x 3/4)) -1/2) (pow.f64 (*.f64 x 1/2) 3))) (/.f64 1/4 (*.f64 x 1/2))) 1/2) (/.f64 (*.f64 x 1/2) (pow.f64 y 3)))) (*.f64 3/4 (/.f64 x (/.f64 (*.f64 x 1/2) x))))
(*.f64 -1/2 y)
(*.f64 y -1/2)
(-.f64 (+.f64 (*.f64 -1/2 y) x) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) y)) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))) y)) (*.f64 -1 (-.f64 x (*.f64 1/2 x)))))
(-.f64 (fma.f64 -1/2 y (fma.f64 2 (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) y) x)) (fma.f64 2 (/.f64 (+.f64 x (*.f64 -1/2 x)) (/.f64 y (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x)))))) (neg.f64 (+.f64 x (*.f64 -1/2 x)))))
(-.f64 (fma.f64 y -1/2 (fma.f64 2 (/.f64 (*.f64 (*.f64 x x) 3/4) y) x)) (fma.f64 2 (*.f64 (/.f64 (*.f64 x 1/2) y) (+.f64 x (*.f64 x 1/2))) (*.f64 x -1/2)))
(-.f64 (fma.f64 y -1/2 (fma.f64 2 (/.f64 (*.f64 x (*.f64 x 3/4)) y) x)) (fma.f64 2 (*.f64 (/.f64 (*.f64 x 1/2) y) (*.f64 x 3/2)) (*.f64 x -1/2)))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) (-.f64 x (*.f64 1/2 x))) (pow.f64 y 2))) (+.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2))) y)) x))) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))) y)) (*.f64 -1 (-.f64 x (*.f64 1/2 x)))))
(-.f64 (fma.f64 -1/2 y (fma.f64 -2 (/.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 (+.f64 x (*.f64 -1/2 x)) (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x))))))) (/.f64 (*.f64 y y) (+.f64 x (*.f64 -1/2 x)))) (fma.f64 2 (/.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) y) x))) (fma.f64 2 (/.f64 (+.f64 x (*.f64 -1/2 x)) (/.f64 y (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x)))))) (neg.f64 (+.f64 x (*.f64 -1/2 x)))))
(fma.f64 y -1/2 (-.f64 (fma.f64 -2 (*.f64 (/.f64 (*.f64 2 (+.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 x -1/2) (+.f64 x (*.f64 x 1/2))))) y) (/.f64 (*.f64 x 1/2) y)) (fma.f64 2 (/.f64 (*.f64 (*.f64 x x) 3/4) y) x)) (fma.f64 2 (*.f64 (/.f64 (*.f64 x 1/2) y) (+.f64 x (*.f64 x 1/2))) (*.f64 x -1/2))))
(-.f64 (fma.f64 y -1/2 (fma.f64 -2 (*.f64 (/.f64 2 (/.f64 y (fma.f64 x (*.f64 x 3/4) (*.f64 (*.f64 x 3/2) (*.f64 x -1/2))))) (/.f64 (*.f64 x 1/2) y)) (fma.f64 2 (/.f64 (*.f64 x (*.f64 x 3/4)) y) x))) (fma.f64 2 (*.f64 (/.f64 (*.f64 x 1/2) y) (*.f64 x 3/2)) (*.f64 x -1/2)))
(*.f64 -1/2 y)
(*.f64 y -1/2)
(-.f64 (+.f64 (*.f64 -1/2 y) x) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 y -1/2 (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 y -1/2))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) y)) x)) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(-.f64 (fma.f64 -1/2 y (fma.f64 -1 (/.f64 (*.f64 -2 (-.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 (+.f64 x (*.f64 -1/2 x)) (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x))))))) y) x)) (neg.f64 (+.f64 x (*.f64 -1/2 x))))
(+.f64 (fma.f64 y -1/2 (/.f64 (*.f64 2 (+.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 x -1/2) (+.f64 x (*.f64 x 1/2))))) y)) (+.f64 x (*.f64 x 1/2)))
(+.f64 (fma.f64 y -1/2 (/.f64 2 (/.f64 y (fma.f64 x (*.f64 x 3/4) (*.f64 (*.f64 x 3/2) (*.f64 x -1/2)))))) (*.f64 x 3/2))
(-.f64 (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) (-.f64 x (*.f64 1/2 x))) (pow.f64 y 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 -2 (-.f64 (pow.f64 x 2) (*.f64 1/4 (pow.f64 x 2)))) (*.f64 -2 (*.f64 (-.f64 x (*.f64 1/2 x)) (-.f64 x (*.f64 -1 (-.f64 x (*.f64 1/2 x))))))) y)) x))) (*.f64 -1 (-.f64 x (*.f64 1/2 x))))
(-.f64 (fma.f64 -1/2 y (fma.f64 2 (/.f64 (*.f64 -2 (-.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 (+.f64 x (*.f64 -1/2 x)) (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x))))))) (/.f64 (*.f64 y y) (+.f64 x (*.f64 -1/2 x)))) (fma.f64 -1 (/.f64 (*.f64 -2 (-.f64 (+.f64 (*.f64 x x) (*.f64 -1/4 (*.f64 x x))) (*.f64 (+.f64 x (*.f64 -1/2 x)) (-.f64 x (neg.f64 (+.f64 x (*.f64 -1/2 x))))))) y) x))) (neg.f64 (+.f64 x (*.f64 -1/2 x))))
(+.f64 (*.f64 x 1/2) (+.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 -2 (+.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 x -1/2) (+.f64 x (*.f64 x 1/2))))) (*.f64 y y)) (*.f64 x 1/2)) (/.f64 (*.f64 2 (+.f64 (*.f64 (*.f64 x x) 3/4) (*.f64 (*.f64 x -1/2) (+.f64 x (*.f64 x 1/2))))) y)) (fma.f64 y -1/2 x)))
(fma.f64 y -1/2 (+.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 -2 (fma.f64 x (*.f64 x 3/4) (*.f64 (*.f64 x 3/2) (*.f64 x -1/2)))) (*.f64 y y)) (*.f64 x 1/2)) (/.f64 2 (/.f64 y (fma.f64 x (*.f64 x 3/4) (*.f64 (*.f64 x 3/2) (*.f64 x -1/2)))))) (*.f64 x 3/2)))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(*.f64 1/2 x)
(*.f64 x 1/2)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(*.f64 1/2 x)
(*.f64 x 1/2)
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(+.f64 (*.f64 1/2 x) (*.f64 1/2 y))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 x (*.f64 1/2 x))
(*.f64 x 1/2)
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(*.f64 1/2 y)
(*.f64 y 1/2)
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(*.f64 1/2 y)
(*.f64 y 1/2)
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 y) x) (*.f64 1/2 x))
(*.f64 1/2 (+.f64 x y))
(*.f64 1/2 (+.f64 y x))

localize14.0ms (0.2%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)
0.0b
(fma.f64 (-.f64 x y) 1/2 x)
0.0b
(sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))
0.0b
(sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))
0.0b
(fma.f64 (-.f64 x y) 1/2 x)
0.2b
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)
Compiler

Compiled 31 to 15 computations (51.6% saved)

series19.0ms (0.3%)

Counts
3 → 40
Calls

18 calls:

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

rewrite52.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
852×pow1_binary64
794×add-log-exp_binary64
793×log1p-expm1-u_binary64
793×expm1-log1p-u_binary64
777×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0926
119626
2214626
Stop Event
node limit
Counts
3 → 68
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)
(fma.f64 (-.f64 x y) 1/2 x)
(sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) (*.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4)) (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 x y) 1/2) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 x y) 1/2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) 1/2)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x y) 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 x y) 1/2 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 x y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 x y) 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 x y) 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) (*.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4)) (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 x y) 1/2) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) 1/2)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 x y) 1/2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) 1/2)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 x y) 1/2 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 x y) 1/2 x) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (-.f64 x y) 1/2 x))))))))

simplify54.0ms (0.8%)

Algorithm
egg-herbie
Rules
593×fma-def_binary64
422×associate-*l*_binary64
411×associate-*r*_binary64
305×associate-/r*_binary64
282×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01291016
1377828
21261664
36048588
Stop Event
node limit
Counts
108 → 79
Calls
Call 1
Inputs
(*.f64 y (pow.f64 (sqrt.f64 -1/2) 2))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (*.f64 3/2 x))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (+.f64 (*.f64 3/2 x) (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 81/256 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2))) (*.f64 405/1024 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))))) (pow.f64 x 4))))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (+.f64 (*.f64 3/2 x) (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 81/256 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2))) (*.f64 405/1024 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))))) (pow.f64 x 4))))
(+.f64 (*.f64 1/2 x) x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 y 4) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (*.f64 1/1024 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))))) x)))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 y 4) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (*.f64 1/1024 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))))) (+.f64 (*.f64 (pow.f64 y 5) (+.f64 (*.f64 1/2048 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 4))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2048 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 4))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) (+.f64 (*.f64 1/2 x) x))))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) (+.f64 (*.f64 1/2 x) x)))))) x))))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 x) x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(*.f64 (sqrt.f64 y) (sqrt.f64 -1/2))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (+.f64 (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))) (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 -1/2) 3))))))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (+.f64 (*.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5)))) (+.f64 (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))) (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 -1/2) 3)))))))
(sqrt.f64 (+.f64 (*.f64 1/2 x) x))
(+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x)))
(+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x))))
(+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 -1/128 (*.f64 (pow.f64 y 3) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 5))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x)))))
Outputs
(*.f64 y (pow.f64 (sqrt.f64 -1/2) 2))
(*.f64 y -1/2)
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (+.f64 (*.f64 3/2 x) (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 81/256 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2))) (*.f64 405/1024 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))))) (pow.f64 x 4))))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (fma.f64 3/2 x (*.f64 (fma.f64 -1 (+.f64 (/.f64 81/256 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2)) (/.f64 405/1024 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 x 4))))
(fma.f64 y -1/2 (fma.f64 (-.f64 (/.f64 -405/128 (pow.f64 y 3)) (+.f64 (/.f64 -81/32 (pow.f64 y 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (/.f64 -2 (sqrt.f64 -1/2)) -9/32)) 2))) (pow.f64 x 4) (*.f64 3/2 x)))
(fma.f64 (-.f64 (*.f64 (/.f64 -8 (pow.f64 y 3)) 81/1024) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 9/16 (sqrt.f64 -1/2))) 2)) (pow.f64 x 4) (fma.f64 3/2 x (*.f64 y -1/2)))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 -1/2) 2)) (+.f64 (*.f64 3/2 x) (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 81/256 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2))) (*.f64 405/1024 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))))) (pow.f64 x 4))))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (fma.f64 3/2 x (*.f64 (fma.f64 -1 (+.f64 (/.f64 81/256 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6))) (pow.f64 (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 1 (pow.f64 (sqrt.f64 -1/2) 3)))) 2)) (/.f64 405/1024 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1/2) 6)))) (pow.f64 x 4))))
(fma.f64 y -1/2 (fma.f64 (-.f64 (/.f64 -405/128 (pow.f64 y 3)) (+.f64 (/.f64 -81/32 (pow.f64 y 3)) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (/.f64 -2 (sqrt.f64 -1/2)) -9/32)) 2))) (pow.f64 x 4) (*.f64 3/2 x)))
(fma.f64 (-.f64 (*.f64 (/.f64 -8 (pow.f64 y 3)) 81/1024) (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 9/16 (sqrt.f64 -1/2))) 2)) (pow.f64 x 4) (fma.f64 3/2 x (*.f64 y -1/2)))
(+.f64 (*.f64 1/2 x) x)
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 y 4) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (*.f64 1/1024 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))))) x)))
(fma.f64 -1/2 y (fma.f64 1/2 x (fma.f64 (pow.f64 y 4) (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (fma.f64 -1 (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3)))) 2)) (/.f64 1/1024 (pow.f64 (*.f64 3/2 x) 3)))) x)))
(fma.f64 y -1/2 (fma.f64 x 1/2 (fma.f64 (pow.f64 y 4) (+.f64 (/.f64 1/1024 (*.f64 (pow.f64 x 3) 27/8)) (-.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (+.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8)))) 2)))) x)))
(fma.f64 y -1/2 (fma.f64 3/2 x (*.f64 (pow.f64 y 4) (-.f64 (*.f64 (/.f64 8/27 (pow.f64 x 3)) 5/1024) (*.f64 (/.f64 8/27 (pow.f64 x 3)) 5/1024)))))
(fma.f64 y -1/2 (fma.f64 (pow.f64 y 4) 0 (*.f64 3/2 x)))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 y 4) (+.f64 (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (*.f64 1/1024 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))))) (+.f64 (*.f64 (pow.f64 y 5) (+.f64 (*.f64 1/2048 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 4))) (+.f64 (*.f64 -1 (+.f64 (*.f64 1/2048 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 4))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) (+.f64 (*.f64 1/2 x) x))))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) 2) (*.f64 1/256 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3)))) (+.f64 (*.f64 1/2 x) x)))))) x))))
(fma.f64 -1/2 y (fma.f64 1/2 x (fma.f64 (pow.f64 y 4) (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (fma.f64 -1 (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3)))) 2)) (/.f64 1/1024 (pow.f64 (*.f64 3/2 x) 3)))) (fma.f64 (pow.f64 y 5) (+.f64 (/.f64 1/2048 (pow.f64 (*.f64 3/2 x) 4)) (fma.f64 -1 (+.f64 (/.f64 1/2048 (pow.f64 (*.f64 3/2 x) 4)) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3)))) 2))) (*.f64 3/2 x))) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/256 (pow.f64 (*.f64 3/2 x) 3)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3)))) 2))) (*.f64 3/2 x)))) x))))
(fma.f64 y -1/2 (fma.f64 x 1/2 (fma.f64 (pow.f64 y 4) (+.f64 (/.f64 1/1024 (*.f64 (pow.f64 x 3) 27/8)) (-.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (+.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8)))) 2)))) (fma.f64 (pow.f64 y 5) (+.f64 (/.f64 1/2048 (pow.f64 (*.f64 3/2 x) 4)) (-.f64 (*.f64 1/6 (/.f64 (+.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8)))) 2)) x)) (+.f64 (/.f64 1/2048 (pow.f64 (*.f64 3/2 x) 4)) (*.f64 1/6 (/.f64 (+.f64 (/.f64 1/256 (*.f64 (pow.f64 x 3) 27/8)) (pow.f64 (*.f64 -1/32 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8)))) 2)) x))))) x))))
(fma.f64 y -1/2 (fma.f64 (pow.f64 y 4) (-.f64 (*.f64 (/.f64 8/27 (pow.f64 x 3)) 5/1024) (*.f64 (/.f64 8/27 (pow.f64 x 3)) 5/1024)) (fma.f64 x 1/2 (fma.f64 (pow.f64 y 5) (*.f64 0 (fma.f64 1/6 (/.f64 (*.f64 (/.f64 8/27 (pow.f64 x 3)) 5/1024) x) (/.f64 1/2048 (*.f64 (pow.f64 x 4) 81/16)))) x))))
(fma.f64 y -1/2 (fma.f64 (pow.f64 y 4) 0 (fma.f64 x 1/2 (fma.f64 (pow.f64 y 5) 0 x))))
(*.f64 -1/2 y)
(*.f64 y (pow.f64 (sqrt.f64 -1/2) 2))
(*.f64 y -1/2)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 1/2 x) x)
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(*.f64 -1/2 y)
(*.f64 y (pow.f64 (sqrt.f64 -1/2) 2))
(*.f64 y -1/2)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(*.f64 -1/2 y)
(*.f64 y (pow.f64 (sqrt.f64 -1/2) 2))
(*.f64 y -1/2)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 -1/2 y) x))
(fma.f64 y (pow.f64 (sqrt.f64 -1/2) 2) (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -1/2))
(*.f64 (sqrt.f64 y) (sqrt.f64 -1/2))
(*.f64 (sqrt.f64 -1/2) (sqrt.f64 y))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))))
(fma.f64 (sqrt.f64 y) (sqrt.f64 -1/2) (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 -1/2) (sqrt.f64 y)))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (+.f64 (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))) (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 -1/2) 3))))))
(fma.f64 (sqrt.f64 y) (sqrt.f64 -1/2) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) (/.f64 (*.f64 x x) (pow.f64 (sqrt.f64 -1/2) 3)))))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 -1/2)) (/.f64 x -1/2)) (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))))))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (sqrt.f64 -1/2) (*.f64 x x))) 9/16)))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (*.f64 (/.f64 x (sqrt.f64 -1/2)) (+.f64 (*.f64 3/4 (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) (/.f64 x -1/2)))))
(+.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 -1/2)) (+.f64 (*.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5)))) (+.f64 (*.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2)))) (*.f64 -9/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 -1/2) 3)))))))
(fma.f64 (sqrt.f64 y) (sqrt.f64 -1/2) (fma.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5))) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) (/.f64 (*.f64 x x) (pow.f64 (sqrt.f64 -1/2) 3))))))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (fma.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5))) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 -1/2)) (/.f64 x -1/2)) (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3))))))))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (sqrt.f64 -1/2))) (fma.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5))) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (/.f64 (sqrt.f64 -1/2) (*.f64 x x))) 9/16))))
(fma.f64 (sqrt.f64 -1/2) (sqrt.f64 y) (fma.f64 27/128 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1/2) 5))) (*.f64 (/.f64 x (sqrt.f64 -1/2)) (+.f64 (*.f64 3/4 (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -9/32 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) (/.f64 x -1/2))))))
(sqrt.f64 (+.f64 (*.f64 1/2 x) x))
(sqrt.f64 (*.f64 3/2 x))
(+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x)))
(fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (*.f64 3/2 x)))) (sqrt.f64 (*.f64 3/2 x)))
(fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 2/3 x))) (sqrt.f64 (*.f64 3/2 x)))
(fma.f64 y (*.f64 -1/4 (sqrt.f64 (/.f64 2/3 x))) (sqrt.f64 (*.f64 3/2 x)))
(+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x))))
(fma.f64 -1/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3))) (*.f64 y y)) (fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (*.f64 3/2 x)))) (sqrt.f64 (*.f64 3/2 x))))
(fma.f64 -1/32 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8))) (*.f64 y y)) (fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 2/3 x))) (sqrt.f64 (*.f64 3/2 x))))
(fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 2/3 x))) (fma.f64 (sqrt.f64 (/.f64 8/27 (pow.f64 x 3))) (*.f64 y (*.f64 y -1/32)) (sqrt.f64 (*.f64 3/2 x))))
(+.f64 (*.f64 -1/32 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 3))))) (+.f64 (*.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (+.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 -1/128 (*.f64 (pow.f64 y 3) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 1/2 x) x) 5))))) (sqrt.f64 (+.f64 (*.f64 1/2 x) x)))))
(fma.f64 -1/32 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 3))) (*.f64 y y)) (fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 1 (*.f64 3/2 x)))) (fma.f64 -1/128 (*.f64 (pow.f64 y 3) (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 5)))) (sqrt.f64 (*.f64 3/2 x)))))
(fma.f64 -1/32 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 x 3) 27/8))) (*.f64 y y)) (fma.f64 -1/4 (*.f64 y (sqrt.f64 (/.f64 2/3 x))) (fma.f64 -1/128 (*.f64 (pow.f64 y 3) (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 5)))) (sqrt.f64 (*.f64 3/2 x)))))
(fma.f64 -1/32 (*.f64 (sqrt.f64 (/.f64 8/27 (pow.f64 x 3))) (*.f64 y y)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 3/2 x) 5))) (*.f64 (pow.f64 y 3) -1/128) (fma.f64 y (*.f64 -1/4 (sqrt.f64 (/.f64 2/3 x))) (sqrt.f64 (*.f64 3/2 x)))))

localize15.0ms (0.2%)

Local error

Found 6 expressions with local error:

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

Compiled 32 to 15 computations (53.1% saved)

series11.0ms (0.2%)

Counts
3 → 18
Calls

12 calls:

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

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
746×prod-diff_binary64
431×log-prod_binary64
283×pow-prod-down_binary64
262×fma-def_binary64
255×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify2.2s (33.9%)

Algorithm
egg-herbie
Rules
1978×sqr-pow_binary64
1977×pow-base-1_binary64
28×fma-def_binary64
+-commutative_binary64
associate-+r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018120
146120
278120
393120
4105120
5109120
6113120
7117120
8121120
9125120
10129120
11133120
12137120
13141120
14145120
15149120
16153120
17157120
18161120
19165120
20169120
21173120
22177120
23181120
24185120
25189120
26193120
27197120
28201120
29205120
30209120
31213120
32217120
33221120
34225120
35229120
36233120
37237120
38241120
39245120
40249120
41253120
42257120
43261120
44265120
45269120
46273120
47277120
48281120
49285120
50289120
51293120
52297120
53301120
54305120
55309120
56313120
57317120
58321120
59325120
60329120
61333120
62337120
63341120
64345120
65349120
66353120
67357120
68361120
69365120
70369120
71373120
72377120
73381120
74385120
75389120
76393120
77397120
78401120
79405120
80409120
81413120
82417120
83421120
84425120
85429120
86433120
87437120
88441120
89445120
90449120
91453120
92457120
93461120
94465120
95469120
96473120
97477120
98481120
99485120
100489120
101493120
102497120
103501120
104505120
105509120
106513120
107517120
108521120
109525120
110529120
111533120
112537120
113541120
114545120
115549120
116553120
117557120
118561120
119565120
120569120
121573120
122577120
123581120
124585120
125589120
126593120
127597120
128601120
129605120
130609120
131613120
132617120
133621120
134625120
135629120
136633120
137637120
138641120
139645120
140649120
141653120
142657120
143661120
144665120
145669120
146673120
147677120
148681120
149685120
150689120
151693120
152697120
153701120
154705120
155709120
156713120
157717120
158721120
159725120
160729120
161733120
162737120
163741120
164745120
165749120
166753120
167757120
168761120
169765120
170769120
171773120
172777120
173781120
174785120
175789120
176793120
177797120
178801120
179805120
180809120
181813120
182817120
183821120
184825120
185829120
186833120
187837120
188841120
189845120
190849120
191853120
192857120
193861120
194865120
195869120
196873120
197877120
198881120
199885120
200889120
201893120
202897120
203901120
204905120
205909120
206913120
207917120
208921120
209925120
210929120
211933120
212937120
213941120
214945120
215949120
216953120
217957120
218961120
219965120
220969120
221973120
222977120
223981120
224985120
225989120
226993120
227997120
2281001120
2291005120
2301009120
2311013120
2321017120
2331021120
2341025120
2351029120
2361033120
2371037120
2381041120
2391045120
2401049120
2411053120
2421057120
2431061120
2441065120
2451069120
2461073120
2471077120
2481081120
2491085120
2501089120
2511093120
2521097120
2531101120
2541105120
2551109120
2561113120
2571117120
2581121120
2591125120
2601129120
2611133120
2621137120
2631141120
2641145120
2651149120
2661153120
2671157120
2681161120
2691165120
2701169120
2711173120
2721177120
2731181120
2741185120
2751189120
2761193120
2771197120
2781201120
2791205120
2801209120
2811213120
2821217120
2831221120
2841225120
2851229120
2861233120
2871237120
2881241120
2891245120
2901249120
2911253120
2921257120
2931261120
2941265120
2951269120
2961273120
2971277120
2981281120
2991285120
3001289120
3011293120
3021297120
3031301120
3041305120
3051309120
3061313120
3071317120
3081321120
3091325120
3101329120
3111333120
3121337120
3131341120
3141345120
3151349120
3161353120
3171357120
3181361120
3191365120
3201369120
3211373120
3221377120
3231381120
3241385120
3251389120
3261393120
3271397120
3281401120
3291405120
3301409120
3311413120
3321417120
3331421120
3341425120
3351429120
3361433120
3371437120
3381441120
3391445120
3401449120
3411453120
3421457120
3431461120
3441465120
3451469120
3461473120
3471477120
3481481120
3491485120
3501489120
3511493120
3521497120
3531501120
3541505120
3551509120
3561513120
3571517120
3581521120
3591525120
3601529120
3611533120
3621537120
3631541120
3641545120
3651549120
3661553120
3671557120
3681561120
3691565120
3701569120
3711573120
3721577120
3731581120
3741585120
3751589120
3761593120
3771597120
3781601120
3791605120
3801609120
3811613120
3821617120
3831621120
3841625120
3851629120
3861633120
3871637120
3881641120
3891645120
3901649120
3911653120
3921657120
3931661120
3941665120
3951669120
3961673120
3971677120
3981681120
3991685120
4001689120
4011693120
4021697120
4031701120
4041705120
4051709120
4061713120
4071717120
4081721120
4091725120
4101729120
4111733120
4121737120
4131741120
4141745120
4151749120
4161753120
4171757120
4181761120
4191765120
4201769120
4211773120
4221777120
4231781120
4241785120
4251789120
4261793120
4271797120
4281801120
4291805120
4301809120
4311813120
4321817120
4331821120
4341825120
4351829120
4361833120
4371837120
4381841120
4391845120
4401849120
4411853120
4421857120
4431861120
4441865120
4451869120
4461873120
4471877120
4481881120
4491885120
4501889120
4511893120
4521897120
4531901120
4541905120
4551909120
4561913120
4571917120
4581921120
4591925120
4601929120
4611933120
4621937120
4631941120
4641945120
4651949120
4661953120
4671957120
4681961120
4691965120
4701969120
4711973120
4721977120
4731981120
4741985120
4751989120
4761993120
4771997120
4782001120
4792005120
4802009120
4812013120
4822017120
4832021120
4842025120
4852029120
4862033120
4872037120
4882041120
4892045120
4902049120
4912053120
4922057120
4932061120
4942065120
4952069120
4962073120
4972077120
4982081120
4992085120
5002089120
5012093120
5022097120
5032101120
5042105120
5052109120
5062113120
5072117120
5082121120
5092125120
5102129120
5112133120
5122137120
5132141120
5142145120
5152149120
5162153120
5172157120
5182161120
5192165120
5202169120
5212173120
5222177120
5232181120
5242185120
5252189120
5262193120
5272197120
5282201120
5292205120
5302209120
5312213120
5322217120
5332221120
5342225120
5352229120
5362233120
5372237120
5382241120
5392245120
5402249120
5412253120
5422257120
5432261120
5442265120
5452269120
5462273120
5472277120
5482281120
5492285120
5502289120
5512293120
5522297120
5532301120
5542305120
5552309120
5562313120
5572317120
5582321120
5592325120
5602329120
5612333120
5622337120
5632341120
5642345120
5652349120
5662353120
5672357120
5682361120
5692365120
5702369120
5712373120
5722377120
5732381120
5742385120
5752389120
5762393120
5772397120
5782401120
5792405120
5802409120
5812413120
5822417120
5832421120
5842425120
5852429120
5862433120
5872437120
5882441120
5892445120
5902449120
5912453120
5922457120
5932461120
5942465120
5952469120
5962473120
5972477120
5982481120
5992485120
6002489120
6012493120
6022497120
6032501120
6042505120
6052509120
6062513120
6072517120
6082521120
6092525120
6102529120
6112533120
6122537120
6132541120
6142545120
6152549120
6162553120
6172557120
6182561120
6192565120
6202569120
6212573120
6222577120
6232581120
6242585120
6252589120
6262593120
6272597120
6282601120
6292605120
6302609120
6312613120
6322617120
6332621120
6342625120
6352629120
6362633120
6372637120
6382641120
6392645120
6402649120
6412653120
6422657120
6432661120
6442665120
6452669120
6462673120
6472677120
6482681120
6492685120
6502689120
6512693120
6522697120
6532701120
6542705120
6552709120
6562713120
6572717120
6582721120
6592725120
6602729120
6612733120
6622737120
6632741120
6642745120
6652749120
6662753120
6672757120
6682761120
6692765120
6702769120
6712773120
6722777120
6732781120
6742785120
6752789120
6762793120
6772797120
6782801120
6792805120
6802809120
6812813120
6822817120
6832821120
6842825120
6852829120
6862833120
6872837120
6882841120
6892845120
6902849120
6912853120
6922857120
6932861120
6942865120
6952869120
6962873120
6972877120
6982881120
6992885120
7002889120
7012893120
7022897120
7032901120
7042905120
7052909120
7062913120
7072917120
7082921120
7092925120
7102929120
7112933120
7122937120
7132941120
7142945120
7152949120
7162953120
7172957120
7182961120
7192965120
7202969120
7212973120
7222977120
7232981120
7242985120
7252989120
7262993120
7272997120
7283001120
7293005120
7303009120
7313013120
7323017120
7333021120
7343025120
7353029120
7363033120
7373037120
7383041120
7393045120
7403049120
7413053120
7423057120
7433061120
7443065120
7453069120
7463073120
7473077120
7483081120
7493085120
7503089120
7513093120
7523097120
7533101120
7543105120
7553109120
7563113120
7573117120
7583121120
7593125120
7603129120
7613133120
7623137120
7633141120
7643145120
7653149120
7663153120
7673157120
7683161120
7693165120
7703169120
7713173120
7723177120
7733181120
7743185120
7753189120
7763193120
7773197120
7783201120
7793205120
7803209120
7813213120
7823217120
7833221120
7843225120
7853229120
7863233120
7873237120
7883241120
7893245120
7903249120
7913253120
7923257120
7933261120
7943265120
7953269120
7963273120
7973277120
7983281120
7993285120
8003289120
8013293120
8023297120
8033301120
8043305120
8053309120
8063313120
8073317120
8083321120
8093325120
8103329120
8113333120
8123337120
8133341120
8143345120
8153349120
8163353120
8173357120
8183361120
8193365120
8203369120
8213373120
8223377120
8233381120
8243385120
8253389120
8263393120
8273397120
8283401120
8293405120
8303409120
8313413120
8323417120
8333421120
8343425120
8353429120
8363433120
8373437120
8383441120
8393445120
8403449120
8413453120
8423457120
8433461120
8443465120
8453469120
8463473120
8473477120
8483481120
8493485120
8503489120
8513493120
8523497120
8533501120
8543505120
8553509120
8563513120
8573517120
8583521120
8593525120
8603529120
8613533120
8623537120
8633541120
8643545120
8653549120
8663553120
8673557120
8683561120
8693565120
8703569120
8713573120
8723577120
8733581120
8743585120
8753589120
8763593120
8773597120
8783601120
8793605120
8803609120
8813613120
8823617120
8833621120
8843625120
8853629120
8863633120
8873637120
8883641120
8893645120
8903649120
8913653120
8923657120
8933661120
8943665120
8953669120
8963673120
8973677120
8983681120
8993685120
9003689120
9013693120
9023697120
9033701120
9043705120
9053709120
9063713120
9073717120
9083721120
9093725120
9103729120
9113733120
9123737120
9133741120
9143745120
9153749120
9163753120
9173757120
9183761120
9193765120
9203769120
9213773120
9223777120
9233781120
9243785120
9253789120
9263793120
9273797120
9283801120
9293805120
9303809120
9313813120
9323817120
9333821120
9343825120
9353829120
9363833120
9373837120
9383841120
9393845120
9403849120
9413853120
9423857120
9433861120
9443865120
9453869120
9463873120
9473877120
9483881120
9493885120
9503889120
9513893120
9523897120
9533901120
9543905120
9553909120
9563913120
9573917120
9583921120
9593925120
9603929120
9613933120
9623937120
9633941120
9643945120
9653949120
9663953120
9673957120
9683961120
9693965120
9703969120
9713973120
9723977120
9733981120
9743985120
9753989120
9763993120
9773997120
9784001120
9794005120
9804009120
9814013120
9824017120
9834021120
9844025120
9854029120
9864033120
9874037120
9884041120
9894045120
9904049120
9914053120
9924057120
9934061120
9944065120
9954069120
9964073120
9974077120
9984081120
9994085120
10004089120
10014093120
10024097120
10034101120
10044105120
10054109120
10064113120
10074117120
10084121120
10094125120
10104129120
10114133120
10124137120
10134141120
10144145120
10154149120
10164153120
10174157120
10184161120
10194165120
10204169120
10214173120
10224177120
10234181120
10244185120
10254189120
10264193120
10274197120
10284201120
10294205120
10304209120
10314213120
10324217120
10334221120
10344225120
10354229120
10364233120
10374237120
10384241120
10394245120
10404249120
10414253120
10424257120
10434261120
10444265120
10454269120
10464273120
10474277120
10484281120
10494285120
10504289120
10514293120
10524297120
10534301120
10544305120
10554309120
10564313120
10574317120
10584321120
10594325120
10604329120
10614333120
10624337120
10634341120
10644345120
10654349120
10664353120
10674357120
10684361120
10694365120
10704369120
10714373120
10724377120
10734381120
10744385120
10754389120
10764393120
10774397120
10784401120
10794405120
10804409120
10814413120
10824417120
10834421120
10844425120
10854429120
10864433120
10874437120
10884441120
10894445120
10904449120
10914453120
10924457120
10934461120
10944465120
10954469120
10964473120
10974477120
10984481120
10994485120
11004489120
11014493120
11024497120
11034501120
11044505120
11054509120
11064513120
11074517120
11084521120
11094525120
11104529120
11114533120
11124537120
11134541120
11144545120
11154549120
11164553120
11174557120
11184561120
11194565120
11204569120
11214573120
11224577120
11234581120
11244585120
11254589120
11264593120
11274597120
11284601120
11294605120
11304609120
11314613120
11324617120
11334621120
11344625120
11354629120
11364633120
11374637120
11384641120
11394645120
11404649120
11414653120
11424657120
11434661120
11444665120
11454669120
11464673120
11474677120
11484681120
11494685120
11504689120
11514693120
11524697120
11534701120
11544705120
11554709120
11564713120
11574717120
11584721120
11594725120
11604729120
11614733120
11624737120
11634741120
11644745120
11654749120
11664753120
11674757120
11684761120
11694765120
11704769120
11714773120
11724777120
11734781120
11744785120
11754789120
11764793120
11774797120
11784801120
11794805120
11804809120
11814813120
11824817120
11834821120
11844825120
11854829120
11864833120
11874837120
11884841120
11894845120
11904849120
11914853120
11924857120
11934861120
11944865120
11954869120
11964873120
11974877120
11984881120
11994885120
12004889120
12014893120
12024897120
12034901120
12044905120
12054909120
12064913120
12074917120
12084921120
12094925120
12104929120
12114933120
12124937120
12134941120
12144945120
12154949120
12164953120
12174957120
12184961120
12194965120
12204969120
12214973120
12224977120
12234981120
12244985120
12254989120
12264993120
12274997120
12285001120
12295005120
12305009120
12315013120
12325017120
12335021120
12345025120
12355029120
12365033120
12375037120
12385041120
12395045120
12405049120
12415053120
12425057120
12435061120
12445065120
12455069120
12465073120
12475077120
12485081120
12495085120
12505089120
12515093120
12525097120
12535101120
12545105120
12555109120
12565113120
12575117120
12585121120
12595125120
12605129120
12615133120
12625137120
12635141120
12645145120
12655149120
12665153120
12675157120
12685161120
12695165120
12705169120
12715173120
12725177120
12735181120
12745185120
12755189120
12765193120
12775197120
12785201120
12795205120
12805209120
12815213120
12825217120
12835221120
12845225120
12855229120
12865233120
12875237120
12885241120
12895245120
12905249120
12915253120
12925257120
12935261120
12945265120
12955269120
12965273120
12975277120
12985281120
12995285120
13005289120
13015293120
13025297120
13035301120
13045305120
13055309120
13065313120
13075317120
13085321120
13095325120
13105329120
13115333120
13125337120
13135341120
13145345120
13155349120
13165353120
13175357120
13185361120
13195365120
13205369120
13215373120
13225377120
13235381120
13245385120
13255389120
13265393120
13275397120
13285401120
13295405120
13305409120
13315413120
13325417120
13335421120
13345425120
13355429120
13365433120
13375437120
13385441120
13395445120
13405449120
13415453120
13425457120
13435461120
13445465120
13455469120
13465473120
13475477120
13485481120
13495485120
13505489120
13515493120
13525497120
13535501120
13545505120
13555509120
13565513120
13575517120
13585521120
13595525120
13605529120
13615533120
13625537120
13635541120
13645545120
13655549120
13665553120
13675557120
13685561120
13695565120
13705569120
13715573120
13725577120
13735581120
13745585120
13755589120
13765593120
13775597120
13785601120
13795605120
13805609120
13815613120
13825617120
13835621120
13845625120
13855629120
13865633120
13875637120
13885641120
13895645120
13905649120
13915653120
13925657120
13935661120
13945665120
13955669120
13965673120
13975677120
13985681120
13995685120
14005689120
14015693120
14025697120
14035701120
14045705120
14055709120
14065713120
14075717120
14085721120
14095725120
14105729120
14115733120
14125737120
14135741120
14145745120
14155749120
14165753120
14175757120
14185761120
14195765120
14205769120
14215773120
14225777120
14235781120
14245785120
14255789120
14265793120
14275797120
14285801120
14295805120
14305809120
14315813120
14325817120
14335821120
14345825120
14355829120
14365833120
14375837120
14385841120
14395845120
14405849120
14415853120
14425857120
14435861120
14445865120
14455869120
14465873120
14475877120
14485881120
14495885120
14505889120
14515893120
14525897120
14535901120
14545905120
14555909120
14565913120
14575917120
14585921120
14595925120
14605929120
14615933120
14625937120
14635941120
14645945120
14655949120
14665953120
14675957120
14685961120
14695965120
14705969120
14715973120
14725977120
14735981120
14745985120
14755989120
14765993120
14775997120
14786001120
14796005120
14806009120
14816013120
14826017120
14836021120
14846025120
14856029120
14866033120
14876037120
14886041120
14896045120
14906049120
14916053120
14926057120
14936061120
14946065120
14956069120
14966073120
14976077120
14986081120
14996085120
15006089120
15016093120
15026097120
15036101120
15046105120
15056109120
15066113120
15076117120
15086121120
15096125120
15106129120
15116133120
15126137120
15136141120
15146145120
15156149120
15166153120
15176157120
15186161120
15196165120
15206169120
15216173120
15226177120
15236181120
15246185120
15256189120
15266193120
15276197120
15286201120
15296205120
15306209120
15316213120
15326217120
15336221120
15346225120
15356229120
15366233120
15376237120
15386241120
15396245120
15406249120
15416253120
15426257120
15436261120
15446265120
15456269120
15466273120
15476277120
15486281120
15496285120
15506289120
15516293120
15526297120
15536301120
15546305120
15556309120
15566313120
15576317120
15586321120
15596325120
15606329120
15616333120
15626337120
15636341120
15646345120
15656349120
15666353120
15676357120
15686361120
15696365120
15706369120
15716373120
15726377120
15736381120
15746385120
15756389120
15766393120
15776397120
15786401120
15796405120
15806409120
15816413120
15826417120
15836421120
15846425120
15856429120
15866433120
15876437120
15886441120
15896445120
15906449120
15916453120
15926457120
15936461120
15946465120
15956469120
15966473120
15976477120
15986481120
15996485120
16006489120
16016493120
16026497120
16036501120
16046505120
16056509120
16066513120
16076517120
16086521120
16096525120
16106529120
16116533120
16126537120
16136541120
16146545120
16156549120
16166553120
16176557120
16186561120
16196565120
16206569120
16216573120
16226577120
16236581120
16246585120
16256589120
16266593120
16276597120
16286601120
16296605120
16306609120
16316613120
16326617120
16336621120
16346625120
16356629120
16366633120
16376637120
16386641120
16396645120
16406649120
16416653120
16426657120
16436661120
16446665120
16456669120
16466673120
16476677120
16486681120
16496685120
16506689120
16516693120
16526697120
16536701120
16546705120
16556709120
16566713120
16576717120
16586721120
16596725120
16606729120
16616733120
16626737120
16636741120
16646745120
16656749120
16666753120
16676757120
16686761120
16696765120
16706769120
16716773120
16726777120
16736781120
16746785120
16756789120
16766793120
16776797120
16786801120
16796805120
16806809120
16816813120
16826817120
16836821120
16846825120
16856829120
16866833120
16876837120
16886841120
16896845120
16906849120
16916853120
16926857120
16936861120
16946865120
16956869120
16966873120
16976877120
16986881120
16996885120
17006889120
17016893120
17026897120
17036901120
17046905120
17056909120
17066913120
17076917120
17086921120
17096925120
17106929120
17116933120
17126937120
17136941120
17146945120
17156949120
17166953120
17176957120
17186961120
17196965120
17206969120
17216973120
17226977120
17236981120
17246985120
17256989120
17266993120
17276997120
17287001120
17297005120
17307009120
17317013120
17327017120
17337021120
17347025120
17357029120
17367033120
17377037120
17387041120
17397045120
17407049120
17417053120
17427057120
17437061120
17447065120
17457069120
17467073120
17477077120
17487081120
17497085120
17507089120
17517093120
17527097120
17537101120
17547105120
17557109120
17567113120
17577117120
17587121120
17597125120
17607129120
17617133120
17627137120
17637141120
17647145120
17657149120
17667153120
17677157120
17687161120
17697165120
17707169120
17717173120
17727177120
17737181120
17747185120
17757189120
17767193120
17777197120
17787201120
17797205120
17807209120
17817213120
17827217120
17837221120
17847225120
17857229120
17867233120
17877237120
17887241120
17897245120
17907249120
17917253120
17927257120
17937261120
17947265120
17957269120
17967273120
17977277120
17987281120
17997285120
18007289120
18017293120
18027297120
18037301120
18047305120
18057309120
18067313120
18077317120
18087321120
18097325120
18107329120
18117333120
18127337120
18137341120
18147345120
18157349120
18167353120
18177357120
18187361120
18197365120
18207369120
18217373120
18227377120
18237381120
18247385120
18257389120
18267393120
18277397120
18287401120
18297405120
18307409120
18317413120
18327417120
18337421120
18347425120
18357429120
18367433120
18377437120
18387441120
18397445120
18407449120
18417453120
18427457120
18437461120
18447465120
18457469120
18467473120
18477477120
18487481120
18497485120
18507489120
18517493120
18527497120
18537501120
18547505120
18557509120
18567513120
18577517120
18587521120
18597525120
18607529120
18617533120
18627537120
18637541120
18647545120
18657549120
18667553120
18677557120
18687561120
18697565120
18707569120
18717573120
18727577120
18737581120
18747585120
18757589120
18767593120
18777597120
18787601120
18797605120
18807609120
18817613120
18827617120
18837621120
18847625120
18857629120
18867633120
18877637120
18887641120
18897645120
18907649120
18917653120
18927657120
18937661120
18947665120
18957669120
18967673120
18977677120
18987681120
18997685120
19007689120
19017693120
19027697120
19037701120
19047705120
19057709120
19067713120
19077717120
19087721120
19097725120
19107729120
19117733120
19127737120
19137741120
19147745120
19157749120
19167753120
19177757120
19187761120
19197765120
19207769120
19217773120
19227777120
19237781120
19247785120
19257789120
19267793120
19277797120
19287801120
19297805120
19307809120
19317813120
19327817120
19337821120
19347825120
19357829120
19367833120
19377837120
19387841120
19397845120
19407849120
19417853120
19427857120
19437861120
19447865120
19457869120
19467873120
19477877120
19487881120
19497885120
19507889120
19517893120
19527897120
19537901120
19547905120
19557909120
19567913120
19577917120
19587921120
19597925120
19607929120
19617933120
19627937120
19637941120
19647945120
19657949120
19667953120
19677957120
19687961120
19697965120
19707969120
19717973120
19727977120
19737981120
19747985120
19757989120
19767993120
19777997120
Stop Event
node limit
Counts
116 → 108
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (*.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 y) (*.f64 1/2 x))
(+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 1/2 x))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
Outputs
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (*.f64 -1/2 y))
(fma.f64 -1/2 y (*.f64 1/2 x))
(fma.f64 1/2 x (*.f64 -1/2 y))
(*.f64 1/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 1/2 x))
(fma.f64 -1/2 y (*.f64 1/2 x))
(fma.f64 1/2 x (*.f64 -1/2 y))
(*.f64 1/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 1/2 x))
(fma.f64 -1/2 y (*.f64 1/2 x))
(fma.f64 1/2 x (*.f64 -1/2 y))
(+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 1/2 x))
(*.f64 x 3/2)
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 1 1/3) x)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(*.f64 -1/2 y)
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))
(+.f64 (*.f64 1/2 x) (+.f64 (*.f64 (pow.f64 1 1/3) x) (*.f64 -1/2 y)))
(fma.f64 -1/2 y (*.f64 x 3/2))
(fma.f64 x 3/2 (*.f64 -1/2 y))

eval433.0ms (6.7%)

Compiler

Compiled 21387 to 13047 computations (39% saved)

prune104.0ms (1.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New7614765
Fresh808
Picked101
Done224
Total7726778
Error
0b
Counts
778 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
31.7b
(*.f64 3/2 x)
31.8b
(/.f64 1 (/.f64 2/3 x))
30.8b
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 (-.f64 x y) 1/2)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
31.7b
(*.f64 -1/2 y)
0b
(fma.f64 x 3/2 (*.f64 y -1/2))
0.1b
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
Compiler

Compiled 59 to 41 computations (30.5% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x 3/2 (*.f64 y -1/2))
0.1b
(fma.f64 x 3/2 (*.f64 y -1/2))
Compiler

Compiled 15 to 10 computations (33.3% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite39.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
618×pow1_binary64
572×add-log-exp_binary64
572×log1p-expm1-u_binary64
572×expm1-log1p-u_binary64
562×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify11.0ms (0.2%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08168
112168
215168
Stop Event
saturated
Counts
45 → 25
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
Outputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))

localize23.0ms (0.4%)

Local error

Found 8 expressions with local error:

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

Compiled 72 to 31 computations (56.9% saved)

series11.0ms (0.2%)

Counts
4 → 96
Calls

24 calls:

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

rewrite103.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
747×log-prod_binary64
469×fma-neg_binary64
242×expm1-udef_binary64
242×log1p-udef_binary64
228×pow3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify60.0ms (0.9%)

Algorithm
egg-herbie
Rules
651×fma-def_binary64
515×associate-+l+_binary64
364×associate-+r+_binary64
362×associate-*l*_binary64
350×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01391948
14851862
216381485
Stop Event
node limit
Counts
371 → 327
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(-.f64 (+.f64 y (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(-.f64 (+.f64 y (+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 y (-.f64 y (*.f64 3/2 y))))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x)))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(*.f64 3/2 x)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y))))) x)) (+.f64 y (*.f64 3/2 x))) (*.f64 3/2 y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y))))) x)) (+.f64 y (+.f64 (/.f64 (*.f64 y (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y)))))) (pow.f64 x 2)) (*.f64 3/2 x)))) (*.f64 3/2 y))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (-.f64 (*.f64 1/2 x) x))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y 3) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 2 x) (*.f64 -1/2 y)) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)))) (+.f64 (*.f64 1/2 x) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 x) (*.f64 1/2 x)) (-.f64 (*.f64 1/2 x) x)) y))))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 -2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 -2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x)))))) (pow.f64 y 2))) (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))))) (+.f64 (*.f64 1/2 x) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 x) (*.f64 1/2 x)) (-.f64 (*.f64 1/2 x) x)) y))))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 2 x) (*.f64 -1/2 y)) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x))))) y)))) (*.f64 1/2 x))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x)))))) (pow.f64 y 2))) (+.f64 (*.f64 -1/2 y) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x))))) y))))) (*.f64 1/2 x))
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(*.f64 -3/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 -3/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(*.f64 -3/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 -3/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(*.f64 -1/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 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 y) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(-.f64 (*.f64 1/2 x) x)
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
Outputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(fma.f64 -1/2 y (*.f64 3/2 x))
(-.f64 (+.f64 y (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(-.f64 (+.f64 y (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 3/2 x))) (fma.f64 3/2 y (/.f64 (*.f64 y (-.f64 y (*.f64 y 3/2))) x)))
(-.f64 (+.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (*.f64 3/2 x)) (*.f64 -1/2 y)) (*.f64 (/.f64 y x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 y) (fma.f64 3/2 x (/.f64 0 x)))
(-.f64 (+.f64 y (+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 y (-.f64 y (*.f64 3/2 y))))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y 2) x)) (*.f64 3/2 x)))) (+.f64 (*.f64 3/2 y) (/.f64 (*.f64 y (-.f64 y (*.f64 3/2 y))) x)))
(+.f64 y (-.f64 (fma.f64 -1 (/.f64 y (/.f64 (*.f64 x x) (-.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 y (-.f64 y (*.f64 y 3/2)))))) (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 3/2 x))) (fma.f64 3/2 y (/.f64 (*.f64 y (-.f64 y (*.f64 y 3/2))) x))))
(-.f64 (+.f64 (-.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (*.f64 3/2 x)) (*.f64 (/.f64 y x) (/.f64 (-.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 -1/2 (*.f64 y y))) x))) (*.f64 -1/2 y)) (*.f64 (/.f64 y x) (*.f64 -1/2 y)))
(fma.f64 y -3/2 (+.f64 (/.f64 0 x) (fma.f64 (/.f64 y (*.f64 x x)) 0 (fma.f64 3/2 x y))))
(*.f64 3/2 x)
(-.f64 (+.f64 y (*.f64 3/2 x)) (*.f64 3/2 y))
(fma.f64 -1/2 y (*.f64 3/2 x))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y))))) x)) (+.f64 y (*.f64 3/2 x))) (*.f64 3/2 y))
(-.f64 (+.f64 y (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 3/2 x))) (fma.f64 3/2 y (/.f64 (*.f64 y (-.f64 y (*.f64 y 3/2))) x)))
(-.f64 (+.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (*.f64 3/2 x)) (*.f64 -1/2 y)) (*.f64 (/.f64 y x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 y) (fma.f64 3/2 x (/.f64 0 x)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y))))) x)) (+.f64 y (+.f64 (/.f64 (*.f64 y (-.f64 (*.f64 1/2 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 y (*.f64 3/2 y)))))) (pow.f64 x 2)) (*.f64 3/2 x)))) (*.f64 3/2 y))
(+.f64 y (-.f64 (fma.f64 -1 (/.f64 y (/.f64 (*.f64 x x) (-.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 y (-.f64 y (*.f64 y 3/2)))))) (fma.f64 -1/2 (/.f64 (*.f64 y y) x) (*.f64 3/2 x))) (fma.f64 3/2 y (/.f64 (*.f64 y (-.f64 y (*.f64 y 3/2))) x))))
(-.f64 (+.f64 (-.f64 (fma.f64 -1/2 (/.f64 y (/.f64 x y)) (*.f64 3/2 x)) (*.f64 (/.f64 y x) (/.f64 (-.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 -1/2 (*.f64 y y))) x))) (*.f64 -1/2 y)) (*.f64 (/.f64 y x) (*.f64 -1/2 y)))
(fma.f64 y -3/2 (+.f64 (/.f64 0 x) (fma.f64 (/.f64 y (*.f64 x x)) 0 (fma.f64 3/2 x y))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (-.f64 (*.f64 1/2 x) x))
(/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (fma.f64 1/2 x (neg.f64 x)))
(/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (fma.f64 x 1/2 (neg.f64 x)))
(*.f64 (/.f64 (*.f64 x x) (*.f64 -1/2 x)) -3/4)
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 1/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))) (*.f64 y (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)))))) (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2))) y)) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (fma.f64 x 1/2 (neg.f64 x))))
(fma.f64 -1/2 (*.f64 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2))) y) (*.f64 (/.f64 (*.f64 x x) (*.f64 -1/2 x)) -3/4))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 (*.f64 y y) (+.f64 (/.f64 1/4 (fma.f64 1/2 x (neg.f64 x))) (*.f64 1/2 (/.f64 (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)))) (fma.f64 1/2 x (neg.f64 x))))) (fma.f64 1/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))) (*.f64 y (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2))))))) (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))))
(fma.f64 (*.f64 y y) (-.f64 (/.f64 1/4 (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2)))) (fma.f64 x 1/2 (neg.f64 x)))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2))) y)) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (fma.f64 x 1/2 (neg.f64 x)))))
(fma.f64 (*.f64 y y) (+.f64 (/.f64 1/4 (*.f64 -1/2 x)) (/.f64 (*.f64 -1/4 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2)))) (*.f64 -1/2 x))) (fma.f64 -1/2 (*.f64 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2))) y) (*.f64 (/.f64 (*.f64 x x) (*.f64 -1/2 x)) -3/4)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y 3) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (/.f64 1 (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (-.f64 (*.f64 1/2 x) x))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 y (-.f64 (*.f64 -1/2 (/.f64 x (-.f64 (*.f64 1/2 x) x))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 1/2 (/.f64 (pow.f64 y 3) (/.f64 (fma.f64 1/2 x (neg.f64 x)) (+.f64 (/.f64 1/4 (fma.f64 1/2 x (neg.f64 x))) (*.f64 1/2 (/.f64 (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)))) (fma.f64 1/2 x (neg.f64 x))))))) (fma.f64 (*.f64 y y) (+.f64 (/.f64 1/4 (fma.f64 1/2 x (neg.f64 x))) (*.f64 1/2 (/.f64 (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)))) (fma.f64 1/2 x (neg.f64 x))))) (fma.f64 1/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))) (*.f64 y (*.f64 -1/2 (-.f64 (/.f64 x (fma.f64 1/2 x (neg.f64 x))) (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)))))))) (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 y 3) (fma.f64 x 1/2 (neg.f64 x))) (-.f64 (/.f64 1/4 (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2)))) (fma.f64 x 1/2 (neg.f64 x))))) (fma.f64 (*.f64 y y) (-.f64 (/.f64 1/4 (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (*.f64 1/4 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2)))) (fma.f64 x 1/2 (neg.f64 x)))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (/.f64 x (fma.f64 x 1/2 (neg.f64 x))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (pow.f64 (fma.f64 x 1/2 (neg.f64 x)) 2))) y)) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (fma.f64 x 1/2 (neg.f64 x))))))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 y 3) (*.f64 -1/2 x)) (+.f64 (/.f64 1/4 (*.f64 -1/2 x)) (/.f64 (*.f64 -1/4 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2)))) (*.f64 -1/2 x)))) (fma.f64 (*.f64 y y) (+.f64 (/.f64 1/4 (*.f64 -1/2 x)) (/.f64 (*.f64 -1/4 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2)))) (*.f64 -1/2 x))) (fma.f64 -1/2 (*.f64 (-.f64 (/.f64 x (*.f64 -1/2 x)) (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 -1/2 x) 2))) y) (*.f64 (/.f64 (*.f64 x x) (*.f64 -1/2 x)) -3/4))))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 2 x) (*.f64 -1/2 y)) (*.f64 1/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)))) (+.f64 (*.f64 1/2 x) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 x) (*.f64 1/2 x)) (-.f64 (*.f64 1/2 x) x)) y))))
(-.f64 (fma.f64 2 x (fma.f64 -1/2 y (*.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y)))) (fma.f64 1/2 x (*.f64 -2 (/.f64 (*.f64 3/2 x) (/.f64 y (fma.f64 1/2 x (neg.f64 x)))))))
(+.f64 (+.f64 (fma.f64 -1/2 y (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (/.f64 y -2))) (*.f64 3/2 x)) (*.f64 2 (*.f64 (/.f64 (*.f64 3/2 x) y) (fma.f64 x 1/2 (neg.f64 x)))))
(-.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) (/.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x)) y))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 -2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 -2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x)))))) (pow.f64 y 2))) (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))))) (+.f64 (*.f64 1/2 x) (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 2 x) (*.f64 1/2 x)) (-.f64 (*.f64 1/2 x) x)) y))))
(-.f64 (fma.f64 2 x (fma.f64 -1/2 y (fma.f64 2 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 -2 (-.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (*.f64 (*.f64 3/2 x) (fma.f64 1/2 x (neg.f64 x))))))) (*.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y))))) (fma.f64 1/2 x (*.f64 -2 (/.f64 (*.f64 3/2 x) (/.f64 y (fma.f64 1/2 x (neg.f64 x)))))))
(+.f64 (+.f64 (fma.f64 -1/2 y (fma.f64 2 (*.f64 (/.f64 (fma.f64 x 1/2 (neg.f64 x)) (*.f64 y y)) (*.f64 -2 (-.f64 (*.f64 x (*.f64 x 1/4)) (+.f64 (*.f64 x x) (*.f64 3/2 (*.f64 x (fma.f64 x 1/2 (neg.f64 x)))))))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (/.f64 y -2)))) (*.f64 3/2 x)) (*.f64 2 (*.f64 (/.f64 (*.f64 3/2 x) y) (fma.f64 x 1/2 (neg.f64 x)))))
(+.f64 (*.f64 3/2 x) (-.f64 (fma.f64 -1/2 y (/.f64 (*.f64 (neg.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x))) (neg.f64 x)) (*.f64 y y))) (/.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x)) y)))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 2 x) (*.f64 -1/2 y)) (*.f64 1/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -1/2 y) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x))))) y)))) (*.f64 1/2 x))
(-.f64 (fma.f64 2 x (fma.f64 -1/2 y (*.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y)))) (fma.f64 1/2 x (*.f64 -2 (/.f64 (*.f64 3/2 x) (/.f64 y (fma.f64 1/2 x (neg.f64 x)))))))
(+.f64 (+.f64 (fma.f64 -1/2 y (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (/.f64 y -2))) (*.f64 3/2 x)) (*.f64 2 (*.f64 (/.f64 (*.f64 3/2 x) y) (fma.f64 x 1/2 (neg.f64 x)))))
(-.f64 (fma.f64 -1/2 y (*.f64 3/2 x)) (/.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x)) y))
(-.f64 (+.f64 (*.f64 2 x) (+.f64 (*.f64 -2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x)))))) (pow.f64 y 2))) (+.f64 (*.f64 -1/2 y) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (*.f64 2 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 2 x) (*.f64 1/2 x))))) y))))) (*.f64 1/2 x))
(-.f64 (fma.f64 2 x (fma.f64 -1/2 y (fma.f64 2 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 -2 (-.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (*.f64 (*.f64 3/2 x) (fma.f64 1/2 x (neg.f64 x))))))) (*.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y))))) (fma.f64 1/2 x (*.f64 -2 (/.f64 (*.f64 3/2 x) (/.f64 y (fma.f64 1/2 x (neg.f64 x)))))))
(+.f64 (+.f64 (fma.f64 -1/2 y (fma.f64 2 (*.f64 (/.f64 (fma.f64 x 1/2 (neg.f64 x)) (*.f64 y y)) (*.f64 -2 (-.f64 (*.f64 x (*.f64 x 1/4)) (+.f64 (*.f64 x x) (*.f64 3/2 (*.f64 x (fma.f64 x 1/2 (neg.f64 x)))))))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (/.f64 y -2)))) (*.f64 3/2 x)) (*.f64 2 (*.f64 (/.f64 (*.f64 3/2 x) y) (fma.f64 x 1/2 (neg.f64 x)))))
(+.f64 (*.f64 3/2 x) (-.f64 (fma.f64 -1/2 y (/.f64 (*.f64 (neg.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x))) (neg.f64 x)) (*.f64 y y))) (/.f64 (fma.f64 (*.f64 -1/2 x) (*.f64 x -3) (*.f64 (*.f64 x -3/2) x)) y)))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 -3/4 (pow.f64 x 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) -3/4))
(*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 -3/4 (pow.f64 x 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) -3/4))
(*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 -3/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) -3/4))
(*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2)))) (pow.f64 x 2))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 1/4 (*.f64 y y) (*.f64 (*.f64 x x) -3/4)))
(fma.f64 -1/2 (*.f64 y x) (fma.f64 (*.f64 y y) 1/4 (*.f64 (*.f64 x x) -3/4)))
(fma.f64 y (*.f64 y 1/4) (*.f64 x (+.f64 (*.f64 -3/4 x) (*.f64 -1/2 y))))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 x) (*.f64 -1/2 y))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(*.f64 -1/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(*.f64 -1/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(+.f64 (*.f64 -1/2 y) (*.f64 -1/2 x))
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (*.f64 1/2 x) x)
(*.f64 -1/2 x)
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 -1/2 y) (*.f64 1/2 x)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(*.f64 -1/2 y)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -1/2 y)) x)
(*.f64 -1/2 (+.f64 x y))
(*.f64 -1/2 (+.f64 y x))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(*.f64 1/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1/4)
(*.f64 x (*.f64 x 1/4))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) 1/4))
(fma.f64 -1/2 (*.f64 y x) (*.f64 x (*.f64 x 1/4)))
(*.f64 x (+.f64 (*.f64 1/4 x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(*.f64 1/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1/4)
(*.f64 x (*.f64 x 1/4))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) 1/4))
(fma.f64 -1/2 (*.f64 y x) (*.f64 x (*.f64 x 1/4)))
(*.f64 x (+.f64 (*.f64 1/4 x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(*.f64 1/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1/4)
(*.f64 x (*.f64 x 1/4))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 x 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 x x) 1/4))
(fma.f64 -1/2 (*.f64 y x) (*.f64 x (*.f64 x 1/4)))
(*.f64 x (+.f64 (*.f64 1/4 x) (*.f64 -1/2 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(*.f64 1/4 (pow.f64 y 2))
(*.f64 (*.f64 y y) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 y x)) (*.f64 1/4 (pow.f64 y 2)))
(fma.f64 -1/2 (*.f64 y x) (*.f64 (*.f64 y y) 1/4))
(*.f64 y (+.f64 (*.f64 -1/2 x) (*.f64 1/4 y)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))
(+.f64 (*.f64 -1/2 (*.f64 y x)) (+.f64 (*.f64 1/4 (pow.f64 y 2)) (*.f64 1/4 (pow.f64 x 2))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (+.f64 (*.f64 y y) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 y x) (*.f64 1/4 (fma.f64 y y (*.f64 x x))))
(fma.f64 1/4 (fma.f64 y y (*.f64 x x)) (*.f64 -1/2 (*.f64 y x)))

localize6.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 2/3 x)
0.3b
(/.f64 1 (/.f64 2/3 x))
0.3b
(/.f64 1 (/.f64 2/3 x))
0.4b
(/.f64 2/3 x)
Compiler

Compiled 13 to 10 computations (23.1% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

6 calls:

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

rewrite42.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
552×pow1_binary64
520×add-log-exp_binary64
520×log1p-expm1-u_binary64
520×expm1-log1p-u_binary64
510×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11298
215018
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(/.f64 2/3 x)
(/.f64 1 (/.f64 2/3 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 2/3 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2/3 (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2/3 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 2/3 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 2/3 x)) (pow.f64 (cbrt.f64 (/.f64 2/3 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 2/3 x)) 2) (cbrt.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2/3 x)) (sqrt.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2/3 (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2/3 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 3/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 2/3 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 2/3 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 2/3 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 4/9 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 2/3 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 2/3 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x 3/2)) (cbrt.f64 (*.f64 9/4 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 9/4 (*.f64 x x))) (cbrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 -2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3/2 (pow.f64 (/.f64 1 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 2/3 x)) 2) -1) (pow.f64 (cbrt.f64 (/.f64 2/3 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 2/3 x)) -1) (pow.f64 (sqrt.f64 (/.f64 2/3 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -3/2 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 3/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 3/2 (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2/3 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x 3/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x 3/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 9/4 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 3/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x 3/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x 3/2)))))))

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0448
1548
Stop Event
saturated
Counts
58 → 46
Calls
Call 1
Inputs
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
Outputs
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)

localize4.0ms (0.1%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

eval176.0ms (2.7%)

Compiler

Compiled 9999 to 5321 computations (46.8% saved)

prune55.0ms (0.9%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New3944398
Fresh000
Picked011
Done145
Total3959404
Error
0b
Counts
404 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
31.7b
(*.f64 3/2 x)
31.8b
(/.f64 1 (/.f64 2/3 x))
31.8b
(/.f64 1 (*.f64 (/.f64 1 x) 2/3))
46.2b
(/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
46.1b
(/.f64 (*.f64 x (*.f64 x -3/4)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
0.1b
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
0b
(fma.f64 x 3/2 (*.f64 y -1/2))
30.8b
(/.f64 (-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y))) (-.f64 (*.f64 x 3/2) (*.f64 y -1/2)))
31.7b
(*.f64 -1/2 y)
Compiler

Compiled 100 to 74 computations (26% saved)

localize26.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.4b
(-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y)))
0.2b
(*.f64 (*.f64 x 3/2) (*.f64 x 3/2))
0.0b
(-.f64 (*.f64 x 3/2) (*.f64 y -1/2))
0.0b
(*.f64 1/4 (*.f64 y y))
0.0b
(-.f64 (*.f64 x 3/2) (*.f64 y -1/2))
0.2b
(*.f64 (*.f64 x 3/2) (*.f64 x 3/2))
3.4b
(-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y)))
28.9b
(/.f64 (-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y))) (-.f64 (*.f64 x 3/2) (*.f64 y -1/2)))
Compiler

Compiled 69 to 44 computations (36.2% saved)

series10.0ms (0.2%)

Counts
4 → 84
Calls

21 calls:

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

rewrite123.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
777×log-prod_binary64
443×fma-neg_binary64
243×expm1-udef_binary64
243×log1p-udef_binary64
193×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01479
134234
2521334
Stop Event
node limit
Counts
4 → 430
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y))) (-.f64 (*.f64 x 3/2) (*.f64 y -1/2)))
(-.f64 (*.f64 (*.f64 x 3/2) (*.f64 x 3/2)) (*.f64 1/4 (*.f64 y y)))
(*.f64 (*.f64 x 3/2) (*.f64 x 3/2))
(-.f64 (*.f64 x 3/2) (*.f64 y -1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 3/2) (+.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y -1/2))) (cbrt.f64 (*.f64 y (*.f64 1/4 y))) (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 (fma.f64 1/2 y (*.f64 y -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (+.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -1/2) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 3/2) (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x 3/2) 3) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))) (/.f64 (*.f64 -1/8 (pow.f64 y 3)) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (/.f64 1 (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (/.f64 1 (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 y -1/2))) (-.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (pow.f64 (exp.f64 -1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) 3/2) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) 3/2) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (pow.f64 (exp.f64 -1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) 3/2) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) 3/2) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2))) (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2))) (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) y) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y -1/2))) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 -1/2) y)) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) y) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y -1/2))) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 -1/2) y)) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 3) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (hypot.f64 (*.f64 y -1/2) (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 y -1/2) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 (*.f64 y -1/2) (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) 1 (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) 1 (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 9/4 x)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (*.f64 x 3/2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 3/2)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 3/2)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 9/4 x)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 9/4 x)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))))) (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (sqrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 x 3/2))) (sqrt.f64 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 x 3/2))) (sqrt.f64 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 1) (/.f64 (*.f64 9/4 x) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) 1) (/.f64 (*.f64 x 3/2) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) 1) (/.f64 9/4 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) 1) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) 1) (/.f64 3/2 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 9/4 x) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 x 3/2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 x (*.f64 9/4 x)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 9/4 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 3/2 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 9/4 x) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 x 3/2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 x (*.f64 9/4 x)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 9/4 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 3/2 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 9/4 x)) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 9/4 x)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2)) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 9/4 x)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 9/4 x)) (+.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 1/4 y)) (*.f64 x (*.f64 9/4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y (*.f64 1/4 y)))) (cbrt.f64 (*.f64 (pow.f64 y 4) 1/16)) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 (neg.f64 y) (*.f64 1/4 y) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (+.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x 3/2) (fma.f64 x 3/2 (*.f64 y -1/2))) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 x 3/2)) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (*.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (/.f64 1 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (*.f64 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (*.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (*.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (*.f64 (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (*.f64 (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) 1) (*.f64 (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) (+.f64 (pow.f64 (*.f64 x 3/2) 4) (-.f64 (*.f64 (pow.f64 y 4) 1/16) (*.f64 x (*.f64 (*.f64 9/4 x) (*.f64 y (*.f64 1/4 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 3) (pow.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) 3)) (+.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (-.f64 (*.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))) (*.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (*.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))) (-.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (pow.f64 (pow.f64 (exp.f64 y) y) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (pow.f64 (pow.f64 (exp.f64 y) y) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4) (pow.f64 (exp.f64 x) (*.f64 9/4 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y)))) (pow.f64 (exp.f64 x) (*.f64 9/4 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4)) (pow.f64 (exp.f64 x) (*.f64 9/4 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 1/4 y)))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 y) y) 1/4)) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (exp.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))) (exp.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y)))) (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 x (*.f64 9/4 x)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 9/4 x) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 9/4 x) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 x 9/4) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 x 9/4) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 (*.f64 x (*.f64 x 3/2)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 (*.f64 x (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) (*.f64 x 3/2) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) (*.f64 x 3/2) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 9/4 x)) 1 (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 9/4 x)) 1 (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 9/4 x)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 9/4 x)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 9/4 (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 9/4 (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9/4 (*.f64 x x) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9/4 (*.f64 x x) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (*.f64 (cbrt.f64 (*.f64 x 3/2)) (*.f64 x 3/2)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (*.f64 (cbrt.f64 (*.f64 x 3/2)) (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 9/4 x)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 9/4 x)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 9/4 x)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 9/4 x)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (*.f64 (sqrt.f64 (*.f64 x 3/2)) (*.f64 x 3/2)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (*.f64 (sqrt.f64 (*.f64 x 3/2)) (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9/4 x) x (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9/4 x) x (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x 3/2)) 3/2 (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x 3/2)) 3/2 (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x 3/2) (sqrt.f64 (*.f64 x 3/2))) (sqrt.f64 (*.f64 x 3/2)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x 3/2) (sqrt.f64 (*.f64 x 3/2))) (sqrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x 3/2) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (cbrt.f64 (*.f64 x 3/2)) (*.f64 y (*.f64 1/4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x 3/2) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (cbrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y (*.f64 1/4 y)) (fma.f64 -1/4 (*.f64 y y) (*.f64 y (*.f64 1/4 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 9/4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x))) (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (*.f64 9/4 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 3/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 9/4 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x 3/2) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x 3/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 9/4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9/4 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x 3/2) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 9/4 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 x 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x 3/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 x 3/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 9/4 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 3/2) (+.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y -1/2))) (cbrt.f64 (*.f64 y (*.f64 1/4 y))) (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 (fma.f64 1/2 y (*.f64 y -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (+.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y -1/2) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (/.f64 1 (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (/.f64 1 (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 y -1/2))) (-.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2)) (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3))) (hypot.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (*.f64 x 3/2) (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (neg.f64 (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (neg.f64 (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x (*.f64 9/4 x)) (fma.f64 x 3/2 (*.f64 y -1/2))) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 y (*.f64 1/4 y)))) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) 3) (pow.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2)))) 3)) (+.f64 (*.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (+.f64 (*.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2)))) (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))) (*.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3))) (+.f64 (*.f64 x (*.f64 9/4 x)) (-.f64 (*.f64 y (*.f64 1/4 y)) (*.f64 (*.f64 x 3/2) (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) (pow.f64 (fma.f64 1/2 y (*.f64 y -1/2)) 3)) (+.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (-.f64 (*.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))) (*.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (*.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2)))) (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (+.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (*.f64 (fma.f64 1/2 y (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2)))) (-.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 1) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x 3/2) 6) (pow.f64 (*.f64 y (*.f64 1/4 y)) 3)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)))) (+.f64 (pow.f64 (*.f64 x 3/2) 4) (*.f64 (*.f64 y (*.f64 1/4 y)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 2) 1) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) (neg.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (pow.f64 (exp.f64 -1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) 3/2) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) 3/2) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (pow.f64 (exp.f64 -1/2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) 3/2) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (+.f64 1 (expm1.f64 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) 3/2) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 3/2))) (/.f64 1 (pow.f64 (exp.f64 -1/2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2))) (exp.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/2 y (*.f64 y -1/2))) (+.f64 1 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) y) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y -1/2))) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 -1/2) y)) (pow.f64 (exp.f64 x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) y) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y -1/2))) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 -1/2) y)) (+.f64 1 (expm1.f64 (*.f64 x 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2) 3) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (hypot.f64 (*.f64 y -1/2) (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 y -1/2) (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 (*.f64 y -1/2) (*.f64 y -1/2)) (fma.f64 x 3/2 (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 3/2 (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/2 x (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) 1 (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 3/2) 1 (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 9/4 x)) (/.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x 3/2 (*.f64 y -1/2)) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (*.f64 x 3/2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 3/2)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 3/2)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 9/4 x)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 9/4 x)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) (fma.f64 1/2 y (*.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x))))) (cbrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (sqrt.f64 (/.f64 x (/.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) (*.f64 9/4 x)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2)) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 x 3/2))) (sqrt.f64 3/2) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 x 3/2))) (sqrt.f64 3/2) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 1) (/.f64 (*.f64 9/4 x) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) 1) (/.f64 (*.f64 x 3/2) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) 1) (/.f64 9/4 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) 1) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) 1) (/.f64 3/2 (fma.f64 x 3/2 (*.f64 y -1/2))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 9/4 x) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 x 3/2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (*.f64 x (*.f64 9/4 x)) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 9/4 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) (cbrt.f64 (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2))) (/.f64 3/2 (cbrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 9/4 x) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x 3/2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 x 3/2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (*.f64 x (*.f64 9/4 x)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 9/4 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x 3/2) 4)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 x 3/2)) (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (/.f64 3/2 (sqrt.f64 (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 9/4 x)) (-.f64 (pow.f64 (*.f64 x 3/2) 3) (*.f64 -1/8 (pow.f64 y 3)))) (fma.f64 x (*.f64 9/4 x) (*.f64 (*.f64 y -1/2) (fma.f64 x 3/2 (*.f64 y -1/2)))) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (*.f64 9/4 x)) (pow.f64 (fma.f64 x 3/2 (*.f64 y -1/2)) 2)) (fma.f64 x 3/2 (*.f64 y -1/2)) (neg.f64 (*.f64 1/4 (/.f64 (*.f64 y y) (fma.f64 x 3/2 (*.f64 y -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3/2 (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 y -1/2) (fma.f64 1/2 y (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x 3/2 (*.f64 y -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x 3/2 (*.f64 y -1/2))))))))

simplify170.0ms (2.6%)

Algorithm
egg-herbie
Rules
1078×sqr-pow_binary64
745×fabs-mul_binary64
700×cube-prod_binary64
484×unswap-sqr_binary64
392×pow-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019714
138714
263714
3119714
4286714
5825714
61232714
72041714
82218714
92460714
102770714
113221714
123813714
134522714
145400714
156090714
166546714
176986714
187146714
197216714
Stop Event
node limit
Counts
514 → 317
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 9/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 9/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 9/4 (pow.f64 x 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 -1/4 (pow.f64 y 2))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
Outputs
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/2 y)
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(fma.f64 -1/2 y (*.f64 3/2 x))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 -1/4 (*.f64 y y))
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 -1/4 (*.f64 y y))
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 -1/4 (pow.f64 y 2))
(*.f64 -1/4 (*.f64 y y))
(*.f64 y (*.f64 y -1/4))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(+.f64 (*.f64 -1/4 (pow.f64 y 2)) (*.f64 9/4 (pow.f64 x 2)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 9/4 (*.f64 x x)))
(fma.f64 -1/4 (*.f64 y y) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 x (*.f64 x 9/4)))
(fma.f64 y (*.f64 y -1/4) (*.f64 9/4 (*.f64 x x)))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 9/4 (pow.f64 x 2))
(*.f64 9/4 (*.f64 x x))
(*.f64 x (*.f64 x 9/4))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(*.f64 3/2 x)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))
(+.f64 (*.f64 1/2 y) (*.f64 3/2 x))
(fma.f64 1/2 y (*.f64 3/2 x))
(fma.f64 y 1/2 (*.f64 3/2 x))

localize17.0ms (0.3%)

Local error

Found 6 expressions with local error:

NewErrorProgram
18.4b
(/.f64 (*.f64 x (*.f64 x -3/4)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
0.1b
(*.f64 x (*.f64 x -3/4))
0.0b
(-.f64 (*.f64 (-.f64 x y) 1/2) x)
0.0b
(-.f64 (*.f64 (-.f64 x y) 1/2) x)
0.1b
(*.f64 x (*.f64 x -3/4))
18.4b
(/.f64 (*.f64 x (*.f64 x -3/4)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
Compiler

Compiled 42 to 22 computations (47.6% saved)

series6.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite65.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
957×prod-diff_binary64
688×log-prod_binary64
396×fma-def_binary64
232×expm1-udef_binary64
232×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify49.0ms (0.8%)

Algorithm
egg-herbie
Rules
696×times-frac_binary64
532×distribute-rgt-in_binary64
525×distribute-lft-in_binary64
524×unswap-sqr_binary64
416×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
084891
1241891
2836817
34805738
Stop Event
node limit
Counts
106 → 101
Calls
Call 1
Inputs
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 2) y)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 -3/16 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 -3/16 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 -3/32 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 4))))))
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (+.f64 (*.f64 12 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (pow.f64 x 2)) (pow.f64 y 4))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))))
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (+.f64 (*.f64 12 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (pow.f64 x 2)) (pow.f64 y 4))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
Outputs
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 3/2 (*.f64 x x)) y)
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (/.f64 (*.f64 3/2 (*.f64 x x)) y))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y))))
(*.f64 (*.f64 (/.f64 x y) x) (+.f64 (/.f64 (*.f64 x -3/2) y) 3/2))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (/.f64 (*.f64 3/2 (*.f64 x x)) y)))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)))))
(fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (*.f64 3/2 (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (/.f64 x (/.f64 y x)))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 (/.f64 (*.f64 x -3/2) y) 3/2)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 2) y)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (fma.f64 3/2 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 -3/2 (pow.f64 x 5)) (pow.f64 y 4)))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (+.f64 (/.f64 (pow.f64 x 5) (pow.f64 y 4)) (/.f64 (pow.f64 x 3) (*.f64 y y))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4)) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 (/.f64 (*.f64 x -3/2) y) 3/2))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(fma.f64 -3/2 y (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -3/2))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 y (/.f64 x y)) (fma.f64 3/2 x (*.f64 y -3/2)))
(fma.f64 y -3/2 (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (fma.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x)) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 y (/.f64 x y)) (fma.f64 y -3/2 (fma.f64 3/2 x (*.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x))))))
(fma.f64 -3/2 (+.f64 y (/.f64 (pow.f64 y 3) (*.f64 x x))) (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (fma.f64 3/2 x (*.f64 y -3/2)) (*.f64 (*.f64 (/.f64 y x) y) (+.f64 (*.f64 -3/2 (/.f64 y x)) 3/2)))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(fma.f64 -3/2 y (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -3/2))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 y (/.f64 x y)) (fma.f64 3/2 x (*.f64 y -3/2)))
(fma.f64 y -3/2 (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (fma.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x)) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 y (/.f64 x y)) (fma.f64 y -3/2 (fma.f64 3/2 x (*.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x))))))
(fma.f64 -3/2 (+.f64 y (/.f64 (pow.f64 y 3) (*.f64 x x))) (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (fma.f64 3/2 x (*.f64 y -3/2)) (*.f64 (*.f64 (/.f64 y x) y) (+.f64 (*.f64 -3/2 (/.f64 y x)) 3/2)))
(*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(*.f64 -3/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))))
(*.f64 -3/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)))
(*.f64 (/.f64 -3/4 (*.f64 x -1/2)) (*.f64 x x))
(/.f64 (*.f64 x x) (/.f64 (*.f64 x -1/2) -3/4))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))))
(fma.f64 -3/8 (/.f64 (*.f64 (*.f64 x x) y) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)) (*.f64 -3/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x)))))
(fma.f64 -3/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (*.f64 -3/8 (/.f64 (*.f64 (*.f64 y x) x) (pow.f64 (-.f64 (*.f64 x 1/2) x) 2))))
(fma.f64 -3/4 (*.f64 (/.f64 x (*.f64 x -1/2)) x) (*.f64 -3/8 (*.f64 (*.f64 x x) (/.f64 y (pow.f64 (*.f64 x -1/2) 2)))))
(*.f64 (/.f64 (*.f64 x x) (*.f64 x -1/2)) (+.f64 (*.f64 (/.f64 y (*.f64 x -1/2)) -3/8) -3/4))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 -3/16 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))))
(fma.f64 -3/8 (/.f64 (*.f64 (*.f64 x x) y) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)) (fma.f64 -3/16 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 3) (*.f64 x x))) (*.f64 -3/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))))))
(fma.f64 -3/8 (/.f64 (*.f64 (*.f64 y x) x) (pow.f64 (-.f64 (*.f64 x 1/2) x) 2)) (fma.f64 -3/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (*.f64 -3/16 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (*.f64 x x))))))
(fma.f64 -3/4 (*.f64 (/.f64 x (*.f64 x -1/2)) x) (fma.f64 -3/8 (*.f64 (*.f64 x x) (/.f64 y (pow.f64 (*.f64 x -1/2) 2))) (*.f64 -3/16 (/.f64 y (/.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 3) x) (*.f64 x y))))))
(fma.f64 -3/16 (*.f64 (/.f64 (*.f64 x x) (*.f64 (pow.f64 x 3) -1/8)) (*.f64 y y)) (*.f64 (/.f64 (*.f64 x x) (*.f64 x -1/2)) (+.f64 (*.f64 (/.f64 y (*.f64 x -1/2)) -3/8) -3/4)))
(+.f64 (*.f64 -3/8 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 -3/16 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (+.f64 (*.f64 -3/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 -3/32 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 2)) (pow.f64 (-.f64 (*.f64 1/2 x) x) 4))))))
(fma.f64 -3/8 (/.f64 (*.f64 (*.f64 x x) y) (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2)) (fma.f64 -3/16 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 3) (*.f64 x x))) (fma.f64 -3/4 (/.f64 (*.f64 x x) (fma.f64 1/2 x (neg.f64 x))) (*.f64 -3/32 (/.f64 (pow.f64 y 3) (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 4) (*.f64 x x)))))))
(fma.f64 -3/8 (/.f64 (*.f64 (*.f64 y x) x) (pow.f64 (-.f64 (*.f64 x 1/2) x) 2)) (fma.f64 -3/16 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (*.f64 x x))) (fma.f64 -3/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (*.f64 -3/32 (/.f64 (*.f64 x (*.f64 x (pow.f64 y 3))) (pow.f64 (-.f64 (*.f64 x 1/2) x) 4))))))
(fma.f64 -3/8 (*.f64 (*.f64 x x) (/.f64 y (pow.f64 (*.f64 x -1/2) 2))) (fma.f64 -3/4 (*.f64 (/.f64 x (*.f64 x -1/2)) x) (fma.f64 -3/16 (/.f64 y (/.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 3) x) (*.f64 x y))) (*.f64 -3/32 (*.f64 (/.f64 (*.f64 x x) (pow.f64 (*.f64 x -1/2) 4)) (pow.f64 y 3))))))
(+.f64 (*.f64 (/.f64 (*.f64 x x) (*.f64 x -1/2)) (+.f64 (*.f64 (/.f64 y (*.f64 x -1/2)) -3/8) -3/4)) (*.f64 (*.f64 x x) (+.f64 (/.f64 (*.f64 (pow.f64 y 3) -3/32) (pow.f64 (*.f64 x -1/2) 4)) (/.f64 (*.f64 y (*.f64 y -3/16)) (*.f64 (pow.f64 x 3) -1/8)))))
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 3/2 (*.f64 x x)) y)
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x)))))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 (*.f64 x -1/2) y) 3)))
(*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y)))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 6 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2) (/.f64 (pow.f64 y 3) (*.f64 x x))) (fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y)))
(fma.f64 6 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (*.f64 x x)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x))))))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3))) (*.f64 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 (*.f64 x -1/2) y) 3))))
(fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (*.f64 (*.f64 x x) 1/4) (pow.f64 y 3))) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y))))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (+.f64 (*.f64 12 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (pow.f64 x 2)) (pow.f64 y 4))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))))
(fma.f64 6 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2) (/.f64 (pow.f64 y 3) (*.f64 x x))) (fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 12 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 3) (/.f64 (pow.f64 y 4) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y))))
(fma.f64 6 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (*.f64 x x)) (fma.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x))) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 12 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (pow.f64 y 4)) (*.f64 x x))))))
(fma.f64 3 (*.f64 (*.f64 x x) (/.f64 (/.f64 (*.f64 x -1/2) y) y)) (fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3))) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 12 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 3) (pow.f64 y 4)))))))
(+.f64 (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y))) (*.f64 (*.f64 x x) (+.f64 (/.f64 (*.f64 (*.f64 (*.f64 x x) 1/4) 6) (pow.f64 y 3)) (*.f64 12 (/.f64 (*.f64 (pow.f64 x 3) -1/8) (pow.f64 y 4))))))
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 3/2 (*.f64 x x)) y)
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x)))))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 (*.f64 x -1/2) y) 3)))
(*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y)))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 6 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2) (/.f64 (pow.f64 y 3) (*.f64 x x))) (fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y)))
(fma.f64 6 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (*.f64 x x)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x))))))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3))) (*.f64 (/.f64 x (/.f64 y x)) (*.f64 (/.f64 (*.f64 x -1/2) y) 3))))
(fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (*.f64 (*.f64 x x) 1/4) (pow.f64 y 3))) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y))))
(+.f64 (*.f64 6 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (pow.f64 x 2)) (pow.f64 y 3))) (+.f64 (*.f64 3 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (pow.f64 x 2)) (pow.f64 y 2))) (+.f64 (*.f64 12 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (pow.f64 x 2)) (pow.f64 y 4))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))))
(fma.f64 6 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 2) (/.f64 (pow.f64 y 3) (*.f64 x x))) (fma.f64 3 (/.f64 (fma.f64 1/2 x (neg.f64 x)) (/.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 12 (/.f64 (pow.f64 (fma.f64 1/2 x (neg.f64 x)) 3) (/.f64 (pow.f64 y 4) (*.f64 x x))) (/.f64 (*.f64 3/2 (*.f64 x x)) y))))
(fma.f64 6 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (*.f64 x x)) (fma.f64 3 (/.f64 (-.f64 (*.f64 x 1/2) x) (*.f64 (/.f64 y x) (/.f64 y x))) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 12 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (pow.f64 y 4)) (*.f64 x x))))))
(fma.f64 3 (*.f64 (*.f64 x x) (/.f64 (/.f64 (*.f64 x -1/2) y) y)) (fma.f64 6 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3))) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 12 (*.f64 (*.f64 x x) (/.f64 (pow.f64 (*.f64 x -1/2) 3) (pow.f64 y 4)))))))
(+.f64 (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 3 (*.f64 x -1/2)) y))) (*.f64 (*.f64 x x) (+.f64 (/.f64 (*.f64 (*.f64 (*.f64 x x) 1/4) 6) (pow.f64 y 3)) (*.f64 12 (/.f64 (*.f64 (pow.f64 x 3) -1/8) (pow.f64 y 4))))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))

localize21.0ms (0.3%)

Local error

Found 6 expressions with local error:

NewErrorProgram
18.4b
(/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
14.2b
(-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))
0.0b
(-.f64 (*.f64 (-.f64 x y) 1/2) x)
0.0b
(-.f64 (*.f64 (-.f64 x y) 1/2) x)
14.2b
(-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))
18.4b
(/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 (-.f64 x y) 1/2) x))
Compiler

Compiled 58 to 28 computations (51.7% saved)

series9.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite84.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
834×log-prod_binary64
493×fma-neg_binary64
278×expm1-udef_binary64
278×log1p-udef_binary64
220×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify55.0ms (0.8%)

Algorithm
egg-herbie
Rules
683×associate-/l/_binary64
493×times-frac_binary64
349×associate-/l*_binary64
292×fma-def_binary64
265×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0911158
12641137
2907893
34798785
Stop Event
node limit
Counts
203 → 198
Calls
Call 1
Inputs
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 2) y)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (-.f64 (*.f64 1/2 x) x))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 4)))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))
(+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))
(+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2)))))
(+.f64 (*.f64 -16 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 4))) (+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))))
(*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))
(+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))
(+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2)))))
(+.f64 (*.f64 -16 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 4))) (+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 -3/4 (pow.f64 x 2))
Outputs
(*.f64 3/2 (/.f64 (pow.f64 x 2) y))
(*.f64 3/2 (/.f64 (*.f64 x x) y))
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (*.f64 3/2 (/.f64 (*.f64 x x) y)))
(fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y))))
(fma.f64 3/2 (*.f64 (/.f64 x y) x) (*.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y))))
(*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 x -3/2) y)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (*.f64 3/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (*.f64 3/2 (/.f64 (*.f64 x x) y))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)))))
(fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (*.f64 3/2 (+.f64 (*.f64 (/.f64 x y) x) (/.f64 (pow.f64 x 4) (pow.f64 y 3)))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 x -3/2) y))))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3))) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 x 3) (pow.f64 y 2))) (+.f64 (*.f64 3/2 (/.f64 (pow.f64 x 2) y)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (fma.f64 3/2 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 -3/2 (pow.f64 x 5)) (pow.f64 y 4)))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 3) (*.f64 y y)) (fma.f64 3/2 (/.f64 x (/.f64 y x)) (*.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 3/2 (*.f64 (/.f64 x y) x) (*.f64 -3/2 (+.f64 (/.f64 (pow.f64 x 5) (pow.f64 y 4)) (/.f64 (pow.f64 x 3) (*.f64 y y))))))
(fma.f64 3/2 (/.f64 (pow.f64 x 4) (pow.f64 y 3)) (fma.f64 -3/2 (/.f64 (pow.f64 x 5) (pow.f64 y 4)) (*.f64 (*.f64 (/.f64 x y) x) (+.f64 3/2 (/.f64 (*.f64 x -3/2) y)))))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(fma.f64 -3/2 y (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -3/2))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 3/2 x (*.f64 y -3/2)))
(fma.f64 y -3/2 (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (fma.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x)) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 y -3/2 (fma.f64 3/2 x (*.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x))))))
(fma.f64 -3/2 (+.f64 y (/.f64 (pow.f64 y 3) (*.f64 x x))) (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (fma.f64 3/2 x (*.f64 y -3/2)) (*.f64 (*.f64 (/.f64 y x) y) (+.f64 (/.f64 (*.f64 y -3/2) x) 3/2)))
(*.f64 3/2 x)
(+.f64 (*.f64 -3/2 y) (*.f64 3/2 x))
(fma.f64 -3/2 y (*.f64 3/2 x))
(fma.f64 3/2 x (*.f64 y -3/2))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (*.f64 3/2 x)))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 3/2 x (*.f64 y -3/2)))
(fma.f64 y -3/2 (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (*.f64 3/2 (/.f64 (pow.f64 y 2) x)) (+.f64 (*.f64 -3/2 y) (+.f64 (*.f64 -3/2 (/.f64 (pow.f64 y 3) (pow.f64 x 2))) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 -3/2 y (fma.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x)) (*.f64 3/2 x))))
(fma.f64 3/2 (/.f64 (*.f64 y y) x) (fma.f64 y -3/2 (fma.f64 3/2 x (*.f64 -3/2 (/.f64 (pow.f64 y 3) (*.f64 x x))))))
(fma.f64 -3/2 (+.f64 y (/.f64 (pow.f64 y 3) (*.f64 x x))) (*.f64 3/2 (+.f64 (*.f64 (/.f64 y x) y) x)))
(+.f64 (fma.f64 3/2 x (*.f64 y -3/2)) (*.f64 (*.f64 (/.f64 y x) y) (+.f64 (/.f64 (*.f64 y -3/2) x) 3/2)))
(/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) (-.f64 (*.f64 1/2 x) x))
(/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) (-.f64 (*.f64 x 1/2) x))
(/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 x 1/2) x))
(/.f64 (*.f64 x (*.f64 x -3/4)) (*.f64 x -1/2))
(*.f64 (/.f64 x (/.f64 (*.f64 x -1/2) x)) -3/4)
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2)))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 1/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (/.f64 (*.f64 1/2 (*.f64 y (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (pow.f64 (-.f64 (*.f64 x 1/2) x) 2))) (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 y (pow.f64 (-.f64 (*.f64 x 1/2) x) 2)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 x 1/2) x)))
(fma.f64 1/2 (/.f64 y (/.f64 (pow.f64 (*.f64 x -1/2) 2) (*.f64 x (*.f64 x -3/4)))) (/.f64 (*.f64 x (*.f64 x -3/4)) (*.f64 x -1/2)))
(*.f64 (+.f64 (/.f64 (*.f64 y 1/2) (*.f64 x -1/2)) 1) (*.f64 (/.f64 x (/.f64 (*.f64 x -1/2) x)) -3/4))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 1/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (fma.f64 1/2 (/.f64 y (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (*.f64 1/4 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x))))))) (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x 1/2) x) 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (*.f64 1/2 (*.f64 (/.f64 y (pow.f64 (-.f64 (*.f64 x 1/2) x) 2)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 x 1/2) x)))
(+.f64 (*.f64 1/4 (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 x -1/2) 3)) (*.f64 y y))) (fma.f64 1/2 (/.f64 y (/.f64 (pow.f64 (*.f64 x -1/2) 2) (*.f64 x (*.f64 x -3/4)))) (/.f64 (*.f64 x (*.f64 x -3/4)) (*.f64 x -1/2))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (*.f64 (*.f64 x x) y) -3/4) (/.f64 (pow.f64 (*.f64 x -1/2) 3) y))) (*.f64 (+.f64 (/.f64 (*.f64 y 1/2) (*.f64 x -1/2)) 1) (*.f64 (/.f64 x (/.f64 (*.f64 x -1/2) x)) -3/4)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 3))) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 (-.f64 (*.f64 1/2 x) x) 4)))))) (/.f64 (pow.f64 x 2) (-.f64 (*.f64 1/2 x) x)))
(-.f64 (fma.f64 1/4 (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)) (fma.f64 1/2 (/.f64 y (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 1/4 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (*.f64 1/8 (/.f64 (pow.f64 y 3) (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 4) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))))))) (/.f64 (*.f64 x x) (-.f64 (*.f64 x 1/2) x)))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 y (pow.f64 (-.f64 (*.f64 x 1/2) x) 2)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x 1/2) x) 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (*.f64 1/8 (*.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x 1/2) x) 4)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))))) (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) (-.f64 (*.f64 x 1/2) x)))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) (pow.f64 (*.f64 x -1/2) 3)) (*.f64 y y)) (*.f64 1/8 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (pow.f64 y 3) (pow.f64 (*.f64 x -1/2) 4))))) (fma.f64 1/2 (/.f64 y (/.f64 (pow.f64 (*.f64 x -1/2) 2) (*.f64 x (*.f64 x -3/4)))) (/.f64 (*.f64 x (*.f64 x -3/4)) (*.f64 x -1/2))))
(+.f64 (*.f64 (*.f64 x (*.f64 x -3/4)) (+.f64 (/.f64 (*.f64 y (*.f64 y 1/4)) (pow.f64 (*.f64 x -1/2) 3)) (/.f64 (*.f64 (pow.f64 y 3) 1/8) (pow.f64 (*.f64 x -1/2) 4)))) (*.f64 (+.f64 (/.f64 (*.f64 y 1/2) (*.f64 x -1/2)) 1) (*.f64 (/.f64 x (/.f64 (*.f64 x -1/2) x)) -3/4)))
(*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))
(*.f64 3/2 (/.f64 (*.f64 x x) y))
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))
(fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x))))))
(fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))))
(fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (*.f64 (/.f64 -4 y) (/.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 y (*.f64 x -1/2)))))
(*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y)))
(+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2)))))
(fma.f64 -8 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (/.f64 (pow.f64 y 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))))))
(fma.f64 -8 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))))))
(fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (fma.f64 -4 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x -1/2) (*.f64 y y))) (*.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3)) (*.f64 (*.f64 x (*.f64 x -3/4)) -8))))
(fma.f64 -8 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x (*.f64 x 1/4)) (pow.f64 y 3))) (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y))))
(+.f64 (*.f64 -16 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 4))) (+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))))
(fma.f64 -16 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (/.f64 (pow.f64 y 4) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -8 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (/.f64 (pow.f64 y 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x))))))))
(fma.f64 -16 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (pow.f64 y 4)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -8 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))))))
(fma.f64 -16 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (pow.f64 (*.f64 x -1/2) 3) (pow.f64 y 4))) (fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (fma.f64 -4 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x -1/2) (*.f64 y y))) (*.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3)) (*.f64 (*.f64 x (*.f64 x -3/4)) -8)))))
(+.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y))) (*.f64 (*.f64 x (*.f64 x -3/4)) (+.f64 (*.f64 -8 (/.f64 (*.f64 x (*.f64 x 1/4)) (pow.f64 y 3))) (/.f64 (*.f64 (pow.f64 (*.f64 x -1/2) 3) -16) (pow.f64 y 4)))))
(*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y))
(*.f64 3/2 (/.f64 (*.f64 x x) y))
(*.f64 3/2 (/.f64 x (/.f64 y x)))
(*.f64 3/2 (*.f64 (/.f64 x y) x))
(+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))
(fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x))))))
(fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))))
(fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (*.f64 (/.f64 -4 y) (/.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 y (*.f64 x -1/2)))))
(*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y)))
(+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2)))))
(fma.f64 -8 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (/.f64 (pow.f64 y 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))))))
(fma.f64 -8 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))))))
(fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (fma.f64 -4 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x -1/2) (*.f64 y y))) (*.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3)) (*.f64 (*.f64 x (*.f64 x -3/4)) -8))))
(fma.f64 -8 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x (*.f64 x 1/4)) (pow.f64 y 3))) (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y))))
(+.f64 (*.f64 -16 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 3) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 4))) (+.f64 (*.f64 -8 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/2 x) x) 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 3))) (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2)) y)) (*.f64 -4 (/.f64 (*.f64 (-.f64 (*.f64 1/2 x) x) (-.f64 (*.f64 1/4 (pow.f64 x 2)) (pow.f64 x 2))) (pow.f64 y 2))))))
(fma.f64 -16 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (/.f64 (pow.f64 y 4) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -8 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (/.f64 (pow.f64 y 3) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x)) y) (*.f64 -4 (/.f64 (-.f64 (*.f64 x 1/2) x) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 x x))))))))
(fma.f64 -16 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 3) (pow.f64 y 4)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -8 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x 1/2) x) 2) (pow.f64 y 3)) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x))) (fma.f64 -2 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)) y) (/.f64 (*.f64 (-.f64 (*.f64 x 1/2) x) -4) (/.f64 (*.f64 y y) (-.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 x x)))))))
(fma.f64 -16 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (pow.f64 (*.f64 x -1/2) 3) (pow.f64 y 4))) (fma.f64 -2 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (fma.f64 -4 (*.f64 (*.f64 x (*.f64 x -3/4)) (/.f64 (*.f64 x -1/2) (*.f64 y y))) (*.f64 (/.f64 (pow.f64 (*.f64 x -1/2) 2) (pow.f64 y 3)) (*.f64 (*.f64 x (*.f64 x -3/4)) -8)))))
(+.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x -3/4)) y) (+.f64 -2 (/.f64 (*.f64 (*.f64 x -1/2) -4) y))) (*.f64 (*.f64 x (*.f64 x -3/4)) (+.f64 (*.f64 -8 (/.f64 (*.f64 x (*.f64 x 1/4)) (pow.f64 y 3))) (/.f64 (*.f64 (pow.f64 (*.f64 x -1/2) 3) -16) (pow.f64 y 4)))))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))
(*.f64 -3/4 (pow.f64 x 2))
(*.f64 (*.f64 x x) -3/4)
(*.f64 x (*.f64 x -3/4))

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (/.f64 1 x) 2/3)
0.3b
(/.f64 1 (*.f64 (/.f64 1 x) 2/3))
0.3b
(/.f64 1 (*.f64 (/.f64 1 x) 2/3))
0.4b
(*.f64 (/.f64 1 x) 2/3)
Compiler

Compiled 20 to 16 computations (20% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite45.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
620×pow1_binary64
577×add-log-exp_binary64
577×log1p-expm1-u_binary64
577×expm1-log1p-u_binary64
564×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0711
11468
217108
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(*.f64 (/.f64 1 x) 2/3)
(/.f64 1 (*.f64 (/.f64 1 x) 2/3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 2/3 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 x) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2/3 x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2/3 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 2/3 x)) 2) (cbrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 2/3 x)) (sqrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -2/3 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2/3 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2/3 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2/3 (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2/3 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 2/3 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 2/3 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 2/3 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 4/9 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 2/3 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 2/3 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x 3/2)) (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x 3/2)) 2) (cbrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x 3/2)) (sqrt.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 -2/3 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 2/3 x)) 2) -1) (pow.f64 (cbrt.f64 (/.f64 2/3 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 2/3 x)) -1) (pow.f64 (sqrt.f64 (/.f64 2/3 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2/3 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x 3/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x 3/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 x x) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x 3/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x 3/2)))))))

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0696
1796
Stop Event
saturated
Counts
67 → 43
Calls
Call 1
Inputs
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
(*.f64 3/2 x)
Outputs
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(/.f64 2/3 x)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)
(*.f64 3/2 x)
(*.f64 x 3/2)

eval385.0ms (6%)

Compiler

Compiled 19069 to 12120 computations (36.4% saved)

prune112.0ms (1.7%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New8072809
Fresh000
Picked101
Done358
Total8117818
Error
0b
Counts
818 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
31.8b
(/.f64 1 (/.f64 (/.f64 1 x) 3/2))
31.7b
(*.f64 3/2 x)
31.8b
(/.f64 1 (/.f64 2/3 x))
0b
(fma.f64 x 3/2 (*.f64 y -1/2))
45.9b
(/.f64 (*.f64 x x) (/.f64 (*.f64 x -1/2) -3/4))
0.1b
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
31.7b
(*.f64 -1/2 y)
Compiler

Compiled 54 to 43 computations (20.4% saved)

regimes12.0ms (0.2%)

Counts
7 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 y)
(*.f64 3/2 x)
(/.f64 1 (/.f64 2/3 x))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(/.f64 1 (/.f64 (/.f64 1 x) 3/2))
(/.f64 (*.f64 x x) (/.f64 (*.f64 x -1/2) -3/4))
(fma.f64 x 3/2 (*.f64 y -1/2))
Outputs
(fma.f64 x 3/2 (*.f64 y -1/2))
Calls

2 calls:

5.0ms
x
5.0ms
y
Results
ErrorSegmentsBranch
0b1x
0b1y
Compiler

Compiled 48 to 35 computations (27.1% saved)

regimes12.0ms (0.2%)

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

2 calls:

6.0ms
y
5.0ms
x
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
Compiler

Compiled 42 to 31 computations (26.2% saved)

regimes27.0ms (0.4%)

Accuracy

Total -48.3b remaining (-357.4%)

Threshold costs -48.3b (-357.4%)

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

2 calls:

15.0ms
x
10.0ms
y
Results
ErrorSegmentsBranch
14.5b5x
13.5b3y
Compiler

Compiled 19 to 14 computations (26.3% saved)

bsearch35.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
1.706400682227231e-16
0.0027100045923510586
17.0ms
-9.8307112374039e+105
-2.9784588964109082e+90
Compiler

Compiled 14 to 10 computations (28.6% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01746
12046
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 x 3/2 (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(if (<=.f64 y -9830711237403899424189892852562654967075236812397611010951216151036512779369916010497815253439209292169216) (*.f64 -1/2 y) (if (<=.f64 y 3460991758488335/20282409603651670423947251286016) (*.f64 3/2 x) (*.f64 -1/2 y)))
(*.f64 -1/2 y)
Outputs
(fma.f64 x 3/2 (*.f64 y -1/2))
(+.f64 (*.f64 -1/2 y) (*.f64 3/2 x))
(+.f64 (*.f64 y -1/2) (*.f64 x 3/2))
(if (<=.f64 y -9830711237403899424189892852562654967075236812397611010951216151036512779369916010497815253439209292169216) (*.f64 -1/2 y) (if (<=.f64 y 3460991758488335/20282409603651670423947251286016) (*.f64 3/2 x) (*.f64 -1/2 y)))
(if (<=.f64 y -9830711237403899424189892852562654967075236812397611010951216151036512779369916010497815253439209292169216) (*.f64 y -1/2) (if (<=.f64 y 3460991758488335/20282409603651670423947251286016) (*.f64 x 3/2) (*.f64 y -1/2)))
(*.f64 -1/2 y)
(*.f64 y -1/2)

end36.0ms (0.6%)

Stop Event
fuel
Compiler

Compiled 76 to 56 computations (26.3% saved)

Profiling

Loading profile data...