Details

Time bar (total: 1.8s)

analyze4.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
75%25%0%4
87.5%12.5%0%5
93.7%6.2%0%6
96.8%3.1%0%7
98.4%1.6%0%8
99.2%0.8%0%9
99.6%0.4%0%10
99.8%0.2%0%11
99.8%0.1%0.1%12
99.8%0%0.1%13
99.8%0%0.2%14
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample715.0ms (40.4%)

Results
701.0ms8253×body128valid
0.0msbody512valid
0.0msbody1024valid
0.0msbody128invalid
Compiler

Compiled 22 to 20 computations (9.1% saved)

preprocess13.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0125
1155
2165
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(+.f64 (*.f64 (/.f64 841 108) x) (/.f64 4 29))
Outputs
(+.f64 (*.f64 (/.f64 841 108) x) (/.f64 4 29))
(fma.f64 841/108 x 4/29)
Compiler

Compiled 10 to 9 computations (10% saved)

simplify11.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0125
1155
2165
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 841 108) x) (/.f64 4 29))
Outputs
(+.f64 (*.f64 (/.f64 841 108) x) (/.f64 4 29))
(fma.f64 841/108 x 4/29)

prune2.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 841/108 x 4/29)
Compiler

Compiled 24 to 20 computations (16.7% saved)

localize2.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 841/108 x 4/29)

series2.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(fma.f64 841/108 x 4/29)
1.0ms
x
@inf
(fma.f64 841/108 x 4/29)
0.0ms
x
@0
(fma.f64 841/108 x 4/29)

rewrite34.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
434×pow1_binary64
407×add-log-exp_binary64
407×log1p-expm1-u_binary64
407×expm1-log1p-u_binary64
401×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055
11025
210725
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 841/108 x 4/29)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 4/29 (*.f64 841/108 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 841/108 x) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 841/108 x) 1) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 841/108 x 4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 841/108 x 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)) (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) 16/841) (-.f64 (*.f64 841/108 x) 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 841/108 x 4/29)))))))

simplify7.0ms (0.4%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0672
1854
21054
Stop Event
saturated
Counts
33 → 24
Calls
Call 1
Inputs
4/29
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
Outputs
4/29
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(fma.f64 841/108 x 4/29)

prune16.0ms (0.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New21324
Fresh000
Picked011
Done000
Total21425
Error
0.1b
Counts
25 → 4
Alt Table
StatusErrorProgram
18.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)))
0.1b
(fma.f64 841/108 x 4/29)
16.6b
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
23.3b
(/.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))
Compiler

Compiled 284 to 238 computations (16.2% saved)

localize4.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fma.f64 841/108 x 4/29))
0.1b
(fma.f64 841/108 x 4/29)
0.1b
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)

series13.0ms (0.7%)

Counts
2 → 8
Calls

6 calls:

TimeVariablePointExpression
8.0ms
x
@0
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
2.0ms
x
@inf
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.0ms
x
@inf
(sqrt.f64 (fma.f64 841/108 x 4/29))
1.0ms
x
@-inf
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.0ms
x
@-inf
(sqrt.f64 (fma.f64 841/108 x 4/29))

rewrite35.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
580×pow1_binary64
545×add-log-exp_binary64
545×log1p-expm1-u_binary64
545×expm1-log1p-u_binary64
535×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
116712
2150212
Stop Event
node limit
Counts
2 → 42
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
(sqrt.f64 (fma.f64 841/108 x 4/29))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 4/29 (*.f64 841/108 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 841/108 x) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 841/108 x) 1) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 841/108 x 4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 841/108 x 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))) (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2) (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (fma.f64 841/108 x 4/29) 1/4)) (pow.f64 (fma.f64 841/108 x 4/29) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) 16/841) (-.f64 (*.f64 841/108 x) 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 841/108 x 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 841/108 x 4/29)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (fma.f64 841/108 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (pow.f64 (fma.f64 841/108 x 4/29) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 841/108 x 4/29))))))))

simplify31.0ms (1.8%)

