Details

Time bar (total: 9.2s)

analyze0.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%0%50%2
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample1.7s (18.4%)

Results
754.0ms2280×body1024valid
665.0ms4925×body256valid
273.0ms1051×body512valid

preprocess20.0ms (0.2%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
15×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
11417
22017
32817
43817
55617
69317
712717
817417
921017
1023617
1123817
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Outputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
15×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
11417
22017
32817
43817
55617
69317
712717
817417
921017
1023617
1123817
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Outputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))

eval1.0ms (0%)

Compiler

Compiled 23 to 18 computations (21.7% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 12 to 10 computations (16.7% saved)

localize7.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.5b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
0.3b
(/.f64 1 (sqrt.f64 x))
0.2b
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
0.0b
(sqrt.f64 (+.f64 1 x))
0.0b
(sqrt.f64 (+.f64 1 x))
0.2b
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
0.3b
(/.f64 1 (sqrt.f64 x))
3.5b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))

series9.0ms (0.1%)

Counts
4 → 8
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@inf
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@0
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@inf
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
1.0ms
x
@inf
(sqrt.f64 (+.f64 1 x))

rewrite74.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
462×log-prod_binary64
443×fma-def_binary64
344×pow-prod-down_binary64
269×pow2_binary64
205×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify51.0ms (0.5%)

Algorithm
egg-herbie
Rules
844×fma-def_binary64
589×fma-neg_binary64
537×distribute-rgt-neg-in_binary64
432×distribute-lft-neg-in_binary64
250×neg-sub0_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02980
17776
218574
355362
4140258
5279458
6433558
7623658
Stop Event
node limit
Counts
188 → 194
Calls
Call 1
Inputs
-1
(-.f64 (*.f64 1/2 x) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -3/8 (pow.f64 x 2))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 5/16 (pow.f64 x 3)) (*.f64 -3/8 (pow.f64 x 2)))) 1)
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
Outputs
-1
(-.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x -1)
(-.f64 (+.f64 (*.f64 1/2 x) (*.f64 -3/8 (pow.f64 x 2))) 1)
(+.f64 (fma.f64 1/2 x (*.f64 -3/8 (*.f64 x x))) -1)
(fma.f64 1/2 x (fma.f64 -3/8 (*.f64 x x) -1))
(fma.f64 1/2 x (fma.f64 x (*.f64 x -3/8) -1))
(fma.f64 x (fma.f64 x -3/8 1/2) -1)
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 5/16 (pow.f64 x 3)) (*.f64 -3/8 (pow.f64 x 2)))) 1)
(+.f64 (fma.f64 1/2 x (fma.f64 5/16 (pow.f64 x 3) (*.f64 -3/8 (*.f64 x x)))) -1)
(+.f64 (fma.f64 -3/8 (*.f64 x x) (*.f64 5/16 (pow.f64 x 3))) (fma.f64 1/2 x -1))
(fma.f64 1/2 x (fma.f64 x (*.f64 x -3/8) (fma.f64 5/16 (pow.f64 x 3) -1)))
(fma.f64 x (fma.f64 x -3/8 1/2) (fma.f64 5/16 (pow.f64 x 3) -1))
(fma.f64 x (fma.f64 x (fma.f64 x 5/16 -3/8) 1/2) -1)
1
(+.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(fma.f64 -1/8 (*.f64 x x) (fma.f64 1/2 x 1))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 1/2 x 1))
(fma.f64 1/2 x (fma.f64 x (*.f64 x -1/8) 1))
(fma.f64 x (fma.f64 x -1/8 1/2) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(fma.f64 -1/8 (*.f64 x x) (+.f64 (fma.f64 1/2 x 1) (*.f64 (pow.f64 x 3) 1/16)))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 1/2 x (fma.f64 (pow.f64 x 3) 1/16 1)))
(fma.f64 1/2 x (fma.f64 x (*.f64 x -1/8) (fma.f64 (pow.f64 x 3) 1/16 1)))
(fma.f64 1/2 x (fma.f64 x (*.f64 x (fma.f64 x 1/16 -1/8)) 1))
(fma.f64 x (+.f64 1/2 (*.f64 x (fma.f64 x 1/16 -1/8))) 1)

eval85.0ms (0.9%)

Compiler

Compiled 2955 to 2318 computations (21.6% saved)

prune52.0ms (0.6%)

Pruning

24 alts after pruning (23 fresh and 1 done)

PrunedKeptTotal
New17123194
Fresh000
Picked011
Done000
Total17124195
Error
19.8b
Counts
195 → 24
Alt Table
Click to see full alt table
StatusErrorProgram
27.8b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (exp.f64 (*.f64 (log1p.f64 x) 1/2))))
24.7b
(+.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
20.5b
(*.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
28.0b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 1 x) 3/2))))
30.7b
(+.f64 (pow.f64 (pow.f64 x 1/6) -3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
28.0b
(+.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (*.f64 -1 (pow.f64 (+.f64 1 x) -3/2))))
25.4b
(+.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
23.6b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (pow.f64 (+.f64 1 x) 1/4) 2)))
20.4b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
29.6b
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
24.7b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
30.2b
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
23.4b
(+.f64 (/.f64 1 (sqrt.f64 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
30.1b
(+.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
40.8b
(+.f64 (cbrt.f64 (pow.f64 x -3/2)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
28.4b
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
20.5b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
29.8b
(fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
28.9b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
25.8b
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
30.7b
(+.f64 (pow.f64 (pow.f64 x -1/6) 3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
23.2b
(+.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
22.8b
(exp.f64 (log.f64 (fma.f64 -1 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 x -1/2))))
20.4b
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
Compiler

Compiled 638 to 530 computations (16.9% saved)

localize8.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.5b
(fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x)))
0.2b
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
0.0b
(*.f64 x (+.f64 1 x))
0.0b
(sqrt.f64 (+.f64 1 x))
0.0b
(*.f64 x (+.f64 1 x))
0.2b
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
3.5b
(fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x)))
13.1b
(sqrt.f64 (*.f64 x (+.f64 1 x)))

series14.0ms (0.2%)

Counts
4 → 21
Calls

12 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
2.0ms
x
@inf
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
1.0ms
x
@-inf
(*.f64 x (+.f64 1 x))
1.0ms
x
@-inf
(fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x)))
1.0ms
x
@0
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))

rewrite71.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
508×log-prod_binary64
399×pow-prod-down_binary64
359×prod-diff_binary64
263×pow2_binary64
247×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify32.0ms (0.3%)

Algorithm
egg-herbie
Rules
792×fma-neg_binary64
654×times-frac_binary64
494×cancel-sign-sub-inv_binary64
248×fma-def_binary64
247×associate-*l/_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
035141
198123
2266123
3641123
42394123
Stop Event
node limit
Counts
201 → 195
Calls
Call 1
Inputs
x
(+.f64 1/2 x)
(-.f64 (+.f64 1/2 x) (*.f64 1/8 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 2))) x)) (*.f64 1/8 (/.f64 1 x)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))
(+.f64 1/2 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))
(+.f64 1/2 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))
(+.f64 1/2 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))))
1
x
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
(+.f64 (pow.f64 x 2) x)
Outputs
x
(+.f64 1/2 x)
(+.f64 x 1/2)
(-.f64 (+.f64 1/2 x) (*.f64 1/8 (/.f64 1 x)))
(+.f64 1/2 (-.f64 x (/.f64 1/8 x)))
(+.f64 x (+.f64 1/2 (/.f64 -1/8 x)))
(+.f64 1/2 (+.f64 x (/.f64 -1/8 x)))
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 2))) x)) (*.f64 1/8 (/.f64 1 x)))
(+.f64 1/2 (-.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (/.f64 1/8 x)))
(+.f64 1/2 (+.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (/.f64 -1/8 x)))
(+.f64 x (+.f64 (/.f64 1/16 (*.f64 x x)) (+.f64 1/2 (/.f64 -1/8 x))))
(+.f64 1/2 (-.f64 (/.f64 1/16 (*.f64 x x)) (-.f64 (/.f64 1/8 x) x)))
(+.f64 (+.f64 x 1/2) (+.f64 (/.f64 1/16 (*.f64 x x)) (/.f64 -1/8 x)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))
x
(+.f64 1/2 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))
(+.f64 x 1/2)
(+.f64 1/2 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))
(+.f64 1/2 (-.f64 x (/.f64 1/8 x)))
(+.f64 x (+.f64 1/2 (/.f64 -1/8 x)))
(+.f64 1/2 (+.f64 x (/.f64 -1/8 x)))
(+.f64 1/2 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))))
(+.f64 1/2 (-.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (/.f64 1/8 x)))
(+.f64 1/2 (+.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (/.f64 -1/8 x)))
(+.f64 x (+.f64 (/.f64 1/16 (*.f64 x x)) (+.f64 1/2 (/.f64 -1/8 x))))
(+.f64 1/2 (-.f64 (/.f64 1/16 (*.f64 x x)) (-.f64 (/.f64 1/8 x) x)))
(+.f64 (+.f64 x 1/2) (+.f64 (/.f64 1/16 (*.f64 x x)) (/.f64 -1/8 x)))
1
x
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)
(+.f64 (pow.f64 x 2) x)
(+.f64 x (*.f64 x x))
(fma.f64 x x x)

localize4.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (sqrt.f64 x))
0.0b
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
0.0b
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
0.3b
(/.f64 1 (sqrt.f64 x))

series1.0ms (0%)

Counts
1 → 2
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
0.0ms
x
@-inf
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
0.0ms
x
@inf
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)

