Details

Time bar (total: 9.4s)

analyze0.0ms (0%)

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

Compiled 14 to 13 computations (7.1% saved)

sample2.7s (29.2%)

Results
1.4s2073×body2048valid
750.0ms4521×body256valid
404.0ms1090×body1024valid
207.0ms572×body512valid

preprocess18.0ms (0.2%)

Algorithm
egg-herbie
Rules
sub-neg_binary64
fma-def_binary64
+-commutative_binary64
*-commutative_binary64
associate-+l-_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
12215
22915
33715
44415
55415
66515
77715
88015
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (*.f64 (/.f64 1 (hypot.f64 1 x)) 1/2))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Compiler

Compiled 14 to 13 computations (7.1% saved)

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Rules
sub-neg_binary64
fma-def_binary64
+-commutative_binary64
*-commutative_binary64
associate-+l-_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12215
22915
33715
44415
55415
66515
77715
88015
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (*.f64 (/.f64 1 (hypot.f64 1 x)) 1/2))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

eval1.0ms (0%)

Compiler

Compiled 23 to 21 computations (8.7% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 11 to 10 computations (9.1% saved)

localize17.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.0b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Compiler

Compiled 37 to 31 computations (16.2% saved)

series5.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite65.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
595×unpow-prod-down_binary64
406×log-prod_binary64
387×prod-diff_binary64
249×pow2_binary64
228×pow-prod-down_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
828×cancel-sign-sub-inv_binary64
813×associate-/r*_binary64
717×associate-*r*_binary64
271×sub-neg_binary64
223×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
063306
1179272
2553268
31817268
47008268
Stop Event
node limit
Counts
67 → 76
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1843/32768 (pow.f64 x 8)))))
(fma.f64 69/1024 (pow.f64 x 6) (fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1843/32768 (pow.f64 x 8)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(-.f64 (-.f64 1 (sqrt.f64 1/2)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (/.f64 (/.f64 -1/4 (sqrt.f64 1/2)) x))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 1 (-.f64 (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (sqrt.f64 1/2) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))))
(-.f64 (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) 1) (+.f64 (sqrt.f64 1/2) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 1 (-.f64 (/.f64 1/16 (*.f64 (*.f64 x x) (sqrt.f64 1/2))) (+.f64 (sqrt.f64 1/2) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (-.f64 (/.f64 (/.f64 1/16 (*.f64 x x)) (sqrt.f64 1/2)) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 1 (-.f64 (+.f64 (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3))) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (+.f64 (sqrt.f64 1/2) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))))
(+.f64 (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) (/.f64 3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (-.f64 1 (sqrt.f64 1/2)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (/.f64 1/16 (*.f64 (*.f64 x x) (sqrt.f64 1/2))) (-.f64 (/.f64 3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2))))))
(+.f64 1 (-.f64 (+.f64 (/.f64 (/.f64 1/16 (*.f64 x x)) (sqrt.f64 1/2)) (-.f64 (/.f64 3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2))) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 1 (-.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3))))) (sqrt.f64 1/2))
(+.f64 (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (+.f64 (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)) (-.f64 (/.f64 1/16 (*.f64 (*.f64 x x) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)) (-.f64 (/.f64 (/.f64 1/16 (*.f64 x x)) (sqrt.f64 1/2)) (sqrt.f64 1/2))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(-.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 1 (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))) (-.f64 (/.f64 -3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)) (+.f64 (/.f64 1/16 (*.f64 (*.f64 x x) (sqrt.f64 1/2))) (/.f64 -3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (/.f64 (/.f64 1/4 x) (sqrt.f64 1/2)) (+.f64 (/.f64 (/.f64 1/16 (*.f64 x x)) (sqrt.f64 1/2)) (/.f64 -3/32 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))

eval39.0ms (0.4%)

Compiler

Compiled 1505 to 1353 computations (10.1% saved)

prune19.0ms (0.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New71576
Fresh000
Picked011
Done000
Total71677
Error
0b
Counts
77 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
29.8b
(*.f64 1/8 (*.f64 x x))
16.5b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
33.1b
(-.f64 1 (sqrt.f64 1/2))
17.0b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
30.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
30.3b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
Compiler

Compiled 155 to 132 computations (14.8% saved)

localize34.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
0.0b
(+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.5b
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
Compiler

Compiled 62 to 53 computations (14.5% saved)

series10.0ms (0.1%)

Counts
3 → 36
Calls

9 calls:

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

rewrite204.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
614×prod-diff_binary64
581×log-prod_binary64
325×fma-def_binary64
228×log-div_binary64
219×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify68.0ms (0.7%)

Algorithm
egg-herbie
Rules
824×fma-def_binary64
650×times-frac_binary64
605×associate-*l*_binary64
442×associate-*r*_binary64
320×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01961612
16371385
223211294
Stop Event
node limit
Counts
289 → 316
Calls
Call 1
Inputs
(*.f64 1/4 (pow.f64 x 2))
(+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 -3/16 (pow.f64 x 4)))
(+.f64 (*.f64 5/32 (pow.f64 x 6)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 -3/16 (pow.f64 x 4))))
(+.f64 (*.f64 5/32 (pow.f64 x 6)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (+.f64 (*.f64 -3/16 (pow.f64 x 4)) (*.f64 -35/256 (pow.f64 x 8)))))
1/2
(-.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))))
1/2
(+.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) 1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
2
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) 2)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 2 (*.f64 11/128 (pow.f64 x 4))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -69/1024 (pow.f64 x 6)) (+.f64 2 (*.f64 11/128 (pow.f64 x 4)))))
(+.f64 1 (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (+.f64 (sqrt.f64 1/2) 1) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)))
(-.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 x 3))))))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (+.f64 (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(+.f64 (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))) (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (sqrt.f64 1/2)))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 (sqrt.f64 1/2) 3))))))) (pow.f64 x 3))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x))))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
Outputs
(*.f64 1/4 (pow.f64 x 2))
(*.f64 1/4 (*.f64 x x))
(+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 -3/16 (pow.f64 x 4)))
(fma.f64 1/4 (*.f64 x x) (*.f64 -3/16 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 4) -3/16 (*.f64 1/4 (*.f64 x x)))
(+.f64 (*.f64 5/32 (pow.f64 x 6)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (*.f64 -3/16 (pow.f64 x 4))))
(fma.f64 5/32 (pow.f64 x 6) (fma.f64 1/4 (*.f64 x x) (*.f64 -3/16 (pow.f64 x 4))))
(fma.f64 5/32 (pow.f64 x 6) (fma.f64 (pow.f64 x 4) -3/16 (*.f64 1/4 (*.f64 x x))))
(+.f64 (*.f64 5/32 (pow.f64 x 6)) (+.f64 (*.f64 1/4 (pow.f64 x 2)) (+.f64 (*.f64 -3/16 (pow.f64 x 4)) (*.f64 -35/256 (pow.f64 x 8)))))
(fma.f64 5/32 (pow.f64 x 6) (fma.f64 1/4 (*.f64 x x) (fma.f64 -3/16 (pow.f64 x 4) (*.f64 -35/256 (pow.f64 x 8)))))
(fma.f64 5/32 (pow.f64 x 6) (fma.f64 1/4 (*.f64 x x) (fma.f64 -35/256 (pow.f64 x 8) (*.f64 (pow.f64 x 4) -3/16))))
(fma.f64 5/32 (pow.f64 x 6) (fma.f64 (pow.f64 x 4) -3/16 (fma.f64 1/4 (*.f64 x x) (*.f64 -35/256 (pow.f64 x 8)))))
1/2
(-.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 1/2 (/.f64 1/2 x))
(+.f64 1/2 (/.f64 -1/2 x))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (/.f64 1/4 (pow.f64 x 3))) (/.f64 1/2 x))
(+.f64 1/2 (+.f64 (/.f64 1/4 (pow.f64 x 3)) (/.f64 -1/2 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))))
(-.f64 (+.f64 1/2 (/.f64 1/4 (pow.f64 x 3))) (+.f64 (/.f64 1/2 x) (/.f64 3/16 (pow.f64 x 5))))
(+.f64 (+.f64 1/2 (/.f64 1/4 (pow.f64 x 3))) (-.f64 (/.f64 -1/2 x) (/.f64 3/16 (pow.f64 x 5))))
(+.f64 1/2 (+.f64 (/.f64 1/4 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -3/16 (pow.f64 x 5)))))
1/2
(+.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 x))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) 1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (-.f64 1/2 (/.f64 1/4 (pow.f64 x 3))))
(+.f64 1/2 (-.f64 (/.f64 1/2 x) (/.f64 1/4 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (-.f64 (+.f64 1/2 (/.f64 3/16 (pow.f64 x 5))) (/.f64 1/4 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 x) (+.f64 1/2 (-.f64 (/.f64 3/16 (pow.f64 x 5)) (/.f64 1/4 (pow.f64 x 3)))))
(+.f64 (/.f64 1/2 x) (+.f64 1/2 (+.f64 (/.f64 3/16 (pow.f64 x 5)) (/.f64 -1/4 (pow.f64 x 3)))))
2
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) 2)
(fma.f64 -1/8 (*.f64 x x) 2)
(fma.f64 (*.f64 x x) -1/8 2)
(fma.f64 x (*.f64 x -1/8) 2)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 2 (*.f64 11/128 (pow.f64 x 4))))
(+.f64 (fma.f64 -1/8 (*.f64 x x) 2) (*.f64 (pow.f64 x 4) 11/128))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 (pow.f64 x 4) 11/128 2))
(fma.f64 x (*.f64 x -1/8) (fma.f64 (pow.f64 x 4) 11/128 2))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -69/1024 (pow.f64 x 6)) (+.f64 2 (*.f64 11/128 (pow.f64 x 4)))))
(fma.f64 -1/8 (*.f64 x x) (fma.f64 -69/1024 (pow.f64 x 6) (+.f64 2 (*.f64 (pow.f64 x 4) 11/128))))
(fma.f64 (*.f64 x x) -1/8 (fma.f64 (pow.f64 x 6) -69/1024 (fma.f64 (pow.f64 x 4) 11/128 2)))
(fma.f64 x (*.f64 x -1/8) (fma.f64 (pow.f64 x 4) 11/128 (fma.f64 (pow.f64 x 6) -69/1024 2)))
(+.f64 1 (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 (sqrt.f64 1/2) (+.f64 1 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (+.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (+.f64 1 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (*.f64 x x) (*.f64 1/2 (sqrt.f64 1/2)))))
(+.f64 (+.f64 1 (sqrt.f64 1/2)) (-.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 (/.f64 1/16 (sqrt.f64 1/2)) (*.f64 x x))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (*.f64 (pow.f64 x 3) (sqrt.f64 1/2))) (+.f64 (sqrt.f64 1/2) (+.f64 1 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3))))
(+.f64 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (+.f64 1 (sqrt.f64 1/2))) (-.f64 (/.f64 -3/32 (*.f64 (pow.f64 x 3) (sqrt.f64 1/2))) (/.f64 1/32 (*.f64 (*.f64 x x) (*.f64 1/2 (sqrt.f64 1/2))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (+.f64 1 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))) (/.f64 -3/32 (*.f64 (pow.f64 x 3) (sqrt.f64 1/2)))) (/.f64 (/.f64 1/16 (sqrt.f64 1/2)) (*.f64 x x))))
(+.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (-.f64 1 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 1 (-.f64 (sqrt.f64 1/2) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (sqrt.f64 1/2) (/.f64 -1/4 (*.f64 x (sqrt.f64 1/2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) 1) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (-.f64 1 (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 1 (-.f64 (sqrt.f64 1/2) (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))))
(+.f64 1 (-.f64 (sqrt.f64 1/2) (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 (/.f64 1/16 (sqrt.f64 1/2)) (*.f64 x x)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 1 (*.f64 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (*.f64 (pow.f64 x 3) (sqrt.f64 1/2))) -1/2))) (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 1/32 (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (+.f64 1 (/.f64 (/.f64 3/32 (pow.f64 x 3)) (sqrt.f64 1/2))) (fma.f64 1/32 (/.f64 (/.f64 2 (sqrt.f64 1/2)) (*.f64 x x)) (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))))))
(+.f64 1 (-.f64 (+.f64 (sqrt.f64 1/2) (/.f64 3/32 (*.f64 (pow.f64 x 3) (sqrt.f64 1/2)))) (+.f64 (/.f64 1/4 (*.f64 x (sqrt.f64 1/2))) (/.f64 (/.f64 1/16 (sqrt.f64 1/2)) (*.f64 x x)))))
(*.f64 1/8 (pow.f64 x 2))
(*.f64 (*.f64 x x) 1/8)
(*.f64 x (*.f64 x 1/8))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 (pow.f64 x 4) -11/128))
(fma.f64 (pow.f64 x 4) -11/128 (*.f64 x (*.f64 x 1/8)))
(fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 (pow.f64 x 4) -11/128)))
(fma.f64 (*.f64 x x) 1/8 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (pow.f64 x 6) 69/1024)))
(fma.f64 x (*.f64 x 1/8) (fma.f64 (pow.f64 x 6) 69/1024 (*.f64 (pow.f64 x 4) -11/128)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 (pow.f64 x 4) -11/128))))
(fma.f64 (*.f64 x x) 1/8 (fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 (pow.f64 x 8) -1843/32768 (*.f64 (pow.f64 x 4) -11/128))))
(fma.f64 x (*.f64 x 1/8) (fma.f64 (pow.f64 x 4) -11/128 (fma.f64 (pow.f64 x 6) 69/1024 (*.f64 (pow.f64 x 8) -1843/32768))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 1/2 (+.f64 1 (sqrt.f64 1/2)))
(+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (neg.f64 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) x)))
(-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) x))
(-.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (neg.f64 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) x))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))))))
(+.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) x)) (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))
(+.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) x)) (-.f64 (/.f64 1/64 (*.f64 (*.f64 x (fma.f64 x (sqrt.f64 1/2) x)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))
(-.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) x)) (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 x 3))))))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (+.f64 (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))))))
(-.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (fma.f64 -1 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) x) (/.f64 1/4 (*.f64 (pow.f64 x 3) (+.f64 1 (sqrt.f64 1/2))))))) (fma.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))) (fma.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 1/4 (+.f64 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))) (pow.f64 x 3)))) (/.f64 (-.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))) (pow.f64 x 3))))))))
(+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (-.f64 (/.f64 (/.f64 1/4 (pow.f64 x 3)) (+.f64 1 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) x))) (fma.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2)))) (fma.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (pow.f64 x 3) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (+.f64 1/2 (sqrt.f64 1/2)))) (*.f64 (pow.f64 x 3) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 (/.f64 -3/64 (*.f64 (pow.f64 x 3) (+.f64 1/2 (sqrt.f64 1/2)))) (+.f64 1 (sqrt.f64 1/2))))))))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (-.f64 (+.f64 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 x 3)) (+.f64 1 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) x)) (/.f64 1/64 (*.f64 (*.f64 x (fma.f64 x (sqrt.f64 1/2) x)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4)))) (+.f64 (*.f64 (/.f64 1/4 (+.f64 1/2 (sqrt.f64 1/2))) (+.f64 (/.f64 -3/16 (*.f64 (pow.f64 x 3) (+.f64 1 (sqrt.f64 1/2)))) (/.f64 (-.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2)))) (pow.f64 x 3)))) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 -1/4 (*.f64 x (*.f64 x (sqrt.f64 1/2)))) (/.f64 1/32 (*.f64 1/2 (*.f64 (pow.f64 x 3) (sqrt.f64 1/2)))))))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 1/2 (+.f64 1 (sqrt.f64 1/2)))
(+.f64 (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))) (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))
(+.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2))))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))
(+.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (/.f64 1/2 x) (+.f64 1 (sqrt.f64 1/2)))) (/.f64 (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))) x))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (-.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))))))
(+.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))) x))) (-.f64 (/.f64 (/.f64 1/2 x) (+.f64 1 (sqrt.f64 1/2))) (*.f64 (/.f64 -1/4 (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 x x)))))
(-.f64 (+.f64 (/.f64 1/64 (*.f64 (*.f64 x (fma.f64 x (sqrt.f64 1/2) x)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (sqrt.f64 1/2)))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 (sqrt.f64 1/2) 3))))))) (pow.f64 x 3))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x))))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (-.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 1/4 (+.f64 1 (sqrt.f64 1/2))) (fma.f64 1/4 (/.f64 (-.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))) (fma.f64 1/4 (/.f64 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (+.f64 1 (sqrt.f64 1/2))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))))) (pow.f64 x 3)) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2))))))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))))))
(+.f64 (/.f64 (/.f64 1/2 x) (+.f64 1 (sqrt.f64 1/2))) (+.f64 (+.f64 (-.f64 (/.f64 (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))) x) (/.f64 (-.f64 (/.f64 1/4 (+.f64 1 (sqrt.f64 1/2))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (+.f64 1/2 (sqrt.f64 1/2)))) (+.f64 1/2 (sqrt.f64 1/2))) (fma.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))) (/.f64 -3/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))))) (pow.f64 x 3))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))))) (/.f64 (*.f64 1/4 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))
(+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (+.f64 (/.f64 1/64 (*.f64 (*.f64 x (fma.f64 x (sqrt.f64 1/2) x)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (-.f64 (-.f64 (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 (-.f64 (-.f64 (/.f64 1/4 (+.f64 1 (sqrt.f64 1/2))) (*.f64 (/.f64 1/4 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (-.f64 (/.f64 (/.f64 1/64 (fma.f64 1/2 (sqrt.f64 1/2) 1/4)) (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (*.f64 1/2 (sqrt.f64 1/2))))) (/.f64 -3/16 (+.f64 1/2 (sqrt.f64 1/2)))))) (/.f64 (+.f64 (/.f64 1/64 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/256 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (pow.f64 x 3))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))))

localize4.0ms (0%)

Compiler

Compiled 11 to 5 computations (54.5% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.0b
(-.f64 1 (sqrt.f64 1/2))
Compiler

Compiled 9 to 9 computations (0% saved)

series0.0ms (0%)

Counts
1 → 0

rewrite40.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
443×pow1_binary64
438×add-sqr-sqrt_binary64
426×*-un-lft-identity_binary64
418×add-log-exp_binary64
418×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize25.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
0.0b
(*.f64 69/1024 (pow.f64 x 6))
0.1b
(*.f64 -11/128 (pow.f64 x 4))
17.9b
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
Compiler

Compiled 60 to 48 computations (20% saved)

series7.0ms (0.1%)

Counts
4 → 9
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(*.f64 -11/128 (pow.f64 x 4))
1.0ms
x
@inf
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
1.0ms
x
@0
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 69/1024 (pow.f64 x 6))
0.0ms
x
@inf
(*.f64 -11/128 (pow.f64 x 4))

rewrite97.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
662×log-prod_binary64
627×fma-def_binary64
330×fma-neg_binary64
271×expm1-udef_binary64
271×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01649
135849
2432249
Stop Event
node limit
Counts
4 → 181
Calls
Call 1
Inputs
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4)))) (/.f64 (*.f64 (pow.f64 x 8) 121/16384) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 2) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384)) (/.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4))) (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152)) (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152)) (fma.f64 (pow.f64 x 8) 121/16384 (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152))) (neg.f64 (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384))) (neg.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 8) 121/16384) (*.f64 (pow.f64 x 12) 4761/1048576)) (-.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4))) (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6)))) (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6)))) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128) (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 6) 69/1024 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 6)) 1 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) -11/128 (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) (*.f64 (*.f64 x x) 69/1024) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (pow.f64 x 4)) 1 (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) -11/128) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3) (*.f64 (pow.f64 x 3) 69/1024) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (cbrt.f64 (pow.f64 x 4)) -11/128) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) (cbrt.f64 (*.f64 (pow.f64 x 12) 4761/1048576)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 12) 4761/1048576)) (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 121/16384)) (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (sqrt.f64 -11/128)) (*.f64 (*.f64 x x) (sqrt.f64 -11/128)) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 4)) (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 3)) (pow.f64 x 3) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (*.f64 x x)) (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (cbrt.f64 (pow.f64 x 8))) (cbrt.f64 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -11/128 (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (sqrt.f64 -11/128)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 12) -1331/2097152) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 8) 121/16384))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 12) -1331/2097152))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 4 (log.f64 x) (log1p.f64 -139/128)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 4 (log.f64 x) (log1p.f64 -139/128)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 69/1024 (pow.f64 x 6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 69/1024 (pow.f64 x 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 12) 4761/1048576))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 69/1024 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 6 (log.f64 x) (log1p.f64 -955/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 6 (log.f64 x) (log1p.f64 -955/1024)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 x 4) 1/64) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) (/.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) 2) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3)) (/.f64 1 (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2)) (/.f64 1 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) 1/64)) (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3)) (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) 1/64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3)) (+.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2) (-.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2)) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3))) (neg.f64 (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2))) (neg.f64 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) 3) (*.f64 (pow.f64 x 12) -1331/2097152)) (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (-.f64 (*.f64 (pow.f64 x 8) 121/16384) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2) (*.f64 (pow.f64 x 4) 1/64)) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (*.f64 (pow.f64 x 8) 121/16384)) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8))) (*.f64 (pow.f64 x 4) 1/64)) (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128) (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) (pow.f64 (exp.f64 1/8) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024)) (pow.f64 (exp.f64 (pow.f64 x 4)) -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 (pow.f64 x 6)) 69/1024)) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 x 1/8) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 6)) 1 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -11/128 (pow.f64 x 4) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) -11/128 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) (*.f64 (*.f64 x x) 69/1024) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (pow.f64 x 4)) 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) 1 (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1/8 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) -11/128) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x 1/8)) 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -11/128 (pow.f64 x 4)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3) (*.f64 (pow.f64 x 3) 69/1024) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (*.f64 x 1/8))) (cbrt.f64 (*.f64 (pow.f64 x 4) 1/64)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 1/64)) (cbrt.f64 (*.f64 x (*.f64 x 1/8))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (*.f64 (pow.f64 (cbrt.f64 x) 2) 1/8) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (cbrt.f64 (pow.f64 x 4)) -11/128) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) (cbrt.f64 (*.f64 (pow.f64 x 12) 4761/1048576)) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 12) 4761/1048576)) (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 2) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) 2) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 121/16384)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 121/16384)) (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 1/8)) (*.f64 x (sqrt.f64 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (sqrt.f64 -11/128)) (*.f64 (*.f64 x x) (sqrt.f64 -11/128)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824 (*.f64 (pow.f64 x 12) -1331/2097152)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 x 12) 4761/1048576 (*.f64 (pow.f64 x 8) 121/16384)) (*.f64 69/1024 (*.f64 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 4761/1048576) (*.f64 (pow.f64 x 8) 121/16384)) (/.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))) 1 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8)))) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/8 x) x (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/8 (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 4)) (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 69/1024 (pow.f64 x 3)) (pow.f64 x 3) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (*.f64 x x)) (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (cbrt.f64 (pow.f64 x 8))) (cbrt.f64 (pow.f64 x 4)) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))))))