Algorithm
egg-herbie
Rules
846×fma-neg_binary64
542×times-frac_binary64
389×associate-/l*_binary64
324×fma-def_binary64
259×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
029136
181100
222098
379486
4452786
Stop Event
node limit
Counts
50 → 52
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 4/29) 2)
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(sqrt.f64 4/29)
(+.f64 (sqrt.f64 4/29) (*.f64 841/216 (/.f64 x (sqrt.f64 4/29))))
(-.f64 (+.f64 (sqrt.f64 4/29) (*.f64 841/216 (/.f64 x (sqrt.f64 4/29)))) (*.f64 707281/93312 (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 4/29) 3))))
(-.f64 (+.f64 (sqrt.f64 4/29) (+.f64 (*.f64 841/216 (/.f64 x (sqrt.f64 4/29))) (*.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5))))) (*.f64 707281/93312 (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 4/29) 3))))
Outputs
(pow.f64 (sqrt.f64 4/29) 2)
4/29
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(+.f64 (*.f64 841/108 x) (pow.f64 (sqrt.f64 4/29) 2))
(fma.f64 841/108 x 4/29)
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(+.f64 (*.f64 841/108 x) (pow.f64 (sqrt.f64 4/29) 2))
(fma.f64 841/108 x 4/29)
(+.f64 (pow.f64 (sqrt.f64 4/29) 2) (*.f64 841/108 x))
(+.f64 (*.f64 841/108 x) (pow.f64 (sqrt.f64 4/29) 2))
(fma.f64 841/108 x 4/29)
(sqrt.f64 4/29)
(+.f64 (sqrt.f64 4/29) (*.f64 841/216 (/.f64 x (sqrt.f64 4/29))))
(fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (sqrt.f64 4/29))
(-.f64 (+.f64 (sqrt.f64 4/29) (*.f64 841/216 (/.f64 x (sqrt.f64 4/29)))) (*.f64 707281/93312 (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 4/29) 3))))
(+.f64 (sqrt.f64 4/29) (-.f64 (*.f64 841/216 (/.f64 x (sqrt.f64 4/29))) (*.f64 707281/93312 (/.f64 (*.f64 x x) (pow.f64 (sqrt.f64 4/29) 3)))))
(-.f64 (fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (sqrt.f64 4/29)) (*.f64 20511149/373248 (/.f64 (*.f64 x x) (sqrt.f64 4/29))))
(+.f64 (sqrt.f64 4/29) (fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (*.f64 -20511149/373248 (/.f64 x (/.f64 (sqrt.f64 4/29) x)))))
(+.f64 (sqrt.f64 4/29) (*.f64 (/.f64 x (sqrt.f64 4/29)) (-.f64 841/216 (/.f64 x 373248/20511149))))
(-.f64 (+.f64 (sqrt.f64 4/29) (+.f64 (*.f64 841/216 (/.f64 x (sqrt.f64 4/29))) (*.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5))))) (*.f64 707281/93312 (/.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 4/29) 3))))
(+.f64 (sqrt.f64 4/29) (-.f64 (fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (*.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5)))) (*.f64 707281/93312 (/.f64 (*.f64 x x) (pow.f64 (sqrt.f64 4/29) 3)))))
(+.f64 (fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (sqrt.f64 4/29)) (-.f64 (*.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5))) (*.f64 20511149/373248 (/.f64 (*.f64 x x) (sqrt.f64 4/29)))))
(+.f64 (sqrt.f64 4/29) (fma.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5)) (fma.f64 841/216 (/.f64 x (sqrt.f64 4/29)) (*.f64 -20511149/373248 (/.f64 x (/.f64 (sqrt.f64 4/29) x))))))
(+.f64 (sqrt.f64 4/29) (fma.f64 594823321/20155392 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 4/29) 5)) (*.f64 (/.f64 x (sqrt.f64 4/29)) (-.f64 841/216 (/.f64 x 373248/20511149)))))

prune56.0ms (3.2%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New73376
Fresh022
Picked011
Done011
Total73780
Error
0.0b
Counts
80 → 7
Alt Table
StatusErrorProgram
18.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)))
0.1b
(fma.f64 841/108 x 4/29)
17.8b
(pow.f64 (*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)))) 2)
17.1b
(*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (sqrt.f64 (fma.f64 841/108 x 4/29))))
1.8b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
16.6b
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
23.3b
(/.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))
Compiler

Compiled 1026 to 891 computations (13.2% saved)

localize6.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 841/108 x 4/29)
0.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
0.8b
(cbrt.f64 (fma.f64 841/108 x 4/29))
0.8b
(pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)

series8.0ms (0.5%)

Counts
3 → 20
Calls

9 calls:

TimeVariablePointExpression
2.0ms
x
@0
(pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.0ms
x
@inf
(pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.0ms
x
@-inf
(pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.0ms
x
@0
(cbrt.f64 (fma.f64 841/108 x 4/29))
0.0ms
x
@-inf
(cbrt.f64 (fma.f64 841/108 x 4/29))

rewrite42.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
636×pow1_binary64
597×add-log-exp_binary64
597×log1p-expm1-u_binary64
597×expm1-log1p-u_binary64
76×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0922
118522
2169122
Stop Event
node limit
Counts
3 → 56
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)
(cbrt.f64 (fma.f64 841/108 x 4/29))
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (fma.f64 841/108 x 4/29) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) (sqrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) (pow.f64 (fma.f64 841/108 x 4/29) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 1/3) (pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 4/29 (*.f64 841/108 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 841/108 x) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 841/108 x) 1) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 841/108 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) 16/841) (-.f64 (*.f64 841/108 x) 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 841/108 x 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 841/108 x 4/29)))))))

simplify26.0ms (1.5%)

Algorithm
egg-herbie
Rules
492×times-frac_binary64
385×cancel-sign-sub-inv_binary64
285×*-commutative_binary64
272×associate-/l*_binary64
242×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
050304
1141284
2409269
31622264
Stop Event
node limit
Counts
76 → 74
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 4/29) 2)
(+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (pow.f64 (cbrt.f64 4/29) 2))
(-.f64 (+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (pow.f64 (cbrt.f64 4/29) 2)) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4)) 1/3) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (+.f64 (pow.f64 (cbrt.f64 4/29) 2) (*.f64 17249876309/102036672 (pow.f64 x 3)))) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4)) 1/3) (pow.f64 x 2))))
(cbrt.f64 4/29)
(+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29))
(-.f64 (+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29)) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)) 1/3) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2974116605/102036672 (/.f64 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 4))) (+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29))) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)) 1/3) (pow.f64 x 2))))
4/29
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
Outputs
(pow.f64 (cbrt.f64 4/29) 2)
(+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (pow.f64 (cbrt.f64 4/29) 2))
(fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (pow.f64 (cbrt.f64 4/29) 2))
(fma.f64 (cbrt.f64 (cbrt.f64 4/29)) (*.f64 841/162 x) (pow.f64 (cbrt.f64 4/29) 2))
(-.f64 (+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (pow.f64 (cbrt.f64 4/29) 2)) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4)) 1/3) (pow.f64 x 2))))
(+.f64 (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (pow.f64 (cbrt.f64 4/29) 2)) (*.f64 -707281/104976 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4))) (*.f64 x x))))
(+.f64 (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (pow.f64 (cbrt.f64 4/29) 2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4))) (*.f64 x x)) -707281/104976))
(fma.f64 (*.f64 (*.f64 x x) -707281/104976) (cbrt.f64 (/.f64 29/4 (cbrt.f64 4/29))) (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (pow.f64 (cbrt.f64 4/29) 2)))
(+.f64 (pow.f64 (cbrt.f64 4/29) 2) (*.f64 x (fma.f64 841/162 (cbrt.f64 (cbrt.f64 4/29)) (*.f64 x (*.f64 (cbrt.f64 (/.f64 29/4 (cbrt.f64 4/29))) -707281/104976)))))
(-.f64 (+.f64 (*.f64 841/162 (*.f64 (pow.f64 (cbrt.f64 4/29) 1/3) x)) (+.f64 (pow.f64 (cbrt.f64 4/29) 2) (*.f64 17249876309/102036672 (pow.f64 x 3)))) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4)) 1/3) (pow.f64 x 2))))
(+.f64 (+.f64 (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (pow.f64 (cbrt.f64 4/29) 2)) (*.f64 17249876309/102036672 (pow.f64 x 3))) (*.f64 -707281/104976 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4))) (*.f64 x x))))
(+.f64 (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (fma.f64 17249876309/102036672 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 2))) (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 4))) (*.f64 x x)) -707281/104976))
(fma.f64 (*.f64 (cbrt.f64 (/.f64 29/4 (cbrt.f64 4/29))) (*.f64 x x)) -707281/104976 (fma.f64 841/162 (*.f64 (cbrt.f64 (cbrt.f64 4/29)) x) (fma.f64 17249876309/102036672 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 2))))
(+.f64 (pow.f64 (cbrt.f64 4/29) 2) (*.f64 x (+.f64 (*.f64 841/162 (cbrt.f64 (cbrt.f64 4/29))) (*.f64 x (fma.f64 x 17249876309/102036672 (*.f64 (cbrt.f64 (/.f64 29/4 (cbrt.f64 4/29))) -707281/104976))))))
(cbrt.f64 4/29)
(+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29))
(fma.f64 841/324 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29))
(fma.f64 x (*.f64 841/324 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29))
(-.f64 (+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29)) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)) 1/3) (pow.f64 x 2))))
(+.f64 (fma.f64 841/324 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29)) (*.f64 -707281/104976 (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7))))))
(+.f64 (fma.f64 841/324 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29)) (*.f64 (*.f64 -707281/104976 (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)))))
(fma.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7))) -707281/104976) (*.f64 x x) (fma.f64 x (*.f64 841/324 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29)))
(+.f64 (cbrt.f64 4/29) (*.f64 x (fma.f64 841/324 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2))) (*.f64 -707281/104976 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7))))))))
(-.f64 (+.f64 (*.f64 2974116605/102036672 (/.f64 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 4))) (+.f64 (*.f64 841/324 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)) 1/3) x)) (cbrt.f64 4/29))) (*.f64 707281/104976 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)) 1/3) (pow.f64 x 2))))
(+.f64 (fma.f64 2974116605/102036672 (/.f64 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 4)) (fma.f64 841/324 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29))) (*.f64 -707281/104976 (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7))))))
(+.f64 (fma.f64 2974116605/102036672 (/.f64 (pow.f64 x 3) (pow.f64 (cbrt.f64 4/29) 4)) (fma.f64 841/324 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2)))) (cbrt.f64 4/29))) (*.f64 (*.f64 -707281/104976 (*.f64 x x)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)))))
(fma.f64 (*.f64 (*.f64 x x) -707281/104976) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2))) (*.f64 x 841/324) (+.f64 (cbrt.f64 4/29) (*.f64 (/.f64 (pow.f64 x 3) (cbrt.f64 4/29)) 86249381545/408146688))))
(+.f64 (/.f64 (pow.f64 x 3) (/.f64 (cbrt.f64 4/29) 86249381545/408146688)) (+.f64 (cbrt.f64 4/29) (*.f64 x (fma.f64 841/324 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 2))) (*.f64 -707281/104976 (*.f64 x (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 4/29) 7)))))))))
4/29
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(*.f64 841/108 x)
(*.f64 x 841/108)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(*.f64 841/108 x)
(*.f64 x 841/108)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)

