Details

Time bar (total: 9.4s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
100%50%0%0%0%50%0%2
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample2.0s (21.3%)

Results
963.0ms2331×body1024valid
722.0ms4902×body256valid
301.0ms1023×body512valid
Bogosity

preprocess30.0ms (0.3%)

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
817117
920717
1023317
1123517
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)

simplify14.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
817117
920717
1023317
1123517
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

2 alts after pruning (2 fresh and 0 done)

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

Compiled 12 to 10 computations (16.7% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 33 to 23 computations (30.3% saved)

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 x 1))))
1.0ms
x
@-inf
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
1.0ms
x
@0
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
1.0ms
x
@inf
(sqrt.f64 (+.f64 x 1))
1.0ms
x
@-inf
(/.f64 1 (sqrt.f64 x))

rewrite103.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
776×prod-diff_binary64
445×log-prod_binary64
351×fma-def_binary64
252×pow2_binary64
205×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0938
120730
2297930
Stop Event
node limit
Counts
4 → 229
Calls
Call 1
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 1 (sqrt.f64 x))
(/.f64 1 (sqrt.f64 (+.f64 x 1)))
(sqrt.f64 (+.f64 x 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (*.f64 (/.f64 -1 (sqrt.f64 (+.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)) (fma.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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)) (+.f64 (/.f64 -1 (sqrt.f64 (+.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 -1 (pow.f64 (+.f64 1 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 (cbrt.f64 (/.f64 1 (+.f64 1 x)))) (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (+.f64 1 x) -1/2)))))) (#(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 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1))) (fma.f64 (neg.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) -1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 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 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))) (pow.f64 (cbrt.f64 (-.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 (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 (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 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (pow.f64 (*.f64 x (+.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 1 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.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/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 1 (/.f64 (sqrt.f64 (*.f64 x (+.f64 1 x))) (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 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 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.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) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x))) (neg.f64 (sqrt.f64 (*.f64 x (+.f64 1 x)))))))) (#(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 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.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 (neg.f64 (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 (neg.f64 (sqrt.f64 (+.f64 1 x))) (*.f64 (sqrt.f64 x) -1)) (*.f64 (sqrt.f64 x) (neg.f64 (sqrt.f64 (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.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 (+.f64 (pow.f64 x -3/2) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 3)) (+.f64 (/.f64 1 x) (-.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2) (*.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2)) (-.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 x)) (sqrt.f64 (+.f64 1 x)))))) (#(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)) 2) 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 (sqrt.f64 (*.f64 x (+.f64 1 x))) (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))) (-.f64 (pow.f64 x -3/2) (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 (-.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 x -1/2))) (exp.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (/.f64 1 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (exp.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (+.f64 1 (expm1.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (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 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 expm1.f64 (log1p.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(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 fma.f64 1 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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)) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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 (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 (+.f64 1 x))) (neg.f64 (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)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2) (fma.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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))) (pow.f64 (cbrt.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/6)) (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))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.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/6)) (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 (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))) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 1 x) -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/4)) (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 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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))) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (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))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (fma.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (/.f64 1 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2)))) (fma.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (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 -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2)))) (+.f64 (/.f64 -1 (sqrt.f64 (+.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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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))) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) 2) (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (sqrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.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 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (*.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 1))))) (#(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 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 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 (pow.f64 (+.f64 1 x) -1/6)) (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)) (+.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (/.f64 1 (+.f64 1 x)))) (pow.f64 (+.f64 1 x) -1/6) (pow.f64 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 (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 -1 (/.f64 1 (neg.f64 (sqrt.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 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 expm1.f64 (log1p.f64 (pow.f64 x -1/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 log1p.f64 (expm1.f64 (pow.f64 x -1/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(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 (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))) (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 -1 (/.f64 -1 (sqrt.f64 (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/6))))) (#(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) -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 (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) 3/2) -1/3)))) (#(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 (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 pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2)))) (#(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 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 1 x)))) -1)))) (#(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 expm1.f64 (log1p.f64 (pow.f64 (+.f64 1 x) -1/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 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 +.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 (pow.f64 1 1/2) (sqrt.f64 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1 x)) 1)))) (#(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 (neg.f64 (sqrt.f64 (+.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 1 (pow.f64 x 3/2)) (hypot.f64 x (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 x x -1)) (sqrt.f64 (+.f64 x -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) -1/2) -1)))) (#(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) 3/2) 1/3)))) (#(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 (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 pow.f64 (pow.f64 (+.f64 1 x) 1/4) 2)))) (#(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 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 hypot.f64 1 (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (+.f64 1 x))))))) (#(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 log1p.f64 (expm1.f64 (sqrt.f64 (+.f64 1 x))))))))

simplify185.0ms (2%)

Algorithm
egg-herbie
Rules
1216×fma-def_binary64
750×sqr-pow_binary64
605×cube-prod_binary64
427×fabs-mul_binary64
370×pow-sqr_binary64
Iterations

Useful iterations: 10 (0.0ms)

IterNodesCost
03080
17576
218074
354662
4139558
5242358
6294558
7307858
8323258
9341958
10367256
11432356
12473056
13525856
14592656
15675456
16715756
17752356
18786756
Stop Event
node limit
Counts
237 → 242
Calls
Call 1
Inputs
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)))))
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 -1/2 x) (+.f64 1 (*.f64 3/8 (pow.f64 x 2))))
(+.f64 (fma.f64 -1/2 x 1) (*.f64 3/8 (*.f64 x x)))
(fma.f64 -1/2 x (fma.f64 3/8 (*.f64 x x) 1))
(fma.f64 x (*.f64 x 3/8) (fma.f64 -1/2 x 1))
(fma.f64 x (fma.f64 x 3/8 -1/2) 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 -5/16 (pow.f64 x 3))))
(fma.f64 -1/2 x (fma.f64 x (*.f64 x 3/8) (fma.f64 -5/16 (pow.f64 x 3) 1)))
(fma.f64 -1/2 x (fma.f64 x (*.f64 x (fma.f64 x -5/16 3/8)) 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)
(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 1/2 (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 x 1/2 (fma.f64 (pow.f64 x 3) 1/16 1)))
(fma.f64 x (*.f64 x -1/8) (fma.f64 (pow.f64 x 3) 1/16 (fma.f64 x 1/2 1)))
(fma.f64 x 1/2 (fma.f64 (*.f64 x 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)
(fma.f64 x (fma.f64 x (fma.f64 x 1/16 -1/8) 1/2) 1)

eval222.0ms (2.4%)

Compiler

Compiled 4484 to 3575 computations (20.3% saved)

prune144.0ms (1.5%)

Pruning

36 alts after pruning (35 fresh and 1 done)

PrunedKeptTotal
New20735242
Fresh000
Picked011
Done000
Total20736243
Error
18.5b
Counts
243 → 36
Alt Table
Click to see full alt table
StatusErrorProgram
19.3b
(*.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)))
23.5b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) -1/4) 2))
27.4b
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) 2) (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (pow.f64 x -1/2))
19.3b
(*.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))))
19.3b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
25.4b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -3/2))
29.3b
(-.f64 (*.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
27.7b
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
23.7b
(/.f64 (-.f64 (/.f64 1 x) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2)) (-.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))
23.8b
(-.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
28.0b
(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/6)) (cbrt.f64 (/.f64 1 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))
27.5b
(fma.f64 (pow.f64 (+.f64 1 x) -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/4)) (pow.f64 x -1/2))
29.7b
(/.f64 (+.f64 (pow.f64 x -3/2) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 3)) (+.f64 (/.f64 1 x) (-.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2) (*.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))))
23.7b
(-.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
29.0b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
27.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (exp.f64 (*.f64 -1/2 (log1p.f64 x))))
27.3b
(-.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (pow.f64 (+.f64 1 x) -3/2)))
30.1b
(-.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
19.3b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
24.4b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
21.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
28.1b
(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/6)) (cbrt.f64 (/.f64 1 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))
29.4b
(/.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))))
21.7b
(exp.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))
19.3b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))
21.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (sqrt.f64 (/.f64 1 (+.f64 1 x))))
21.0b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
29.3b
(fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
29.4b
(/.f64 1 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))) (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))))
30.1b
(-.f64 (/.f64 1 (sqrt.f64 x)) 1)
21.1b
(-.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
27.2b
(+.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))
23.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2))
25.9b
(-.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
43.5b
(-.f64 (pow.f64 (*.f64 x x) -1/4) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
29.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
Compiler

Compiled 1276 to 1048 computations (17.9% saved)

localize47.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 1 x))
0.2b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))
2.9b
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x))
12.7b
(sqrt.f64 (*.f64 x (+.f64 1 x)))
Compiler

Compiled 44 to 28 computations (36.4% saved)

series22.0ms (0.2%)

Counts
4 → 13
Calls

12 calls:

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