simplify190.0ms (2%)

Algorithm
egg-herbie
Rules
1124×sqr-pow_binary64
653×pow-sqr_binary64
597×cube-prod_binary64
416×fma-def_binary64
382×unpow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01684
13484
26984
319284
483484
5206384
6249384
7269384
8288784
9313884
10345384
11386184
12429084
13478684
14539384
15564984
16589984
17616184
18643384
19669784
Stop Event
node limit
Counts
190 → 189
Calls
Call 1
Inputs
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
Outputs
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(*.f64 x (*.f64 x 1/8))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 (*.f64 x x) (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x 1/8 (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 x 1/8)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 69/1024 (pow.f64 x 6))
0.1b
(*.f64 -11/128 (pow.f64 x 4))
14.7b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
25.3b
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
Compiler

Compiled 93 to 75 computations (19.4% saved)

series3.0ms (0%)

Counts
2 → 15
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
0.0ms
x
@0
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
0.0ms
x
@-inf
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
0.0ms
x
@inf
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
0.0ms
x
@0
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))

rewrite98.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
516×fma-neg_binary64
357×expm1-udef_binary64
357×log1p-udef_binary64
221×add-sqr-sqrt_binary64
213×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02149
147149
2580549
Stop Event
node limit
Counts
2 → 104
Calls
Call 1
Inputs
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (/.f64 (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2) (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2)) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3)) (/.f64 1 (+.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (*.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2)) (/.f64 1 (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (*.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6))))) (+.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3)) (+.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (*.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3)) (+.f64 (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2) (-.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (*.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2)) (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 x 6) 3) 328509/1073741824) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3))) (neg.f64 (+.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (*.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 4761/1048576 (pow.f64 x 12)) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2))) (neg.f64 (-.f64 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))) 3) (*.f64 -1331/2097152 (pow.f64 x 12))) (+.f64 (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))) (-.f64 (*.f64 (pow.f64 x 8) 121/16384) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2) (*.f64 4761/1048576 (pow.f64 x 12))) (-.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))) (*.f64 (pow.f64 x 8) 121/16384)) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6)))) (exp.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)) (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6)))) (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)) (*.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)) (pow.f64 (exp.f64 (pow.f64 x 8)) -1843/32768))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)) (pow.f64 (exp.f64 (pow.f64 x 8)) -1843/32768))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (pow.f64 (exp.f64 69/1024) (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (+.f64 1 (expm1.f64 (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)) (pow.f64 (exp.f64 (pow.f64 x 8)) -1843/32768)) (pow.f64 (exp.f64 -11/128) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)) (pow.f64 (exp.f64 (pow.f64 x 8)) -1843/32768)) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 69/1024 (pow.f64 x 6)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2) (cbrt.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 4761/1048576 (pow.f64 x 12))) (*.f64 (*.f64 x x) (cbrt.f64 69/1024)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (sqrt.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (*.f64 (pow.f64 x 3) (sqrt.f64 69/1024)) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 x 4) 1/64) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) (/.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) (cbrt.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 2)) (cbrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) (sqrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 6) 1/512) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3)) (/.f64 1 (+.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2)) (/.f64 1 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8))))) (+.f64 (*.f64 (pow.f64 x 6) 1/512) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 x 6) 1/512) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3)) (+.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 x 6) 1/512) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3)) (+.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2) (-.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2)) (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 (pow.f64 x 6) 1/512) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 3))) (neg.f64 (+.f64 (*.f64 (pow.f64 x 4) 1/64) (*.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2))) (neg.f64 (-.f64 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) 3) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 3)) (+.f64 (*.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6)))) (-.f64 (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2) (*.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2) (*.f64 (pow.f64 x 4) 1/64)) (-.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6)))) (pow.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))) 2)) (-.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (exp.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (exp.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 69/1024) (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) (pow.f64 (exp.f64 1/8) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (exp.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (+.f64 1 (expm1.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 69/1024) (pow.f64 x 6))) (exp.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6)))) (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 1/8) (*.f64 x x)) (pow.f64 (exp.f64 69/1024) (pow.f64 x 6))) (+.f64 1 (expm1.f64 (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1/8 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 x 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 1/64)) (cbrt.f64 (*.f64 x (*.f64 x 1/8))) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))) 2)) (cbrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 1/8)) (*.f64 x (sqrt.f64 1/8)) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (sqrt.f64 (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))) (*.f64 x (*.f64 x 1/8)))))))