prune113.0ms (6.4%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1482150
Fresh134
Picked011
Done022
Total1498157
Error
0.0b
Counts
157 → 8
Alt Table
StatusErrorProgram
18.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)))
1.6b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))
0.1b
(fma.f64 841/108 x 4/29)
17.1b
(*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (sqrt.f64 (fma.f64 841/108 x 4/29))))
1.8b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
16.6b
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
23.3b
(/.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))
1.8b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
Compiler

Compiled 2850 to 2484 computations (12.8% saved)

localize9.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))
0.3b
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)
0.3b
(cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))
0.8b
(cbrt.f64 (fma.f64 841/108 x 4/29))

series9.0ms (0.5%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
3.0ms
x
@inf
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)
2.0ms
x
@inf
(cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))
1.0ms
x
@-inf
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)
1.0ms
x
@0
(cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))
1.0ms
x
@-inf
(cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))

rewrite47.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
787×log1p-expm1-u_binary64
787×expm1-log1p-u_binary64
103×add-sqr-sqrt_binary64
98×add-cube-cbrt_binary64
98×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01226
124826
2245226
Stop Event
node limit
Counts
3 → 63
Calls
Call 1
Inputs
(cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) 1/3) (pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/6) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6) (pow.f64 (fma.f64 841/108 x 4/29) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6) (*.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 1/6) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) 2)) (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 4/29 (*.f64 841/108 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 841/108 x) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 841/108 x) 1) 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 841/108 x 4/29))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) 16/841) (-.f64 (*.f64 841/108 x) 4/29))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 841/108 x 4/29) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 841/108 x 4/29))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 841/108 x 4/29)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 841/108 x 4/29)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 841/108 x 4/29)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 841/108 x 4/29)))))))

simplify48.0ms (2.7%)