rewrite139.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
558×log-prod_binary64
546×fma-def_binary64
430×pow-prod-down_binary64
275×pow2_binary64
267×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01048
122442
2330341
Stop Event
node limit
Counts
4 → 221
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 x (+.f64 1 x)))
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))
(sqrt.f64 (+.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 (+.f64 x 1)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x x x)) (pow.f64 (fma.f64 x x x) 1/6))))) (#(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 (pow.f64 (fma.f64 x x x) 1/6) (cbrt.f64 (fma.f64 x x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (pow.f64 (+.f64 x 1) 1/6) (sqrt.f64 x)))))) (#(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 (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 (+.f64 x 1) 1/4) (*.f64 (pow.f64 (+.f64 x 1) 1/4) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 x (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) (cbrt.f64 x)) (pow.f64 x 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) (pow.f64 x 1/4)) (pow.f64 x 1/4))))) (#(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 (pow.f64 (fma.f64 x x x) 1/6) 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 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 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 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 log1p.f64 (expm1.f64 (hypot.f64 x (sqrt.f64 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 x 1)) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2)) (/.f64 1 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (-.f64 1 x)) (/.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (-.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x))) (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (+.f64 x (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2)) (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (-.f64 1 x)) (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2))) (neg.f64 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 x (-.f64 1 x))) (neg.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 (neg.f64 (sqrt.f64 x)) 3)) (+.f64 (+.f64 x 1) (-.f64 (pow.f64 (neg.f64 (sqrt.f64 x)) 2) (*.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 x 1) (pow.f64 (neg.f64 (sqrt.f64 x)) 2)) (-.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x))) (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (+.f64 x (-.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1)))) (exp.f64 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (sqrt.f64 (+.f64 x 1))) (+.f64 1 (expm1.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1)))) (+.f64 1 (expm1.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1)))) (exp.f64 (neg.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1)))) (/.f64 1 (exp.f64 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sqrt.f64 x))) (exp.f64 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sqrt.f64 x))) (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sqrt.f64 x))) (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (+.f64 x 1)) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sqrt.f64 x)) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x 1)) 1 (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x 1)) 1 (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 1 (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 1 (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 1 (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (neg.f64 (pow.f64 x 1/6)) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x 1) 1/6) (cbrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x 1) 1/6) (cbrt.f64 (+.f64 x 1)) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x 1)) (pow.f64 (+.f64 x 1) 1/6) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x 1)) (pow.f64 (+.f64 x 1) 1/6) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 1/4) (neg.f64 (pow.f64 x 1/4)) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (+.f64 x 1) 1/4) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (+.f64 x 1) 1/4) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2)) (/.f64 1 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x)))) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2)) (/.f64 1 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x)))) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x 1) 3/2) (pow.f64 x 3/2)) (/.f64 1 (+.f64 (+.f64 (+.f64 x 1) x) (hypot.f64 x (sqrt.f64 x)))) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x (-.f64 1 x)) (/.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x (-.f64 1 x)) (/.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x (-.f64 1 x)) (/.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (sqrt.f64 x))) 2) (cbrt.f64 (neg.f64 (sqrt.f64 x))) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (sqrt.f64 x))) (sqrt.f64 (neg.f64 (sqrt.f64 x))) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 x 1/4)) (pow.f64 x 1/4) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 x 1/6) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sqrt.f64 x) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (sqrt.f64 (+.f64 x 1)) (*.f64 (neg.f64 (sqrt.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (-.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (fma.f64 (neg.f64 (sqrt.f64 x)) 1 (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (-.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (fma.f64 (neg.f64 (pow.f64 x 1/6)) (cbrt.f64 x) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (-.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 x 1/4)) (+.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x -1/2) 1) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (pow.f64 (fma.f64 x x x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (pow.f64 (fma.f64 x x x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) 2) (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (*.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (pow.f64 (fma.f64 x x x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (sqrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (/.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) (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (fma.f64 x x x))) (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (pow.f64 (fma.f64 x x x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x x x) -1/4) (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (pow.f64 (fma.f64 x x x) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) 1) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (hypot.f64 x (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) 1) (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (hypot.f64 x (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (sqrt.f64 x)) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 x)) (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (cbrt.f64 (fma.f64 x x x))) (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (cbrt.f64 (fma.f64 x x x))) (/.f64 (sqrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (pow.f64 (fma.f64 x x x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2)) (pow.f64 (fma.f64 x x x) 1/4)) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (pow.f64 (fma.f64 x x x) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2) (fma.f64 x x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 x (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 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)) (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (neg.f64 (hypot.f64 x (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 2) (fma.f64 x x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x)) 3) (pow.f64 (fma.f64 x x x) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 (pow.f64 x -1/2) 1) (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 x -1/2) 1) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x 1)) (pow.f64 (fma.f64 x x x) -1/2) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 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)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(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)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (fma.f64 x x x))) (/.f64 (sqrt.f64 (+.f64 x 1)) (pow.f64 (fma.f64 x x x) 1/6)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 x x x) -1/4) (/.f64 (sqrt.f64 (+.f64 x 1)) (pow.f64 (fma.f64 x x x) 1/4)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (+.f64 x 1)) 1) (/.f64 (pow.f64 (+.f64 x 1) 1/6) (hypot.f64 x (sqrt.f64 x))) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (+.f64 x 1) 1/4) 1) (/.f64 (pow.f64 (+.f64 x 1) 1/4) (hypot.f64 x (sqrt.f64 x))) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (+.f64 x 1)) (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 x 1) 1/6) -2) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (+.f64 x 1) 1/4) (sqrt.f64 x)) (pow.f64 (+.f64 x 1) -1/4) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (fma.f64 x x x))) (/.f64 (pow.f64 (+.f64 x 1) 1/6) (pow.f64 (fma.f64 x x x) 1/6)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (+.f64 x 1) 1/4) (cbrt.f64 (fma.f64 x x x))) (/.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (fma.f64 x x x) 1/6)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (+.f64 x 1)) (pow.f64 (fma.f64 x x x) 1/4)) (/.f64 (pow.f64 (+.f64 x 1) 1/6) (pow.f64 (fma.f64 x x x) 1/4)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (fma.f64 x x x) 1/4)) (/.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (fma.f64 x x x) 1/4)) (neg.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (+.f64 x 1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (+.f64 x 1))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (+.f64 x 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (+.f64 x 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x 1) 1/6) (cbrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x 1)) (pow.f64 (+.f64 x 1) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x 1) 1/4) (pow.f64 (+.f64 x 1) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (+.f64 x 1)))))) (#(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 x 1) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x 1) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x 1) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x 1) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x 1)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x 1) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x 1) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (+.f64 x 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x 1) 3/2))))) (#(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 x 1))))))) (#(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 log1p.f64 (expm1.f64 (sqrt.f64 (+.f64 x 1))))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
671×fma-neg_binary64
642×times-frac_binary64
433×cancel-sign-sub-inv_binary64
393×fma-def_binary64
385×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045108
1129106
2371106
3920100
43432100
Stop Event
node limit
Counts
234 → 239
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
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
x
(+.f64 1/2 x)
(+.f64 x 1/2)
(-.f64 (+.f64 1/2 x) (*.f64 1/8 (/.f64 1 x)))
(-.f64 (+.f64 x 1/2) (/.f64 1/8 x))
(+.f64 x (-.f64 1/2 (/.f64 1/8 x)))
(+.f64 (+.f64 x 1/2) (/.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 (+.f64 1/2 (+.f64 x (/.f64 1/16 (*.f64 x x)))) (/.f64 1/8 x))
(+.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (+.f64 1/2 (/.f64 -1/8 x)))
(+.f64 (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)) (/.f64 1/16 (*.f64 x x)))
(+.f64 1/2 (+.f64 (+.f64 x (/.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 (+.f64 x 1/2) (/.f64 1/8 x))
(+.f64 x (-.f64 1/2 (/.f64 1/8 x)))
(+.f64 (+.f64 x 1/2) (/.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 (+.f64 1/2 (+.f64 x (/.f64 1/16 (*.f64 x x)))) (/.f64 1/8 x))
(+.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (+.f64 1/2 (/.f64 -1/8 x)))
(+.f64 (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)) (/.f64 1/16 (*.f64 x x)))
(+.f64 1/2 (+.f64 (+.f64 x (/.f64 1/16 (*.f64 x x))) (/.f64 -1/8 x)))
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) (fma.f64 1/2 x (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 x 1/2 (fma.f64 1/16 (pow.f64 x 3) 1)))
(fma.f64 x 1/2 (fma.f64 x (*.f64 x -1/8) (fma.f64 1/16 (pow.f64 x 3) 1)))
(fma.f64 x (fma.f64 x -1/8 1/2) (fma.f64 1/16 (pow.f64 x 3) 1))
(fma.f64 x 1/2 (fma.f64 (*.f64 x x) (fma.f64 x 1/16 -1/8) 1))

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 15 to 9 computations (40% saved)

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)

rewrite49.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
588×pow1_binary64
551×add-log-exp_binary64
550×log1p-expm1-u_binary64
550×expm1-log1p-u_binary64
538×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
069
11297
216237
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 (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 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 (pow.f64 (sqrt.f64 x) -3) -1) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))))) (#(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 (pow.f64 x -1/2))) (+.f64 (pow.f64 (sqrt.f64 x) -3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (/.f64 1 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sqrt.f64 x) -3) -1) (+.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sqrt.f64 x) -3) -1) (+.f64 (/.f64 1 x) (-.f64 1 (*.f64 (pow.f64 x -1/2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 1 x) -1) (+.f64 1 (pow.f64 x -1/2)))))) (#(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 (pow.f64 (sqrt.f64 x) -3) -1)) (neg.f64 (+.f64 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (/.f64 1 x) -1)) (neg.f64 (+.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 expm1.f64 (log.f64 (pow.f64 x -1/2)))))) (#(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 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

localize37.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(/.f64 1 (+.f64 1 x))
0.3b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
2.8b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
Compiler

Compiled 60 to 46 computations (23.3% saved)

series11.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
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)))
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 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
1.0ms
x
@-inf
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))

rewrite130.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
678×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
2466346
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 (/.f64 1 (cbrt.f64 (+.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 (+.f64 (pow.f64 x -2) (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 (+.f64 (pow.f64 x -2) (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 (+.f64 (pow.f64 x -2) (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 (+.f64 (pow.f64 x -2) (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 expm1.f64 (log1p.f64 (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 x)))))))) (#(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 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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (+.f64 (pow.f64 x -2) (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 (+.f64 (pow.f64 x -2) (pow.f64 (+.f64 1 x) -2)) (/.f64 1 (fma.f64 x x x)))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (+.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 (+.f64 (pow.f64 x -2) (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 (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (pow.f64 (cbrt.f64 (-.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 (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 (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 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 (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 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) (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 1 x) (-.f64 (/.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 expm1.f64 (log1p.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(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 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 (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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))) (pow.f64 (cbrt.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))) (pow.f64 (cbrt.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))) (/.f64 1 (cbrt.f64 (+.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))) (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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))) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.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 (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.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 (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 (/.f64 1 (cbrt.f64 (+.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 (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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 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))) (/.f64 1 (cbrt.f64 (+.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 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 (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))) (/.f64 1 (cbrt.f64 (+.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))) (/.f64 1 (cbrt.f64 (+.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 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))) (/.f64 1 (cbrt.f64 (+.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 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 (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))) (/.f64 1 (cbrt.f64 (+.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 (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 (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 (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 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))) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 x) (/.f64 -1 (+.f64 1 x))) (+.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (+.f64 (/.f64 1 x) (-.f64 (/.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 1 x) (-.f64 (/.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))) (/.f64 1 (cbrt.f64 (+.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 1 x) (-.f64 (/.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))) (/.f64 1 (cbrt.f64 (+.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 fma.f64 (/.f64 (/.f64 1 x) (+.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (+.f64 (/.f64 1 x) (-.f64 (/.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 +.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 (/.f64 1 (cbrt.f64 (+.f64 1 x))) (cbrt.f64 (pow.f64 (+.f64 1 x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (+.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)) (/.f64 1 (cbrt.f64 (+.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 (cbrt.f64 (pow.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) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 expm1.f64 (log1p.f64 (/.f64 1 (+.f64 1 x))))))) (#(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 -.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 1 x) (-.f64 (/.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 1 x) (-.f64 (/.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 1 x) (-.f64 (/.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 1 x) (-.f64 (/.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 expm1.f64 (log1p.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(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 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 (/.f64 1 (cbrt.f64 (+.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)) (/.f64 1 (cbrt.f64 (+.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 (/.f64 1 (cbrt.f64 (+.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 (cbrt.f64 (pow.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))))))

simplify95.0ms (1%)

Algorithm
egg-herbie
Rules
637×fma-def_binary64
625×fma-neg_binary64
449×associate-+l+_binary64
322×associate-+r+_binary64
300×+-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01891796
15981716
217831560
368161493
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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(-.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 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4))) (/.f64 1 (pow.f64 x 5)))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(-.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 (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4))) (/.f64 1 (pow.f64 x 5)))
(+.f64 (/.f64 1 (*.f64 x x)) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (/.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 (/.f64 1 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 (+.f64 x (sqrt.f64 x))) (+.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 (/.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 (/.f64 (/.f64 1 x) (+.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 -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 (*.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)))))) (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 -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 (sqrt.f64 x) (/.f64 (pow.f64 x 4) 3/32))))
(-.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 (sqrt.f64 x) (/.f64 (pow.f64 x 4) 3/32)))) (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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (*.f64 x 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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (*.f64 x 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 (/.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 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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (*.f64 x 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 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (pow.f64 x 4)))) (/.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 (/.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 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 (/.f64 (/.f64 1/2 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (*.f64 x x)) (/.f64 (/.f64 5/16 (pow.f64 x 4)) (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 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 (/.f64 5/16 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (pow.f64 x 4)))) (/.f64 -3/8 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))) (/.f64 35/128 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (pow.f64 x 5))))))
(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))
(-.f64 (fma.f64 x x 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 (-.f64 (fma.f64 x x 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 x) (-.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (*.f64 x x))))
(+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.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 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))))
(+.f64 (/.f64 1 x) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 4))) (/.f64 -1 (*.f64 x x))))
(/.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 x) (-.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (*.f64 x x))))
(+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.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 (/.f64 1 x) (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 (*.f64 x x)) (/.f64 1 (pow.f64 x 4))))
(+.f64 (/.f64 1 x) (+.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 -1 (pow.f64 x 4))) (/.f64 -1 (*.f64 x x))))
(+.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 (*.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 (pow.f64 x -1/2) (fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) 1)))
(+.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 (*.f64 x 3/8) (fma.f64 (pow.f64 x 3) -5/16 1)) (fma.f64 x -1/2 (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 2 (sqrt.f64 (/.f64 1 x)) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.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 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) 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 (/.f64 3/8 x) -1/2)))
(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 (/.f64 3/8 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 -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 (/.f64 3/8 x) -1/2))))
(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 (/.f64 3/8 x) -1/2))))