simplify106.0ms (1.1%)

Algorithm
egg-herbie
Rules
876×fma-def_binary64
635×distribute-lft-out_binary64
535×distribute-rgt-out_binary64
520×sqr-pow_binary64
413×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024189
156189
2118189
3346189
41753189
54792189
65090189
75506189
86064189
96624189
107228189
Stop Event
node limit
Counts
119 → 118
Calls
Call 1
Inputs
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
Outputs
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024))
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(*.f64 x (*.f64 x 1/8))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 x (*.f64 x 1/8))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 x (*.f64 x 1/8) (*.f64 69/1024 (pow.f64 x 6))))
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1843/32768 (pow.f64 x 8))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024)))
(*.f64 -1843/32768 (pow.f64 x 8))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8)))
(fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 69/1024 (pow.f64 x 6) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1843/32768 (pow.f64 x 8))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 -1843/32768 (pow.f64 x 8) (*.f64 69/1024 (pow.f64 x 6))))
(fma.f64 -11/128 (pow.f64 x 4) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -1843/32768 (pow.f64 x 8))))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 (pow.f64 x 6) (fma.f64 x (*.f64 x -1843/32768) 69/1024)))

eval1.0s (10.9%)

Compiler

Compiled 27369 to 23744 computations (13.2% saved)