rewrite38.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
658×pow1_binary64
614×add-log-exp_binary64
613×log1p-expm1-u_binary64
613×expm1-log1p-u_binary64
601×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012
Stop Event
saturated
Counts
33 → 32
Calls
Call 1
Inputs
-1
-1
Outputs
-1
-1

localize14.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.0b
(/.f64 1 (+.f64 1 x))
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(pow.f64 (+.f64 1 x) -1/2)
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(/.f64 1 (+.f64 1 x))
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
3.5b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))

series10.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

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

rewrite158.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
679×log-prod_binary64
654×fma-def_binary64
347×fma-neg_binary64
268×log-div_binary64
243×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify83.0ms (0.9%)

Algorithm
egg-herbie
Rules
734×sub-neg_binary64
635×fma-def_binary64
625×fma-neg_binary64
448×associate-+l+_binary64
324×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01891796
15981716
217831560
367741493
Stop Event
node limit
Counts
411 → 436
Calls
Call 1
Inputs
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))))) x) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 (-.f64 (*.f64 5/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1))) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 3/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))))) x) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))
(-.f64 (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 4))) (*.f64 3/32 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))))))
(-.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 9)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 3/16 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 5))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x)))))) (pow.f64 x 5))) (+.f64 (*.f64 -5/64 (sqrt.f64 (/.f64 1 (pow.f64 x 9)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 4))) (*.f64 3/32 (sqrt.f64 (/.f64 1 (pow.f64 x 7))))))))))
(/.f64 1/2 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/16 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 4))))) (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/16 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 4))))) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))) (*.f64 35/128 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 5))))))
1
(+.f64 1 (*.f64 -1 x))
(+.f64 1 (+.f64 (*.f64 -1 x) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 x 3)) (+.f64 1 (+.f64 (*.f64 -1 x) (pow.f64 x 2))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (/.f64 1 (pow.f64 x 2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (/.f64 1 (pow.f64 x 2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) 1))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) (+.f64 1 (*.f64 3/8 (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) (+.f64 1 (+.f64 (*.f64 3/8 (pow.f64 x 2)) (*.f64 -5/16 (pow.f64 x 3))))))
(*.f64 2 (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))))
(*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))
(+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))
(+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x))))
(+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 -5/16 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))))
Outputs
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(+.f64 (/.f64 1 x) -1)
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(+.f64 (/.f64 1 x) (-.f64 x 1))
(+.f64 x (+.f64 (/.f64 1 x) -1))
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(+.f64 (fma.f64 -1 (*.f64 x x) (+.f64 x (/.f64 1 x))) -1)
(+.f64 -1 (-.f64 (+.f64 x (/.f64 1 x)) (*.f64 x x)))
(-.f64 (+.f64 x (/.f64 1 x)) (fma.f64 x x 1))
(+.f64 (/.f64 1 x) (fma.f64 (-.f64 1 x) x -1))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 5))) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 5))) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2))))
(/.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2)))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (/.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))))) x) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (-.f64 (fma.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) x (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (-.f64 (/.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (fma.f64 x (+.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 -3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))))
(-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 (-.f64 (*.f64 5/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1))) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 3/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 (pow.f64 x -1/2) 1))))) x) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))))))) (/.f64 1 (+.f64 (pow.f64 x -1/2) 1)))
(+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (-.f64 (fma.f64 (-.f64 (/.f64 5/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (+.f64 1 (pow.f64 x -1/2))) (fma.f64 3/8 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x x) (fma.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) x (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (/.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (fma.f64 (*.f64 x x) (-.f64 (/.f64 5/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (+.f64 1 (pow.f64 x -1/2))) (fma.f64 3/8 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))) (fma.f64 x (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2)))))
(+.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (+.f64 (fma.f64 x (-.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (fma.f64 (*.f64 x x) (-.f64 (/.f64 5/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (fma.f64 -1/2 (-.f64 (/.f64 (+.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (*.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3))) (fma.f64 3/8 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2))))))
(+.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (fma.f64 x (+.f64 (+.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (fma.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 -3/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x (-.f64 (/.f64 5/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (fma.f64 -1/2 (-.f64 (/.f64 (+.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (*.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3))) (fma.f64 3/8 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 1 (+.f64 1 (pow.f64 x -1/2)))))))) (/.f64 -1 (+.f64 1 (pow.f64 x -1/2))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8))
(-.f64 (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 4))) (*.f64 3/32 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))))))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 x) -3/8) (pow.f64 x 4)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32 (/.f64 (*.f64 (sqrt.f64 x) 3/32) (pow.f64 x 4)))))
(-.f64 (fma.f64 1/2 (+.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32 (/.f64 3/32 (/.f64 (pow.f64 x 4) (sqrt.f64 x)))))
(-.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 9)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 3/16 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 5))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x)))))) (pow.f64 x 5))) (+.f64 (*.f64 -5/64 (sqrt.f64 (/.f64 1 (pow.f64 x 9)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1/2 (sqrt.f64 x)) (*.f64 -1/8 (sqrt.f64 x))) (pow.f64 x 4))) (*.f64 3/32 (sqrt.f64 (/.f64 1 (pow.f64 x 7))))))))))
(-.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))))) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 3/16 (/.f64 (*.f64 (sqrt.f64 x) -3/8) (pow.f64 x 5)) (fma.f64 -1/4 (/.f64 (-.f64 (*.f64 1/2 (sqrt.f64 x)) (fma.f64 3/32 (sqrt.f64 x) (*.f64 -1/4 (*.f64 (sqrt.f64 x) -3/8)))) (pow.f64 x 5)) (fma.f64 -5/64 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 x) -3/8) (pow.f64 x 4)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32)))))))
(fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) (-.f64 (+.f64 (*.f64 1/2 (+.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8)) (fma.f64 3/16 (/.f64 (sqrt.f64 x) (/.f64 (pow.f64 x 5) -3/8)) (fma.f64 -1/4 (/.f64 (-.f64 (*.f64 (sqrt.f64 x) 13/32) (*.f64 (sqrt.f64 x) 3/32)) (pow.f64 x 5)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) -5/64 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32 (/.f64 (*.f64 (sqrt.f64 x) 3/32) (pow.f64 x 4))))))))
(-.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) (fma.f64 1/2 (+.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8))) (+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) 3/32 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 9))) -5/64 (/.f64 3/32 (/.f64 (pow.f64 x 4) (sqrt.f64 x))))) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 x) 5/16) (pow.f64 x 5)) (/.f64 (*.f64 (sqrt.f64 x) -9/128) (pow.f64 x 5)))))
(/.f64 1/2 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))
(/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))))
(/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))
(/.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (*.f64 x x))))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))))
(-.f64 (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (/.f64 3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))
(+.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))
(+.f64 (/.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (*.f64 x x)))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))))
(fma.f64 1/2 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (*.f64 x x)) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/16 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 4))))) (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))))
(+.f64 (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (-.f64 (/.f64 5/16 (*.f64 (pow.f64 x 4) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (/.f64 3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))))))
(+.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (+.f64 (/.f64 (/.f64 5/16 (pow.f64 x 4)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))
(+.f64 (/.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (*.f64 x x)))) (+.f64 (/.f64 5/16 (*.f64 (*.f64 (pow.f64 x 4) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))))
(fma.f64 1/2 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (*.f64 x x)) (fma.f64 5/16 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (pow.f64 x 4)) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/16 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 4))))) (+.f64 (*.f64 3/8 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3)))) (*.f64 35/128 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 5))))))
(+.f64 (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (-.f64 (/.f64 5/16 (*.f64 (pow.f64 x 4) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (+.f64 (/.f64 3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (/.f64 35/128 (*.f64 (pow.f64 x 5) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))))
(+.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (-.f64 (+.f64 (/.f64 (/.f64 5/16 (pow.f64 x 4)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 35/128 (*.f64 (pow.f64 x 5) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))
(+.f64 (+.f64 (/.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (*.f64 x x)))) (/.f64 5/16 (*.f64 (*.f64 (pow.f64 x 4) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)))) (-.f64 (/.f64 -3/8 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))) (/.f64 (/.f64 35/128 (pow.f64 x 5)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))))
(fma.f64 1/2 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (*.f64 x x)) (fma.f64 5/16 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (pow.f64 x 4)) (fma.f64 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (pow.f64 x 5)) -35/128 (/.f64 -3/8 (*.f64 (pow.f64 x 3) (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2))))))
1
(+.f64 1 (*.f64 -1 x))
(+.f64 1 (neg.f64 x))
(-.f64 1 x)
(+.f64 1 (+.f64 (*.f64 -1 x) (pow.f64 x 2)))
(+.f64 1 (fma.f64 -1 x (*.f64 x x)))
(+.f64 1 (-.f64 (*.f64 x x) x))
(fma.f64 x x (-.f64 1 x))
(+.f64 (*.f64 -1 (pow.f64 x 3)) (+.f64 1 (+.f64 (*.f64 -1 x) (pow.f64 x 2))))
(fma.f64 -1 (pow.f64 x 3) (+.f64 1 (fma.f64 -1 x (*.f64 x x))))
(-.f64 (+.f64 1 (-.f64 (*.f64 x x) x)) (pow.f64 x 3))
(-.f64 (fma.f64 x x (-.f64 1 x)) (pow.f64 x 3))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 2)))
(-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x)))
(+.f64 (/.f64 1 x) (/.f64 -1 (*.f64 x x)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (/.f64 1 (pow.f64 x 2)))
(+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (/.f64 1 x) (/.f64 -1 (*.f64 x x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x)))) (/.f64 1 (pow.f64 x 4)))
(+.f64 (/.f64 -1 (*.f64 x x)) (+.f64 (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))) (/.f64 -1 (pow.f64 x 4))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 2)))
(-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x)))
(+.f64 (/.f64 1 x) (/.f64 -1 (*.f64 x x)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (/.f64 1 (pow.f64 x 2)))
(+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (/.f64 1 x) (/.f64 -1 (*.f64 x x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1 (*.f64 x x)))) (/.f64 1 (pow.f64 x 4)))
(+.f64 (/.f64 -1 (*.f64 x x)) (+.f64 (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))) (/.f64 -1 (pow.f64 x 4))))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) 1))
(fma.f64 -1/2 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 1 (fma.f64 x -1/2 (pow.f64 x -1/2)))
(+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) (+.f64 1 (*.f64 3/8 (pow.f64 x 2)))))
(fma.f64 -1/2 x (+.f64 (pow.f64 x -1/2) (+.f64 1 (*.f64 (*.f64 x x) 3/8))))
(+.f64 (fma.f64 (*.f64 x x) 3/8 1) (fma.f64 x -1/2 (pow.f64 x -1/2)))
(+.f64 (fma.f64 x (*.f64 x 3/8) 1) (fma.f64 x -1/2 (pow.f64 x -1/2)))
(+.f64 (*.f64 -1/2 x) (+.f64 (pow.f64 x -1/2) (+.f64 1 (+.f64 (*.f64 3/8 (pow.f64 x 2)) (*.f64 -5/16 (pow.f64 x 3))))))
(fma.f64 -1/2 x (+.f64 (pow.f64 x -1/2) (+.f64 1 (fma.f64 3/8 (*.f64 x x) (*.f64 (pow.f64 x 3) -5/16)))))
(+.f64 (+.f64 1 (fma.f64 x -1/2 (pow.f64 x -1/2))) (fma.f64 (*.f64 x x) 3/8 (*.f64 (pow.f64 x 3) -5/16)))
(+.f64 (fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) 1)) (fma.f64 (pow.f64 x 3) -5/16 (pow.f64 x -1/2)))
(*.f64 2 (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(fma.f64 2 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 2 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 2 (sqrt.f64 (/.f64 1 x)) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) -5/16 (fma.f64 2 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 2 (sqrt.f64 (/.f64 1 x)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) -5/16))))
(*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))
(*.f64 2 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))
(*.f64 2 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))
(*.f64 2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))
(*.f64 2 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2))
(+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))
(fma.f64 2 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x)))
(fma.f64 2 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) x)))
(fma.f64 2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) (*.f64 (/.f64 -1/2 x) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))
(fma.f64 2 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) (*.f64 (/.f64 -1/2 x) (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2)))
(+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x))))
(fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 x x)) (fma.f64 2 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x))))
(fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) (fma.f64 2 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) x))))
(fma.f64 2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) x) (+.f64 -1/2 (/.f64 3/8 x))))
(fma.f64 2 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) (*.f64 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) x) (+.f64 -1/2 (/.f64 3/8 x))))
(+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 -5/16 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))))
(fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 x x)) (fma.f64 -5/16 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (pow.f64 x 3)) (fma.f64 2 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x)))))
(fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) (fma.f64 -5/16 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (fma.f64 2 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) x)))))
(fma.f64 -5/16 (/.f64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) (pow.f64 x 3)) (fma.f64 2 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) x) (+.f64 -1/2 (/.f64 3/8 x)))))
(fma.f64 -5/16 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) (pow.f64 x 3)) (fma.f64 2 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) (*.f64 (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) -1/2) x) (+.f64 -1/2 (/.f64 3/8 x)))))