localize22.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2)
0.3b
(/.f64 1 (sqrt.f64 x))
13.9b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2))
Compiler

Compiled 38 to 28 computations (26.3% saved)

series7.0ms (0.1%)

Counts
2 → 14
Calls

6 calls:

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

rewrite122.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
605×prod-diff_binary64
478×log-prod_binary64
309×fma-def_binary64
296×pow2_binary64
208×pow-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01122
125420
2318220
Stop Event
node limit
Counts
2 → 138
Calls
Call 1
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2))
(pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2)
Outputs
((#(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 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(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 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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)) (+.f64 (neg.f64 (pow.f64 (+.f64 1 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 -1 (pow.f64 (+.f64 1 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 (cbrt.f64 (pow.f64 (+.f64 1 x) -1))) (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (+.f64 1 x) -1/2)))))) (#(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 (neg.f64 (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 x -1/2) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (pow.f64 x -1)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 1 -1/2) (*.f64 (pow.f64 (+.f64 1 x) -1/2) (pow.f64 1 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (pow.f64 x -1)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (cbrt.f64 (+.f64 1 x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (pow.f64 x -1)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4)))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 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 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))) (pow.f64 (cbrt.f64 (-.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 (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 (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 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1)) (/.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/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 1 (/.f64 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1)) (-.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 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -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 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (neg.f64 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -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 (pow.f64 x -3/2) (pow.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 3)) (+.f64 (pow.f64 x -1) (-.f64 (pow.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 2) (*.f64 (pow.f64 x -1/2) (neg.f64 (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x -1) (pow.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 2)) (-.f64 (pow.f64 x -1/2) (neg.f64 (pow.f64 (+.f64 1 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)) 2) 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 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1)) (-.f64 (pow.f64 x -3/2) (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 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1))) -1)))) (#(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 x -1/2))) (exp.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 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.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 (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 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 expm1.f64 (log1p.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(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 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 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(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 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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)) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (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 (pow.f64 x -1/2) 1 (*.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(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 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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 (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (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))) (pow.f64 (cbrt.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))) (pow.f64 (cbrt.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/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -1)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.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))) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (cbrt.f64 (pow.f64 x -1)) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (cbrt.f64 (pow.f64 x -1)) (*.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x -1)) (pow.f64 x -1/6) (neg.f64 (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x -1)) (pow.f64 x -1/6) (*.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) -1)) (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (pow.f64 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/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 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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))) (+.f64 (neg.f64 (pow.f64 (+.f64 1 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) (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 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 1 x) -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/4)) (pow.f64 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 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (*.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -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 -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -1)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (/.f64 1 (fma.f64 (pow.f64 (+.f64 1 x) -1/2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 x -1))) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1)) (/.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 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1)) (/.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/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -1)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -1) (pow.f64 (+.f64 1 x) -1)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2))) 2) (cbrt.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2))) (pow.f64 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 (neg.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 (/.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 fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (*.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) 1))))) (#(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 (pow.f64 (+.f64 1 x) -1/6)) (cbrt.f64 (pow.f64 (+.f64 1 x) -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)) (+.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/2)) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) -1))) (pow.f64 (+.f64 1 x) -1/6) (pow.f64 x -1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 1 x) -1/2)))))))) (#(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 (pow.f64 (+.f64 1 x) -1/6) (cbrt.f64 (pow.f64 (+.f64 1 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) -1)) (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 (pow.f64 1 -1/2) (pow.f64 (+.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 x)) -1) (pow.f64 (+.f64 1 x) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 1 x) 1/12) -4) (pow.f64 (+.f64 1 x) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1 x) -1))))) (#(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 expm1.f64 (log1p.f64 (pow.f64 (+.f64 1 x) -1/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 log1p.f64 (expm1.f64 (pow.f64 (+.f64 1 x) -1/2)))))))

simplify53.0ms (0.6%)

Algorithm
egg-herbie
Rules
418×unswap-sqr_binary64
408×fma-def_binary64
384×associate-*l*_binary64
351×distribute-rgt-out_binary64
345×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
096544
1279524
2939464
34206329
Stop Event
node limit
Counts
152 → 164
Calls
Call 1
Inputs
(*.f64 -1 (sqrt.f64 (/.f64 1 x)))
(/.f64 -1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))
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 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4)))) (+.f64 (*.f64 3/128 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 7/128 (pow.f64 (/.f64 1 x) 1/4)))))) (+.f64 (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (+.f64 (sqrt.f64 (/.f64 1 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))))
(/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))
(-.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 3/8 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 2))))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 3/8 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 2))))) (+.f64 (*.f64 5/16 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x)))))
Outputs
(*.f64 -1 (sqrt.f64 (/.f64 1 x)))
(neg.f64 (sqrt.f64 (/.f64 1 x)))
(/.f64 -1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))
(/.f64 -1 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))
(/.f64 -1 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))
(/.f64 -1 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2))
(neg.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)))
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 3/8 (*.f64 x x)))
(fma.f64 x -1/2 (fma.f64 3/8 (*.f64 x x) 1))
(fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) 1))
(fma.f64 x (*.f64 x 3/8) (fma.f64 x -1/2 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 -5/16 (pow.f64 x 3))))
(+.f64 (fma.f64 x -1/2 1) (fma.f64 3/8 (*.f64 x x) (*.f64 -5/16 (pow.f64 x 3))))
(fma.f64 x -1/2 (fma.f64 x (*.f64 x 3/8) (fma.f64 -5/16 (pow.f64 x 3) 1)))
(+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8)))))
(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 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32)) (+.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))
(fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32)) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 x)))))
(fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) 5/16) (sqrt.f64 (/.f64 1 x)))))
(+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (+.f64 (*.f64 -1/4 (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4)))) (+.f64 (*.f64 3/128 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 7/128 (pow.f64 (/.f64 1 x) 1/4)))))) (+.f64 (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (+.f64 (sqrt.f64 (/.f64 1 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (+.f64 (*.f64 -3/32 (pow.f64 (/.f64 1 x) 1/4)) (*.f64 -1/16 (pow.f64 (/.f64 1 x) 1/4))))) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))))
(fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (fma.f64 -1/4 (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32) (*.f64 (pow.f64 (/.f64 1 x) 1/4) 5/64))) (fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32)) (+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32) (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4)) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))))))
(fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (fma.f64 (pow.f64 (/.f64 1 x) 1/4) 5/64 (*.f64 (pow.f64 (/.f64 1 x) 1/4) 5/128))) (fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (+.f64 (fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32)) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (sqrt.f64 (/.f64 1 x)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/32) (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) 1/2)))))
(fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 -2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) 15/128)) (fma.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) 5/16) (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/64) (sqrt.f64 (/.f64 1 x)))))))
(fma.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (+.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 (pow.f64 (/.f64 1 (pow.f64 x 9)) 1/4) (*.f64 (pow.f64 (/.f64 1 x) 1/4) 5/16) (sqrt.f64 (/.f64 1 x)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 x 13)) 1/4) (+.f64 (*.f64 (pow.f64 (/.f64 1 x) 1/4) -5/64) (*.f64 -2 (*.f64 (pow.f64 (/.f64 1 x) 1/4) 15/128))))))
(/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2))
(/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))
(/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))
(exp.f64 (neg.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 1/2)))
(exp.f64 (*.f64 (log.f64 x) -1/2))
(-.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x))))
(-.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (/.f64 1/2 (*.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))))
(-.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.f64 (/.f64 1/2 x) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)))
(+.f64 (exp.f64 (neg.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 1/2))) (/.f64 (/.f64 -1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2)) x))
(fma.f64 -1/2 (/.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)) x) (exp.f64 (*.f64 (log.f64 x) -1/2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 3/8 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 2))))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x))))
(+.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (-.f64 (/.f64 3/8 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2) (*.f64 x x))) (/.f64 1/2 (*.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)))))
(+.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (-.f64 (/.f64 3/8 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x))) (/.f64 (/.f64 1/2 x) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 1/2))) (+.f64 (/.f64 3/8 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2) (*.f64 x x))) (/.f64 (/.f64 -1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2)) x)))
(+.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)) (*.f64 (/.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)) x) (-.f64 (/.f64 3/8 x) 1/2)))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2)) (*.f64 3/8 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 2))))) (+.f64 (*.f64 5/16 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) 2) x)))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2)) (/.f64 3/8 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2) (*.f64 x x)))) (+.f64 (/.f64 1/2 (*.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2))) (/.f64 5/16 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))) 2) (pow.f64 x 3)))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.f64 3/8 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)))) (+.f64 (/.f64 (/.f64 1/2 x) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.f64 (/.f64 5/16 (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 1/2))) (+.f64 (/.f64 3/8 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2) (*.f64 x x))) (+.f64 (/.f64 (/.f64 -1/2 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2)) x) (/.f64 -5/16 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1 x) -1/4) (pow.f64 -1 1/4)) 2) (pow.f64 x 3))))))
(+.f64 (*.f64 (/.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)) (*.f64 x x)) (-.f64 3/8 (/.f64 5/16 x))) (fma.f64 -1/2 (/.f64 (exp.f64 (*.f64 (log.f64 x) -1/2)) x) (exp.f64 (*.f64 (log.f64 x) -1/2))))

localize24.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 1 x))
0.1b
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
27.7b
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
Compiler

Compiled 34 to 26 computations (23.5% saved)

series5.0ms (0.1%)

Counts
2 → 10
Calls

6 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@inf
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@0
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
1.0ms
x
@inf
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
1.0ms
x
@-inf
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))