Algorithm
egg-herbie
Rules
555×fma-neg_binary64
420×unswap-sqr_binary64
410×fma-def_binary64
275×associate-*r*_binary64
250×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01081266
13131186
2978916
33913916
Stop Event
node limit
Counts
99 → 115
Calls
Call 1
Inputs
(pow.f64 4/29 1/9)
(+.f64 (pow.f64 4/29 1/9) (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x)))
(-.f64 (+.f64 (pow.f64 4/29 1/9) (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x))) (*.f64 594823321/3779136 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 2))))
(-.f64 (+.f64 (pow.f64 4/29 1/9) (+.f64 (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x)) (*.f64 246621481589773/44079842304 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 3))))) (*.f64 594823321/3779136 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 2))))
(exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x)))))
(+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x)))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (+.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (*.f64 2506752/14507145975869 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 3))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 2))))
(exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))
(+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2506752/14507145975869 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 3))) (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 2))))
(pow.f64 16/841 1/9)
(+.f64 (pow.f64 16/841 1/9) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x)))
(-.f64 (+.f64 (pow.f64 16/841 1/9) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x))) (*.f64 4163763247/15116544 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 2))))
(-.f64 (+.f64 (pow.f64 16/841 1/9) (+.f64 (*.f64 101550021831083/11019960576 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 3))) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x)))) (*.f64 4163763247/15116544 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 2))))
(pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2)
(+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2))
(-.f64 (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2)) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (+.f64 (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 3))) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 2))))
(pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x)))
(-.f64 (+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 2))))
(-.f64 (+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x)) (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 3))))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 2))))
4/29
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(*.f64 841/108 x)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 841/108 x))
Outputs
(pow.f64 4/29 1/9)
(*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18))
(+.f64 (pow.f64 4/29 1/9) (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x)))
(+.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 24389/3888 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) x)))
(fma.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18) (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 x 24389/3888)))
(*.f64 (+.f64 (*.f64 24389/3888 x) 1) (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)))
(-.f64 (+.f64 (pow.f64 4/29 1/9) (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x))) (*.f64 594823321/3779136 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 2))))
(+.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (-.f64 (*.f64 24389/3888 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) x)) (*.f64 594823321/3779136 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 x x)))))
(fma.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18) (fma.f64 24389/3888 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) x) (*.f64 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 x x)) -594823321/3779136)))
(fma.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18) (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (+.f64 (*.f64 24389/3888 x) (*.f64 (*.f64 x x) -594823321/3779136))))
(-.f64 (+.f64 (pow.f64 4/29 1/9) (+.f64 (*.f64 24389/3888 (*.f64 (pow.f64 4/29 1/9) x)) (*.f64 246621481589773/44079842304 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 3))))) (*.f64 594823321/3779136 (*.f64 (pow.f64 4/29 1/9) (pow.f64 x 2))))
(+.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (-.f64 (fma.f64 24389/3888 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) x) (*.f64 246621481589773/44079842304 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (pow.f64 x 3)))) (*.f64 594823321/3779136 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 x x)))))
(+.f64 (fma.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18) (fma.f64 24389/3888 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) x) (*.f64 246621481589773/44079842304 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (pow.f64 x 3))))) (*.f64 (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (*.f64 x x)) -594823321/3779136))
(+.f64 (*.f64 (+.f64 (*.f64 24389/3888 x) 1) (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18))) (*.f64 (*.f64 (pow.f64 4/29 1/18) (pow.f64 4/29 1/18)) (-.f64 (*.f64 246621481589773/44079842304 (pow.f64 x 3)) (*.f64 x (*.f64 x 594823321/3779136)))))
(exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x)))))
(pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x))))
(pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x)))
(+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))))
(fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))))
(fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x)))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 2))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x))))) (*.f64 -9216/594823321 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) (*.f64 x x))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (*.f64 x x)) -9216/594823321))
(+.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (-.f64 48/24389 (/.f64 9216/594823321 x))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) x)) (+.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (*.f64 2506752/14507145975869 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 3))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) (pow.f64 x 2))))
(+.f64 (+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x))))) (/.f64 (*.f64 2506752/14507145975869 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x))))) (pow.f64 x 3))) (*.f64 -9216/594823321 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) (*.f64 x x))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (fma.f64 2506752/14507145975869 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (pow.f64 x 3)) (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (*.f64 x x)) -9216/594823321))
(+.f64 (fma.f64 2506752/14507145975869 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (pow.f64 x 3)) (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (-.f64 48/24389 (/.f64 9216/594823321 x))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) x) (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) (*.f64 x x)) (+.f64 (/.f64 2506752/14507145975869 x) -9216/594823321)))
(exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))
(pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))))
(fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))
(-.f64 (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 2))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (*.f64 -9216/594823321 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x))))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) -9216/594823321))
(+.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (-.f64 48/24389 (/.f64 9216/594823321 x))))
(-.f64 (+.f64 (*.f64 2506752/14507145975869 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 3))) (+.f64 (*.f64 48/24389 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) x)) (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))))) (*.f64 9216/594823321 (/.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (pow.f64 x 2))))
(+.f64 (fma.f64 2506752/14507145975869 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))) (*.f64 -9216/594823321 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x))))
(+.f64 (fma.f64 2506752/14507145975869 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) -9216/594823321))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) (-.f64 (/.f64 2506752/14507145975869 x) 9216/594823321)))
(+.f64 (fma.f64 48/24389 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) x) (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) (*.f64 (/.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) (*.f64 x x)) (+.f64 (/.f64 2506752/14507145975869 x) -9216/594823321)))
(pow.f64 16/841 1/9)
(*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))
(+.f64 (pow.f64 16/841 1/9) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x)))
(+.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) (*.f64 24389/1944 (*.f64 x (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)))))
(fma.f64 24389/1944 (*.f64 x (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)))
(*.f64 (+.f64 (*.f64 x 24389/1944) 1) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)))
(-.f64 (+.f64 (pow.f64 16/841 1/9) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x))) (*.f64 4163763247/15116544 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 2))))
(+.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) (-.f64 (*.f64 24389/1944 (*.f64 x (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)))) (*.f64 4163763247/15116544 (*.f64 (*.f64 x x) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))))))
(fma.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18) (fma.f64 24389/1944 (*.f64 x (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))) (*.f64 (*.f64 (pow.f64 16/841 1/18) (*.f64 (pow.f64 16/841 1/18) (*.f64 x x))) -4163763247/15116544)))
(fma.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18) (*.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) (+.f64 (*.f64 x 24389/1944) (*.f64 (*.f64 x x) -4163763247/15116544))))
(-.f64 (+.f64 (pow.f64 16/841 1/9) (+.f64 (*.f64 101550021831083/11019960576 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 3))) (*.f64 24389/1944 (*.f64 (pow.f64 16/841 1/9) x)))) (*.f64 4163763247/15116544 (*.f64 (pow.f64 16/841 1/9) (pow.f64 x 2))))
(+.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) (-.f64 (fma.f64 101550021831083/11019960576 (*.f64 (pow.f64 x 3) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))) (*.f64 24389/1944 (*.f64 x (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))))) (*.f64 4163763247/15116544 (*.f64 (*.f64 x x) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))))))
(+.f64 (fma.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18) (fma.f64 (*.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) 24389/1944) x (*.f64 (pow.f64 x 3) (*.f64 (*.f64 101550021831083/11019960576 (pow.f64 16/841 1/18)) (pow.f64 16/841 1/18))))) (*.f64 (*.f64 (pow.f64 16/841 1/18) (*.f64 (pow.f64 16/841 1/18) (*.f64 x x))) -4163763247/15116544))
(+.f64 (*.f64 (+.f64 (*.f64 x 24389/1944) 1) (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18))) (*.f64 (*.f64 (pow.f64 16/841 1/18) (pow.f64 16/841 1/18)) (-.f64 (*.f64 (pow.f64 x 3) 101550021831083/11019960576) (*.f64 x (*.f64 x 4163763247/15116544)))))
(pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2)
(pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2)
(exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9))
(+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2))
(fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) x) (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2))
(fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2) x) (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2))
(fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) x) (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)))
(-.f64 (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2)) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 2))))
(+.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) x) (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2)) (*.f64 -16128/594823321 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) (*.f64 x x))))
(+.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2) x) (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2)) (/.f64 (*.f64 -16128/594823321 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2)) (*.f64 x x)))
(+.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) (*.f64 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) x) (-.f64 96/24389 (/.f64 16128/594823321 x))))
(-.f64 (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) x)) (+.f64 (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 3))) (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 841/108) (log.f64 (/.f64 1 x))))) 2) (pow.f64 x 2))))
(+.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) x) (fma.f64 4128768/14507145975869 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2))) (*.f64 -16128/594823321 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 841/108) (neg.f64 (log.f64 x)))) 2) (*.f64 x x))))
(+.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2) x) (fma.f64 4128768/14507145975869 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2))) (/.f64 (*.f64 -16128/594823321 (pow.f64 (pow.f64 (exp.f64 1/9) (+.f64 (log.f64 841/108) (log.f64 x))) 2)) (*.f64 x x)))
(+.f64 (fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) x) (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9))) (*.f64 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) (*.f64 x x)) (-.f64 (/.f64 4128768/14507145975869 x) 16128/594823321)))
(+.f64 (fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) x) (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9))) (*.f64 (/.f64 (exp.f64 (*.f64 (+.f64 (log.f64 841/108) (log.f64 x)) 2/9)) (*.f64 x x)) (+.f64 (/.f64 4128768/14507145975869 x) -16128/594823321)))
(pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2)
(exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x)))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x)))
(fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x) (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2))
(fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) x) (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)))
(-.f64 (+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 2))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (-.f64 (*.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x)) (*.f64 16128/594823321 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x) (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)) -16128/594823321)))
(+.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) x) (-.f64 96/24389 (/.f64 16128/594823321 x))))
(-.f64 (+.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (+.f64 (*.f64 96/24389 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) x)) (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 3))))) (*.f64 16128/594823321 (/.f64 (pow.f64 (exp.f64 (*.f64 1/9 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))))) 2) (pow.f64 x 2))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (-.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x) (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (pow.f64 x 3)))) (*.f64 16128/594823321 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)))))
(+.f64 (fma.f64 96/24389 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) x) (*.f64 4128768/14507145975869 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (pow.f64 x 3)))) (-.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 16128/594823321 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/9) (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)))))
(+.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) (fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) x) (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) (*.f64 x x)) (-.f64 (/.f64 4128768/14507145975869 x) 16128/594823321))))
(+.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) (fma.f64 96/24389 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) x) (*.f64 (/.f64 (exp.f64 (*.f64 (-.f64 (log.f64 -841/108) (log.f64 (/.f64 -1 x))) 2/9)) (*.f64 x x)) (+.f64 (/.f64 4128768/14507145975869 x) -16128/594823321))))
4/29
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(*.f64 841/108 x)
(*.f64 x 841/108)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(*.f64 841/108 x)
(*.f64 x 841/108)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)
(+.f64 4/29 (*.f64 841/108 x))
(+.f64 4/29 (*.f64 x 841/108))
(fma.f64 x 841/108 4/29)