localize10.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
17.9b
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
0.5b
(pow.f64 (pow.f64 x -1/4) 2)
0.2b
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
0.0b
(sqrt.f64 (+.f64 1 x))
0.0b
(sqrt.f64 (+.f64 1 x))
0.2b
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
0.5b
(pow.f64 (pow.f64 x -1/4) 2)
17.9b
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))

series55.0ms (0.6%)

Counts
2 → 18
Calls

6 calls:

TimeVariablePointExpression
26.0ms
x
@0
(pow.f64 (pow.f64 x -1/4) 2)
20.0ms
x
@-inf
(pow.f64 (pow.f64 x -1/4) 2)
7.0ms
x
@inf
(pow.f64 (pow.f64 x -1/4) 2)
1.0ms
x
@-inf
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@0
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))

rewrite57.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
792×prod-diff_binary64
484×log-prod_binary64
367×fma-def_binary64
303×pow2_binary64
205×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify43.0ms (0.5%)

Algorithm
egg-herbie
Rules
833×times-frac_binary64
376×fma-def_binary64
372×div-sub_binary64
311×unswap-sqr_binary64
300×sub-neg_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
034157
192153
2228153
3715147
42097146
54850110
Stop Event
node limit
Counts
100 → 93
Calls
Call 1
Inputs
(-.f64 (sqrt.f64 (/.f64 1 x)) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -3/8 (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 5/16 (pow.f64 x 3)) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -3/8 (pow.f64 x 2))))) 1)
(sqrt.f64 (/.f64 1 x))
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
Outputs
(-.f64 (sqrt.f64 (/.f64 1 x)) 1)
(+.f64 (sqrt.f64 (/.f64 1 x)) -1)
(+.f64 (pow.f64 x -1/2) -1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (fma.f64 1/2 x (sqrt.f64 (/.f64 1 x))) -1)
(+.f64 (fma.f64 x 1/2 (sqrt.f64 (/.f64 1 x))) -1)
(+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 x 1/2 -1))
(+.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 -1))
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -3/8 (pow.f64 x 2)))) 1)
(+.f64 (+.f64 (fma.f64 1/2 x (sqrt.f64 (/.f64 1 x))) (*.f64 -3/8 (*.f64 x x))) -1)
(+.f64 (fma.f64 x 1/2 (fma.f64 -3/8 (*.f64 x x) (sqrt.f64 (/.f64 1 x)))) -1)
(+.f64 (fma.f64 x 1/2 (sqrt.f64 (/.f64 1 x))) (fma.f64 x (*.f64 x -3/8) -1))
(+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 x (fma.f64 x -3/8 1/2) -1))
(+.f64 (pow.f64 x -1/2) (fma.f64 x (fma.f64 x -3/8 1/2) -1))
(-.f64 (+.f64 (*.f64 1/2 x) (+.f64 (*.f64 5/16 (pow.f64 x 3)) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -3/8 (pow.f64 x 2))))) 1)
(+.f64 (fma.f64 1/2 x (fma.f64 5/16 (pow.f64 x 3) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -3/8 (*.f64 x x))))) -1)
(+.f64 (fma.f64 x 1/2 (fma.f64 5/16 (pow.f64 x 3) (fma.f64 -3/8 (*.f64 x x) (sqrt.f64 (/.f64 1 x))))) -1)
(+.f64 (fma.f64 x (*.f64 x -3/8) (fma.f64 x 1/2 (sqrt.f64 (/.f64 1 x)))) (fma.f64 5/16 (pow.f64 x 3) -1))
(+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 (*.f64 x x) (fma.f64 x 5/16 -3/8) (fma.f64 x 1/2 -1)))
(+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 x (+.f64 1/2 (*.f64 x (fma.f64 x 5/16 -3/8))) -1))
(+.f64 (pow.f64 x -1/2) (fma.f64 x (+.f64 1/2 (*.f64 x (fma.f64 x 5/16 -3/8))) -1))
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(pow.f64 (exp.f64 (*.f64 -1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)

localize10.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (sqrt.f64 x))
0.3b
(cbrt.f64 (+.f64 1 x))
0.2b
(pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)
0.2b
(/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2))
0.2b
(pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)
0.3b
(cbrt.f64 (+.f64 1 x))
0.3b
(/.f64 1 (sqrt.f64 x))
10.0b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))

series6.0ms (0.1%)

Counts
3 → 8
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)
1.0ms
x
@inf
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
1.0ms
x
@-inf
(pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)
1.0ms
x
@-inf
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
1.0ms
x
@0
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))

rewrite71.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
515×log-prod_binary64
455×fma-def_binary64
312×pow2_binary64
215×fma-neg_binary64
210×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify122.0ms (1.3%)

Algorithm
egg-herbie
Rules
1201×fma-def_binary64
776×sqr-pow_binary64
606×cube-prod_binary64
482×fabs-mul_binary64
390×pow-sqr_binary64
Iterations

Useful iterations: 10 (0.0ms)