rewrite64.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
950×pow1_binary64
889×add-log-exp_binary64
887×log1p-expm1-u_binary64
887×expm1-log1p-u_binary64
101×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01028
121024
2245524
Stop Event
node limit
Counts
2 → 44
Calls
Call 1
Inputs
(fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(/.f64 -1 (sqrt.f64 (+.f64 1 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (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) (neg.f64 (pow.f64 (+.f64 x 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x -1/2) 1) (neg.f64 (pow.f64 (+.f64 x 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (neg.f64 (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 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))) (pow.f64 (cbrt.f64 (+.f64 (neg.f64 (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 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))) 2) (cbrt.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))) (sqrt.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 x -1/2) 3) (pow.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) 3)) (+.f64 (*.f64 (pow.f64 x -1/2) (pow.f64 x -1/2)) (-.f64 (/.f64 1 (+.f64 x 1)) (*.f64 (pow.f64 x -1/2) (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x -1/2) (pow.f64 x -1/2)) (/.f64 1 (+.f64 x 1))) (-.f64 (pow.f64 x -1/2) (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (neg.f64 (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 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (neg.f64 (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 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) (pow.f64 x -1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (pow.f64 (+.f64 x 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))) (cbrt.f64 (/.f64 1 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (+.f64 x 1))) (cbrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))) (sqrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x 1) -1/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (sqrt.f64 (+.f64 x 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (+.f64 x 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (neg.f64 (pow.f64 (+.f64 x 1) -1/2))))))))

simplify51.0ms (0.5%)

Algorithm
egg-herbie
Rules
801×times-frac_binary64
410×fma-def_binary64
373×div-sub_binary64
320×fma-neg_binary64
313×unswap-sqr_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
040126
1113120
2263118
3740106
42154104
5512092
Stop Event
node limit
Counts
54 → 62
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)
-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)
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 (sqrt.f64 (/.f64 1 x))) (fma.f64 -3/8 (*.f64 x x) -1))
(+.f64 (sqrt.f64 (/.f64 1 x)) (fma.f64 x 1/2 (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 5/16 (pow.f64 x 3) (fma.f64 -3/8 (*.f64 x x) (sqrt.f64 (/.f64 1 x)))) (fma.f64 x 1/2 -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 (fma.f64 x (fma.f64 x -3/8 1/2) -1) (fma.f64 5/16 (pow.f64 x 3) (sqrt.f64 (/.f64 1 x))))
(+.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)
-1
(-.f64 (*.f64 1/2 x) 1)
(fma.f64 1/2 x -1)
(fma.f64 x 1/2 -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 x 1/2 (fma.f64 -3/8 (*.f64 x x) -1))
(fma.f64 x 1/2 (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 -1 (fma.f64 x 1/2 (fma.f64 -3/8 (*.f64 x x) (*.f64 5/16 (pow.f64 x 3)))))
(fma.f64 x 1/2 (fma.f64 x (*.f64 x -3/8) (fma.f64 5/16 (pow.f64 x 3) -1)))
(fma.f64 x 1/2 (fma.f64 (*.f64 x x) (fma.f64 x 5/16 -3/8) -1))
(fma.f64 x (+.f64 1/2 (*.f64 x (fma.f64 x 5/16 -3/8))) -1)

eval1.1s (12.1%)

Compiler

Compiled 24789 to 19281 computations (22.2% saved)

prune815.0ms (8.7%)

Pruning

27 alts after pruning (26 fresh and 1 done)

PrunedKeptTotal
New1014231037
Fresh27330
Picked101
Done415
Total1046271073
Error
4.3b
Counts
1073 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
43.3b
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) -3/8))
18.1b
(/.f64 (/.f64 (+.f64 x (-.f64 1 x)) (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
4.7b
(/.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)))
43.2b
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
30.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
30.2b
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
19.3b
(*.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))))
21.1b
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
29.0b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
29.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
28.5b
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
19.3b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
38.4b
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
52.3b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
21.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
62.8b
-1
29.6b
(pow.f64 x -1/2)
21.0b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
19.1b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
50.9b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
38.5b
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
29.9b
(-.f64 (pow.f64 x -1/2) 1)
38.3b
(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)))))
28.4b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
5.1b
(/.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)))
29.6b
(sqrt.f64 (/.f64 1 x))
46.8b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
Compiler

Compiled 732 to 578 computations (21% saved)

localize42.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.0b
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))
4.7b
(/.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)))
Compiler

Compiled 71 to 44 computations (38% saved)

series9.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
3.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
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))
0.0ms
x
@0
(/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x))

rewrite76.0ms (0.8%)

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
01335
133135
2427935
Stop Event
node limit
Counts
2 → 77
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))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (*.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 *.f64 1 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))))))) (#(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 (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 *.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) 2) (*.f64 (cbrt.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 (cbrt.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))) (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))) 2) (cbrt.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))))))) (#(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 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) 2) 1) (/.f64 (cbrt.f64 (/.f64 (/.f64 1 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 (cbrt.f64 (/.f64 (/.f64 1 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 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))))))) (#(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 (cbrt.f64 (/.f64 (/.f64 1 x) (+.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 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 (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 pow.f64 (pow.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))) 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 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 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 expm1.f64 (log1p.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))))))) (#(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 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x))))))))))
((#(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 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) (pow.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) 2) (cbrt.f64 (/.f64 (/.f64 1 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 (pow.f64 (cbrt.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) (pow.f64 (cbrt.f64 (+.f64 1 x)) 2)) (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -1/2) (pow.f64 (cbrt.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 (cbrt.f64 (/.f64 (/.f64 1 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 expm1.f64 (log1p.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (+.f64 (log1p.f64 x) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (+.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))))))))

simplify64.0ms (0.7%)

Algorithm
egg-herbie
Rules
902×times-frac_binary64
741×fma-def_binary64
477×distribute-rgt-in_binary64
468×distribute-lft-in_binary64
466×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01691811
15601650
220941241
Stop Event
node limit
Counts
101 → 115
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))))
Outputs
(/.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 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 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))) (*.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)))))
(-.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))))))))
(-.f64 (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 1 (*.f64 (+.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 x) (+.f64 1 (pow.f64 x -1/2)))) (*.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)))))
(+.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 (/.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))))) (/.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 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 -1 (fma.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 1 (*.f64 (+.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 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))) (fma.f64 1/8 (/.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)))) (+.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 1 (*.f64 (+.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 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 x (*.f64 x (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 (/.f64 1/16 (+.f64 1 (pow.f64 x -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/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/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (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 (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 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (*.f64 x x) 3/2)))) (/.f64 (fma.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (pow.f64 x 4))) (/.f64 (fma.f64 -1/2 (*.f64 (fma.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (sqrt.f64 x)))) (fma.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 x)) -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 -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 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16)) (fma.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 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (sqrt.f64 x))) -1/2) (*.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)))) (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 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/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)))))
(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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.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 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/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)))))))
(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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.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 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) (+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.f64 (/.f64 1/2 (*.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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 9/4) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3)) (/.f64 (*.f64 (*.f64 1/4 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/8) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (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 (*.f64 (*.f64 1/4 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/16) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)))) (pow.f64 x 5)))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) (+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)))) (/.f64 (+.f64 (/.f64 (+.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) 4/3) (+.f64 (/.f64 3/128 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (/.f64 1/64 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(+.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 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 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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(+.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 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)))))

localize7.0ms (0.1%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 28 to 19 computations (32.1% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

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

rewrite91.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
437×fma-def_binary64
427×log-prod_binary64
318×exp-prod_binary64
282×pow-prod-down_binary64
248×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
120411
2283211
Stop Event
node limit
Counts
1 → 110
Calls
Call 1
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (neg.f64 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (fma.f64 x -1/2 1)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3)) (/.f64 1 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (-.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x)) (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3)) (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2)) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3))) (neg.f64 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2))) (neg.f64 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x -1/2)) (*.f64 (sqrt.f64 x) (fma.f64 -1/8 (pow.f64 x 3) 1))) (*.f64 (sqrt.f64 x) (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x -1/2))) (*.f64 (neg.f64 (sqrt.f64 x)) (fma.f64 -1/8 (pow.f64 x 3) 1))) (*.f64 (neg.f64 (sqrt.f64 x)) (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 x -1/2 -1) (*.f64 (sqrt.f64 x) (fma.f64 1/4 (*.f64 x x) -1))) (*.f64 (sqrt.f64 x) (fma.f64 x -1/2 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1 (fma.f64 x -1/2 -1)) (*.f64 (neg.f64 (sqrt.f64 x)) (fma.f64 1/4 (*.f64 x x) -1))) (*.f64 (neg.f64 (sqrt.f64 x)) (fma.f64 x -1/2 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) 3) 1) (+.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) 2) (+.f64 1 (*.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x -3/2) (pow.f64 (neg.f64 (fma.f64 x -1/2 1)) 3)) (+.f64 (/.f64 1 x) (-.f64 (pow.f64 (neg.f64 (fma.f64 x -1/2 1)) 2) (*.f64 (pow.f64 x -1/2) (neg.f64 (fma.f64 x -1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) 2) 1) (+.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (pow.f64 (neg.f64 (fma.f64 x -1/2 1)) 2)) (-.f64 (pow.f64 x -1/2) (neg.f64 (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (fma.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) (fma.f64 x -1/2 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x)) (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))) 2)) (cbrt.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))) (sqrt.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (exp.f64 (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (pow.f64 x -1/2)) (+.f64 1 (expm1.f64 (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (+.f64 1 (expm1.f64 (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (exp.f64 (neg.f64 (fma.f64 x -1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (fma.f64 x -1/2 1))) (+.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) (fma.f64 x -1/2 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (neg.f64 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (fma.f64 x -1/2 1)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 1 (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 1 (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) 1 (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (neg.f64 (cbrt.f64 (fma.f64 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 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (neg.f64 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 x)) (pow.f64 x -1/6) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) 2) (cbrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x -1/2 1)) (neg.f64 (sqrt.f64 (fma.f64 x -1/2 1))) (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 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/4) (pow.f64 x -1/4) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (sqrt.f64 (-.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 x -1/2 1) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3)) (/.f64 1 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x))) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3)) (/.f64 1 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (fma.f64 x -1/2 1) 3)) (/.f64 1 (fma.f64 (fma.f64 x -1/2 1) (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1)) (/.f64 1 x))) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x -1/2 1) 2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (fma.f64 x -1/2 1))) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (fma.f64 x -1/2 1))) 2) (cbrt.f64 (neg.f64 (fma.f64 x -1/2 1))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2))) 2) (cbrt.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (fma.f64 x -1/2 1))) (sqrt.f64 (neg.f64 (fma.f64 x -1/2 1))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2))) (sqrt.f64 (-.f64 (pow.f64 x -1/2) (*.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (fma.f64 x -1/2 1))) (sqrt.f64 (fma.f64 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 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (pow.f64 x -1/6) (*.f64 (neg.f64 (fma.f64 x -1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (-.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (fma.f64 x -1/2 1)) 1 (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (-.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 x -1/2 1))) (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (-.f64 (pow.f64 x -1/4) (sqrt.f64 (fma.f64 x -1/2 1))) (+.f64 (neg.f64 (fma.f64 x -1/2 1)) (fma.f64 x -1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/4) (sqrt.f64 (*.f64 x -1/2))) (-.f64 (pow.f64 x -1/4) (sqrt.f64 (*.f64 x -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x -1/2 1)) 2)) (cbrt.f64 (fma.f64 x -1/2 1)) (pow.f64 x -1/2))))))