prune275.0ms (15.5%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New2732275
Fresh044
Picked101
Done033
Total2749283
Error
0.0b
Counts
283 → 9
Alt Table
StatusErrorProgram
23.3b
(/.f64 (+.f64 (pow.f64 (*.f64 841/108 x) 3) 64/24389) (+.f64 (*.f64 (*.f64 841/108 x) (*.f64 841/108 x)) (-.f64 16/841 (*.f64 (*.f64 841/108 x) 4/29))))
1.7b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))
18.2b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (cbrt.f64 (pow.f64 (fma.f64 841/108 x 4/29) 2)))
0.1b
(fma.f64 841/108 x 4/29)
17.1b
(*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (*.f64 (pow.f64 (fma.f64 841/108 x 4/29) 1/4) (sqrt.f64 (fma.f64 841/108 x 4/29))))
1.8b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
16.6b
(pow.f64 (sqrt.f64 (fma.f64 841/108 x 4/29)) 2)
1.6b
(*.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 4)) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) (cbrt.f64 (fma.f64 841/108 x 4/29)))))
1.8b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29))) 2) (cbrt.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)))) (pow.f64 (cbrt.f64 (fma.f64 841/108 x 4/29)) 2))
Compiler

Compiled 9743 to 8436 computations (13.4% saved)

regimes85.0ms (4.8%)

Accuracy

Total 0.0b remaining (48.9%)

Threshold costs 0.0b (48.9%)

Counts
29 → 1
Compiler

Compiled 576 to 494 computations (14.2% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 841/108 x 4/29)
Outputs
(fma.f64 841/108 x 4/29)

end154.0ms (8.7%)

Stop Event
fuel
Compiler

Compiled 191 to 164 computations (14.1% saved)

Profiling

Loading profile data...