prune141.0ms (1.5%)

Pruning

10 alts after pruning (5 fresh and 5 done)

PrunedKeptTotal
New6785683
Fresh000
Picked011
Done145
Total67910689
Error
0b
Counts
689 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
30.3b
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
32.7b
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
30.5b
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
40.2b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
29.8b
(*.f64 1/8 (*.f64 x x))
33.1b
(-.f64 1 (sqrt.f64 1/2))
17.0b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
30.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
33.0b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
30.3b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
Compiler

Compiled 186 to 154 computations (17.2% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
0.0b
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
0.1b
(*.f64 -11/128 (pow.f64 x 4))
17.9b
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
Compiler

Compiled 43 to 33 computations (23.3% saved)

series6.0ms (0.1%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
1.0ms
x
@0
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
1.0ms
x
@-inf
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
1.0ms
x
@inf
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
1.0ms
x
@inf
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))

rewrite71.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
531×unpow-prod-down_binary64
441×log-prod_binary64
340×exp-prod_binary64
297×prod-exp_binary64
267×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
123040
2248240
Stop Event
node limit
Counts
3 → 116
Calls
Call 1
Inputs
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) -11/128) (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1) (*.f64 (pow.f64 x 4) -11/128))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2) (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2) 3) (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3) (*.f64 -1331/2097152 (pow.f64 x 12))) (+.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) (-.f64 (*.f64 121/16384 (pow.f64 x 8)) (*.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) (*.f64 121/16384 (pow.f64 x 8))) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2)) (cbrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (sqrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) -11/128))) (pow.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 x 4) 69/1024) x) (*.f64 1/8 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (pow.f64 x 4) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2)) (cbrt.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) (sqrt.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 1) (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 x) (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 1) (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (log.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1) (*.f64 (log.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (pow.f64 x 4) 69/1024) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 4) 69/1024) x (*.f64 1/8 x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 x 4) 69/1024) 1) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (sqrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2) 3) (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 328509/1073741824 (pow.f64 x 12)) 1/512) (+.f64 (pow.f64 (*.f64 (pow.f64 x 4) 69/1024) 2) (-.f64 1/64 (*.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 x 4) 69/1024) 2) 1/64) (fma.f64 (pow.f64 x 4) 69/1024 -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2)) (cbrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (sqrt.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1) 1))))))

simplify291.0ms (3.1%)

Algorithm
egg-herbie
Rules
1602×fma-def_binary64
790×sqr-pow_binary64
453×*-commutative_binary64
353×pow-sqr_binary64
338×distribute-lft-out_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
024411
156393
2115393
3289393
41093393
52772393
63885393
74097393
84338393
94646393
105010393
115461393
126622393
137169393
147833393
Stop Event
node limit
Counts
152 → 134
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
1/8
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(*.f64 69/1024 (pow.f64 x 4))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(*.f64 69/1024 (pow.f64 x 4))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (*.f64 x x) (fma.f64 x (*.f64 x -11/128) 1/8))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 69/1024 (pow.f64 x 5) (*.f64 1/8 x))
(*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))
1/8
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)
(+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))
(+.f64 1/8 (*.f64 (pow.f64 x 4) 69/1024))
(fma.f64 (pow.f64 x 4) 69/1024 1/8)

localize8.0ms (0.1%)

Compiler

Compiled 15 to 15 computations (0% saved)

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.5b
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
Compiler

Compiled 29 to 24 computations (17.2% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
0.0b
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
0.1b
(fma.f64 -11/128 (*.f64 x x) 1/8)
Compiler

Compiled 31 to 16 computations (48.4% saved)

series4.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@0
(fma.f64 -11/128 (*.f64 x x) 1/8)
0.0ms
x
@inf
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
0.0ms
x
@inf
(fma.f64 -11/128 (*.f64 x x) 1/8)
0.0ms
x
@-inf
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
0.0ms
x
@0
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))

rewrite70.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
722×pow1_binary64
673×add-log-exp_binary64
673×log1p-expm1-u_binary64
673×expm1-log1p-u_binary64
660×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0833
116333
2185733
Stop Event
node limit
Counts
3 → 52
Calls
Call 1
Inputs
(fma.f64 -11/128 (*.f64 x x) 1/8)
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/8 (*.f64 -11/128 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -11/128 (*.f64 x x)) 1) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -11/128 (*.f64 x x) 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -11/128 (*.f64 x x) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) (pow.f64 (cbrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) 2) (cbrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) (sqrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 -11/128 (*.f64 x x)) 3) 1/512) (+.f64 (*.f64 (*.f64 -11/128 (*.f64 x x)) (*.f64 -11/128 (*.f64 x x))) (-.f64 1/64 (*.f64 (*.f64 -11/128 (*.f64 x x)) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 -11/128 (*.f64 x x)) (*.f64 -11/128 (*.f64 x x))) 1/64) (-.f64 (*.f64 -11/128 (*.f64 x x)) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -11/128 (*.f64 x x)) x) (*.f64 1/8 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 -11/128 (*.f64 x x))) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 -11/128 (*.f64 x x) 1/8)) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -11/128 (*.f64 x x)) (*.f64 x x)) (*.f64 1/8 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 (fma.f64 -11/128 (*.f64 x x) 1/8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 4) (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 x) x) (fma.f64 -11/128 (*.f64 x x) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (fma.f64 -11/128 (*.f64 x x) 1/8) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))))))))

simplify219.0ms (2.3%)