simplify22.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
11318
21518
Stop Event
saturated
Counts
114 → 113
Calls
Call 1
Inputs
(*.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 (*.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)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
0.0b
(pow.f64 x 3)
0.4b
(/.f64 1 (pow.f64 x 3))
20.4b
(sqrt.f64 (/.f64 1 (pow.f64 x 3)))
Compiler

Compiled 27 to 22 computations (18.5% saved)

series9.0ms (0.1%)

Counts
4 → 0
Calls

12 calls:

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

rewrite90.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
725×pow1_binary64
682×add-log-exp_binary64
680×log1p-expm1-u_binary64
680×expm1-log1p-u_binary64
665×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize34.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
0.4b
(/.f64 1 (*.f64 x x))
10.0b
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
Compiler

Compiled 47 to 31 computations (34% saved)

series9.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

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

rewrite102.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
875×prod-diff_binary64
556×log-prod_binary64
360×fma-def_binary64
209×expm1-udef_binary64
209×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01129
125723
2363123
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 1 (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 x -2) (+.f64 (pow.f64 x -1/2) (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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))) (cbrt.f64 (exp.f64 (/.f64 (pow.f64 x -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 x -2) (+.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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 x -2) (+.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 -2) (+.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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -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 x -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (/.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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 x -2) (+.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 (pow.f64 x -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 2) (cbrt.f64 (/.f64 (pow.f64 x -2) (+.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 (pow.f64 x -2)) 2) (*.f64 (cbrt.f64 (pow.f64 x -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 (/.f64 1 x) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))) (/.f64 (/.f64 1 x) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 x -2)) (/.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))) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 x -2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 x -2)) (+.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) 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 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (/.f64 (pow.f64 x -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 (pow.f64 (cbrt.f64 (pow.f64 x -2)) 2) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) 2)) (cbrt.f64 (/.f64 (pow.f64 x -2) (+.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 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 (+.f64 1 x) -1/4) (pow.f64 x -1/4))) (/.f64 (pow.f64 x -2) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 x -2)) 2) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))) (/.f64 (cbrt.f64 (pow.f64 x -2)) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -2) (+.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (-.f64 (+.f64 (/.f64 1 x) (pow.f64 (+.f64 1 x) -1)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -2) (-.f64 (/.f64 1 x) (pow.f64 (+.f64 1 x) -1))) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 x -2) (+.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 -2) (+.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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 x) (hypot.f64 (pow.f64 (+.f64 1 x) -1/4) (pow.f64 x -1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 x -2) (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 -2) (+.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 -2) (+.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 -2) (+.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 (pow.f64 x -2) (+.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 (pow.f64 x -2) 3) (pow.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 x -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (pow.f64 x -2) (+.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 -2) (+.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 -2) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 x -2))) (cbrt.f64 (exp.f64 (pow.f64 x -2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 x -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x -2)) (pow.f64 (cbrt.f64 (pow.f64 x -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 x -2)) 2) (cbrt.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 x 4)) -1) (pow.f64 (pow.f64 (cbrt.f64 x) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 x -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 x -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 x -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 x -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 x -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -2 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -2 (log.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 x -2)))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
549×associate-/l*_binary64
429×associate-/l/_binary64
387×distribute-rgt-in_binary64
359×distribute-lft-in_binary64
354×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0110784
1341733
2971676
33280542
Stop Event
node limit
Counts
88 → 89
Calls
Call 1
Inputs
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2)))
(+.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2))))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.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/4 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 2)))) (*.f64 3/8 (/.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 3/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))))) x) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2)))))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x))) (pow.f64 x 4))) (+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x))) (pow.f64 x 4))) (+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -5/64 (sqrt.f64 x)) (+.f64 (*.f64 1/4 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x)))) (*.f64 3/128 (sqrt.f64 x)))) (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 (*.f64 1/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 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 (*.f64 1/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 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/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 (*.f64 1/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 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/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 1/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 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (pow.f64 x 2))
Outputs
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2)))
(/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 x x)))
(/.f64 1 (*.f64 x (*.f64 x (+.f64 1 (pow.f64 x -1/2)))))
(/.f64 (/.f64 1 x) (+.f64 x (sqrt.f64 x)))
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
(+.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2))) (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)))))
(+.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 x x))) (/.f64 1/2 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) x)))
(+.f64 (/.f64 1 (*.f64 x (*.f64 x (+.f64 1 (pow.f64 x -1/2))))) (/.f64 1/2 (*.f64 x (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))
(+.f64 (/.f64 (/.f64 1 x) (+.f64 x (sqrt.f64 x))) (/.f64 (/.f64 1/2 x) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)))
(+.f64 (/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x)))) (/.f64 (/.f64 1/2 x) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 (+.f64 (pow.f64 x -1/2) 1) x)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2))))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))
(+.f64 (/.f64 1/2 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) x)) (-.f64 (+.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 x x))) (/.f64 1/4 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))
(+.f64 (/.f64 1/2 (*.f64 x (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))) (+.f64 (/.f64 1 (*.f64 x (*.f64 x (+.f64 1 (pow.f64 x -1/2))))) (+.f64 (/.f64 1/4 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 -3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)))))
(+.f64 (/.f64 (/.f64 1 x) (+.f64 x (sqrt.f64 x))) (+.f64 (+.f64 (/.f64 (/.f64 1/2 x) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (/.f64 1/4 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3))) (/.f64 -3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))
(+.f64 (/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x)))) (+.f64 (/.f64 1/4 (pow.f64 (hypot.f64 1 (pow.f64 x -1/4)) 6)) (*.f64 (/.f64 1 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (-.f64 (/.f64 1/2 x) 3/8))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.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/4 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 (pow.f64 x -1/2) 1) 2)))) (*.f64 3/8 (/.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 3/16 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))))) x) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) (+.f64 (pow.f64 x -1/2) 1)))) (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 x 2)))))) (*.f64 3/8 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1)))))
(+.f64 (/.f64 1/2 (*.f64 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2) x)) (-.f64 (fma.f64 (-.f64 (/.f64 5/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/4 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))) (+.f64 1 (pow.f64 x -1/2))) (/.f64 3/16 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))) x (+.f64 (/.f64 1 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (*.f64 x x))) (/.f64 1/4 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))
(+.f64 (/.f64 1/2 (*.f64 x (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))) (+.f64 (fma.f64 x (-.f64 (/.f64 5/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (fma.f64 -1/2 (-.f64 (/.f64 1/4 (*.f64 (+.f64 1 (pow.f64 x -1/2)) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3))) (/.f64 3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3))) (/.f64 3/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)))) (+.f64 (/.f64 1 (*.f64 x (*.f64 x (+.f64 1 (pow.f64 x -1/2))))) (/.f64 1/4 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)))) (/.f64 -3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))))
(+.f64 (fma.f64 x (+.f64 (/.f64 5/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (-.f64 (/.f64 -3/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 (+.f64 (/.f64 -1/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (/.f64 3/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2))) (+.f64 1 (pow.f64 x -1/2))))) (/.f64 (/.f64 1 x) (+.f64 x (sqrt.f64 x)))) (+.f64 (/.f64 1/4 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 3)) (+.f64 (/.f64 (/.f64 1/2 x) (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (/.f64 -3/8 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)))))
(+.f64 (fma.f64 x (+.f64 (/.f64 5/16 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (fma.f64 -1/2 (+.f64 (/.f64 3/8 (pow.f64 (hypot.f64 1 (pow.f64 x -1/4)) 6)) (/.f64 -1/4 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 4))) (/.f64 -3/16 (pow.f64 (hypot.f64 1 (pow.f64 x -1/4)) 6)))) (+.f64 (/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x)))) (/.f64 1/4 (pow.f64 (hypot.f64 1 (pow.f64 x -1/4)) 6)))) (*.f64 (/.f64 1 (pow.f64 (+.f64 1 (pow.f64 x -1/2)) 2)) (-.f64 (/.f64 1/2 x) 3/8)))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))))
(fma.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (*.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/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x))) (pow.f64 x 4))) (+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))
(fma.f64 -1 (/.f64 (*.f64 (sqrt.f64 x) 1/16) (pow.f64 x 4)) (fma.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (*.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/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (/.f64 (sqrt.f64 x) (/.f64 (pow.f64 x 4) 1/16)))
(fma.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (/.f64 (*.f64 (sqrt.f64 x) -1/16) (pow.f64 x 4))))
(fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (fma.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (*.f64 (/.f64 (sqrt.f64 x) (pow.f64 x 4)) -1/16)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x))) (pow.f64 x 4))) (+.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -5/64 (sqrt.f64 x)) (+.f64 (*.f64 1/4 (+.f64 (*.f64 3/32 (sqrt.f64 x)) (*.f64 -1/32 (sqrt.f64 x)))) (*.f64 3/128 (sqrt.f64 x)))) (pow.f64 x 5))))))
(fma.f64 -1 (/.f64 (*.f64 (sqrt.f64 x) 1/16) (pow.f64 x 4)) (fma.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (neg.f64 (/.f64 (fma.f64 -5/64 (sqrt.f64 x) (fma.f64 1/4 (*.f64 (sqrt.f64 x) 1/16) (*.f64 (sqrt.f64 x) 3/128))) (pow.f64 x 5))))))
(-.f64 (-.f64 (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 1/8 (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (/.f64 (fma.f64 (sqrt.f64 x) -5/64 (fma.f64 (sqrt.f64 x) 3/128 (*.f64 (sqrt.f64 x) 1/64))) (pow.f64 x 5))) (/.f64 (sqrt.f64 x) (/.f64 (pow.f64 x 4) 1/16)))
(fma.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 (*.f64 (sqrt.f64 x) -1/16) (pow.f64 x 4))) (/.f64 (fma.f64 (sqrt.f64 x) 3/128 (*.f64 (sqrt.f64 x) -1/16)) (pow.f64 x 5))))
(fma.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 (/.f64 (sqrt.f64 x) (pow.f64 x 4)) -1/16)) (/.f64 (*.f64 (sqrt.f64 x) -5/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 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))
(*.f64 1/2 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (*.f64 x x)))
(+.f64 (*.f64 1/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 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/8 (*.f64 (pow.f64 x 3) (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) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))))
(+.f64 (/.f64 (/.f64 1/8 (pow.f64 x 3)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.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 1/8 (pow.f64 x 3)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))
(*.f64 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (*.f64 x x)) (+.f64 (/.f64 1/8 x) 1/2))
(-.f64 (+.f64 (*.f64 1/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 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/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 1/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 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/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 (/.f64 1/8 (pow.f64 x 3)) (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 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 (/.f64 1/16 (pow.f64 x 4)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))))
(+.f64 (/.f64 (/.f64 1/8 (pow.f64 x 3)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (+.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (/.f64 -1/16 (*.f64 (pow.f64 x 4) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))))))
(fma.f64 1/2 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (*.f64 x x)) (*.f64 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (pow.f64 x 3)) (-.f64 1/8 (/.f64 1/16 x))))
(-.f64 (+.f64 (*.f64 1/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 1 (*.f64 (exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -1)))) (pow.f64 x 2)))) (*.f64 5/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 1/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 1/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 (*.f64 x x) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1))))) (/.f64 5/128 (*.f64 (pow.f64 x 5) (pow.f64 (exp.f64 -1/2) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 -1)))))) (/.f64 1/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 (/.f64 1/8 (pow.f64 x 3)) (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 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (-.f64 (/.f64 5/128 (*.f64 (pow.f64 x 5) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))) (/.f64 (/.f64 1/16 (pow.f64 x 4)) (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))))
(+.f64 (/.f64 (/.f64 1/8 (pow.f64 x 3)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (+.f64 (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2))) (+.f64 (/.f64 5/128 (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (*.f64 (pow.f64 -1 -1/2) (pow.f64 x 5)))) (/.f64 -1/16 (*.f64 (pow.f64 x 4) (*.f64 (pow.f64 (/.f64 -1 x) 1/2) (pow.f64 -1 -1/2)))))))
(fma.f64 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (pow.f64 x 4)) -1/16 (fma.f64 5/128 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (pow.f64 x 5)) (*.f64 (/.f64 (exp.f64 (log.f64 (sqrt.f64 x))) (*.f64 x x)) (+.f64 (/.f64 1/8 x) 1/2))))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))
(/.f64 1 (pow.f64 x 2))
(/.f64 1 (*.f64 x x))

eval355.0ms (3.8%)

Compiler

Compiled 13921 to 10928 computations (21.5% saved)

prune116.0ms (1.2%)

Pruning

31 alts after pruning (29 fresh and 2 done)