IterNodesCost
02982
17476
218174
351962
4129960
5235060
6287760
7301160
8316560
9335760
10361056
11426956
12467856
13520756
14586756
15669356
16709056
17745456
18779656
Stop Event
node limit
Counts
122 → 127
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 1/3 x))
(+.f64 (*.f64 -1/9 (pow.f64 x 2)) (+.f64 1 (*.f64 1/3 x)))
(+.f64 (*.f64 -1/9 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 5/81 (pow.f64 x 3)) (*.f64 1/3 x))))
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
Outputs
1
(+.f64 1 (*.f64 1/3 x))
(fma.f64 1/3 x 1)
(+.f64 (*.f64 -1/9 (pow.f64 x 2)) (+.f64 1 (*.f64 1/3 x)))
(fma.f64 -1/9 (*.f64 x x) (+.f64 1 (*.f64 1/3 x)))
(fma.f64 -1/9 (*.f64 x x) (fma.f64 1/3 x 1))
(fma.f64 x (*.f64 x -1/9) (fma.f64 1/3 x 1))
(fma.f64 x (fma.f64 x -1/9 1/3) 1)
(+.f64 (*.f64 -1/9 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 5/81 (pow.f64 x 3)) (*.f64 1/3 x))))
(fma.f64 -1/9 (*.f64 x x) (+.f64 1 (fma.f64 5/81 (pow.f64 x 3) (*.f64 1/3 x))))
(+.f64 (fma.f64 -1/9 (*.f64 x x) (fma.f64 1/3 x 1)) (*.f64 5/81 (pow.f64 x 3)))
(fma.f64 x (*.f64 x -1/9) (fma.f64 1/3 x (fma.f64 5/81 (pow.f64 x 3) 1)))
(fma.f64 x (fma.f64 x -1/9 1/3) (fma.f64 5/81 (pow.f64 x 3) 1))
(fma.f64 x (+.f64 1/3 (*.f64 x (fma.f64 x 5/81 -1/9))) 1)
(fma.f64 x (fma.f64 x (fma.f64 x 5/81 -1/9) 1/3) 1)
1
(+.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x 1)
(fma.f64 x 1/2 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(fma.f64 -1/8 (*.f64 x x) (fma.f64 1/2 x 1))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 x 1/2 1))
(fma.f64 x (*.f64 x -1/8) (fma.f64 x 1/2 1))
(fma.f64 x (fma.f64 x -1/8 1/2) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(fma.f64 -1/8 (*.f64 x x) (+.f64 (fma.f64 1/2 x 1) (*.f64 (pow.f64 x 3) 1/16)))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 x 1/2 (fma.f64 (pow.f64 x 3) 1/16 1)))
(fma.f64 x 1/2 (fma.f64 x (*.f64 x -1/8) (fma.f64 (pow.f64 x 3) 1/16 1)))
(fma.f64 (*.f64 x x) (fma.f64 x 1/16 -1/8) (fma.f64 x 1/2 1))
(fma.f64 x (+.f64 1/2 (*.f64 x (fma.f64 x 1/16 -1/8))) 1)
(fma.f64 x (fma.f64 x (fma.f64 x 1/16 -1/8) 1/2) 1)

eval845.0ms (9.1%)

Compiler

Compiled 23369 to 18101 computations (22.5% saved)

prune268.0ms (2.9%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New1037161053
Fresh18018
Picked101
Done415
Total1060171077
Error
5.3b
Counts
1077 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
30.1b
(sqrt.f64 (/.f64 1 x))
28.9b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
38.8b
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
29.0b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
29.6b
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
47.9b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
22.1b
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
5.6b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
20.3b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
20.5b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
38.8b
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
28.9b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
62.8b
-1
30.1b
(+.f64 (pow.f64 x -1/2) -1)
30.1b
(pow.f64 x -1/2)
5.9b
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
44.7b
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
Compiler

Compiled 370 to 288 computations (22.2% saved)

localize13.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
5.6b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.1b
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(pow.f64 (+.f64 1 x) -1/2)
0.0b
(pow.f64 (+.f64 1 x) -1/2)
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.1b
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))
5.6b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))

series11.0ms (0.1%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
2.0ms
x
@0
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
2.0ms
x
@inf
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.0ms
x
@-inf
(pow.f64 (+.f64 1 x) -1/2)
0.0ms
x
@inf
(pow.f64 (+.f64 1 x) -1/2)

rewrite117.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
934×prod-diff_binary64
458×fma-def_binary64
246×log-div_binary64
225×expm1-udef_binary64
225×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01342
133042
2421842
Stop Event
node limit
Counts
3 → 94
Calls
Call 1
Inputs
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))
(pow.f64 (+.f64 1 x) -1/2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2) (*.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))) (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))) 2) (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (*.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1 x) (+.f64 1 x)) (/.f64 1 (neg.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (/.f64 1 x) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 x)) 2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (/.f64 1 (cbrt.f64 x)) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2) 1) (/.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) 1) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (/.f64 (/.f64 1 (+.f64 1 x)) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))) (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))) (/.f64 (/.f64 1 (+.f64 1 x)) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))) (/.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (+.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (-.f64 (+.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (hypot.f64 (pow.f64 x -1/4) (pow.f64 (+.f64 1 x) -1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (neg.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 3) (pow.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (/.f64 (/.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) (log1p.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 (/.f64 (/.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) (log1p.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (*.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 2) (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (cbrt.f64 x)) 2) (*.f64 (/.f64 1 (cbrt.f64 x)) (/.f64 1 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 x) (/.f64 1 (fma.f64 -1 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 x)) 2) 1) (/.f64 (/.f64 1 (cbrt.f64 x)) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -1/2) 1) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 1 x) 2))) (/.f64 (/.f64 1 x) (cbrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 x)) 2) (cbrt.f64 (pow.f64 (+.f64 1 x) 2))) (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -1/2) (cbrt.f64 (pow.f64 (+.f64 1 x) 2))) (/.f64 (pow.f64 x -1/2) (cbrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 1 x))) (/.f64 (/.f64 1 x) (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 x)) 2) (sqrt.f64 (+.f64 1 x))) (/.f64 (/.f64 1 (cbrt.f64 x)) (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x 3))) (fma.f64 x (-.f64 x 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (-.f64 1 (*.f64 x x))) (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (*.f64 x (+.f64 1 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (+.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 1 x) (fma.f64 -1 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 1 x) 3) (pow.f64 (+.f64 1 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (neg.f64 (log1p.f64 x)) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (neg.f64 (log1p.f64 x)) (log.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (+.f64 1 x) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 1 x) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) -1/2)) (cbrt.f64 (/.f64 1 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (+.f64 1 x))) (cbrt.f64 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 (+.f64 1 x) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 -1/2) (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) 2)) -1/2) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (+.f64 1 x)) -1/2) (pow.f64 (sqrt.f64 (+.f64 1 x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1 x) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/2 (log1p.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log1p.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (+.f64 1 x) -1/2)))))))

simplify169.0ms (1.8%)