Algorithm
egg-herbie
Rules
957×sqr-pow_binary64
803×unswap-sqr_binary64
635×cube-prod_binary64
540×fabs-mul_binary64
385×pow-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019351
143351
282351
3184351
4608351
51160351
62597351
72716351
82890351
93105351
103390351
113764351
124210351
134763351
145449351
155912351
166217351
176485351
186695351
196891351
207672351
Stop Event
node limit
Counts
88 → 67
Calls
Call 1
Inputs
1/8
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(*.f64 -11/128 (pow.f64 x 2))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(*.f64 -11/128 (pow.f64 x 2))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(*.f64 -11/128 (pow.f64 x 3))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(*.f64 -11/128 (pow.f64 x 3))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
Outputs
1/8
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 (*.f64 -11/128 (pow.f64 x 2)) 1/8)
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (*.f64 x x))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (*.f64 x x))
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(+.f64 1/8 (*.f64 -11/128 (pow.f64 x 2)))
(fma.f64 -11/128 (*.f64 x x) 1/8)
(fma.f64 x (*.f64 -11/128 x) 1/8)
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(*.f64 -11/128 (pow.f64 x 3))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(*.f64 -11/128 (pow.f64 x 3))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(+.f64 (*.f64 1/8 x) (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3)))
(fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x))
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
(*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8))
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 -11/128 x) 1/8)))

localize27.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.0b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
Compiler

Compiled 61 to 51 computations (16.4% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite66.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
636×log-prod_binary64
551×prod-diff_binary64
350×fma-def_binary64
254×log-div_binary64
247×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify51.0ms (0.5%)

Algorithm
egg-herbie
Rules
767×times-frac_binary64
516×associate-*l*_binary64
503×fma-def_binary64
403×associate-/l*_binary64
361×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01241102
1446914
21795839
Stop Event
node limit
Counts
50 → 59
Calls
Call 1
Inputs
(/.f64 1/4 x)
(+.f64 1/4 (*.f64 1/4 (/.f64 1 x)))
(+.f64 1/4 (+.f64 (*.f64 1/64 x) (*.f64 1/4 (/.f64 1 x))))
(+.f64 1/4 (+.f64 (*.f64 1/64 x) (+.f64 (*.f64 1/4 (/.f64 1 x)) (*.f64 1/64 (pow.f64 x 2)))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(-.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/32 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 (sqrt.f64 1/2) 3)))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (sqrt.f64 1/2)))))) (pow.f64 x 3))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(+.f64 (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))) (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x))))))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
Outputs
(/.f64 1/4 x)
(+.f64 1/4 (*.f64 1/4 (/.f64 1 x)))
(+.f64 1/4 (/.f64 1/4 x))
(+.f64 1/4 (+.f64 (*.f64 1/64 x) (*.f64 1/4 (/.f64 1 x))))
(+.f64 1/4 (fma.f64 1/64 x (/.f64 1/4 x)))
(+.f64 1/4 (fma.f64 x 1/64 (/.f64 1/4 x)))
(+.f64 1/4 (+.f64 (*.f64 1/64 x) (+.f64 (*.f64 1/4 (/.f64 1 x)) (*.f64 1/64 (pow.f64 x 2)))))
(+.f64 1/4 (+.f64 (fma.f64 1/64 x (/.f64 1/4 x)) (*.f64 1/64 (*.f64 x x))))
(+.f64 1/4 (fma.f64 x 1/64 (fma.f64 1/64 (*.f64 x x) (/.f64 1/4 x))))
(+.f64 (fma.f64 x 1/64 (/.f64 1/4 x)) (fma.f64 x (*.f64 x 1/64) 1/4))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 1/2 (+.f64 1 (sqrt.f64 1/2)))
(-.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))
(-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2))))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))
(+.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x)) (/.f64 -1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2))))))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (/.f64 -1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))
(+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/64 (*.f64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (fma.f64 1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))))
(+.f64 (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x) (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2)))))))))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/64 (*.f64 x (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (fma.f64 1/2 (sqrt.f64 1/2) 1/4)))) (-.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (fma.f64 1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1/2 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 x (fma.f64 x (sqrt.f64 1/2) x))) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/32 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (pow.f64 (sqrt.f64 1/2) 3)))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (sqrt.f64 1/2)))))) (pow.f64 x 3))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))
(+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (-.f64 (fma.f64 -1 (/.f64 (fma.f64 -1/32 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3))) (*.f64 1/4 (+.f64 (/.f64 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (+.f64 1 (sqrt.f64 1/2))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))) (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 -1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (pow.f64 x 3)) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/64 (*.f64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2))))))) (fma.f64 1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))))
(+.f64 (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))))) (/.f64 (fma.f64 -1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))) (/.f64 (*.f64 -1/4 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (+.f64 1/2 (sqrt.f64 1/2)))) (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 -3/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))))) (pow.f64 x 3))) (-.f64 (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2))))))))
(+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/64 (*.f64 x (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))))) (+.f64 (/.f64 (+.f64 (/.f64 (+.f64 (/.f64 1/256 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 -1/64 (+.f64 1 (sqrt.f64 1/2)))) (fma.f64 1/2 (sqrt.f64 1/2) 1/4)) (*.f64 (/.f64 1/4 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 -3/16 (+.f64 1/2 (sqrt.f64 1/2))) (-.f64 (/.f64 (/.f64 1/64 (fma.f64 1/2 (sqrt.f64 1/2) 1/4)) (+.f64 1/2 (sqrt.f64 1/2))) (*.f64 1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1/2 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2)))))))) (pow.f64 x 3)) (fma.f64 1/4 (/.f64 (-.f64 (/.f64 1/2 (+.f64 1/2 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1/2 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 x (fma.f64 x (sqrt.f64 1/2) x))) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 1/2 (+.f64 1 (sqrt.f64 1/2)))
(+.f64 (/.f64 1/8 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))) (+.f64 (/.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x)) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))))
(+.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2))))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2)))))))
(+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x)))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (-.f64 (+.f64 (/.f64 1/64 (*.f64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2)))))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2)))))))
(+.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2)))))))) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))
(+.f64 (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x)) (-.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/64 (*.f64 x (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (fma.f64 1/2 (sqrt.f64 1/2) 1/4)))) (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2)))))) (/.f64 (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2))) (*.f64 x x))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) x))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 2)))))) (+.f64 (*.f64 1/32 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1)))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (sqrt.f64 1/2) 1))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) x))))))))))) (*.f64 -1/4 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 1 (sqrt.f64 1/2)))) (*.f64 1/8 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2))))))) (*.f64 (+.f64 (sqrt.f64 1/2) 1) (*.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (+.f64 (+.f64 (/.f64 1/2 (*.f64 x (+.f64 1 (sqrt.f64 1/2)))) (/.f64 1/64 (*.f64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)) (*.f64 (*.f64 x x) (+.f64 1 (sqrt.f64 1/2)))))) (fma.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 3)))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))) (fma.f64 1/4 (/.f64 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 (sqrt.f64 1/2) 4)) -1/4) (+.f64 1 (sqrt.f64 1/2))) (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3)))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 1 (sqrt.f64 1/2))))))))))) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (sqrt.f64 1/2) (+.f64 1 (sqrt.f64 1/2)))))) (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (sqrt.f64 1/2))))))
(+.f64 (/.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) x) (+.f64 (fma.f64 1/32 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2))))) (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (+.f64 1/2 (sqrt.f64 1/2)) (pow.f64 x 3))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (+.f64 (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 x (+.f64 1/2 (sqrt.f64 1/2))))) (/.f64 -3/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (+.f64 1/2 (sqrt.f64 1/2)) (pow.f64 x 3)))))))) (-.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (*.f64 (*.f64 x x) (+.f64 1/4 (*.f64 1/2 (sqrt.f64 1/2)))))) (*.f64 -1/4 (/.f64 (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/8 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (*.f64 x x) (+.f64 1/2 (sqrt.f64 1/2))))))))
(+.f64 (/.f64 1/64 (*.f64 x (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (fma.f64 1/2 (sqrt.f64 1/2) 1/4)))) (+.f64 (+.f64 (/.f64 (+.f64 (/.f64 1/64 (+.f64 1 (sqrt.f64 1/2))) (/.f64 1/256 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (*.f64 (fma.f64 1/2 (sqrt.f64 1/2) 1/4) (pow.f64 x 3))) (+.f64 (*.f64 (/.f64 1/4 (+.f64 1/2 (sqrt.f64 1/2))) (+.f64 (/.f64 (-.f64 (/.f64 1/64 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (fma.f64 1/2 (sqrt.f64 1/2) 1/4))) (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2)))) (pow.f64 x 3)) (/.f64 -3/16 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (pow.f64 x 3))))) (+.f64 (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))) (-.f64 (/.f64 1/8 (*.f64 (fma.f64 x (sqrt.f64 1/2) x) (+.f64 1/2 (sqrt.f64 1/2)))) (/.f64 (/.f64 (+.f64 (/.f64 -1/8 (+.f64 1 (sqrt.f64 1/2))) (/.f64 -1/32 (*.f64 (+.f64 1 (sqrt.f64 1/2)) (+.f64 1/2 (sqrt.f64 1/2))))) (+.f64 1/2 (sqrt.f64 1/2))) (*.f64 x x)))))) (/.f64 1/2 (fma.f64 x (sqrt.f64 1/2) x))))