PrunedKeptTotal
New57815593
Fresh71421
Picked101
Done325
Total58931620
Error
0b
Counts
620 → 31
Alt Table
Click to see full alt table
StatusErrorProgram
33.4b
(/.f64 1/2 (pow.f64 x 3/2))
18.1b
(/.f64 (/.f64 (+.f64 x (-.f64 1 x)) (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (*.f64 x (+.f64 1 x))))
33.3b
(*.f64 1/2 (pow.f64 x -3/2))
52.2b
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
30.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
30.2b
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
29.9b
(-.f64 (pow.f64 x -1/2) 1)
38.4b
(/.f64 (/.f64 1 (*.f64 x x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
32.8b
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
52.2b
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
29.5b
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
29.0b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
29.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
38.4b
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
52.3b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
21.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
62.8b
-1
62.4b
(-.f64 (*.f64 1/2 x) 1)
29.6b
(pow.f64 x -1/2)
21.0b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
19.1b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
50.9b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
4.7b
(/.f64 (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
52.1b
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
5.2b
(*.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 1)
61.4b
(*.f64 1/2 x)
46.8b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
28.4b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
33.5b
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
5.1b
(/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
29.6b
(sqrt.f64 (/.f64 1 x))
Compiler

Compiled 689 to 546 computations (20.8% saved)

localize35.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

Compiled 60 to 46 computations (23.3% saved)

series4.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite77.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
680×log-prod_binary64
422×fma-def_binary64
261×log-div_binary64
243×fma-neg_binary64
234×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01235
128635
2424835
Stop Event
node limit
Counts
2 → 111
Calls
Call 1
Inputs
(/.f64 (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.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 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))) (cbrt.f64 (exp.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))))) (log.f64 (cbrt.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 +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))) (log.f64 (sqrt.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 -.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 (+.f64 1 x)) (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 x)) (*.f64 (/.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 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 1 (*.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 (/.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 (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 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 (/.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 (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 -1 (*.f64 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 1 (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 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 (/.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 (/.f64 1 (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (/.f64 1 x))))) (#(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 (cbrt.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) 2))) (/.f64 (/.f64 1 (*.f64 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 (+.f64 1 x)) (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)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (cbrt.f64 (pow.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) (cbrt.f64 (pow.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) (cbrt.f64 (pow.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 1 (*.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 1 (+.f64 1 x)) (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))))))) (#(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 1 (*.f64 x (+.f64 1 x))) (+.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))) (+.f64 (/.f64 1 x) (-.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (*.f64 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 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) 3) (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 (*.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 (/.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) 1) -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 x (+.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 1 (*.f64 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 1 (*.f64 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 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 exp.f64 (-.f64 (neg.f64 (log1p.f64 x)) (log.f64 (*.f64 x (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (neg.f64 (log1p.f64 x)) (log.f64 (*.f64 x (+.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 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 0 (/.f64 1 (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x))))) (cbrt.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (*.f64 x (+.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 x (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (fma.f64 -1 x -1) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (neg.f64 x) (fma.f64 -1 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x (+.f64 1 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (/.f64 1 (+.f64 1 x))))))) (#(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 (+.f64 1 x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 x) (+.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 x -1/2) (/.f64 (+.f64 1 x) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 1 x) -1/2) (/.f64 x (pow.f64 (+.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (+.f64 1 x) -2)) (/.f64 x (/.f64 1 (cbrt.f64 (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 x -2)) (/.f64 (+.f64 1 x) (/.f64 1 (cbrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (fma.f64 -1 x -1) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (+.f64 1 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 x) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 x (fma.f64 -1 x -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1 x)) (fma.f64 -1 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1 (+.f64 1 x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 x) 1) (+.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 x) (sqrt.f64 (+.f64 1 x))) (sqrt.f64 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1 x) (pow.f64 (cbrt.f64 (+.f64 1 x)) 2)) (cbrt.f64 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 1 (+.f64 1 x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 1 x)) (fma.f64 -1 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (+.f64 1 x)) -1) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 x) -1) (fma.f64 -1 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (*.f64 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 pow.f64 (/.f64 (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x)))) (pow.f64 x 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 x -2) x) (pow.f64 (+.f64 1 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x)))) (/.f64 (pow.f64 x -2) x)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (pow.f64 x -2) x) (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x))))) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -1 x -1) (neg.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (neg.f64 x) (fma.f64 -1 x -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (+.f64 1 x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (/.f64 1 (+.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 x) (/.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (+.f64 1 x) -2) (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (*.f64 x (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x)))) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (/.f64 (pow.f64 x -2) x) (pow.f64 (+.f64 1 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x)))) (/.f64 (pow.f64 x -2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 (pow.f64 x -2) x) (exp.f64 (*.f64 3 (neg.f64 (log1p.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (*.f64 x (+.f64 1 x)))))))) (#(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 1 (*.f64 x (+.f64 1 x)))))))))

simplify61.0ms (0.7%)

Algorithm
egg-herbie
Rules
902×times-frac_binary64
741×fma-def_binary64
477×distribute-rgt-in_binary64
468×distribute-lft-in_binary64
466×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01691811
15601650
220941241
Stop Event
node limit
Counts
135 → 149
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))))
Outputs
(/.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 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 (/.f64 1 x) (+.f64 1 (pow.f64 x -1/2))) (*.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)))))
(-.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))))))))
(-.f64 (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 1 (*.f64 (+.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 x) (+.f64 1 (pow.f64 x -1/2)))) (*.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)))))
(+.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 (/.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))))) (/.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 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 -1 (fma.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 1 (*.f64 (+.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 (pow.f64 x -1/2)) (+.f64 (pow.f64 x -1/2) 1/2))) (fma.f64 1/8 (/.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)))) (+.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 1 (*.f64 (+.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 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 x (*.f64 x (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 (/.f64 1/16 (+.f64 1 (pow.f64 x -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/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/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (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 (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 -1/4 (/.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (*.f64 x x) 3/2)))) (/.f64 (fma.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (pow.f64 x 4))) (/.f64 (fma.f64 -1/2 (*.f64 (fma.f64 -1/8 (*.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 1 x)) 3/2) 2) (sqrt.f64 (pow.f64 x 3))) (*.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) -1/8)))) (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (sqrt.f64 x)))) (fma.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 x)) -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 -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 (fma.f64 x (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 x)) 1/16)) (fma.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 (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 3/2 (sqrt.f64 x))) -1/2) (*.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)))) (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 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/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)))))
(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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.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 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/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)))))))
(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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.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 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) (+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 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 (*.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3/2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)) (/.f64 (/.f64 1/2 (*.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 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2) 9/4) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 3)) (/.f64 (*.f64 (*.f64 1/4 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/8) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2))) (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 (*.f64 (*.f64 1/4 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) 1/16) (pow.f64 (pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 2)))) (pow.f64 x 5)))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 -3/8 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 3)) (/.f64 (/.f64 1/2 (*.f64 x x)) (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) (+.f64 (/.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)) (/.f64 (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (pow.f64 x 4)))) (/.f64 (+.f64 (/.f64 (+.f64 (/.f64 1/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (/.f64 9/32 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2)))) 4/3) (+.f64 (/.f64 3/128 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 1/2))) (/.f64 1/64 (*.f64 (pow.f64 -1 -1/2) (pow.f64 (/.f64 -1 x) 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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(+.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 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 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 (/.f64 1 (*.f64 x x)) (/.f64 -1 (pow.f64 x 3))) (/.f64 1 (pow.f64 x 4)))
(+.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 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)))))

localize3.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
Compiler

Compiled 15 to 6 computations (60% saved)

series3.0ms (0%)

Counts
1 → 2
Calls

3 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)))

rewrite66.0ms (0.7%)

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
069
11299
217109
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(/.f64 1 (+.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 (fma.f64 x x (neg.f64 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 expm1.f64 (log1p.f64 (/.f64 1 (+.f64 x (sqrt.f64 x)))))))) (#(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)))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048
168
Stop Event
saturated
Counts
24 → 23
Calls
Call 1
Inputs
(/.f64 1 x)
(/.f64 1 x)
Outputs
(/.f64 1 x)
(/.f64 1 x)

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 37 to 27 computations (27% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

6 calls:

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

rewrite129.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
982×prod-diff_binary64
496×log-prod_binary64
404×fma-def_binary64
235×fma-neg_binary64
191×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01024
122922
2324322
Stop Event
node limit
Counts
2 → 165
Calls
Call 1
Inputs
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(/.f64 1 (+.f64 (*.f64 1/2 x) 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x -1/2) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 -1 (/.f64 1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2))) (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1))) (fma.f64 (neg.f64 (/.f64 -1 (fma.f64 x 1/2 1))) -1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2)))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (*.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1))))) (fma.f64 (neg.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2))) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (*.f64 (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)) (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 x -1/2) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 x -1/2) 1 (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 (cbrt.f64 x)) (cbrt.f64 (pow.f64 x -1/2)) (neg.f64 (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1))))) (fma.f64 (neg.f64 (fma.f64 x 1/2 -1)) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (*.f64 (fma.f64 x 1/2 -1) (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))) (cbrt.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (-.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)))) (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1))) (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (*.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3)) (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2)) (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x))) (neg.f64 (*.f64 (fma.f64 x 1/2 1) (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3))) (neg.f64 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2))) (neg.f64 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (fma.f64 x 1/2 1)) (*.f64 (neg.f64 (sqrt.f64 x)) 1)) (*.f64 (neg.f64 (sqrt.f64 x)) (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (fma.f64 x 1/2 1)) (*.f64 (sqrt.f64 x) -1)) (*.f64 (sqrt.f64 x) (neg.f64 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -1 (neg.f64 (fma.f64 x 1/2 1))) (*.f64 (neg.f64 (sqrt.f64 x)) -1)) (*.f64 (neg.f64 (sqrt.f64 x)) (neg.f64 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 3)) (+.f64 (/.f64 1 x) (-.f64 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 -1 (fma.f64 x 1/2 1))) (*.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1 x) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 -1 (fma.f64 x 1/2 1)))) (-.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (sqrt.f64 x)) (fma.f64 x 1/2 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.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) (/.f64 -1 (fma.f64 x 1/2 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)))) (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1))) (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (exp.f64 (/.f64 1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (pow.f64 x -1/2)) (+.f64 1 (expm1.f64 (/.f64 1 (fma.f64 x 1/2 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 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (exp.f64 (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (pow.f64 x -1/2)) (/.f64 1 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 x -1/2))) (/.f64 1 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (exp.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1)))) (exp.f64 (pow.f64 x -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (+.f64 1 (expm1.f64 (pow.f64 x -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1)))) (+.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) (/.f64 -1 (fma.f64 x 1/2 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x -1/2) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 -1 (fma.f64 x 1/2 1)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x -1/2) 1 (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 1 (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 1 (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1))) 1 (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x -1/2)) (cbrt.f64 (/.f64 1 x)) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 1 x)) (cbrt.f64 (pow.f64 x -1/2)) (/.f64 -1 (fma.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)) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) 2) (cbrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 x -1/2)) (sqrt.f64 (pow.f64 x -1/2)) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 x 1/2 1) -1/2) (neg.f64 (pow.f64 (fma.f64 x 1/2 1) -1/2)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (sqrt.f64 (+.f64 (pow.f64 x -1/2) (/.f64 -1 (fma.f64 x 1/2 1)))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (fma.f64 x 1/2 1)) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 x))) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x 1/2 1) (sqrt.f64 x)) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1)) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1))))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sqrt.f64 x) -3) (pow.f64 (fma.f64 x 1/2 1) -3)) (/.f64 1 (+.f64 (/.f64 1 x) (+.f64 (pow.f64 (fma.f64 x 1/2 1) -2) (/.f64 (pow.f64 x -1/2) (fma.f64 x 1/2 1))))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1)))) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1)))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 1 x) (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (+.f64 (pow.f64 x -1/2) (/.f64 1 (fma.f64 x 1/2 1)))) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (cbrt.f64 (/.f64 -1 (fma.f64 x 1/2 1)))) (cbrt.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (sqrt.f64 (/.f64 -1 (fma.f64 x 1/2 1))) (pow.f64 x -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 x 1/2 1) -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2) (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)) (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 x)) (cbrt.f64 (pow.f64 x -1/2)) (*.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (-.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (fma.f64 (/.f64 -1 (fma.f64 x 1/2 1)) 1 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (-.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1)))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (-.f64 (sqrt.f64 (pow.f64 x -1/2)) (pow.f64 (fma.f64 x 1/2 1) -1/2)) (+.f64 (/.f64 -1 (fma.f64 x 1/2 1)) (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2))) (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (pow.f64 x -1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1)))) (cbrt.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (fma.f64 x 1/2 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 x 1/2 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2)) (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x 1/2 1) -1/2) (pow.f64 (fma.f64 x 1/2 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (fma.f64 x 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) 2))) (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 1/8 (pow.f64 x 3) 1)) (-.f64 (fma.f64 1/4 (*.f64 x x) 1) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 1/4 (*.f64 x x) -1)) (fma.f64 x 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x 1/2 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 x 1/2 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (fma.f64 x 1/2 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 1) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x 1/2 1) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (fma.f64 x 1/2 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x 1/2 1) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (fma.f64 x 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x 1/2 1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (fma.f64 x 1/2 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log1p.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (*.f64 x 1/2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log1p.f64 (*.f64 x 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (fma.f64 x 1/2 1))))))))