Algorithm
egg-herbie
Rules
946×times-frac_binary64
925×fma-def_binary64
503×associate-/r*_binary64
482×distribute-rgt-in_binary64
471×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02022175
16491994
223341517
Stop Event
node limit
Counts
130 → 154
Calls
Call 1
Inputs
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 1/2 (pow.f64 x -1/2)) (+.f64 (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (pow.f64 x 2))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 (pow.f64 x 3)))) (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -5/16 (sqrt.f64 (/.f64 1 x)))) x)))) (pow.f64 x 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(/.f64 1/2 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 4)))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 4)))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3)))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (+.f64 (*.f64 3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -5/16 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))))) (pow.f64 x 5)))))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
1
(+.f64 (*.f64 -1/2 x) 1)
(+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 3/8 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 x) (+.f64 1 (+.f64 (*.f64 3/8 (pow.f64 x 2)) (*.f64 -5/16 (pow.f64 x 3)))))
(sqrt.f64 (/.f64 1 x))
(+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x))))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 -5/16 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))))
Outputs
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2))))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))
(+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))))
(-.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))
(-.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))))))
(fma.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) x (+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))))))
(fma.f64 x (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))) (-.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))))
(+.f64 (*.f64 (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (fma.f64 x (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 x (sqrt.f64 x)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 1/2 (pow.f64 x -1/2)) (+.f64 (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (pow.f64 x 2))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))))
(fma.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) x (+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 -1 (+.f64 (*.f64 (fma.f64 1/8 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) (*.f64 x x)) (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))))))
(fma.f64 x (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))) (fma.f64 -1 (fma.f64 (+.f64 (*.f64 (/.f64 (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (pow.f64 x -1/2) 1/2)) (fma.f64 1/8 (/.f64 (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x x) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))) (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2))))))
(-.f64 (fma.f64 x (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 x (sqrt.f64 x)))) (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (pow.f64 x -1/2) 1/2) (fma.f64 1/8 (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (+.f64 1/2 (sqrt.f64 (/.f64 1 x))) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x x) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (/.f64 (*.f64 (*.f64 -1/4 (sqrt.f64 (/.f64 1 x))) 3/2) (*.f64 x x)))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 -1/4 x) (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x 3/2))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 -1 (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (/.f64 (*.f64 (*.f64 -1/4 (sqrt.f64 (/.f64 1 x))) 3/2) (*.f64 x x))) (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 -1/4 x) (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x 3/2)))) (/.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (pow.f64 x 4)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 (pow.f64 x 3)))) (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -5/16 (sqrt.f64 (/.f64 1 x)))) x)))) (pow.f64 x 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (sqrt.f64 x))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (pow.f64 x 3)) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8))) (*.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16))))) (pow.f64 x 5)) (fma.f64 -1 (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(-.f64 (-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (/.f64 (*.f64 (*.f64 -1/4 (sqrt.f64 (/.f64 1 x))) 3/2) (*.f64 x x))) (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (sqrt.f64 x))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/8 (sqrt.f64 (pow.f64 x 3))))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16))))) (pow.f64 x 5)))
(-.f64 (-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 -1/4 x) (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x 3/2)))) (/.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (pow.f64 x 4))) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (sqrt.f64 x))) (fma.f64 (pow.f64 x 3/2) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2)))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16))))) (pow.f64 x 5)))
(/.f64 1/2 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))
(/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))))
(/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))
(/.f64 (/.f64 (/.f64 1/2 (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (*.f64 x x))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))))
(fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) (*.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))
(fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (/.f64 3/2 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))
(+.f64 (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3)) (/.f64 (/.f64 (/.f64 1/2 (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (*.f64 x x)))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 4)))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (fma.f64 1/8 (/.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3))) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) (*.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))))
(fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 4)) (/.f64 1/8 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3))) (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (/.f64 3/2 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))))
(+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 4)) (+.f64 (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3)) (+.f64 (/.f64 (/.f64 (/.f64 1/2 (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (*.f64 x x)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 4)))))
(+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 4)))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3)))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (+.f64 (*.f64 3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -5/16 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))))) (pow.f64 x 5)))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (fma.f64 1/8 (/.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3))) (+.f64 (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) (*.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))))) (neg.f64 (/.f64 (fma.f64 1/2 (/.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (*.f64 1/8 (/.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3)))) (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8) (/.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/16) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))))) (pow.f64 x 5))))))
(fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 4)) (/.f64 1/8 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4) (*.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3))) (-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (/.f64 3/2 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 1/2 (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 (fma.f64 1/2 (*.f64 (/.f64 (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3)) (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/8)))) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2)) (fma.f64 1/8 (*.f64 (/.f64 (*.f64 1/8 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3)) (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2)) (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/16))))) (pow.f64 x 5)))))
(+.f64 (+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 4)) (+.f64 (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 4)))) (-.f64 (/.f64 (/.f64 (/.f64 1/2 (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (*.f64 x x)) (/.f64 (+.f64 (/.f64 (+.f64 (/.f64 1/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 9/32 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))) 4/3) (+.f64 (/.f64 3/128 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 1/64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))) (pow.f64 x 5))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(+.f64 (/.f64 1 x) -1)
(+.f64 -1 (/.f64 1 x))
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(+.f64 (/.f64 1 x) (-.f64 x 1))
(+.f64 x (+.f64 -1 (/.f64 1 x)))
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(+.f64 (fma.f64 -1 (*.f64 x x) (+.f64 x (/.f64 1 x))) -1)
(+.f64 -1 (-.f64 (+.f64 x (/.f64 1 x)) (*.f64 x x)))
(+.f64 -1 (+.f64 x (-.f64 (/.f64 1 x) (*.f64 x x))))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
1
(+.f64 (*.f64 -1/2 x) 1)
(fma.f64 -1/2 x 1)
(fma.f64 x -1/2 1)
(+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 3/8 (pow.f64 x 2))))
(+.f64 (fma.f64 -1/2 x 1) (*.f64 (*.f64 x x) 3/8))
(fma.f64 x -1/2 (fma.f64 (*.f64 x x) 3/8 1))
(fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) 1))
(+.f64 (*.f64 -1/2 x) (+.f64 1 (+.f64 (*.f64 3/8 (pow.f64 x 2)) (*.f64 -5/16 (pow.f64 x 3)))))
(+.f64 (fma.f64 -1/2 x 1) (fma.f64 3/8 (*.f64 x x) (*.f64 (pow.f64 x 3) -5/16)))
(+.f64 (fma.f64 (pow.f64 x 3) -5/16 (*.f64 (*.f64 3/8 x) x)) (fma.f64 x -1/2 1))
(fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) (fma.f64 (pow.f64 x 3) -5/16 1)))
(sqrt.f64 (/.f64 1 x))
(+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 x)))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 x))))
(fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (sqrt.f64 (/.f64 1 x))))
(+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7)))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 x)))))
(fma.f64 -5/16 (sqrt.f64 (/.f64 1 (pow.f64 x 7))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 3/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (sqrt.f64 (/.f64 1 x)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))
(pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))
(*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))
(+.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x)))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))
(fma.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2) (/.f64 (pow.f64 (/.f64 -1 x) 1/2) (/.f64 (/.f64 x -1/2) (pow.f64 -1 -1/2))))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x))))
(+.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 x x)) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x))))
(+.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) x) (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (*.f64 x x) 3/8))))
(fma.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) x) (+.f64 -1/2 (/.f64 3/8 x))))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (+.f64 (*.f64 3/8 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))) (+.f64 (*.f64 -5/16 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 3))) (*.f64 -1/2 (/.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) x)))))
(+.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (*.f64 x x)) (fma.f64 -5/16 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) (pow.f64 x 3)) (*.f64 -1/2 (/.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) x)))))
(+.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (fma.f64 3/8 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) (fma.f64 -5/16 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 x -1/2)))))
(fma.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)) x) (*.f64 (*.f64 (/.f64 (pow.f64 (/.f64 -1 x) 1/2) x) (/.f64 (pow.f64 -1 -1/2) x)) (+.f64 3/8 (/.f64 -5/16 x)))))

localize4.0ms (0%)

localize4.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
0.0b
(+.f64 x (sqrt.f64 x))
0.0b
(+.f64 x (sqrt.f64 x))
0.1b
(/.f64 1 (+.f64 x (sqrt.f64 x)))

series4.0ms (0%)

Counts
2 → 4
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(/.f64 1 (+.f64 x (sqrt.f64 x)))
1.0ms
x
@-inf
(/.f64 1 (+.f64 x (sqrt.f64 x)))
1.0ms
x
@inf
(/.f64 1 (+.f64 x (sqrt.f64 x)))
0.0ms
x
@0
(+.f64 x (sqrt.f64 x))
0.0ms
x
@-inf
(+.f64 x (sqrt.f64 x))

rewrite76.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
636×pow1_binary64
595×add-log-exp_binary64
595×log1p-expm1-u_binary64
595×expm1-log1p-u_binary64
581×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify118.0ms (1.3%)

Algorithm
egg-herbie
Rules
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0410
1610
Stop Event
saturated
Counts
67 → 65
Calls
Call 1
Inputs
(/.f64 1 x)
(/.f64 1 x)
x
x
Outputs
(/.f64 1 x)
(/.f64 1 x)
x
x

localize6.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 x))
0.0b
(+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x)))
0.0b
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
0.0b
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
0.0b
(+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x)))
0.1b
(sqrt.f64 (/.f64 1 x))

series7.0ms (0.1%)

Counts
3 → 6
Calls

9 calls:

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

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
473×fma-def_binary64
417×log-prod_binary64
383×prod-exp_binary64
315×exp-prod_binary64
291×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0929
120323
2275423
Stop Event
node limit
Counts
3 → 212
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 1 x))
(+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x)))
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 x -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 x -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/6) (/.f64 1 (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/4) (pow.f64 x -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 x -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 -1/2 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (neg.f64 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x 3) -1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 x) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 x)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (log.f64 x))) 2)) (cbrt.f64 (*.f64 -1/2 (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (log.f64 x)))) (sqrt.f64 (*.f64 -1/2 (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 x -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/2 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 x -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 x -1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 x -3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 x) 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 x) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 x)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 x)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/2 (log.f64 x)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/2 (log.f64 x)) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 x -1/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 1/4 (*.f64 x x)) (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2))) (/.f64 (/.f64 1 x) (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2) (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2) (*.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (*.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2)) (/.f64 1 (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x)) (/.f64 1 (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x))) (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2)) (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2)) (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2)) (+.f64 (/.f64 1 x) (-.f64 (*.f64 1/4 (*.f64 x x)) (*.f64 1/2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x)) (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2))) (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x))) (neg.f64 (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (*.f64 1/4 (*.f64 x x))) (-.f64 (pow.f64 x -1/2) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2)) 1) (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x)) 1) (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x))) (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2)) (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))) (sqrt.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (sqrt.f64 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (pow.f64 x -1/2)) (+.f64 1 (expm1.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (+.f64 1 (expm1.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 1/2))) (exp.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (sqrt.f64 (exp.f64 x)) (+.f64 1 (expm1.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 1/2))) (+.f64 1 (expm1.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 1/2) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1/2 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 x (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 1/2) 1 (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (/.f64 1 (cbrt.f64 x)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 1/2) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 1/2)) (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (cbrt.f64 (*.f64 x 1/2)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 1/2) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 1/2)) (sqrt.f64 (*.f64 x 1/2)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 x)) (sqrt.f64 x) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) 2) (cbrt.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) (sqrt.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (pow.f64 x -1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (fma.f64 x 1/2 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) -1) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 2) (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) (sqrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) -1) (/.f64 1 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1) (-.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (-.f64 1 (*.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) -1) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) -1)) (neg.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 (+.f64 (pow.f64 x -1/2) -1) 3)) (fma.f64 1/4 (*.f64 x x) (-.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) -1) 2) (*.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (pow.f64 (+.f64 (pow.f64 x -1/2) -1) 2)) (-.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)))) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 3) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2))) (+.f64 (pow.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 2) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))) 2)) (cbrt.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))) (sqrt.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x 1/2))) (exp.f64 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) -1)) (+.f64 1 (expm1.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 1/2) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x 1/2 (pow.f64 x -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (pow.f64 x -1/2) -1) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1/2 (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1/2 (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 x (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 x (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 1/2) 1 (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 1/2) 1 (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x 1/2 (pow.f64 x -1/2)) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2) (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 2) (*.f64 (cbrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (/.f64 1 (cbrt.f64 x)) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 1/2) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 1/2) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 1/2)) (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x 1/2)) (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (cbrt.f64 (*.f64 x 1/2)) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 1/2)) 2) (cbrt.f64 (*.f64 x 1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) (*.f64 (sqrt.f64 (fma.f64 x 1/2 (pow.f64 x -1/2))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 1/2) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 1/2) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 1/2)) (sqrt.f64 (*.f64 x 1/2)) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 1/2)) (sqrt.f64 (*.f64 x 1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/8 (pow.f64 x 3) (pow.f64 x -3/2)) (/.f64 1 (-.f64 (fma.f64 1/4 (*.f64 x x) (/.f64 1 x)) (*.f64 1/2 (sqrt.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 x)) (sqrt.f64 x) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 1/4 (*.f64 x x)) (/.f64 1 x)) (/.f64 1 (-.f64 (*.f64 x 1/2) (pow.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) -1)) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) -1)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) -1)) (sqrt.f64 (+.f64 (pow.f64 x -1/2) -1)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/4) 1) (-.f64 (pow.f64 x -1/4) 1) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (+.f64 (pow.f64 x -1/2) -1) 1))))))