eval246.0ms (2.6%)

Compiler

Compiled 9908 to 8190 computations (17.3% saved)

prune75.0ms (0.8%)

Pruning

15 alts after pruning (9 fresh and 6 done)

PrunedKeptTotal
New4179426
Fresh000
Picked011
Done459
Total42115436
Error
0b
Counts
436 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
17.0b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
56.2b
(+.f64 1/4 (/.f64 1/4 x))
47.0b
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
56.3b
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
30.5b
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
30.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
30.5b
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
29.8b
(*.f64 1/8 (*.f64 x x))
33.2b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
30.3b
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
32.7b
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
55.7b
(/.f64 1/2 2)
33.1b
(-.f64 1 (sqrt.f64 1/2))
33.0b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
30.3b
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
Compiler

Compiled 280 to 213 computations (23.9% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8))
0.1b
(*.f64 (pow.f64 x 4) 69/1024)
0.1b
(*.f64 -11/128 (pow.f64 x 4))
17.9b
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
Compiler

Compiled 51 to 40 computations (21.6% saved)

series4.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@0
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
1.0ms
x
@inf
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8))
0.0ms
x
@-inf
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 (pow.f64 x 4) 69/1024)

rewrite78.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
553×log-prod_binary64
478×prod-diff_binary64
355×pow-prod-down_binary64
318×pow2_binary64
221×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01239
126739
2321839
Stop Event
node limit
Counts
3 → 101
Calls
Call 1
Inputs
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) -11/128) (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1) (*.f64 (pow.f64 x 4) -11/128))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2) (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3) (pow.f64 (*.f64 (pow.f64 x 4) -11/128) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) (-.f64 (*.f64 121/16384 (pow.f64 x 8)) (*.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) (*.f64 121/16384 (pow.f64 x 8))) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 (pow.f64 x 4) -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)) (exp.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) -11/128))) (exp.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 x 4) -11/128 (*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 x 4) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 4))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 x 4) 69/1024))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 4) 69/1024) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 4761/1048576 (pow.f64 x 8)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 69/1024)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (sqrt.f64 69/1024)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 328509/1073741824 (pow.f64 x 12)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 4761/1048576 (pow.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 69/1024) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 328509/1073741824 (pow.f64 x 12)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 4) 69/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 x 4) 69/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 x 4) 69/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 4) 69/1024)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/8) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) 1) (*.f64 (*.f64 x 1/8) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) 3) (pow.f64 (*.f64 x 1/8) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) 2) (-.f64 (pow.f64 (*.f64 x 1/8) 2) (*.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) (*.f64 x 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) 2) (pow.f64 (*.f64 x 1/8) 2)) (-.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 328509/1073741824 (pow.f64 x 12) 1/512) x) (-.f64 (fma.f64 4761/1048576 (pow.f64 x 8) 1/64) (*.f64 (pow.f64 x 4) 69/8192)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 4761/1048576 (pow.f64 x 8) -1/64) x) (fma.f64 (pow.f64 x 4) 69/1024 -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (fma.f64 328509/1073741824 (pow.f64 x 12) 1/512)) (-.f64 (fma.f64 4761/1048576 (pow.f64 x 8) 1/64) (*.f64 (pow.f64 x 4) 69/8192)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (fma.f64 4761/1048576 (pow.f64 x 8) -1/64)) (fma.f64 (pow.f64 x 4) 69/1024 -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 x 4) 69/1024 1/8)) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x 1/8)) (exp.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (pow.f64 x 4) 69/1024) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1/8 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) (*.f64 69/1024 x) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 69/1024 (*.f64 (pow.f64 x 4) x) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 4) 69/1024) x (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/8 x (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x 1/8) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) 1/8) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 (pow.f64 x 4) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 4761/1048576 (pow.f64 x 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 69/1024)) x) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) 1/8) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x 4) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (sqrt.f64 69/1024)) (*.f64 (*.f64 (*.f64 x x) (sqrt.f64 69/1024)) x) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024) 1 (*.f64 (*.f64 x 1/8) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x 1/8)) 2) (cbrt.f64 (*.f64 x 1/8)) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024)) 2) (cbrt.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x 1/8)) (sqrt.f64 (*.f64 x 1/8)) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024)) (sqrt.f64 (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/8 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/8 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 x (pow.f64 x 4)) 69/1024))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 x 4)) 69/1024 (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 69/1024) (pow.f64 x 4) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 4761/1048576 (pow.f64 x 8)))) (cbrt.f64 (*.f64 (pow.f64 x 4) 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (*.f64 x x) (sqrt.f64 69/1024))) (*.f64 (*.f64 x x) (sqrt.f64 69/1024)) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 x 4) 69/1024) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 x 4) 69/1024) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 x 1/8))))))

simplify178.0ms (1.9%)

Algorithm
egg-herbie
Rules
1603×fma-def_binary64
790×sqr-pow_binary64
461×*-commutative_binary64
353×pow-sqr_binary64
340×distribute-lft-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023390
154390
2111390
3276390
41079390
52767390
63880390
74096390
84337390
94645390
105009390
115460390
126621390
137172390
147838390
Stop Event
node limit
Counts
137 → 116
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (pow.f64 x 4) (fma.f64 x (*.f64 x 69/1024) -11/128))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (*.f64 -11/128 (pow.f64 x 4))))
(fma.f64 1/8 (*.f64 x x) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 69/1024 (pow.f64 x 6))))
(*.f64 (*.f64 x x) (fma.f64 (pow.f64 x 4) 69/1024 (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 x (*.f64 x (fma.f64 x (fma.f64 x -11/128 (*.f64 69/1024 (pow.f64 x 3))) 1/8)))
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 69/1024 (pow.f64 x 4))
(*.f64 (pow.f64 x 4) 69/1024)
(*.f64 1/8 x)
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(*.f64 69/1024 (pow.f64 x 5))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))
(+.f64 (*.f64 1/8 x) (*.f64 69/1024 (pow.f64 x 5)))
(fma.f64 1/8 x (*.f64 69/1024 (pow.f64 x 5)))

localize3.0ms (0%)

Compiler

Compiled 6 to 6 computations (0% saved)

localize8.0ms (0.1%)

Compiler

Compiled 20 to 16 computations (20% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))
0.1b
(*.f64 -11/128 (*.f64 x x))
14.8b
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
Compiler

Compiled 41 to 17 computations (58.5% saved)

series3.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@0
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
0.0ms
x
@inf
(*.f64 -11/128 (*.f64 x x))
0.0ms
x
@inf
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
0.0ms
x
@0
(*.f64 -11/128 (*.f64 x x))
0.0ms
x
@-inf
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))