simplify65.0ms (0.7%)

Algorithm
egg-herbie
Rules
775×distribute-neg-frac_binary64
729×fma-def_binary64
721×associate-*l*_binary64
494×associate-*r*_binary64
417×times-frac_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
035181
193177
2231177
3626171
41927170
57347170
Stop Event
node limit
Counts
177 → 179
Calls
Call 1
Inputs
1
(+.f64 (*.f64 -1/2 x) 1)
(+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 3)) (+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 1/4 (pow.f64 x 2)))))
(/.f64 2 x)
(-.f64 (*.f64 2 (/.f64 1 x)) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 16 (/.f64 1 (pow.f64 x 4)))))
(/.f64 2 x)
(-.f64 (*.f64 2 (/.f64 1 x)) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 16 (/.f64 1 (pow.f64 x 4)))))
Outputs
1
(+.f64 (*.f64 -1/2 x) 1)
(fma.f64 -1/2 x 1)
(+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 1/4 (pow.f64 x 2))))
(+.f64 (fma.f64 -1/2 x 1) (*.f64 1/4 (*.f64 x x)))
(fma.f64 -1/2 x (fma.f64 1/4 (*.f64 x x) 1))
(fma.f64 x (*.f64 x 1/4) (fma.f64 -1/2 x 1))
(fma.f64 x (fma.f64 x 1/4 -1/2) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 3)) (+.f64 (*.f64 -1/2 x) (+.f64 1 (*.f64 1/4 (pow.f64 x 2)))))
(fma.f64 -1/8 (pow.f64 x 3) (+.f64 (fma.f64 -1/2 x 1) (*.f64 1/4 (*.f64 x x))))
(fma.f64 -1/8 (pow.f64 x 3) (fma.f64 -1/2 x (fma.f64 1/4 (*.f64 x x) 1)))
(fma.f64 -1/2 x (fma.f64 -1/8 (pow.f64 x 3) (fma.f64 x (*.f64 x 1/4) 1)))
(fma.f64 -1/8 (pow.f64 x 3) (fma.f64 x (fma.f64 x 1/4 -1/2) 1))
(fma.f64 x (+.f64 -1/2 (*.f64 x (fma.f64 x -1/8 1/4))) 1)
(/.f64 2 x)
(-.f64 (*.f64 2 (/.f64 1 x)) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (/.f64 2 x) (/.f64 4 (*.f64 x x)))
(+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x)))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (/.f64 2 x) (/.f64 4 (*.f64 x x))))
(+.f64 (+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x))) (/.f64 8 (pow.f64 x 3)))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (/.f64 -4 (*.f64 x x))))
(+.f64 (/.f64 2 x) (*.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 8 x) 4)))
(+.f64 (/.f64 2 x) (*.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 8 x) -4)))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 16 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (/.f64 2 x) (/.f64 8 (pow.f64 x 3))) (+.f64 (/.f64 4 (*.f64 x x)) (/.f64 16 (pow.f64 x 4))))
(+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x))) (/.f64 16 (pow.f64 x 4))))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (/.f64 -16 (pow.f64 x 4)) (/.f64 4 (*.f64 x x)))))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (+.f64 (/.f64 -4 (*.f64 x x)) (/.f64 -16 (pow.f64 x 4)))))
(/.f64 2 x)
(-.f64 (*.f64 2 (/.f64 1 x)) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (/.f64 2 x) (/.f64 4 (*.f64 x x)))
(+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x)))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (*.f64 4 (/.f64 1 (pow.f64 x 2))))
(+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (/.f64 2 x) (/.f64 4 (*.f64 x x))))
(+.f64 (+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x))) (/.f64 8 (pow.f64 x 3)))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (/.f64 -4 (*.f64 x x))))
(+.f64 (/.f64 2 x) (*.f64 (/.f64 1 (*.f64 x x)) (-.f64 (/.f64 8 x) 4)))
(+.f64 (/.f64 2 x) (*.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 8 x) -4)))
(-.f64 (+.f64 (*.f64 8 (/.f64 1 (pow.f64 x 3))) (*.f64 2 (/.f64 1 x))) (+.f64 (*.f64 4 (/.f64 1 (pow.f64 x 2))) (*.f64 16 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (/.f64 2 x) (/.f64 8 (pow.f64 x 3))) (+.f64 (/.f64 4 (*.f64 x x)) (/.f64 16 (pow.f64 x 4))))
(+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (+.f64 (/.f64 2 x) (/.f64 -4 (*.f64 x x))) (/.f64 16 (pow.f64 x 4))))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (-.f64 (/.f64 -16 (pow.f64 x 4)) (/.f64 4 (*.f64 x x)))))
(+.f64 (/.f64 2 x) (+.f64 (/.f64 8 (pow.f64 x 3)) (+.f64 (/.f64 -4 (*.f64 x x)) (/.f64 -16 (pow.f64 x 4)))))

localize27.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

Compiled 64 to 39 computations (39.1% saved)

series4.0ms (0%)

Counts
2 → 0
Calls

6 calls:

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

rewrite86.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
596×log-prod_binary64
289×pow2_binary64
247×log-div_binary64
244×fma-def_binary64
202×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01327
131820
2362519
Stop Event
node limit
Counts
2 → 96
Calls
Call 1
Inputs
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(sqrt.f64 (/.f64 1 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) (/.f64 (sqrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) (pow.f64 (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) 2) (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(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 (sqrt.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) (sqrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 2) (/.f64 (/.f64 1 x) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) 1/2) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x -1/2) (/.f64 2 (sqrt.f64 x))) (/.f64 (pow.f64 x -1/2) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x -2)) (/.f64 2 (sqrt.f64 x))) (/.f64 (/.f64 1 (cbrt.f64 x)) (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) 1) (/.f64 (/.f64 1 (+.f64 1 x)) (/.f64 2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) 1) (/.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) (/.f64 2 (sqrt.f64 x))))))) (#(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 2 (sqrt.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) 2) (/.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) 2) (/.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) 2) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (pow.f64 x -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (pow.f64 x -1/2)) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) (pow.f64 x -1/2)) (/.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.f64 1 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sqrt.f64 x))) -2) (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (cbrt.f64 (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (cbrt.f64 (*.f64 (/.f64 1 x) 4))) (/.f64 (/.f64 1 (+.f64 1 x)) (cbrt.f64 (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) (cbrt.f64 (*.f64 (/.f64 1 x) 4))) (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (cbrt.f64 (*.f64 (/.f64 1 x) 4))) (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1/2) (cbrt.f64 (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 2 (sqrt.f64 x)) -1/2) (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (sqrt.f64 (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 x) (sqrt.f64 (/.f64 2 (sqrt.f64 x)))) (/.f64 (/.f64 1 (+.f64 1 x)) (sqrt.f64 (/.f64 2 (sqrt.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -2)) (sqrt.f64 (/.f64 2 (sqrt.f64 x)))) (/.f64 (cbrt.f64 (/.f64 (/.f64 1 x) (+.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 x)) 1/2) 1) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 2 (sqrt.f64 x)) (*.f64 x (+.f64 1 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 x (+.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 x (+.f64 1 x)) (/.f64 2 (sqrt.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (/.f64 2 (sqrt.f64 x)) (*.f64 x (+.f64 1 x))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x))) (/.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x))) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (*.f64 (pow.f64 x -1/2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -3) (pow.f64 (/.f64 2 (sqrt.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x)))))))))
((#(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 (pow.f64 1 1/2) (pow.f64 x -1/2))))) (#(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 (/.f64 1 x) (pow.f64 x -1/2))))) (#(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 (pow.f64 x -3/2) 1/3)))) (#(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 (/.f64 1 (cbrt.f64 x)) 3/2)))) (#(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/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) -1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 x) 1) -1)))) (#(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 expm1.f64 (log1p.f64 (pow.f64 x -1/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 log1p.f64 (expm1.f64 (pow.f64 x -1/2)))))))

simplify44.0ms (0.5%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

eval487.0ms (5.2%)

Compiler

Compiled 16272 to 12858 computations (21% saved)

prune132.0ms (1.4%)

Pruning

36 alts after pruning (31 fresh and 5 done)

PrunedKeptTotal
New64012652
Fresh51924
Picked101
Done156
Total64736683
Error
0b
Counts
683 → 36
Alt Table
Click to see full alt table
StatusErrorProgram
33.4b
(/.f64 1/2 (pow.f64 x 3/2))
33.3b
(*.f64 1/2 (pow.f64 x -3/2))
52.2b
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
30.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
30.2b
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
29.9b
(-.f64 (pow.f64 x -1/2) 1)
4.7b
(/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
52.2b
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
29.5b
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
28.5b
(*.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))
29.0b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
29.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
28.5b
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))
52.3b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
21.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
59.2b
(/.f64 1 x)
28.8b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
5.1b
(/.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
62.8b
-1
62.4b
(-.f64 (*.f64 1/2 x) 1)
29.6b
(pow.f64 x -1/2)
21.0b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
19.1b
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
50.9b
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
0.6b
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)
52.1b
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
33.2b
(*.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))
32.8b
(*.f64 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))
33.2b
(+.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))
61.4b
(*.f64 1/2 x)
46.8b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
28.4b
(/.f64 1 (+.f64 x (sqrt.f64 x)))
5.2b
(+.f64 0 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
32.8b
(*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))
33.5b
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
29.6b
(sqrt.f64 (/.f64 1 x))
Compiler

Compiled 401 to 321 computations (20% saved)

regimes154.0ms (1.6%)