simplify31.0ms (0.3%)

Algorithm
egg-herbie
Rules
fma-neg_binary64
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0626
11326
21526
Stop Event
saturated
Counts
218 → 215
Calls
Call 1
Inputs
(*.f64 1/2 x)
(*.f64 1/2 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
Outputs
(*.f64 1/2 x)
(*.f64 1/2 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x -1)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x -1)

localize8.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.5b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
0.1b
(sqrt.f64 (/.f64 1 x))
0.0b
(/.f64 1 (+.f64 1 x))
0.0b
(/.f64 1 (+.f64 1 x))
0.1b
(sqrt.f64 (/.f64 1 x))
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
3.5b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))

series3.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite107.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
642×log-prod_binary64
399×fma-def_binary64
326×pow2_binary64
279×log-div_binary64
229×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
66 → 66
Calls
Call 1
Inputs
Outputs

eval767.0ms (8.3%)

Compiler

Compiled 18369 to 14172 computations (22.8% saved)

prune294.0ms (3.2%)

Pruning

27 alts after pruning (24 fresh and 3 done)

PrunedKeptTotal
New78317800
Fresh4711
Picked101
Done235
Total79027817
Error
0b
Counts
817 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
21.3b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
28.9b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
30.1b
(pow.f64 x -1/2)
0.5b
(*.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
47.9b
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
0.4b
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
30.1b
(sqrt.f64 (/.f64 1 x))
28.9b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
29.0b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
38.8b
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
5.9b
(*.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
29.5b
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
33.3b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
33.6b
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
38.8b
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
44.7b
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
29.6b
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
20.3b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
5.6b
(/.f64 (*.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.5b
(*.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
21.9b
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
0.1b
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
60.4b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
62.8b
-1
30.1b
(+.f64 (pow.f64 x -1/2) -1)
22.1b
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
59.3b
(/.f64 1 x)
Compiler

Compiled 682 to 539 computations (21% saved)

localize11.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(pow.f64 (+.f64 1 x) -1/2)
0.0b
(/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.0b
(pow.f64 (+.f64 1 x) -1/2)
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
0.1b
(/.f64 (pow.f64 x -1/2) (+.f64 1 x))

series10.0ms (0.1%)

Counts
2 → 12
Calls

6 calls:

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

rewrite118.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
782×prod-diff_binary64
656×log-prod_binary64
373×fma-def_binary64
243×log-div_binary64
224×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify110.0ms (1.2%)

Algorithm
egg-herbie
Rules
820×associate-/l*_binary64
760×fma-def_binary64
666×associate-/r*_binary64
544×distribute-rgt-in_binary64
536×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01571731
15561455
223581052
Stop Event
node limit
Counts
107 → 118
Calls
Call 1
Inputs
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 1/2 (pow.f64 x -1/2)) (+.f64 (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (pow.f64 x 2))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 (pow.f64 x 3)))) (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -5/16 (sqrt.f64 (/.f64 1 x)))) x)))) (pow.f64 x 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)))) (pow.f64 x 4))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (+.f64 (*.f64 3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -5/16 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 5)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))))) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)))) (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/8 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 5)))))))))
Outputs
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2))))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))
(+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))))
(-.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))
(-.f64 (/.f64 1 (+.f64 x (sqrt.f64 x))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))))))
(fma.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) x (+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))))))
(fma.f64 x (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))) (-.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))))
(+.f64 (*.f64 (/.f64 -1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (fma.f64 x (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 x (sqrt.f64 x)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) x) (+.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x)))) (+.f64 (pow.f64 x -1/2) 1))) (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 (*.f64 (-.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 -1 (/.f64 (*.f64 (+.f64 1/2 (pow.f64 x -1/2)) (+.f64 (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (pow.f64 x -1/2) 1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (pow.f64 x 2))) (*.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))) (*.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1))) (sqrt.f64 (/.f64 1 x))))))))
(fma.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) x (+.f64 (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2)))) (*.f64 -1 (+.f64 (*.f64 (fma.f64 1/8 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 (-.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (neg.f64 (/.f64 (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))))) (*.f64 x x)) (fma.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (sqrt.f64 (/.f64 1 x)) (/.f64 1/2 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))))))
(fma.f64 x (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))) (fma.f64 -1 (fma.f64 (+.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (+.f64 1 (pow.f64 x -1/2))) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))))))) (fma.f64 1/8 (/.f64 (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x x) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))) (/.f64 1 (*.f64 x (+.f64 1 (pow.f64 x -1/2))))))
(-.f64 (fma.f64 x (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (/.f64 1 (+.f64 x (sqrt.f64 x)))) (fma.f64 (fma.f64 1/8 (/.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (sqrt.f64 (/.f64 1 x)) 1/2))) (fma.f64 (/.f64 (+.f64 (/.f64 (/.f64 1/8 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x -1/2) 1/2) (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x)))) (+.f64 1 (pow.f64 x -1/2)))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 (pow.f64 x -1/2) 1/2) (/.f64 1/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 1 (pow.f64 x -1/2)))))) (*.f64 x x) (*.f64 (/.f64 (/.f64 1 (+.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -1/2))) (+.f64 1/2 (sqrt.f64 (/.f64 1 x))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (*.f64 x x) 3/2))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x (/.f64 3/2 x)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 -1 (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (*.f64 x x) 3/2)))) (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x (/.f64 3/2 x))))) (/.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (pow.f64 x 4)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))))) (sqrt.f64 (pow.f64 x 3)))) (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -5/16 (sqrt.f64 (/.f64 1 x)))) x)))) (pow.f64 x 5))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (+.f64 (*.f64 3/8 (sqrt.f64 (/.f64 1 x))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 x)))) x)) (*.f64 -1/8 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (pow.f64 x 2))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (sqrt.f64 x))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8) (sqrt.f64 (pow.f64 x 3)))) (*.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16))))) (pow.f64 x 5)) (fma.f64 -1 (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4)) (fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 x x)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(-.f64 (-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (*.f64 x x) 3/2)))) (/.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (pow.f64 x 4))) (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (fma.f64 1/4 (*.f64 x (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))))) (sqrt.f64 x))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/8 (sqrt.f64 (pow.f64 x 3)))))) (*.f64 x (*.f64 (*.f64 1/4 (sqrt.f64 (/.f64 1 x))) 1/16)))) (pow.f64 x 5)))
(-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 x (/.f64 3/2 x))))) (+.f64 (/.f64 (fma.f64 -1/2 (*.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (sqrt.f64 x)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/8 (pow.f64 x 3/2))) -1/8) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16) (*.f64 x 1/4)))) (pow.f64 x 5)) (/.f64 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 1 x) 9/4) (pow.f64 x 3/2)))) (pow.f64 x 4))))
(*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2))))
(*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))
(/.f64 1/2 (*.f64 x (*.f64 x (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))
(/.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))))
(fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (/.f64 (*.f64 1/4 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2))) (*.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -3/2) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (/.f64 1/2 (*.f64 x (*.f64 x (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))
(+.f64 (/.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)))) (pow.f64 x 4))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (fma.f64 -1 (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (/.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3) (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8)) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)))) (pow.f64 x 4)) (/.f64 (*.f64 1/4 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2))) (*.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)))))
(+.f64 (/.f64 1/2 (*.f64 x (*.f64 x (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (-.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -3/2) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))) (/.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/8) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))) (/.f64 (*.f64 -1/8 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3))) (pow.f64 x 4))))
(-.f64 (+.f64 (/.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)) (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3))) (/.f64 (fma.f64 1/4 (/.f64 -1/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 (/.f64 -3/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) 2/3)) (pow.f64 x 4)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (+.f64 (*.f64 3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -5/16 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 5)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))))) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 5)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)))) (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/8 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -3/8 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (+.f64 (*.f64 2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1))))) (*.f64 -1/2 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))))))) (*.f64 (pow.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 3) (pow.f64 x 5)))))))))
(fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/16) (pow.f64 x 5))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))) (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (/.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3) (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8)) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)))) (pow.f64 x 5))) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (fma.f64 -1 (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 -1) 2) (/.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3) (pow.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) 2))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8)) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)))) (pow.f64 x 4)) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (/.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 x 3))) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 1/8) (/.f64 (*.f64 (pow.f64 x 5) (pow.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 3/2))))))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/16) (*.f64 (pow.f64 x 5) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (+.f64 (-.f64 (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -3/2) (/.f64 (*.f64 (pow.f64 x 5) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3)) (*.f64 1/8 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -3/2) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))) (/.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/8) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))) (/.f64 (*.f64 -1/8 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3))) (pow.f64 x 4))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2)) (/.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/8) (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))) (/.f64 (*.f64 -1/8 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 9/4)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3))) (pow.f64 x 5))) (/.f64 1/2 (*.f64 x (*.f64 x (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))))
(+.f64 (fma.f64 1/4 (/.f64 (/.f64 -1/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 5)) (fma.f64 3/4 (/.f64 (fma.f64 1/4 (/.f64 -1/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 (/.f64 -3/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) 2/3)) (pow.f64 x 5)) (/.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (pow.f64 (/.f64 -1 x) 1/2)) (pow.f64 -1 -1/2)))) (-.f64 (fma.f64 1/8 (/.f64 (/.f64 -3/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 5)) (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (pow.f64 x 3))) (/.f64 (fma.f64 1/4 (/.f64 -1/8 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 (/.f64 -3/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) 2/3)) (pow.f64 x 4))))