rewrite149.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
515×log-prod_binary64
498×fma-def_binary64
420×prod-exp_binary64
354×exp-prod_binary64
328×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0936
120228
2269028
Stop Event
node limit
Counts
3 → 152
Calls
Call 1
Inputs
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(*.f64 -11/128 (*.f64 x x))
(*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x)))) (/.f64 (*.f64 (pow.f64 x 4) 1/64) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (fma.f64 x 1/8 (*.f64 (pow.f64 x 3) -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))) (cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 4)) (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 x) 2) (fma.f64 (*.f64 x x) -11/128 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3)) (/.f64 1 (fma.f64 (*.f64 x (*.f64 x 1/8)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (pow.f64 x 4) 1/64)) (/.f64 1 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 x x) -11/128 1/8) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x (*.f64 x 1/8)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)) (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x))) (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (pow.f64 x 4) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3)) (fma.f64 (*.f64 x (*.f64 x 1/8)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3)) (fma.f64 (pow.f64 x 4) 1/64 (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (pow.f64 x 4) 1/64)) (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3))) (neg.f64 (fma.f64 (*.f64 x (*.f64 x 1/8)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (pow.f64 x 4) 1/64))) (neg.f64 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 4) 1/64) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x (*.f64 x 1/8)) (-.f64 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)) (fma.f64 (pow.f64 x 6) 1/512 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 -11/128 (pow.f64 x 4) (*.f64 -1/8 (*.f64 x x))) (-.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) (*.f64 (pow.f64 x 4) 1/64))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8)))) 2)) (cbrt.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))) (sqrt.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (pow.f64 (exp.f64 x) (*.f64 x 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (pow.f64 (exp.f64 -11/128) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) (*.f64 x 1/8)) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x 1/8)))) (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (fma.f64 (pow.f64 x 3) -11/128 (*.f64 x 1/8))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (sqrt.f64 (fma.f64 (*.f64 x x) -11/128 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 x) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 2) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 x)) 1) (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8)) (*.f64 (log.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (fma.f64 (*.f64 x x) -11/128 1/8)) (*.f64 (*.f64 2 (log.f64 x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (pow.f64 x 3) -11/128) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 x 1/8) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 x (*.f64 x -11/128)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1/8 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -11/128 (pow.f64 x 4) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x -11/128)) (*.f64 x x) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -11/128 (pow.f64 x 4)) 1 (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x 1/8)) 1 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) -11/128 (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (*.f64 x 1/8))) (cbrt.f64 (*.f64 (pow.f64 x 4) 1/64)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 1/64)) (cbrt.f64 (*.f64 x (*.f64 x 1/8))) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 121/16384)) (*.f64 (cbrt.f64 (*.f64 x (*.f64 x -11/128))) (*.f64 x x)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 (pow.f64 x 3) -11/128)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (cbrt.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2)) (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 x) 2) 1/8) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (pow.f64 (*.f64 (cbrt.f64 x) (*.f64 x (sqrt.f64 -11/128))) 2) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 1/8)) (*.f64 x (sqrt.f64 1/8)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 -11/128)) (*.f64 (*.f64 x (sqrt.f64 -11/128)) (*.f64 x x)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 x 1/8)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x 3) -11/128)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 x (sqrt.f64 -11/128))) (*.f64 x (*.f64 x (sqrt.f64 -11/128))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x 3) -11/128) x (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x 1/8) x (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x -11/128) (pow.f64 x 3) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/8 (*.f64 (cbrt.f64 x) x)) (pow.f64 (cbrt.f64 x) 2) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (cbrt.f64 (*.f64 (pow.f64 x 4) 121/16384))) (cbrt.f64 (*.f64 x (*.f64 x -11/128))) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (*.f64 x (sqrt.f64 -11/128))) (*.f64 x (sqrt.f64 -11/128)) (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (*.f64 x -11/128)) x (*.f64 x (*.f64 x 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x (*.f64 x -11/128)) (*.f64 (cbrt.f64 x) x)) (pow.f64 (cbrt.f64 x) 2) (*.f64 x (*.f64 x 1/8)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 x -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 x -11/128))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 x -11/128)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (*.f64 x -11/128)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x -11/128)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 4) 121/16384) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sqrt.f64 -11/128)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 x -11/128))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 -11/128)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 x (*.f64 x -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 x (*.f64 x -11/128)))) 2)) (cbrt.f64 (log.f64 (*.f64 x (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 x (*.f64 x -11/128))))) (sqrt.f64 (log.f64 (*.f64 x (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 4) 121/16384))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 x -11/128)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 -11/128)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 x -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 x -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 x -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (sqrt.f64 -11/128)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (*.f64 x -11/128)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (sqrt.f64 -11/128))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 1) (log.f64 (*.f64 x -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 x -11/128)) (*.f64 (log.f64 x) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 -11/128 (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x (sqrt.f64 -11/128))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4)))) 2)) (cbrt.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4))))) (sqrt.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -11/128) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -11/128 (pow.f64 x 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -11/128 (pow.f64 x 4)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x (sqrt.f64 -11/128)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -11/128 (pow.f64 x 4)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -11/128 (pow.f64 x 4))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 1) (log.f64 (*.f64 (pow.f64 x 3) -11/128))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 2) (log.f64 (*.f64 x (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 x)) 1) (log.f64 (*.f64 x (*.f64 x -11/128)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 2 (log.f64 x)) (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 x) 2) (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 x)) 1) (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1) (*.f64 2 (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) (*.f64 (log.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1) (*.f64 (log.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) (*.f64 (*.f64 2 (log.f64 x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 x (*.f64 x -11/128))) 1) (*.f64 (*.f64 2 (log.f64 x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 (pow.f64 x 3) -11/128)) (*.f64 (log.f64 x) 1)))))))

simplify225.0ms (2.4%)

Algorithm
egg-herbie
Rules
802×fma-def_binary64
787×sqr-pow_binary64
511×pow-sqr_binary64
475×associate-*l*_binary64
446×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012315
124315
249315
3120315
4420315
51599315
63022315
73670315
83860315
94071315
104350315
114715315
125215315
135746315
146372315
157123315
167433315
177655315
187853315
197911315
207935315
Stop Event
node limit
Counts
188 → 159
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x -11/128) 1/8)))
(*.f64 x (fma.f64 -11/128 (pow.f64 x 3) (*.f64 1/8 x)))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 2))
(*.f64 (*.f64 x x) -11/128)
(*.f64 x (*.f64 x -11/128))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
0.0b
(*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8))
0.1b
(fma.f64 -11/128 (*.f64 x x) 1/8)
0.5b
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
Compiler

Compiled 58 to 33 computations (43.1% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
0.0ms
x
@inf
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
0.0ms
x
@-inf
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)

rewrite72.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
640×prod-diff_binary64
514×fma-def_binary64
456×log-prod_binary64
313×pow-prod-down_binary64
261×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify185.0ms (2%)

Algorithm
egg-herbie
Rules
1057×sqr-pow_binary64
538×fma-def_binary64
506×pow-sqr_binary64
443×cube-prod_binary64
419×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011147
122147
245147
3114147
4354147
51406147
62652147
73114147
83283147
93482147
103753147
114112147
124563147
135094147
145720147
156469147
166783147
177007147
187201147
197257147
207279147
Stop Event
node limit
Counts
112 → 105
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 1/8 (*.f64 x x))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 1/8 (*.f64 x x) (*.f64 -11/128 (pow.f64 x 4)))
(fma.f64 -11/128 (pow.f64 x 4) (*.f64 1/8 (*.f64 x x)))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) -11/128 1/8)))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) -11/128 1/8))
(*.f64 x (fma.f64 1/8 x (*.f64 -11/128 (pow.f64 x 3))))

eval191.0ms (2%)

Compiler

Compiled 8649 to 5868 computations (32.2% saved)

prune70.0ms (0.7%)

Pruning

15 alts after pruning (6 fresh and 9 done)

PrunedKeptTotal
New4612463
Fresh044
Picked101
Done1910
Total46315478
Error
0b
Counts
478 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
47.0b
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
30.3b
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
17.0b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
56.2b
(+.f64 1/4 (/.f64 1/4 x))
56.3b
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
46.3b
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
30.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
30.5b
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
29.8b
(*.f64 1/8 (*.f64 x x))
33.2b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
32.7b
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
55.7b
(/.f64 1/2 2)
33.1b
(-.f64 1 (sqrt.f64 1/2))
33.0b
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
30.3b
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
Compiler

Compiled 170 to 138 computations (18.8% saved)

regimes148.0ms (1.6%)

Counts
23 → 2
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
Calls

13 calls:

34.0ms
x
21.0ms
(/.f64 1 (hypot.f64 1 x))
17.0ms
(/.f64 1 (hypot.f64 1 x))
9.0ms
(hypot.f64 1 x)
9.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0b3x
0b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0b2(/.f64 1 (hypot.f64 1 x))
0b2(/.f64 1 (hypot.f64 1 x))
0b2(hypot.f64 1 x)
0b2(hypot.f64 1 x)
Compiler