Counts
86 → 1
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(/.f64 1/2 (pow.f64 x 3/2))
(*.f64 1/2 (pow.f64 x -3/2))
(-.f64 (pow.f64 x -1/2) 1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) 1)
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(*.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))
(*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))
(/.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 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))
(*.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
(*.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 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (sqrt.f64 (/.f64 1 (+.f64 1 x))))
(-.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (pow.f64 (*.f64 x x) -1/4) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 0 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(/.f64 (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 1)
(/.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 (/.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 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 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))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (exp.f64 (*.f64 -1/2 (log1p.f64 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -3/2))
(-.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (pow.f64 (+.f64 1 x) -3/2)))
(-.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) -1/4) 2))
(-.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (*.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)
(/.f64 (pow.f64 (*.f64 x (+.f64 1 x)) -1) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 (+.f64 x (-.f64 1 x)) (+.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 x))) (sqrt.f64 (*.f64 x (+.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)))
(/.f64 (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2)) (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))))
(/.f64 1 (/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (pow.f64 (*.f64 x (+.f64 1 x)) -1/2))) (-.f64 (pow.f64 x -3/2) (pow.f64 (+.f64 1 x) -3/2))))
(exp.f64 (log.f64 (-.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) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
(fma.f64 (pow.f64 (+.f64 1 x) -1/4) (neg.f64 (pow.f64 (+.f64 1 x) -1/4)) (pow.f64 x -1/2))
(*.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)))
(/.f64 (-.f64 (/.f64 1 x) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2)) (-.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))
(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 (pow.f64 (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) 2) (cbrt.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x)))) (pow.f64 x -1/2))
(/.f64 (+.f64 (pow.f64 x -3/2) (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 3)) (+.f64 (/.f64 1 x) (-.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (+.f64 1 x))) 2) (*.f64 (pow.f64 x -1/2) (/.f64 -1 (sqrt.f64 (+.f64 1 x)))))))
(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)))))
(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/6)) (cbrt.f64 (/.f64 1 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))
(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/6)) (cbrt.f64 (/.f64 1 (+.f64 1 x))) (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 (fma.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x)) (neg.f64 (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x)))))) (fma.f64 (neg.f64 (pow.f64 (+.f64 1 x) -1/6)) (/.f64 1 (cbrt.f64 (+.f64 1 x))) (*.f64 (pow.f64 (+.f64 1 x) -1/6) (/.f64 1 (cbrt.f64 (+.f64 1 x))))))
Outputs
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)
Calls

3 calls:

58.0ms
x
30.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
23.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.6b1x
0.6b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.6b1(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 1249 to 957 computations (23.4% saved)

regimes184.0ms (2%)

Counts
67 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(/.f64 1/2 (pow.f64 x 3/2))
(*.f64 1/2 (pow.f64 x -3/2))
(-.f64 (pow.f64 x -1/2) 1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) 1)
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(*.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))
(*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))
(/.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 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))
(*.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
(*.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 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (sqrt.f64 (/.f64 1 (+.f64 1 x))))
(-.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (pow.f64 (*.f64 x x) -1/4) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(/.f64 (/.f64 1 (*.f64 x (+.f64 1 x))) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(+.f64 0 (/.f64 1 (*.f64 (*.f64 x (+.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))))
(/.f64 (*.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(*.f64 (/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) (*.f64 x (+.f64 1 x)))) 1)
(/.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 (/.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 1 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))) (+.f64 (/.f64 1 x) (/.f64 -1 (+.f64 1 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))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (exp.f64 (*.f64 -1/2 (log1p.f64 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (cbrt.f64 (+.f64 1 x)) -3/2))
(-.f64 (/.f64 1 (sqrt.f64 x)) (cbrt.f64 (pow.f64 (+.f64 1 x) -3/2)))
(-.f64 (pow.f64 (cbrt.f64 x) -3/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) -1/4) 2))
(-.f64 (pow.f64 (pow.f64 x 1/4) -2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (pow.f64 (pow.f64 x -1/4) 2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (exp.f64 (*.f64 -1/2 (log.f64 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (pow.f64 (+.f64 1 x) 1/4) -2))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 x)) 3/2)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (*.f64 (pow.f64 x -1/6) (cbrt.f64 (/.f64 1 x))) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Outputs
(*.f64 1/2 (pow.f64 x -3/2))
(/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) x) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
Calls

3 calls:

83.0ms
x
41.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
35.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.3b2x
0.3b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.3b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 790 to 593 computations (24.9% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.3234889800848443e-23
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes128.0ms (1.4%)

Counts
46 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(/.f64 1/2 (pow.f64 x 3/2))
(*.f64 1/2 (pow.f64 x -3/2))
(-.f64 (pow.f64 x -1/2) 1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) 1)
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(*.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))
(*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))
(/.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 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))
(*.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
(*.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 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) x)
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 1 x) -1/2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (sqrt.f64 (/.f64 1 (+.f64 1 x))))
(-.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(-.f64 (pow.f64 (*.f64 x x) -1/4) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
(/.f64 (-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)) (+.f64 (+.f64 x 1/2) (/.f64 -1/8 x)))
(/.f64 (/.f64 1 (*.f64 x x)) (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
Outputs
(*.f64 1/2 (pow.f64 x -3/2))
(-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2))
Calls

3 calls:

48.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
48.0ms
x
18.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Results
ErrorSegmentsBranch
0.7b2x
0.7b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
0.7b2(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 472 to 348 computations (26.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.56099395162801e-15
1.5845338279321663e-12
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes74.0ms (0.8%)

Counts
36 → 2
Calls
Call 1
Inputs
-1
(/.f64 1 x)
(*.f64 1/2 x)
(-.f64 (*.f64 1/2 x) 1)
(pow.f64 x -1/2)
(sqrt.f64 (/.f64 1 x))
(/.f64 1/2 (pow.f64 x 3/2))
(*.f64 1/2 (pow.f64 x -3/2))
(-.f64 (pow.f64 x -1/2) 1)
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(/.f64 1 (+.f64 x (sqrt.f64 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) 1)
(/.f64 1 (*.f64 x (+.f64 x (sqrt.f64 x))))
(/.f64 1 (sqrt.f64 (*.f64 x (+.f64 1 x))))
(-.f64 (+.f64 1 (*.f64 (pow.f64 x -3/2) 1/2)) 1)
(*.f64 1/2 (-.f64 (+.f64 1 (pow.f64 x -3/2)) 1))
(-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1))
(/.f64 1 (*.f64 (+.f64 (pow.f64 x -1/2) 1) x))
(*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 x)))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 (*.f64 -1/2 x) 1))
(*.f64 (pow.f64 x -1/2) (/.f64 (/.f64 1 (+.f64 1 x)) 2))
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(+.f64 0 (/.f64 (/.f64 (sqrt.f64 x) 2) (*.f64 x (+.f64 1 x))))
(*.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (/.f64 (sqrt.f64 x) 2))
(/.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 1/2 (/.f64 (/.f64 (/.f64 1 x) (+.f64 1 x)) (pow.f64 x -1/2)))
(*.f64 (+.f64 (/.f64 1 x) -1) (/.f64 1 (+.f64 1 (pow.f64 x -1/2))))
(/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 x)) 1/2) (/.f64 (*.f64 x x) 1/2))
(*.f64 (/.f64 1 x) (/.f64 1 (*.f64 (+.f64 1 x) (/.f64 2 (sqrt.f64 x)))))
(*.f64 (/.f64 -1 (*.f64 x (+.f64 1 x))) (/.f64 1 (*.f64 (pow.f64 x -1/2) -2)))
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(/.f64 (/.f64 (/.f64 (+.f64 1 (-.f64 x x)) x) (+.f64 1 x)) (*.f64 2 (sqrt.f64 (/.f64 1 x))))
(-.f64 (/.f64 1 (sqrt.f64 x)) (+.f64 1 (*.f64 x (+.f64 -1/2 (*.f64 x (+.f64 (*.f64 x -5/16) 3/8))))))
(*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 x 3))))
Outputs
(-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1)))
(*.f64 1/2 (pow.f64 x -3/2))
Calls

1 calls:

59.0ms
x
Results
ErrorSegmentsBranch
1.4b2x
Compiler

Compiled 335 to 248 computations (26% saved)

bsearch22.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
21.0ms
0.869282574077839
2.298803714286563
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes107.0ms (1.1%)

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

1 calls:

24.0ms
x
Results
ErrorSegmentsBranch
1.4b2x
Compiler

Compiled 148 to 107 computations (27.7% saved)

bsearch45.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
45.0ms
0.869282574077839
2.298803714286563
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes21.0ms (0.2%)

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

1 calls:

17.0ms
x
Results
ErrorSegmentsBranch
1.4b2x
Compiler

Compiled 89 to 63 computations (29.2% saved)

bsearch39.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
39.0ms
0.4943617451397968
0.869282574077839
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes13.0ms (0.1%)

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

1 calls:

11.0ms
x
Results
ErrorSegmentsBranch
2.2b2x
Compiler

Compiled 32 to 24 computations (25% saved)

bsearch21.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
21.0ms
0.4943617451397968
0.869282574077839
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes166.0ms (1.8%)

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

1 calls:

164.0ms
x
Results
ErrorSegmentsBranch
2.2b2x
Compiler

Compiled 27 to 20 computations (25.9% saved)

bsearch22.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
0.4943617451397968
0.869282574077839
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes7.0ms (0.1%)

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

1 calls:

5.0ms
x
Results
ErrorSegmentsBranch
29.6b1x
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes143.0ms (1.5%)

Accuracy

Total -3.8b remaining (-6.4%)

Threshold costs -3.8b (-6.4%)

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

1 calls:

4.0ms
x
Results
ErrorSegmentsBranch
59.2b1x
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify17.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
054239
174239
292239
3109239
4118239
5121239
6122239
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)
(if (<=.f64 (-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 0) (*.f64 1/2 (pow.f64 x -3/2)) (/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 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)))) 6338253001141147/1267650600228229401496703205376) (*.f64 1/2 (pow.f64 x -3/2)) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1)) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (-.f64 (pow.f64 x -1/2) 1) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (pow.f64 x -1/2) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (pow.f64 x -1/2) (/.f64 1/2 (pow.f64 x 3/2)))
(pow.f64 x -1/2)
(/.f64 1 x)
-1
Outputs
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)) x)) -1)
(pow.f64 (*.f64 (+.f64 1 x) (*.f64 x (+.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))) -1)
(if (<=.f64 (-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1)))) 0) (*.f64 1/2 (pow.f64 x -3/2)) (/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 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 1 x)))) 0) (*.f64 1/2 (pow.f64 x -3/2)) (/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 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 1 x)))) 0) (*.f64 1/2 (pow.f64 x -3/2)) (/.f64 (/.f64 (/.f64 1 (+.f64 1 x)) 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)))) 6338253001141147/1267650600228229401496703205376) (*.f64 1/2 (pow.f64 x -3/2)) (-.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 1 x)))) 6338253001141147/1267650600228229401496703205376) (*.f64 1/2 (pow.f64 x -3/2)) (-.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 1 x)))) 6338253001141147/1267650600228229401496703205376) (*.f64 1/2 (pow.f64 x -3/2)) (-.f64 (pow.f64 x -1/2) (pow.f64 (+.f64 1 x) -1/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 (*.f64 1/2 x) 1))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (/.f64 1 (+.f64 1 (*.f64 x 1/2)))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (+.f64 (pow.f64 x -1/2) (/.f64 -1 (+.f64 1 (*.f64 x 1/2)))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (+.f64 (*.f64 -1/2 x) 1)) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (-.f64 (pow.f64 x -1/2) (+.f64 1 (*.f64 x -1/2))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 7829801353393243/9007199254740992) (+.f64 (pow.f64 x -1/2) (+.f64 -1 (*.f64 x 1/2))) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (-.f64 (pow.f64 x -1/2) 1) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (+.f64 (pow.f64 x -1/2) -1) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (pow.f64 x -1/2) (*.f64 1/2 (pow.f64 x -3/2)))
(if (<=.f64 x 2226407371197817/4503599627370496) (pow.f64 x -1/2) (/.f64 1/2 (pow.f64 x 3/2)))
(pow.f64 x -1/2)
(/.f64 1 x)
-1
Compiler

Compiled 175 to 140 computations (20% saved)

soundness0.0ms (0%)

end223.0ms (2.4%)

Compiler

Compiled 165 to 129 computations (21.8% saved)

Profiling

Loading profile data...