localize2.0ms (0%)

localize7.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)
0.1b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
0.0b
(+.f64 (pow.f64 x -1/2) 1)
0.0b
(+.f64 (pow.f64 x -1/2) 1)
0.1b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
0.2b
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)

series14.0ms (0.1%)

Counts
3 → 32
Calls

9 calls:

TimeVariablePointExpression
7.0ms
x
@0
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)
3.0ms
x
@-inf
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
1.0ms
x
@-inf
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)
1.0ms
x
@inf
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)
1.0ms
x
@inf
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))

rewrite92.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
840×pow1_binary64
786×add-log-exp_binary64
786×log1p-expm1-u_binary64
786×expm1-log1p-u_binary64
769×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0830
117830
2223630
Stop Event
node limit
Counts
3 → 81
Calls
Call 1
Inputs
(*.f64 (+.f64 (pow.f64 x -1/2) 1) x)
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (pow.f64 x -1/2) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (pow.f64 x -1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x -1/2) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (pow.f64 x -1/2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (exp.f64 (neg.f64 (log1p.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x -1/2) 1) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 2) (/.f64 1 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 x) (hypot.f64 1 (pow.f64 x -1/4))) (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x -1/2) 1) (neg.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 x -3/2)) x) (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x -1) -1) x) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 1 (pow.f64 x -3/2))) (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 x -1) -1)) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 x) (hypot.f64 1 (pow.f64 x -1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (+.f64 (pow.f64 x -1/2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 x) (log1p.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1) (exp.f64 (neg.f64 (log1p.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))) (cbrt.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -2)) (/.f64 1 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -1/2) (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 (log1p.f64 (pow.f64 x -1/2)))) (pow.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 (log1p.f64 (pow.f64 x -1/2)))) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 2) -1) (pow.f64 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sqrt.f64 x) (hypot.f64 1 (pow.f64 x -1/4))) -1) (pow.f64 (*.f64 (sqrt.f64 x) (hypot.f64 1 (pow.f64 x -1/4))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (*.f64 (pow.f64 x -1/2) x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (neg.f64 (log1p.f64 (pow.f64 x -1/2))) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (+.f64 x (*.f64 (pow.f64 x -1/2) x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (pow.f64 x -1/2) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 1 (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (pow.f64 x -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x -1/2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) 1)) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) 1)) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 1 (pow.f64 x -1/4)) (hypot.f64 1 (pow.f64 x -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 x -3/2)) (/.f64 1 (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x -1) -1) (/.f64 1 (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2))) (+.f64 1 (pow.f64 x -3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x -1/2) -1) (+.f64 (pow.f64 x -1) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 x -3/2)) (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 x -3/2)) (+.f64 1 (-.f64 (pow.f64 x -1) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x -1) -1) (+.f64 (pow.f64 x -1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 x -3/2))) (neg.f64 (+.f64 (pow.f64 x -1) (-.f64 1 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x -1) -1)) (neg.f64 (+.f64 (pow.f64 x -1/2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 x -1)) (-.f64 1 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (pow.f64 x -1/2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 1 (pow.f64 x -1/4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (pow.f64 x -1/2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (pow.f64 x -1/2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x -1)) (cbrt.f64 (pow.f64 x -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) 1)))))

simplify53.0ms (0.6%)

Algorithm
egg-herbie
Rules
671×fma-neg_binary64
487×fma-def_binary64
434×times-frac_binary64
312×unswap-sqr_binary64
277×associate-*l*_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
025324
166324
2133272
3317260
4795228
52226228
67033228
Stop Event
node limit
Counts
113 → 91
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
Outputs
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 x -1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(*.f64 (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1) x)
(*.f64 x (+.f64 1 (pow.f64 x -1/2)))
(+.f64 x (*.f64 x (pow.f64 x -1/2)))
(+.f64 x (pow.f64 x 1/2))
(+.f64 x (sqrt.f64 x))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 (/.f64 1 x) 1/2)) x))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 x (+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)))
(/.f64 1 (*.f64 x (+.f64 1 (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (+.f64 x (*.f64 x (sqrt.f64 (/.f64 1 x)))))
(/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 x)) x))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 1 (pow.f64 (/.f64 1 x) 1/2))
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 1 (pow.f64 x -1/2))
(+.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 1)
(+.f64 1 (pow.f64 x -1/2))

localize100.0ms (1.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.5b
(+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x)))
0.3b
(/.f64 1/2 (pow.f64 x -1/2))
0.2b
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
0.0b
(/.f64 -1 (+.f64 1 x))
0.0b
(/.f64 -1 (+.f64 1 x))
0.2b
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
0.3b
(/.f64 1/2 (pow.f64 x -1/2))
3.5b
(+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x)))

series5.0ms (0.1%)

Counts
4 → 24
Calls

12 calls:

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

rewrite98.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
644×log-prod_binary64
514×fma-def_binary64
319×log-div_binary64
241×expm1-udef_binary64
241×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify37.0ms (0.4%)

Algorithm
egg-herbie
Rules
749×fma-def_binary64
569×associate-*l*_binary64
550×fma-neg_binary64
431×associate-*r*_binary64
417×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039375
1105372
2251363
3701363
42110363
Stop Event
node limit
Counts
244 → 249
Calls
Call 1
Inputs
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 2))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
-1
(-.f64 x 1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) x) 1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (pow.f64 x 3) x)) 1)
(/.f64 -1 x)
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(/.f64 -1 x)
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
Outputs
(/.f64 1 x)
(-.f64 (/.f64 1 x) 1)
(+.f64 (/.f64 1 x) -1)
(-.f64 (+.f64 (/.f64 1 x) x) 1)
(+.f64 (/.f64 1 x) (+.f64 x -1))
(+.f64 x (+.f64 (/.f64 1 x) -1))
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (/.f64 1 x) x)) 1)
(+.f64 (fma.f64 -1 (*.f64 x x) (+.f64 x (/.f64 1 x))) -1)
(+.f64 -1 (+.f64 (/.f64 1 x) (-.f64 x (*.f64 x x))))
(+.f64 (/.f64 1 x) (-.f64 x (fma.f64 x x 1)))
(+.f64 x (-.f64 (/.f64 1 x) (fma.f64 x x 1)))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 -1 (*.f64 x x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 5)))))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 3))))
(-.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 -1 (*.f64 x x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))))
(+.f64 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 -1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 5)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 5)))))
-1
(-.f64 x 1)
(+.f64 x -1)
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) x) 1)
(+.f64 (fma.f64 -1 (*.f64 x x) x) -1)
(+.f64 -1 (-.f64 x (*.f64 x x)))
(-.f64 x (fma.f64 x x 1))
(-.f64 (+.f64 (*.f64 -1 (pow.f64 x 2)) (+.f64 (pow.f64 x 3) x)) 1)
(+.f64 (fma.f64 -1 (*.f64 x x) (+.f64 x (pow.f64 x 3))) -1)
(+.f64 -1 (+.f64 x (*.f64 (*.f64 x x) (+.f64 x -1))))
(*.f64 (fma.f64 x x 1) (+.f64 x -1))
(*.f64 (+.f64 x -1) (fma.f64 x x 1))
(/.f64 -1 x)
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 x))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 x))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 x)))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 x)))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 x))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 x))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3)))))
(/.f64 -1 x)
(-.f64 (/.f64 1 (pow.f64 x 2)) (/.f64 1 x))
(-.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 x))
(+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 x))
(-.f64 (/.f64 1 (pow.f64 x 2)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 x)))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 x)))
(+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.f64 1 (pow.f64 x 2))) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 x)))
(+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 x) (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 1 x))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 -1 (pow.f64 x 3)) (/.f64 -1 x))))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 1 (pow.f64 x 4)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 (pow.f64 x 4)) (+.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 -1 x) (/.f64 1 (pow.f64 x 3)))))

localize13.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
42.1b
(pow.f64 (pow.f64 x -3) 1/6)
3.5b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
0.0b
(/.f64 1 (+.f64 1 x))
0.0b
(/.f64 1 (+.f64 1 x))
0.2b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
3.5b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
42.1b
(pow.f64 (pow.f64 x -3) 1/6)

series126.0ms (1.4%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
92.0ms
x
@0
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
13.0ms
x
@0
(pow.f64 (pow.f64 x -3) 1/6)
10.0ms
x
@-inf
(pow.f64 (pow.f64 x -3) 1/6)
9.0ms
x
@inf
(pow.f64 (pow.f64 x -3) 1/6)
2.0ms
x
@-inf
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))

rewrite72.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
727×log-prod_binary64
422×fma-def_binary64
269×log-div_binary64
264×expm1-udef_binary64
264×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify31.0ms (0.3%)

Algorithm
egg-herbie
Rules
317×fma-def_binary64
252×associate-*l*_binary64
231×associate-*r*_binary64
152×prod-exp_binary64
150×sqr-pow_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01572
13072
26172
311772
429172
576348
6229748
7595348
Stop Event
unsound
Counts
103 → 93
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(sqrt.f64 (/.f64 1 x))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
Outputs
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 3 (log.f64 (/.f64 -1 x))))))
(sqrt.f64 (/.f64 1 x))
(pow.f64 x -1/2)

eval1.5s (15.9%)

Compiler

Compiled 21143 to 16742 computations (20.8% saved)

prune137.0ms (1.5%)

Pruning

32 alts after pruning (26 fresh and 6 done)