Compiled 372 to 294 computations (21% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000373834219796
15046.337282137629
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes137.0ms (1.5%)

Counts
22 → 2
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (fma.f64 (pow.f64 x 4) 69/1024 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
Outputs
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
Calls

13 calls:

33.0ms
x
17.0ms
(/.f64 1 (hypot.f64 1 x))
17.0ms
(/.f64 1 (hypot.f64 1 x))
10.0ms
(hypot.f64 1 x)
8.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.0b3x
0.0b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.0b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.0b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.0b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.0b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.0b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.0b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.0b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.0b2(/.f64 1 (hypot.f64 1 x))
0.0b2(/.f64 1 (hypot.f64 1 x))
0.0b2(hypot.f64 1 x)
0.0b2(hypot.f64 1 x)
Compiler

Compiled 349 to 275 computations (21.2% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000373834219796
15046.337282137629
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes145.0ms (1.5%)

Counts
20 → 3
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
Outputs
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

13 calls:

32.0ms
x
18.0ms
(/.f64 1 (hypot.f64 1 x))
16.0ms
(hypot.f64 1 x)
15.0ms
(/.f64 1 (hypot.f64 1 x))
8.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.3b3x
0.4b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.4b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.4b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.4b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.4b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.4b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.4b2(/.f64 1 (hypot.f64 1 x))
0.4b2(/.f64 1 (hypot.f64 1 x))
0.4b2(hypot.f64 1 x)
0.4b2(hypot.f64 1 x)
Compiler

Compiled 316 to 248 computations (21.5% saved)

bsearch54.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
0.008646863100525986
13236867.899351172
27.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes133.0ms (1.4%)

Counts
18 → 3
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
Outputs
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

13 calls:

30.0ms
x
18.0ms
(/.f64 1 (hypot.f64 1 x))
17.0ms
(/.f64 1 (hypot.f64 1 x))
11.0ms
(hypot.f64 1 x)
8.0ms
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Results
ErrorSegmentsBranch
0.3b3x
0.4b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.4b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.4b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.4b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.4b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.4b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.4b2(/.f64 1 (hypot.f64 1 x))
0.4b2(/.f64 1 (hypot.f64 1 x))
0.4b2(hypot.f64 1 x)
0.4b2(hypot.f64 1 x)
Compiler

Compiled 283 to 222 computations (21.6% saved)

bsearch58.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
0.008646863100525986
13236867.899351172
32.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes124.0ms (1.3%)

Counts
17 → 2
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
Outputs
(*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

13 calls:

28.0ms
x
16.0ms
(/.f64 1 (hypot.f64 1 x))
15.0ms
(/.f64 1 (hypot.f64 1 x))
9.0ms
(hypot.f64 1 x)
7.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.5b3x
0.5b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.5b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.5b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.5b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.5b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.5b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.5b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.5b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.5b2(/.f64 1 (hypot.f64 1 x))
0.5b2(/.f64 1 (hypot.f64 1 x))
0.5b2(hypot.f64 1 x)
0.5b2(hypot.f64 1 x)
Compiler

Compiled 267 to 208 computations (22.1% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000373834219796
15046.337282137629
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes186.0ms (2%)

Counts
16 → 2
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(*.f64 1/8 (*.f64 x x))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

13 calls:

65.0ms
x
23.0ms
(/.f64 1 (hypot.f64 1 x))
16.0ms
(/.f64 1 (hypot.f64 1 x))
15.0ms
(hypot.f64 1 x)
12.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.5b3x
0.5b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.5b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.5b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.5b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.5b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.5b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.5b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.5b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.5b2(/.f64 1 (hypot.f64 1 x))
0.5b2(/.f64 1 (hypot.f64 1 x))
0.5b2(hypot.f64 1 x)
0.5b2(hypot.f64 1 x)
Compiler

Compiled 252 to 200 computations (20.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.0000373834219796
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes84.0ms (0.9%)

Counts
14 → 3
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (fma.f64 -11/128 (*.f64 x x) 1/8)))) 1)
Outputs
(/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2)))
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
Calls

3 calls:

47.0ms
x
15.0ms
(hypot.f64 1 x)
15.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.6b3x
0.7b2(hypot.f64 1 x)
0.7b2(hypot.f64 1 x)
Compiler

Compiled 134 to 94 computations (29.9% saved)

bsearch62.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
0.008646863100525986
13236867.899351172
24.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes74.0ms (0.8%)

Counts
11 → 2
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 2)
Outputs
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))
Calls

3 calls:

41.0ms
x
13.0ms
(hypot.f64 1 x)
12.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.7b3x
0.7b2(hypot.f64 1 x)
0.7b2(hypot.f64 1 x)
Compiler

Compiled 100 to 71 computations (29% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000373834219796
15046.337282137629
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes41.0ms (0.4%)

Counts
9 → 3
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
Outputs
(-.f64 1 (sqrt.f64 1/2))
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(-.f64 1 (sqrt.f64 1/2))
Calls

1 calls:

36.0ms
x
Results
ErrorSegmentsBranch
1.1b3x
Compiler

Compiled 77 to 51 computations (33.8% saved)

bsearch86.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
42.0ms
0.008646863100525986
13236867.899351172
43.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes37.0ms (0.4%)

Counts
8 → 3
Calls
Call 1
Inputs
(/.f64 1/2 2)
(+.f64 1/4 (/.f64 1/4 x))
(*.f64 1/8 (*.f64 x x))
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(-.f64 (+.f64 1 (*.f64 x (*.f64 x 1/8))) 1)
(*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))
(-.f64 (+.f64 1 (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8)))) 1)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
Outputs
(/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2)
(+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8))
(+.f64 1/4 (/.f64 1/4 x))
Calls

1 calls:

33.0ms
x
Results
ErrorSegmentsBranch
23.7b3x
Compiler

Compiled 73 to 47 computations (35.6% saved)

bsearch85.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
41.0ms
0.008646863100525986
13236867.899351172
43.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes26.0ms (0.3%)

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

1 calls:

23.0ms
x
Results
ErrorSegmentsBranch
23.7b3x
Compiler

Compiled 58 to 41 computations (29.3% saved)

bsearch45.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
22.0ms
0.008646863100525986
13236867.899351172
23.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes14.0ms (0.2%)

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

1 calls:

13.0ms
x
Results
ErrorSegmentsBranch
23.7b3x
Compiler

Compiled 32 to 25 computations (21.9% saved)

bsearch45.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
21.0ms
0.008646863100525986
13236867.899351172
23.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes12.0ms (0.1%)

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

1 calls:

11.0ms
x
Results
ErrorSegmentsBranch
23.7b3x
Compiler

Compiled 16 to 12 computations (25% saved)

bsearch45.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
0.008646863100525986
13236867.899351172
23.0ms
-15046.33724890695
-3.7234971168088993e-25
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes4.0ms (0%)

Accuracy

Total -0.5b remaining (-0.9%)

Threshold costs -0.5b (-0.9%)

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

1 calls:

3.0ms
x
Results
ErrorSegmentsBranch
55.7b1x
Compiler

Compiled 11 to 9 computations (18.2% saved)

simplify27.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
093655
1127655
2139655
3145655
4148655
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))) (/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 159506470655805536/18446744073709551616) (fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 1) (*.f64 1/8 (*.f64 x x)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2))) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1)))
(if (<=.f64 x -8271811380306171/549755813888) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8))) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 1/2 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(/.f64 1/2 2)
Outputs
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))) (/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4))))) (/.f64 (+.f64 1/2 (/.f64 -1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (fma.f64 x (*.f64 x (+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))) (*.f64 -11/128 (pow.f64 x 4))) (/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (fma.f64 x (*.f64 x (+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))) (*.f64 -11/128 (pow.f64 x 4))) (/.f64 (+.f64 1/2 (/.f64 -1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 159506470655805536/18446744073709551616) (fma.f64 x (*.f64 x (+.f64 (*.f64 (pow.f64 x 4) 69/1024) 1/8)) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 4984577207993923/576460752303423488) (fma.f64 x (*.f64 x (+.f64 1/8 (*.f64 69/1024 (pow.f64 x 4)))) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (if (<=.f64 x 4984577207993923/576460752303423488) (*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(if (<=.f64 (hypot.f64 1 x) 2) (*.f64 x (*.f64 x (fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 69/1024) -11/128) 1/8))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 1) (*.f64 1/8 (*.f64 x x)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2))) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 1/2 x)) (+.f64 1 (sqrt.f64 1/2))) (if (<=.f64 x 4984577207993923/576460752303423488) (+.f64 (*.f64 1/8 (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))) (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2)))))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (/.f64 1/2 (+.f64 (sqrt.f64 1/2) 1)))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))) (/.f64 1/2 (+.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -8271811380306171/549755813888) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -8271811380306171/549755813888) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 4984577207993923/576460752303423488) (+.f64 (*.f64 1/8 (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (+.f64 (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x))) (*.f64 (*.f64 x x) 1/8)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 4984577207993923/576460752303423488) (+.f64 (*.f64 1/8 (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 -11/128 (*.f64 x x)))) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 x (*.f64 x (+.f64 (*.f64 -11/128 (*.f64 x x)) 1/8))) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 4984577207993923/576460752303423488) (*.f64 x (*.f64 x (+.f64 1/8 (*.f64 -11/128 (*.f64 x x))))) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 (+.f64 1/2 (/.f64 -1/2 x)) 2) (if (<=.f64 x 4984577207993923/576460752303423488) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) (/.f64 1/2 2) (if (<=.f64 x 159506470655805536/18446744073709551616) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(if (<=.f64 x -8271811380306171/549755813888) 1/4 (if (<=.f64 x 4984577207993923/576460752303423488) (*.f64 1/8 (*.f64 x x)) (+.f64 1/4 (/.f64 1/4 x))))
(/.f64 1/2 2)
1/4
Compiler

Compiled 460 to 353 computations (23.3% saved)

soundness24.0ms (0.3%)

Algorithm
egg-herbie
Rules
sub-neg_binary64
fma-def_binary64
sub-neg_binary64
fma-def_binary64
+-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12215
22915
33715
44415
55415
66515
77715
88015
01018
12215
22915
33715
44415
55415
66515
77715
88015
Stop Event
saturated
saturated
Compiler

Compiled 134 to 124 computations (7.5% saved)

end216.0ms (2.3%)

Compiler

Compiled 447 to 331 computations (26% saved)

Profiling

Loading profile data...