PrunedKeptTotal
New8319840
Fresh21719
Picked011
Done257
Total83532867
Error
0b
Counts
867 → 32
Alt Table
Click to see full alt table
StatusErrorProgram
21.3b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
28.9b
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
30.1b
(pow.f64 x -1/2)
0.5b
(*.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
0.4b
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
30.1b
(sqrt.f64 (/.f64 1 x))
0.4b
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
28.9b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
29.0b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
38.8b
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
5.9b
(*.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
29.5b
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
47.6b
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
33.3b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
51.2b
(sqrt.f64 (*.f64 (pow.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) 2) (*.f64 1/4 x)))
29.6b
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
38.9b
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
38.8b
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
28.1b
(*.f64 (/.f64 (pow.f64 x -1/2) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
20.3b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
5.6b
(/.f64 (*.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
0.5b
(*.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
21.9b
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
47.9b
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
60.4b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
44.7b
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
47.6b
(/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) (fma.f64 x x x))
47.6b
(/.f64 (*.f64 1/2 (+.f64 x (-.f64 1 x))) (*.f64 (pow.f64 x -1/2) (fma.f64 x x x)))
62.8b
-1
30.1b
(+.f64 (pow.f64 x -1/2) -1)
22.1b
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
59.3b
(/.f64 1 x)
Compiler

Compiled 429 to 335 computations (21.9% saved)

regimes149.0ms (1.6%)

Counts
67 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
(+.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) (fma.f64 x x x))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(sqrt.f64 (*.f64 (pow.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) 2) (*.f64 1/4 x)))
(/.f64 (*.f64 1/2 (+.f64 x (-.f64 1 x))) (*.f64 (pow.f64 x -1/2) (fma.f64 x x x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(/.f64 (*.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(+.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (cbrt.f64 (pow.f64 x -3/2)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (exp.f64 (*.f64 (log1p.f64 x) 1/2))))
(+.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x 1/6) -3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/6) 3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 1 x) 3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (*.f64 -1 (pow.f64 (+.f64 1 x) -3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (pow.f64 (+.f64 1 x) 1/4) 2)))
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
(*.f64 (/.f64 (pow.f64 x -1/2) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
(exp.f64 (log.f64 (fma.f64 -1 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 x -1/2))))
Outputs
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
Calls

3 calls:

59.0ms
x
36.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
16.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.1b1x
0.1b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.1b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 886 to 666 computations (24.8% saved)

regimes165.0ms (1.8%)

Counts
65 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
(+.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) (fma.f64 x x x))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(sqrt.f64 (*.f64 (pow.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) 2) (*.f64 1/4 x)))
(/.f64 (*.f64 1/2 (+.f64 x (-.f64 1 x))) (*.f64 (pow.f64 x -1/2) (fma.f64 x x x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(/.f64 (*.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(+.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (cbrt.f64 (pow.f64 x -3/2)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (exp.f64 (*.f64 (log1p.f64 x) 1/2))))
(+.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x 1/6) -3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/6) 3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 1 x) 3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (*.f64 -1 (pow.f64 (+.f64 1 x) -3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (pow.f64 (+.f64 1 x) 1/4) 2)))
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
(*.f64 (/.f64 (pow.f64 x -1/2) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (fma.f64 (sqrt.f64 x) -1 (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
Outputs
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
Calls

3 calls:

78.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
46.0ms
x
16.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.4b1x
0.4b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.4b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 853 to 640 computations (25% saved)

regimes89.0ms (1%)

Counts
59 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
(+.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) (fma.f64 x x x))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(sqrt.f64 (*.f64 (pow.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) 2) (*.f64 1/4 x)))
(/.f64 (*.f64 1/2 (+.f64 x (-.f64 1 x))) (*.f64 (pow.f64 x -1/2) (fma.f64 x x x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 1 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(/.f64 (*.f64 1 (/.f64 (/.f64 1 x) (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
(+.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (cbrt.f64 (pow.f64 x -3/2)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (exp.f64 (*.f64 (log1p.f64 x) 1/2))))
(+.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x 1/6) -3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (pow.f64 (pow.f64 x -1/6) 3) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 1 x) 3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (*.f64 -1 (pow.f64 (+.f64 1 x) -3/2))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (pow.f64 (pow.f64 (+.f64 1 x) 1/4) 2)))
Outputs
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
Calls

3 calls:

35.0ms
x
17.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
14.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.4b1x
0.4b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.4b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 756 to 571 computations (24.5% saved)

regimes90.0ms (1%)

Counts
39 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
(+.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) (fma.f64 x x x))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(sqrt.f64 (*.f64 (pow.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) 2) (*.f64 1/4 x)))
(/.f64 (*.f64 1/2 (+.f64 x (-.f64 1 x))) (*.f64 (pow.f64 x -1/2) (fma.f64 x x x)))
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) (fma.f64 x x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (pow.f64 (pow.f64 x -3) 1/6)))
Outputs
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
Calls

3 calls:

39.0ms
x
17.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
16.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
5.7b2x
5.7b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
5.7b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 449 to 328 computations (26.9% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.513624891657378e-12
3.8719280494488306e-10
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes36.0ms (0.4%)

Counts
28 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
Outputs
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
Calls

1 calls:

28.0ms
x
Results
ErrorSegmentsBranch
6.2b2x
Compiler

Compiled 277 to 206 computations (25.6% saved)

bsearch27.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes34.0ms (0.4%)

Counts
24 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (sqrt.f64 (*.f64 1/4 x)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 (/.f64 (+.f64 x (-.f64 1 x)) x) (+.f64 1 x)))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) 1))
Outputs
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
Calls

1 calls:

27.0ms
x
Results
ErrorSegmentsBranch
6.5b2x
Compiler

Compiled 235 to 173 computations (26.4% saved)

bsearch24.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes21.0ms (0.2%)

Counts
15 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
Outputs
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x)))
Calls

1 calls:

17.0ms
x
Results
ErrorSegmentsBranch
6.6b2x
Compiler

Compiled 107 to 78 computations (27.1% saved)

bsearch26.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes20.0ms (0.2%)

Counts
14 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(-.f64 (+.f64 1 (/.f64 1 (+.f64 x (sqrt.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/2 x) (sqrt.f64 (/.f64 1 x))) 1)
(+.f64 (/.f64 1 (sqrt.f64 x)) (-.f64 (*.f64 1/2 x) 1))
Outputs
(+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1))
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
Calls

1 calls:

16.0ms
x
Results
ErrorSegmentsBranch
20.8b2x
Compiler

Compiled 96 to 70 computations (27.1% saved)

bsearch24.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes14.0ms (0.1%)

Counts
9 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
Outputs
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
Calls

1 calls:

11.0ms
x
Results
ErrorSegmentsBranch
21.1b2x
Compiler

Compiled 48 to 35 computations (27.1% saved)

bsearch23.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes8.0ms (0.1%)

Counts
7 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(+.f64 (/.f64 1 (sqrt.f64 x)) -1)
Outputs
(/.f64 1 (+.f64 x (sqrt.f64 x)))
Calls

1 calls:

6.0ms
x
Results
ErrorSegmentsBranch
28.9b1x
Compiler

Compiled 31 to 22 computations (29% saved)

regimes12.0ms (0.1%)

Counts
5 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(+.f64 (pow.f64 x -1/2) -1)
Outputs
(+.f64 (pow.f64 x -1/2) -1)
(/.f64 1 x)
Calls

1 calls:

10.0ms
x
Results
ErrorSegmentsBranch
28.5b2x
Compiler

Compiled 19 to 14 computations (26.3% saved)

bsearch23.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
0.06588527500348274
1185846.0213260795
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes6.0ms (0.1%)

Counts
4 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
Outputs
(pow.f64 x -1/2)
Calls

1 calls:

4.0ms
x
Results
ErrorSegmentsBranch
30.1b1x
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes4.0ms (0%)

Accuracy

Total -3.5b remaining (-5.8%)

Threshold costs -3.5b (-5.8%)

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

1 calls:

3.0ms
x
Results
ErrorSegmentsBranch
59.3b1x
Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Rules
13×+-commutative_binary64
10×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062355
186355
297355
3103355
4106355
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(if (<=.f64 (-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 158456325028528672/79228162514264337593543950336) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x)))))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 x))
(pow.f64 x -1/2)
(/.f64 1 x)
-1
Outputs
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))
(*.f64 (/.f64 (pow.f64 x -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (/.f64 (pow.f64 x -1/2) (+.f64 x 1)))
(/.f64 (/.f64 (pow.f64 x -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2))) (+.f64 x 1))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 x 1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2)))))
(if (<=.f64 (-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 158456325028528672/79228162514264337593543950336) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(if (<=.f64 (-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 4951760157141521/2475880078570760549798248448) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 x 1)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2)))
(if (<=.f64 (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 -1 (sqrt.f64 (+.f64 x 1)))) 4951760157141521/2475880078570760549798248448) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 x 1)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 x 1) -1/2)))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 x 1)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (*.f64 (/.f64 1/2 (pow.f64 x -1/2)) (/.f64 1 (*.f64 x x))))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (*.f64 (/.f64 1 (*.f64 x x)) (/.f64 1/2 (pow.f64 x -1/2))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x)))))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (*.f64 x 1/2) (+.f64 (pow.f64 x -1/2) -1)) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 x 1)))))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x)))))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 (sqrt.f64 (*.f64 x (+.f64 x 1)))))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(if (<=.f64 x 1215368806215219200/18446744073709551616) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 x))
(if (<=.f64 x 593441799909775/9007199254740992) (+.f64 (pow.f64 x -1/2) -1) (/.f64 1 x))
(pow.f64 x -1/2)
(/.f64 1 x)
-1

end167.0ms (1.8%)

Stop Event
fuel
Compiler

Compiled 497 to 378 computations (23.9% saved)

Profiling

Loading profile data...