Details

Time bar (total: 26.0s)

analyze0.0ms (0%)

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

Compiled 17 to 13 computations (23.5% saved)

sample2.1s (8%)

Results
1.4s4103×body1024valid
356.0ms2101×body512valid
158.0ms1621×body256valid
146.0ms431×body2048valid
Bogosity

preprocess4.0ms (0%)

Algorithm
egg-herbie
Rules
rational.json-simplify-17
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
11327
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Outputs
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 11 to 9 computations (18.2% saved)

simplify8.0ms (0%)

Algorithm
egg-herbie
Rules
rational.json-simplify-17
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
11327
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Outputs
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))

eval1.0ms (0%)

Compiler

Compiled 19 to 15 computations (21.1% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 10 to 8 computations (20% saved)

localize11.0ms (0%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 20 computations (25.9% saved)

series9.0ms (0%)

Counts
3 → 12
Calls

9 calls:

TimeVariablePointExpression
5.0ms
x
@inf
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
2.0ms
x
@-inf
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0ms
x
@0
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0ms
x
@-inf
(sqrt.f64 (-.f64 1 x))
0.0ms
x
@inf
(sqrt.f64 (-.f64 1 x))

rewrite110.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1538×rational.json-simplify-35
1444×exponential.json-3
1444×rational.json-1
1444×rational.json-2
1444×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01149
17949
216349
331349
458249
5130449
6287849
7484649
8674549
Stop Event
node limit
Counts
3 → 89
Calls
Call 1
Inputs
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
(sqrt.f64 (-.f64 1 x))
(sqrt.f64 (-.f64 x -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (-.f64 1 x))) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (-.f64 1 x))) (+.f64 (sqrt.f64 (+.f64 x 1)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) 1) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) -1) (+.f64 1 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) (/.f64 (sqrt.f64 (-.f64 1 x)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 1/2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (-.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (-.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (-.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 1 x)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 x 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 x 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 x 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 x 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x 1)) 1)))))

simplify172.0ms (0.7%)

Algorithm
egg-herbie
Rules
1854×rational.json-simplify-35
1522×rational.json-simplify-51
1392×rational.json-simplify-52
1070×rational.json-simplify-1
900×rational.json-simplify-45
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01952483
14131967
210851967
328421967
450831967
561191967
673221967
779361967
Stop Event
node limit
Counts
101 → 127
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)))
1
(+.f64 (*.f64 -1/2 x) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 -1/16 (pow.f64 x 3)) 1)))
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(+.f64 -1 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 0)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 1 x))) (sqrt.f64 (+.f64 x 1)))
(+.f64 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))) -1)
(+.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (sqrt.f64 (-.f64 1 x))))
(+.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))
(+.f64 (-.f64 1 (sqrt.f64 (-.f64 1 x))) (+.f64 (sqrt.f64 (+.f64 x 1)) -1))
(+.f64 -2 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))
(+.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) 1) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) -2)
(+.f64 (+.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) -1) (+.f64 1 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2)))
(*.f64 -1 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))
(*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(*.f64 2 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 1/2)
(*.f64 4 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4))
(*.f64 4 (-.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) (/.f64 (sqrt.f64 (-.f64 1 x)) 4)))
(*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))
(*.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) 2)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 1/2) -2)
(*.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4) 4)
(/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 2)
(/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 4)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8) 8)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -2) -2)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4)) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))))) 128)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(neg.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))
(+.f64 (sqrt.f64 (-.f64 1 x)) 0)
(+.f64 0 (sqrt.f64 (-.f64 1 x)))
(+.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))
(-.f64 (sqrt.f64 (-.f64 1 x)) 0)
(*.f64 1 (sqrt.f64 (-.f64 1 x)))
(*.f64 (sqrt.f64 (-.f64 1 x)) 1)
(*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))
(*.f64 4 (/.f64 (sqrt.f64 (-.f64 1 x)) 4))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 1/4)
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 1 x)) 2))
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 1 x)) 4))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) 2)
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)
(/.f64 (sqrt.f64 (-.f64 1 x)) 1)
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))))) 128)
(pow.f64 (sqrt.f64 (-.f64 1 x)) 1)
(+.f64 (sqrt.f64 (+.f64 x 1)) 0)
(+.f64 0 (sqrt.f64 (+.f64 x 1)))
(+.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))
(-.f64 (sqrt.f64 (+.f64 x 1)) 0)
(*.f64 (sqrt.f64 (+.f64 x 1)) 1)
(*.f64 1 (sqrt.f64 (+.f64 x 1)))
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 1/2)
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 1/4)
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 x 1)) 2))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) 2)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))
(*.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)
(/.f64 (sqrt.f64 (+.f64 x 1)) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))))) 128)
(pow.f64 (sqrt.f64 (+.f64 x 1)) 1)
Outputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7)))))
1
(+.f64 (*.f64 -1/2 x) 1)
(+.f64 1 (*.f64 x -1/2))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -1/2 x) 1))
(+.f64 (+.f64 1 (*.f64 x -1/2)) (*.f64 -1/8 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 x -1/2) (*.f64 -1/8 (pow.f64 x 2))))
(+.f64 (*.f64 x -1/2) (+.f64 1 (*.f64 -1/8 (pow.f64 x 2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 -1/16 (pow.f64 x 3)) 1)))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 (pow.f64 x 3) -1/16) (+.f64 1 (*.f64 x -1/2))))
(+.f64 (*.f64 x -1/2) (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (*.f64 (pow.f64 x 3) -1/16))))
(+.f64 1 (+.f64 (+.f64 (*.f64 x -1/2) (*.f64 -1/8 (pow.f64 x 2))) (*.f64 (pow.f64 x 3) -1/16)))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 3) -1/16) (+.f64 (*.f64 x -1/2) (*.f64 -1/8 (pow.f64 x 2)))))
(+.f64 1 (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) -1/16))))
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 1 (*.f64 x 1/2))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (*.f64 x 1/2)))
(+.f64 1 (+.f64 (*.f64 x 1/2) (*.f64 -1/8 (pow.f64 x 2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 3) 1/16))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (+.f64 1 (*.f64 x 1/2)) (*.f64 (pow.f64 x 3) 1/16)))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 x 1/2) (+.f64 1 (*.f64 (pow.f64 x 3) 1/16))))
(+.f64 -1 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 0)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 1 x))) (sqrt.f64 (+.f64 x 1)))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (+.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))) -1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (-.f64 1 (sqrt.f64 (-.f64 1 x))) (+.f64 (sqrt.f64 (+.f64 x 1)) -1))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 -2 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) 1) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) -2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (+.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) -1) (+.f64 1 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2)))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 -1 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 2 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 1/2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 4 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 4 (-.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) (/.f64 (sqrt.f64 (-.f64 1 x)) 4)))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 1/4)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1/2) 2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 1/2) -2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -4) 4)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 2) 2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 4) 4)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8) 8)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -2) -2)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4) -4)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) 16)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))) 32)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4)) -8)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -4))) -16)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) 64)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))))) 128)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(pow.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1)
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(neg.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))
(+.f64 1 (+.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) -1))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (sqrt.f64 (-.f64 1 x)) 0)
(sqrt.f64 (-.f64 1 x))
(+.f64 0 (sqrt.f64 (-.f64 1 x)))
(sqrt.f64 (-.f64 1 x))
(+.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))
(sqrt.f64 (-.f64 1 x))
(-.f64 (sqrt.f64 (-.f64 1 x)) 0)
(sqrt.f64 (-.f64 1 x))
(*.f64 1 (sqrt.f64 (-.f64 1 x)))
(sqrt.f64 (-.f64 1 x))
(*.f64 (sqrt.f64 (-.f64 1 x)) 1)
(sqrt.f64 (-.f64 1 x))
(*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2))
(sqrt.f64 (-.f64 1 x))
(*.f64 4 (/.f64 (sqrt.f64 (-.f64 1 x)) 4))
(sqrt.f64 (-.f64 1 x))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 1/2)
(sqrt.f64 (-.f64 1 x))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 1/4)
(sqrt.f64 (-.f64 1 x))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 1 x)) 2))
(sqrt.f64 (-.f64 1 x))
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 1 x)) 4))
(sqrt.f64 (-.f64 1 x))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 1/2) 2)
(sqrt.f64 (-.f64 1 x))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)
(sqrt.f64 (-.f64 1 x))
(/.f64 (sqrt.f64 (-.f64 1 x)) 1)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 2) 2)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 4) 4)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) 8) 8)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) 16)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)
(sqrt.f64 (-.f64 1 x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) 64)
(sqrt.f64 (-.f64 1 x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))))) 128)
(sqrt.f64 (-.f64 1 x))
(pow.f64 (sqrt.f64 (-.f64 1 x)) 1)
(sqrt.f64 (-.f64 1 x))
(+.f64 (sqrt.f64 (+.f64 x 1)) 0)
(sqrt.f64 (+.f64 x 1))
(+.f64 0 (sqrt.f64 (+.f64 x 1)))
(sqrt.f64 (+.f64 x 1))
(+.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))
(sqrt.f64 (+.f64 x 1))
(-.f64 (sqrt.f64 (+.f64 x 1)) 0)
(sqrt.f64 (+.f64 x 1))
(*.f64 (sqrt.f64 (+.f64 x 1)) 1)
(sqrt.f64 (+.f64 x 1))
(*.f64 1 (sqrt.f64 (+.f64 x 1)))
(sqrt.f64 (+.f64 x 1))
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 1/2)
(sqrt.f64 (+.f64 x 1))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 1/4)
(sqrt.f64 (+.f64 x 1))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 x 1)) 2))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) 2)
(sqrt.f64 (+.f64 x 1))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (/.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)
(sqrt.f64 (+.f64 x 1))
(/.f64 (sqrt.f64 (+.f64 x 1)) 1)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 2)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 4)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 8) 8)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) 16)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) 64)
(sqrt.f64 (+.f64 x 1))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))))) 128)
(sqrt.f64 (+.f64 x 1))
(pow.f64 (sqrt.f64 (+.f64 x 1)) 1)
(sqrt.f64 (+.f64 x 1))

eval37.0ms (0.1%)

Compiler

Compiled 1831 to 1527 computations (16.6% saved)

prune17.0ms (0.1%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1225127
Fresh000
Picked011
Done000
Total1226128
Error
0.0b
Counts
128 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
58.7b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.4b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
58.7b
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
0.8b
x
Compiler

Compiled 68 to 54 computations (20.6% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 x 1))
0.0b
(sqrt.f64 (-.f64 1 x))
0.0b
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
4.7b
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
Compiler

Compiled 48 to 38 computations (20.8% saved)

series77.0ms (0.3%)

Counts
3 → 16
Calls

9 calls:

TimeVariablePointExpression
56.0ms
x
@inf
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
16.0ms
x
@-inf
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
2.0ms
x
@-inf
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
1.0ms
x
@inf
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
0.0ms
x
@inf
(sqrt.f64 (+.f64 x 1))

rewrite126.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1524×exponential.json-3
1524×rational.json-1
1524×rational.json-2
1524×rational.json-4
1524×rational.json-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01383
19683
220377
341575
483475
5206975
6433575
7588775
8747575
Stop Event
node limit
Counts
3 → 70
Calls
Call 1
Inputs
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(sqrt.f64 (+.f64 x 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (/.f64 (sqrt.f64 (-.f64 1 x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) -2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 1 x)) 1)))))

simplify11.3s (43.3%)

Algorithm
egg-herbie
Rules
2252×rational.json-simplify-2
1822×rational.json-simplify-48
1772×rational.json-simplify-1
1724×rational.json-simplify-35
1382×rational.json-simplify-51
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01612256
13362256
28782080
317822080
430012080
536652080
640472080
742942080
844072080
945232080
1046392080
1147832080
1254882080
1358992080
1460102080
1560632080
1661162080
1761692080
1871062080
1977032080
2077942080
2179072080
Stop Event
node limit
Counts
86 → 110
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)))
-1
(-.f64 x 1)
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1)
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)) 1)
-1
-1
-1
-1
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) -1)
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 0)
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))) 1)
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2))
(*.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (/.f64 (sqrt.f64 (-.f64 1 x)) -2)))
(*.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2))
(*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) -2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))
(*.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)
(*.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 2)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 0)
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1) -1)
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2))
(*.f64 2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2)))
(*.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2)))
(*.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2))
(*.f64 1/2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))
(*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2)))
(*.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)
(*.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 2)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 (sqrt.f64 (+.f64 1 x)) 0)
(+.f64 0 (sqrt.f64 (+.f64 1 x)))
(+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))
(-.f64 (sqrt.f64 (+.f64 1 x)) 0)
(*.f64 1 (sqrt.f64 (+.f64 1 x)))
(*.f64 (sqrt.f64 (+.f64 1 x)) 1)
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1 x)) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 1/4)
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1 x)) 2))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1 x)) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) 2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)
(/.f64 (sqrt.f64 (+.f64 1 x)) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)))) 64)
(pow.f64 (sqrt.f64 (+.f64 1 x)) 1)
Outputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7)))))
-1
(-.f64 x 1)
(+.f64 x -1)
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1)
(+.f64 x (-.f64 (*.f64 1/8 (pow.f64 x 3)) 1))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) -1))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x -1))
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x)) 1)
(+.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) (-.f64 (*.f64 7/128 (pow.f64 x 5)) 1))
(+.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) (+.f64 (*.f64 7/128 (pow.f64 x 5)) -1))
(+.f64 x (+.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) -1) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 x (+.f64 -1 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5)))))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) -1)))
-1
-1
-1
-1
1
(+.f64 (*.f64 1/2 x) 1)
(+.f64 1 (*.f64 x 1/2))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) 1))
(+.f64 (+.f64 1 (*.f64 x 1/2)) (*.f64 -1/8 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 x 1/2)))
(+.f64 1 (+.f64 (*.f64 x 1/2) (*.f64 -1/8 (pow.f64 x 2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (+.f64 1 (*.f64 1/16 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 3) 1/16))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) -1)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 0)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (/.f64 (sqrt.f64 (-.f64 1 x)) -2)))
(*.f64 2 (+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 x 1))) (/.f64 (sqrt.f64 (-.f64 1 x)) -2)))
(*.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (-.f64 1 x)) -2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(*.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 2) 2)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8) 8)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)) 16)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8))) 32)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (neg.f64 (sqrt.f64 (-.f64 1 x))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 0)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (neg.f64 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1) -1)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2)))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 1/2)))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 4 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 1/2)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 1/4)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/2 (+.f64 (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2) (*.f64 (sqrt.f64 (+.f64 1 x)) 2)))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) (*.f64 (-.f64 -1 (sqrt.f64 (-.f64 1 x))) 2)))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 1/4 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4))
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1/2) 2)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(*.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 2) 2)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 4) 4)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8) 8)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)) 16)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8))) 32)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 8)))) 64)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(pow.f64 (+.f64 (sqrt.f64 (+.f64 1 x)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))) 1)
(+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x))))
(+.f64 (sqrt.f64 (+.f64 1 x)) 0)
(sqrt.f64 (+.f64 x 1))
(+.f64 0 (sqrt.f64 (+.f64 1 x)))
(sqrt.f64 (+.f64 x 1))
(+.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))
(sqrt.f64 (+.f64 x 1))
(-.f64 (sqrt.f64 (+.f64 1 x)) 0)
(sqrt.f64 (+.f64 x 1))
(*.f64 1 (sqrt.f64 (+.f64 1 x)))
(sqrt.f64 (+.f64 x 1))
(*.f64 (sqrt.f64 (+.f64 1 x)) 1)
(sqrt.f64 (+.f64 x 1))
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2))
(sqrt.f64 (+.f64 x 1))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1 x)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 1/2)
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 1/4)
(sqrt.f64 (+.f64 x 1))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1 x)) 2))
(sqrt.f64 (+.f64 x 1))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1 x)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 1/2) 2)
(sqrt.f64 (+.f64 x 1))
(*.f64 (/.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)
(sqrt.f64 (+.f64 x 1))
(/.f64 (sqrt.f64 (+.f64 1 x)) 1)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 2) 2)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 4) 4)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 x)) 8) 8)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)) 16)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8))) 32)
(sqrt.f64 (+.f64 x 1))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1 x)) 8)))) 64)
(sqrt.f64 (+.f64 x 1))
(pow.f64 (sqrt.f64 (+.f64 1 x)) 1)
(sqrt.f64 (+.f64 x 1))

localize8.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 x 3)
Compiler

Compiled 19 to 14 computations (26.3% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(pow.f64 x 3)
0.0ms
x
@inf
(pow.f64 x 3)
0.0ms
x
@0
(pow.f64 x 3)

rewrite861.0ms (3.3%)

Algorithm
batch-egg-rewrite
Rules
2454×rational.json-simplify-35
2442×rational.json-simplify-2
1532×rational.json-simplify-1
1166×exponential.json-3
1166×rational.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
1327
2787
31547
42607
55387
612397
727007
843367
949297
1060567
1168117
1268117
1379477
1479477
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(pow.f64 x 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (pow.f64 x 3) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 x 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (pow.f64 x 3) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (pow.f64 x 3) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (pow.f64 (*.f64 x 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (pow.f64 x 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (pow.f64 x 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x 1/2) 3) 8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (pow.f64 x 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 64 (*.f64 (pow.f64 x 3) 1/64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 1/64) 64)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 64) 1/64)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/64 (*.f64 (pow.f64 x 3) 64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 512) 1/512)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/512 (*.f64 (pow.f64 x 3) 512))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 x 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 16) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 16)) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))))) 1024)))))

simplify915.0ms (3.5%)

Algorithm
egg-herbie
Rules
3624×rational.json-simplify-35
3506×rational.json-simplify-49
1160×rational.json-simplify-2
1122×rational.json-simplify-1
838×rational.json-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078259
1163259
2702259
31198259
42044259
53034259
63506259
73580259
83625259
93668259
103711259
113805259
123850259
133893259
143936259
153979259
164022259
174065259
184108259
194151259
204194259
214237259
224280259
234323259
244366259
254409259
264452259
274495259
284538259
294538259
304581259
314624259
324667259
337400259
347613259
357826259
Stop Event
node limit
Counts
37 → 38
Calls
Call 1
Inputs
(+.f64 (pow.f64 x 3) 0)
(+.f64 0 (pow.f64 x 3))
(+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (pow.f64 x 3) 1/2))
(-.f64 (pow.f64 x 3) 0)
(*.f64 (pow.f64 x 3) 1)
(*.f64 1 (pow.f64 x 3))
(*.f64 2 (*.f64 (pow.f64 x 3) 1/2))
(*.f64 (*.f64 (pow.f64 x 3) 2) 1/2)
(*.f64 4 (*.f64 (pow.f64 x 3) 1/4))
(*.f64 4 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))))
(*.f64 (*.f64 (pow.f64 x 3) 4) 1/4)
(*.f64 8 (pow.f64 (*.f64 x 1/2) 3))
(*.f64 (*.f64 (pow.f64 x 3) 8) 1/8)
(*.f64 1/2 (*.f64 (pow.f64 x 3) 2))
(*.f64 (*.f64 (pow.f64 x 3) 1/2) 2)
(*.f64 1/4 (*.f64 (pow.f64 x 3) 4))
(*.f64 (*.f64 (pow.f64 x 3) 1/4) 4)
(*.f64 (pow.f64 (*.f64 x 1/2) 3) 8)
(*.f64 1/8 (*.f64 (pow.f64 x 3) 8))
(*.f64 64 (*.f64 (pow.f64 x 3) 1/64))
(*.f64 (*.f64 (pow.f64 x 3) 1/64) 64)
(*.f64 (*.f64 (pow.f64 x 3) 64) 1/64)
(*.f64 1/64 (*.f64 (pow.f64 x 3) 64))
(*.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))) 4)
(*.f64 (*.f64 (pow.f64 x 3) 512) 1/512)
(*.f64 1/512 (*.f64 (pow.f64 x 3) 512))
(/.f64 (pow.f64 x 3) 1)
(/.f64 (*.f64 (pow.f64 x 3) 2) 2)
(/.f64 (*.f64 (pow.f64 x 3) 4) 4)
(/.f64 (*.f64 (pow.f64 x 3) 8) 8)
(/.f64 (*.f64 (pow.f64 x 3) 16) 16)
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 16)) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))) 256)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) 512)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))))) 1024)
Outputs
(+.f64 (pow.f64 x 3) 0)
(pow.f64 x 3)
(+.f64 0 (pow.f64 x 3))
(pow.f64 x 3)
(+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (pow.f64 x 3) 1/2))
(pow.f64 x 3)
(-.f64 (pow.f64 x 3) 0)
(pow.f64 x 3)
(*.f64 (pow.f64 x 3) 1)
(pow.f64 x 3)
(*.f64 1 (pow.f64 x 3))
(pow.f64 x 3)
(*.f64 2 (*.f64 (pow.f64 x 3) 1/2))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 2) 1/2)
(pow.f64 x 3)
(*.f64 4 (*.f64 (pow.f64 x 3) 1/4))
(pow.f64 x 3)
(*.f64 4 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 4) 1/4)
(pow.f64 x 3)
(*.f64 8 (pow.f64 (*.f64 x 1/2) 3))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 8) 1/8)
(pow.f64 x 3)
(*.f64 1/2 (*.f64 (pow.f64 x 3) 2))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 1/2) 2)
(pow.f64 x 3)
(*.f64 1/4 (*.f64 (pow.f64 x 3) 4))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 1/4) 4)
(pow.f64 x 3)
(*.f64 (pow.f64 (*.f64 x 1/2) 3) 8)
(pow.f64 x 3)
(*.f64 1/8 (*.f64 (pow.f64 x 3) 8))
(pow.f64 x 3)
(*.f64 64 (*.f64 (pow.f64 x 3) 1/64))
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 1/64) 64)
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 64) 1/64)
(pow.f64 x 3)
(*.f64 1/64 (*.f64 (pow.f64 x 3) 64))
(pow.f64 x 3)
(*.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 3) (*.f64 1/2 (*.f64 (pow.f64 x 3) 1/4))) 4)
(pow.f64 x 3)
(*.f64 (*.f64 (pow.f64 x 3) 512) 1/512)
(pow.f64 x 3)
(*.f64 1/512 (*.f64 (pow.f64 x 3) 512))
(pow.f64 x 3)
(/.f64 (pow.f64 x 3) 1)
(pow.f64 x 3)
(/.f64 (*.f64 (pow.f64 x 3) 2) 2)
(pow.f64 x 3)
(/.f64 (*.f64 (pow.f64 x 3) 4) 4)
(pow.f64 x 3)
(/.f64 (*.f64 (pow.f64 x 3) 8) 8)
(pow.f64 x 3)
(/.f64 (*.f64 (pow.f64 x 3) 16) 16)
(pow.f64 x 3)
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 16)) 32)
(pow.f64 x 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))) 64)
(pow.f64 x 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))) 128)
(pow.f64 x 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))) 256)
(pow.f64 x 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) 512)
(pow.f64 x 3)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 3) 16))))))) 1024)
(pow.f64 x 3)

localize17.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.0b
(pow.f64 x 3)
0.1b
(*.f64 7/128 (pow.f64 x 5))
Compiler

Compiled 42 to 32 computations (23.8% saved)

series4.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
1.0ms
x
@-inf
(*.f64 7/128 (pow.f64 x 5))
1.0ms
x
@0
(*.f64 7/128 (pow.f64 x 5))
0.0ms
x
@inf
(*.f64 7/128 (pow.f64 x 5))
0.0ms
x
@0
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))

rewrite174.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1586×rational.json-simplify-35
1570×rational.json-simplify-1
1402×exponential.json-3
1402×rational.json-1
1402×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01350
18650
216750
333150
467550
5170750
6359650
7548050
8675050
9773450
10773450
Stop Event
node limit
Counts
2 → 39
Calls
Call 1
Inputs
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 7/128 (pow.f64 x 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 7/128 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 5) 7/256) (*.f64 (pow.f64 x 5) 7/256))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 7/128 (pow.f64 x 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 7/128 (pow.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 5) 7/64) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 5) 7/32) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 7/128 (pow.f64 x 5)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)))))

simplify329.0ms (1.3%)

Algorithm
egg-herbie
Rules
3888×rational.json-simplify-51
2258×rational.json-simplify-35
1578×rational.json-simplify-1
1356×rational.json-simplify-2
738×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0991569
12111569
24861569
315881569
435931569
545241569
647271569
748151569
849031569
949891569
1050751569
1151961569
1252801569
1353641569
1453641569
1578541569
Stop Event
node limit
Counts
51 → 55
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) 0)
(+.f64 0 (*.f64 7/128 (pow.f64 x 5)))
(+.f64 (*.f64 (pow.f64 x 5) 7/256) (*.f64 (pow.f64 x 5) 7/256))
(-.f64 (*.f64 7/128 (pow.f64 x 5)) 0)
(/.f64 (*.f64 7/128 (pow.f64 x 5)) 1)
(/.f64 (*.f64 (pow.f64 x 5) 7/64) 2)
(/.f64 (*.f64 (pow.f64 x 5) 7/32) 4)
(/.f64 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))))) 128)
(pow.f64 (*.f64 7/128 (pow.f64 x 5)) 1)
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 0)
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
(*.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))))
(*.f64 2 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)))
(*.f64 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)) 2)
(*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)
(*.f64 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)) 1/2)
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)) 1/4)
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)) 1/2)
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))))) 128)
(pow.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
Outputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) x))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) 0)
(*.f64 7/128 (pow.f64 x 5))
(+.f64 0 (*.f64 7/128 (pow.f64 x 5)))
(*.f64 7/128 (pow.f64 x 5))
(+.f64 (*.f64 (pow.f64 x 5) 7/256) (*.f64 (pow.f64 x 5) 7/256))
(*.f64 7/128 (pow.f64 x 5))
(-.f64 (*.f64 7/128 (pow.f64 x 5)) 0)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 7/128 (pow.f64 x 5)) 1)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 (pow.f64 x 5) 7/64) 2)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 (pow.f64 x 5) 7/32) 4)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8) 8)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) 16)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)))) 64)
(*.f64 7/128 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))))) 128)
(*.f64 7/128 (pow.f64 x 5))
(pow.f64 (*.f64 7/128 (pow.f64 x 5)) 1)
(*.f64 7/128 (pow.f64 x 5))
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 0)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 2 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (*.f64 x 1/2)) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 3) 1/16))))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 1/2)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 1/4)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 4 (+.f64 x (*.f64 7/128 (pow.f64 x 5))))))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2))
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))) 2)))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))) 2))))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 2 (+.f64 x (*.f64 7/128 (pow.f64 x 5))))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) (*.f64 (pow.f64 x 3) 1/4)))
(*.f64 (+.f64 (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256)) (*.f64 (pow.f64 x 3) 1/16)) 2)
(*.f64 2 (+.f64 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (*.f64 x 1/2)) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 3) 1/16))))
(*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(*.f64 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 1/8 (pow.f64 x 3))) 2)) 1/2)
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))) 2)))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))) 2))))
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 4)) 1/4)
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 4 (+.f64 x (*.f64 7/128 (pow.f64 x 5))))))
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 x (*.f64 7/128 (pow.f64 x 5))) 2)) 1/2)
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 2 (+.f64 x (*.f64 7/128 (pow.f64 x 5))))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) (*.f64 (pow.f64 x 3) 1/4)))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 2) 2)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 4) 4)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8) 8)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)) 16)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))) 32)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8)))) 64)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 8))))) 128)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(pow.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5)))) 1)
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 x 3)
0.0b
(+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5)))
0.0b
(*.f64 33/1024 (pow.f64 x 7))
0.1b
(*.f64 7/128 (pow.f64 x 5))
Compiler

Compiled 71 to 55 computations (22.5% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(*.f64 33/1024 (pow.f64 x 7))
1.0ms
x
@0
(*.f64 33/1024 (pow.f64 x 7))
0.0ms
x
@-inf
(*.f64 33/1024 (pow.f64 x 7))
0.0ms
x
@inf
(+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5)))
0.0ms
x
@0
(+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5)))

rewrite174.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
2502×rational.json-simplify-2
1588×rational.json-simplify-35
1392×rational.json-simplify-1
1312×exponential.json-3
1312×rational.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01350
18450
215850
332050
464650
5164250
6366750
7517250
8632850
9717950
10717950
Stop Event
node limit
Counts
2 → 37
Calls
Call 1
Inputs
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 33/1024 (pow.f64 x 7)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 7) 33/2048))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 7) 33/512) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 7) 33/256) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)))))

simplify693.0ms (2.7%)

Algorithm
egg-herbie
Rules
3500×rational.json-simplify-51
3022×rational.json-simplify-2
2768×rational.json-simplify-35
1278×rational.json-simplify-1
598×exponential.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0951411
12091411
25731411
315651411
431061411
538031411
639421411
740361411
841141411
941901411
1042651411
1143401411
1244151411
1344901411
1445651411
1546401411
1647151411
1747151411
1868241411
1971051411
2071811411
2172491411
2273171411
2373851411
2474591411
2575271411
2675951411
2776631411
2877311411
Stop Event
node limit
Counts
49 → 46
Calls
Call 1
Inputs
x
(+.f64 (*.f64 7/128 (pow.f64 x 5)) x)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)
(+.f64 0 (*.f64 33/1024 (pow.f64 x 7)))
(+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 7) 33/2048))
(-.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)
(/.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)
(/.f64 (*.f64 (pow.f64 x 7) 33/512) 2)
(/.f64 (*.f64 (pow.f64 x 7) 33/256) 4)
(/.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))))) 128)
(pow.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)
(-.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 0)
(*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
(*.f64 1 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 1/2)
(*.f64 4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 1/4)
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 1/8)
(*.f64 1/2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2))
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))) 2)
(*.f64 1/4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))
(*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2)
(/.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 2)
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 4)
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))))) 128)
(pow.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
Outputs
x
(+.f64 (*.f64 7/128 (pow.f64 x 5)) x)
(+.f64 x (*.f64 7/128 (pow.f64 x 5)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) x))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 0 (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 7) 33/2048))
(*.f64 33/1024 (pow.f64 x 7))
(-.f64 (*.f64 33/1024 (pow.f64 x 7)) 0)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 (pow.f64 x 7) 33/512) 2)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 (pow.f64 x 7) 33/256) 4)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4) 8)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)) 16)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))) 32)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4)))) 64)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 4))))) 128)
(*.f64 33/1024 (pow.f64 x 7))
(pow.f64 (*.f64 33/1024 (pow.f64 x 7)) 1)
(*.f64 33/1024 (pow.f64 x 7))
(-.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 0)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256))))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 1/2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 1/4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 1/8)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/2 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))) 2)
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (+.f64 (*.f64 x 1/2) (*.f64 (pow.f64 x 5) 7/256))))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 x 1/2))))
(*.f64 1/4 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1/4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/8 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 2) 2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8) 8)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)) 16)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))) 32)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8)))) 64)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 8))))) 128)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(pow.f64 (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 x (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))

eval137.0ms (0.5%)

Compiler

Compiled 6739 to 5652 computations (16.1% saved)

prune54.0ms (0.2%)

Pruning

9 alts after pruning (5 fresh and 4 done)

PrunedKeptTotal
New3714375
Fresh011
Picked101
Done044
Total3729381
Error
0b
Counts
381 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
58.7b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
0.4b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
59.0b
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
59.3b
(+.f64 1 (-.f64 x 1))
58.7b
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
0.8b
x
Compiler

Compiled 110 to 88 computations (20% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.2b
(+.f64 1 (-.f64 x 1))
Compiler

Compiled 11 to 8 computations (27.3% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite183.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1820×rational.json-simplify-35
1484×rational.json-simplify-51
1376×exponential.json-3
1376×rational.json-1
1376×rational.json-2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0613
1521
21311
32461
44931
511131
622651
732541
840231
948211
1057771
1164421
1273991
Stop Event
node limit
Counts
1 → 28
Calls
Call 1
Inputs
(+.f64 1 (-.f64 x 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 x 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/16 (*.f64 x 16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 16) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 16)) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 16) 4) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x 16) 4)) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4)))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x . x)))))

simplify513.0ms (2%)

Algorithm
egg-herbie
Rules
2786×rational.json-simplify-2
2740×rational.json-simplify-51
1840×rational.json-simplify-1
1744×rational.json-simplify-48
1250×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06140
113740
249140
3140540
4230040
5275540
6293740
7329040
8348940
9360040
10371640
11383640
12396540
13466840
14479640
15488440
16497440
17507340
18558240
19560740
20711440
21721640
22724140
23731040
24741340
25751540
Stop Event
node limit
Counts
40 → 29
Calls
Call 1
Inputs
x
x
x
x
x
x
x
x
x
x
x
x
(-.f64 x 0)
(-.f64 (+.f64 x -1) -1)
(-.f64 (+.f64 1 x) 1)
(*.f64 1 x)
(*.f64 x 1)
(*.f64 2 (*.f64 x 1/2))
(*.f64 4 (*.f64 x 1/4))
(*.f64 (+.f64 x x) 1/2)
(*.f64 (*.f64 x 4) 1/4)
(*.f64 1/2 (+.f64 x x))
(*.f64 (*.f64 x 8) 1/8)
(*.f64 (*.f64 x 1/2) 2)
(*.f64 1/4 (*.f64 x 4))
(*.f64 1/8 (*.f64 x 8))
(*.f64 (*.f64 x 1/4) 4)
(*.f64 1/16 (*.f64 x 16))
(*.f64 (/.f64 x 8) 8)
(/.f64 x 1)
(/.f64 (+.f64 x x) 2)
(/.f64 (*.f64 x 4) 4)
(/.f64 (*.f64 x 8) 8)
(/.f64 (*.f64 x 16) 16)
(/.f64 (*.f64 2 (*.f64 x 16)) 32)
(/.f64 (*.f64 (*.f64 x 16) 4) 64)
(/.f64 (*.f64 2 (*.f64 (*.f64 x 16) 4)) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4))) 256)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4)))) 512)
(pow.f64 x 1)
Outputs
x
x
x
x
x
x
x
x
x
x
x
x
(-.f64 x 0)
x
(-.f64 (+.f64 x -1) -1)
x
(-.f64 (+.f64 1 x) 1)
x
(*.f64 1 x)
x
(*.f64 x 1)
x
(*.f64 2 (*.f64 x 1/2))
x
(*.f64 4 (*.f64 x 1/4))
x
(*.f64 (+.f64 x x) 1/2)
x
(*.f64 (*.f64 x 4) 1/4)
x
(*.f64 1/2 (+.f64 x x))
x
(*.f64 (*.f64 x 8) 1/8)
x
(*.f64 (*.f64 x 1/2) 2)
x
(*.f64 1/4 (*.f64 x 4))
x
(*.f64 1/8 (*.f64 x 8))
x
(*.f64 (*.f64 x 1/4) 4)
x
(*.f64 1/16 (*.f64 x 16))
x
(*.f64 (/.f64 x 8) 8)
x
(/.f64 x 1)
x
(/.f64 (+.f64 x x) 2)
x
(/.f64 (*.f64 x 4) 4)
x
(/.f64 (*.f64 x 8) 8)
x
(/.f64 (*.f64 x 16) 16)
x
(/.f64 (*.f64 2 (*.f64 x 16)) 32)
x
(/.f64 (*.f64 (*.f64 x 16) 4) 64)
x
(/.f64 (*.f64 2 (*.f64 (*.f64 x 16) 4)) 128)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4))) 256)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 16) 4)))) 512)
x
(pow.f64 x 1)
x

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 x 3)
5.2b
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
Compiler

Compiled 40 to 31 computations (22.5% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite188.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
2216×rational.json-simplify-2
1766×rational.json-simplify-1
1434×rational.json-simplify-35
1238×exponential.json-3
1238×rational.json-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01131
18619
219419
340519
4108819
5226919
6371919
7541419
8639819
9720719
10730519
11730519
Stop Event
node limit
Counts
1 → 28
Calls
Call 1
Inputs
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 1/8 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)))))

simplify450.0ms (1.7%)

Algorithm
egg-herbie
Rules
3318×rational.json-simplify-51
2132×rational.json-simplify-48
1500×rational.json-simplify-1
1422×rational.json-simplify-2
1232×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
072778
1150778
2379778
31160778
42141778
52619778
62800778
73028778
83176778
93270778
104003778
114532778
124594778
134995778
145088778
155155778
165427778
175530778
185632778
195699778
205746778
217385778
227637778
237661778
Stop Event
node limit
Counts
40 → 33
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(*.f64 1/8 (pow.f64 x 3))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(*.f64 1/8 (pow.f64 x 3))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(-.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 0)
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x -1)) -1)
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 1 x)) 1)
(*.f64 1 (+.f64 x (*.f64 1/8 (pow.f64 x 3))))
(*.f64 1/8 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))
(*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)))
(*.f64 4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4))
(*.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 1/2)
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 1/4)
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)))
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)))
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 1/8)
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)) 2)
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4) 4)
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)) 1/2)
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)) 1/4)
(/.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
(/.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 2)
(/.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 4)
(/.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))))) 128)
(pow.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
Outputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/8 (pow.f64 x 3))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/8 (pow.f64 x 3))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(-.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 0)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x -1)) -1)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 1 x)) 1)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1 (+.f64 x (*.f64 1/8 (pow.f64 x 3))))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/8 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)))
(*.f64 4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 1/2)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 1/4)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4))
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)))
(*.f64 1/4 (+.f64 (*.f64 x 4) (*.f64 (pow.f64 x 3) 1/2)))
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 1/8)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)) 2)
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 x 1/2)))
(*.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1/4) 4)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (+.f64 x x)) 1/2)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)) 1/4)
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 3) 1/2) (*.f64 x 4)))
(*.f64 1/4 (+.f64 (*.f64 x 4) (*.f64 (pow.f64 x 3) 1/2)))
(/.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 3) 1/4))) 2)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 4) 4)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8) 8)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)) 16)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))) 32)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8)))) 64)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 8))))) 128)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))
(pow.f64 (+.f64 x (*.f64 1/8 (pow.f64 x 3))) 1)
(+.f64 x (*.f64 1/8 (pow.f64 x 3)))

localize39.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64))
0.0b
(+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512)))
0.0b
(*.f64 (pow.f64 x 7) 33/512)
0.1b
(*.f64 (pow.f64 x 5) 7/64)
Compiler

Compiled 104 to 79 computations (24% saved)

series3.0ms (0%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(*.f64 (pow.f64 x 5) 7/64)
0.0ms
x
@inf
(+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512)))
0.0ms
x
@-inf
(*.f64 (pow.f64 x 5) 7/64)
0.0ms
x
@inf
(*.f64 (pow.f64 x 7) 33/512)
0.0ms
x
@0
(+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512)))

rewrite210.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
2332×rational.json-simplify-35
2030×rational.json-simplify-2
1276×rational.json-simplify-1
1264×exponential.json-3
1264×rational.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01494
19194
217094
335094
475194
5162794
6288694
7446794
8535594
9600294
10600294
11600294
12738694
Stop Event
node limit
Counts
4 → 74
Calls
Call 1
Inputs
(*.f64 (pow.f64 x 5) 7/64)
(*.f64 (pow.f64 x 7) 33/512)
(+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512)))
(+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 5) 7/64) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 x 5) 7/64))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 5) 7/128) (*.f64 (pow.f64 x 5) 7/128))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 x 5) 7/64) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 5) 7/64) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 5) 7/32) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 5) 7/16) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 5) 7/64) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 7) 33/512) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 x 7) 33/512))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 7) 33/1024) (*.f64 (pow.f64 x 7) 33/1024))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 x 7) 33/512) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 7) 33/512) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 7) 33/256) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 7) 33/128) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 7) 33/512) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)))))

simplify446.0ms (1.7%)

Algorithm
egg-herbie
Rules
3740×rational.json-simplify-41
3232×rational.json-simplify-35
1580×rational.json-simplify-51
1450×rational.json-simplify-2
918×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01562888
13792888
28472888
329892888
440632888
543912888
645922888
747452888
848942888
964042888
1066342888
1166422888
1266442888
1366442888
1467752888
1569062888
1670372888
1771682888
Stop Event
node limit
Counts
122 → 90
Calls
Call 1
Inputs
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 2 x)
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 2 x))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 (pow.f64 x 5) 7/64) 0)
(+.f64 0 (*.f64 (pow.f64 x 5) 7/64))
(+.f64 (*.f64 (pow.f64 x 5) 7/128) (*.f64 (pow.f64 x 5) 7/128))
(-.f64 (*.f64 (pow.f64 x 5) 7/64) 0)
(/.f64 (*.f64 (pow.f64 x 5) 7/64) 1)
(/.f64 (*.f64 (pow.f64 x 5) 7/32) 2)
(/.f64 (*.f64 (pow.f64 x 5) 7/16) 4)
(/.f64 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))))) 256)
(pow.f64 (*.f64 (pow.f64 x 5) 7/64) 1)
(+.f64 (*.f64 (pow.f64 x 7) 33/512) 0)
(+.f64 0 (*.f64 (pow.f64 x 7) 33/512))
(+.f64 (*.f64 (pow.f64 x 7) 33/1024) (*.f64 (pow.f64 x 7) 33/1024))
(-.f64 (*.f64 (pow.f64 x 7) 33/512) 0)
(/.f64 (*.f64 (pow.f64 x 7) 33/512) 1)
(/.f64 (*.f64 (pow.f64 x 7) 33/256) 2)
(/.f64 (*.f64 (pow.f64 x 7) 33/128) 4)
(/.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))))) 256)
(pow.f64 (*.f64 (pow.f64 x 7) 33/512) 1)
(-.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 0)
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(*.f64 1 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)))
(*.f64 2 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 1/2)
(*.f64 4 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2))
(*.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 1/4)
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)))
(*.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4))
(*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2) 4)
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)) 1/2)
(/.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(/.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))))) 256)
(pow.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(-.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 0)
(*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
(*.f64 1 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))))
(*.f64 2 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)))
(*.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 1/2)
(*.f64 4 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 1/4)
(*.f64 1/2 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))))
(*.f64 1/2 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)))
(*.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2)
(*.f64 1/4 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4))
(*.f64 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2) 4)
(*.f64 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)) 1/2)
(/.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
(/.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 2)
(/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 4)
(/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))))) 256)
(pow.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
Outputs
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 7/64 (pow.f64 x 5))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 33/512 (pow.f64 x 7))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7)))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 2 x))
(+.f64 (*.f64 x 2) (*.f64 7/64 (pow.f64 x 5)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 2 x) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7))))
(+.f64 (+.f64 (*.f64 x 2) (*.f64 33/512 (pow.f64 x 7))) (*.f64 7/64 (pow.f64 x 5)))
(+.f64 (*.f64 (pow.f64 x 5) 7/64) 0)
(*.f64 7/64 (pow.f64 x 5))
(+.f64 0 (*.f64 (pow.f64 x 5) 7/64))
(*.f64 7/64 (pow.f64 x 5))
(+.f64 (*.f64 (pow.f64 x 5) 7/128) (*.f64 (pow.f64 x 5) 7/128))
(*.f64 7/64 (pow.f64 x 5))
(-.f64 (*.f64 (pow.f64 x 5) 7/64) 0)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 (pow.f64 x 5) 7/64) 1)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 (pow.f64 x 5) 7/32) 2)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 (pow.f64 x 5) 7/16) 4)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8) 8)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)) 16)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))) 32)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))) 64)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8))))) 128)
(*.f64 7/64 (pow.f64 x 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 5) 7/64) 8)))))) 256)
(*.f64 7/64 (pow.f64 x 5))
(pow.f64 (*.f64 (pow.f64 x 5) 7/64) 1)
(*.f64 7/64 (pow.f64 x 5))
(+.f64 (*.f64 (pow.f64 x 7) 33/512) 0)
(*.f64 33/512 (pow.f64 x 7))
(+.f64 0 (*.f64 (pow.f64 x 7) 33/512))
(*.f64 33/512 (pow.f64 x 7))
(+.f64 (*.f64 (pow.f64 x 7) 33/1024) (*.f64 (pow.f64 x 7) 33/1024))
(*.f64 33/512 (pow.f64 x 7))
(-.f64 (*.f64 (pow.f64 x 7) 33/512) 0)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 (pow.f64 x 7) 33/512) 1)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 (pow.f64 x 7) 33/256) 2)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 (pow.f64 x 7) 33/128) 4)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8) 8)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)) 16)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))) 32)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))) 64)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8))))) 128)
(*.f64 33/512 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (pow.f64 x 7) 33/512) 8)))))) 256)
(*.f64 33/512 (pow.f64 x 7))
(pow.f64 (*.f64 (pow.f64 x 7) 33/512) 1)
(*.f64 33/512 (pow.f64 x 7))
(-.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 0)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 1 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)))
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 2 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)))
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 1/2)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 4 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2))
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 1/4)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))))
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)))
(*.f64 1/2 (+.f64 (*.f64 x 4) (*.f64 (pow.f64 x 7) 33/256)))
(*.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4))
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 (/.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) 2) 4)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)) 1/2)
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/256) (*.f64 x 4)))
(*.f64 1/2 (+.f64 (*.f64 x 4) (*.f64 (pow.f64 x 7) 33/256)))
(/.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) 2)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 4) 4)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8) 8)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)) 16)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))) 32)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))) 64)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8))))) 128)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 8)))))) 256)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(pow.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x x)) 1)
(+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x))
(-.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 0)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 1 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 2 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 1/2)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 4 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 1/4)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 1/2 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 1/2 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 1/4 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4))
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (/.f64 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128)) 2) 4)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(*.f64 (+.f64 (*.f64 4 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024))) (*.f64 (pow.f64 x 5) 7/32)) 1/2)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 4 (+.f64 (+.f64 x (*.f64 (pow.f64 x 7) 33/1024)) (*.f64 (pow.f64 x 5) 7/128))) 2)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 4) 4)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8) 8)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)) 16)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))) 32)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))) 64)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8))))) 128)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 8)))))) 256)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))
(pow.f64 (+.f64 x (+.f64 (*.f64 (pow.f64 x 7) 33/512) (+.f64 x (*.f64 (pow.f64 x 5) 7/64)))) 1)
(+.f64 x (+.f64 x (+.f64 (*.f64 7/64 (pow.f64 x 5)) (*.f64 33/512 (pow.f64 x 7)))))
(+.f64 (*.f64 7/64 (pow.f64 x 5)) (+.f64 (*.f64 33/512 (pow.f64 x 7)) (+.f64 x x)))

localize29.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 x 3)
0.0b
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
0.0b
(*.f64 33/1024 (pow.f64 x 7))
0.1b
(*.f64 7/128 (pow.f64 x 5))
Compiler

Compiled 75 to 59 computations (21.3% saved)

series0.0ms (0%)

Counts
1 → 3
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
0.0ms
x
@0
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
0.0ms
x
@-inf
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))

rewrite182.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1788×rational.json-simplify-35
1654×rational.json-simplify-1
1354×exponential.json-3
1354×rational.json-1
1354×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
17731
214331
327131
449531
5110331
6290031
7464031
8537531
9671131
10758731
11758731
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)))))

simplify808.0ms (3.1%)

Algorithm
egg-herbie
Rules
3496×rational.json-simplify-51
3208×rational.json-simplify-2
2094×rational.json-simplify-35
1382×rational.json-simplify-49
1230×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
065733
1134733
2265733
3576733
41359733
53181733
64021733
74144733
84197733
94239733
104268733
114297733
124326733
134355733
144384733
154413733
164442733
174471733
184500733
194529733
205321733
217417733
227506733
237546733
247582733
257618733
267654733
277690733
287726733
297762733
307798733
317834733
327870733
337906733
347906733
Stop Event
node limit
Counts
25 → 25
Calls
Call 1
Inputs
(*.f64 7/128 (pow.f64 x 5))
(*.f64 33/1024 (pow.f64 x 7))
(*.f64 33/1024 (pow.f64 x 7))
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 0)
(*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
(*.f64 1 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 1/2)
(*.f64 4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 1/4)
(*.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 1/8)
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4) 4)
(/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
(/.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))))) 256)
(pow.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
Outputs
(*.f64 7/128 (pow.f64 x 5))
(*.f64 33/1024 (pow.f64 x 7))
(*.f64 33/1024 (pow.f64 x 7))
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 0)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 1 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 1/2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 1/4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 1/8)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)) 2)
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 7) 33/2048) (*.f64 (pow.f64 x 5) 7/256)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4) 8)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)) 16)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))) 32)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))) 64)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4))))) 128)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 (pow.f64 x 7) 33/512) (*.f64 (pow.f64 x 5) 7/64)) 4)))))) 256)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))
(pow.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))

eval4.4s (16.9%)

Compiler

Compiled 5614 to 4635 computations (17.4% saved)

prune135.0ms (0.5%)

Pruning

10 alts after pruning (2 fresh and 8 done)

PrunedKeptTotal
New2781279
Fresh011
Picked011
Done077
Total27810288
Error
0b
Counts
288 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
59.3b
(-.f64 (+.f64 1 x) 1)
58.7b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
0.4b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
59.0b
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
59.3b
(+.f64 1 (-.f64 x 1))
58.7b
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
0.8b
x
Compiler

Compiled 116 to 93 computations (19.8% saved)

localize55.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.9b
(-.f64 (+.f64 1 x) 1)
Compiler

Compiled 11 to 8 computations (27.3% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite237.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
2976×rational.json-simplify-35
1724×rational.json-simplify-2
1464×rational.json-simplify-1
1172×exponential.json-3
1172×rational.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061
1531
21311
32551
45121
512021
624401
734841
842961
951281
1057271
1158531
1258531
1366511
1471891
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(-.f64 (+.f64 1 x) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 2 (+.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x 3) -3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 3 (+.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -3 (+.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 x 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 x 1)))) (#(struct:change #<rule egg-rr> (2) ((x . x)))))

simplify387.0ms (1.5%)

Algorithm
egg-herbie
Rules
3836×rational.json-simplify-51
2046×rational.json-simplify-48
1638×rational.json-simplify-2
1628×rational.json-simplify-1
1340×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07951
116051
262051
3199051
4336051
5408851
6427251
7435451
8441851
9449151
10532951
11592551
12636751
13642651
14648751
15669451
16712351
17721351
18730351
19739351
20748351
Stop Event
node limit
Counts
51 → 40
Calls
Call 1
Inputs
x
x
x
x
x
x
x
x
x
x
x
x
(+.f64 1 (+.f64 x -1))
(+.f64 x 0)
(+.f64 (+.f64 1 x) -1)
(+.f64 0 x)
(+.f64 -1 (+.f64 1 x))
(+.f64 2 (+.f64 x -2))
(+.f64 (+.f64 x 2) -2)
(+.f64 (+.f64 x -1) 1)
(+.f64 (+.f64 x 3) -3)
(+.f64 (+.f64 x -2) 2)
(+.f64 -2 (+.f64 x 2))
(+.f64 3 (+.f64 x -3))
(+.f64 (+.f64 x -3) 3)
(+.f64 -3 (+.f64 x 3))
(+.f64 (*.f64 x 1/2) (*.f64 x 1/2))
(*.f64 1 x)
(*.f64 x 1)
(*.f64 2 (*.f64 x 1/2))
(*.f64 4 (*.f64 x 1/4))
(*.f64 (+.f64 x x) 1/2)
(*.f64 (*.f64 x 4) 1/4)
(*.f64 1/2 (+.f64 x x))
(*.f64 (*.f64 x 8) 1/8)
(*.f64 1/4 (*.f64 x 4))
(*.f64 (*.f64 x 1/2) 2)
(*.f64 1/8 (*.f64 x 8))
(*.f64 (*.f64 x 1/4) 4)
(/.f64 x 1)
(/.f64 (+.f64 x x) 2)
(/.f64 (*.f64 x 4) 4)
(/.f64 (*.f64 x 8) 8)
(/.f64 (*.f64 2 (*.f64 x 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))) 256)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) 512)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))))) 1024)
(pow.f64 x 1)
Outputs
x
x
x
x
x
x
x
x
x
x
x
x
(+.f64 1 (+.f64 x -1))
x
(+.f64 x 0)
x
(+.f64 (+.f64 1 x) -1)
x
(+.f64 0 x)
x
(+.f64 -1 (+.f64 1 x))
x
(+.f64 2 (+.f64 x -2))
x
(+.f64 (+.f64 x 2) -2)
x
(+.f64 (+.f64 x -1) 1)
x
(+.f64 (+.f64 x 3) -3)
x
(+.f64 (+.f64 x -2) 2)
x
(+.f64 -2 (+.f64 x 2))
x
(+.f64 3 (+.f64 x -3))
x
(+.f64 (+.f64 x -3) 3)
x
(+.f64 -3 (+.f64 x 3))
x
(+.f64 (*.f64 x 1/2) (*.f64 x 1/2))
x
(*.f64 1 x)
x
(*.f64 x 1)
x
(*.f64 2 (*.f64 x 1/2))
x
(*.f64 4 (*.f64 x 1/4))
x
(*.f64 (+.f64 x x) 1/2)
x
(*.f64 (*.f64 x 4) 1/4)
x
(*.f64 1/2 (+.f64 x x))
x
(*.f64 (*.f64 x 8) 1/8)
x
(*.f64 1/4 (*.f64 x 4))
x
(*.f64 (*.f64 x 1/2) 2)
x
(*.f64 1/8 (*.f64 x 8))
x
(*.f64 (*.f64 x 1/4) 4)
x
(/.f64 x 1)
x
(/.f64 (+.f64 x x) 2)
x
(/.f64 (*.f64 x 4) 4)
x
(/.f64 (*.f64 x 8) 8)
x
(/.f64 (*.f64 2 (*.f64 x 8)) 16)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x 8))) 32)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))) 64)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))) 128)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))) 256)
x
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) 512)
x
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x 8)))))))) 1024)
x
(pow.f64 x 1)
x

eval6.0ms (0%)

Compiler

Compiled 257 to 210 computations (18.3% saved)

prune52.0ms (0.2%)

Pruning

10 alts after pruning (2 fresh and 8 done)

PrunedKeptTotal
New39140
Fresh011
Picked011
Done178
Total401050
Error
0b
Counts
50 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
59.3b
(-.f64 (+.f64 1 x) 1)
58.7b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
59.3b
(+.f64 (+.f64 x 3) -3)
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.2b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
0.4b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
59.0b
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
58.7b
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
0.8b
x
Compiler

Compiled 116 to 93 computations (19.8% saved)

regimes14.0ms (0.1%)

Counts
13 → 1
Calls
Call 1
Inputs
x
(+.f64 1 (-.f64 x 1))
(+.f64 (+.f64 x 3) -3)
(-.f64 (+.f64 1 x) 1)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
Calls

2 calls:

8.0ms
x
3.0ms
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Results
ErrorSegmentsBranch
0.2b1x
0.2b1(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 152 to 119 computations (21.7% saved)

regimes13.0ms (0.1%)

Counts
12 → 1
Calls
Call 1
Inputs
x
(+.f64 1 (-.f64 x 1))
(+.f64 (+.f64 x 3) -3)
(-.f64 (+.f64 1 x) 1)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (+.f64 x (*.f64 33/1024 (pow.f64 x 7))) (*.f64 7/128 (pow.f64 x 5))))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
Calls

2 calls:

7.0ms
x
3.0ms
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Results
ErrorSegmentsBranch
0.2b1x
0.2b1(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 129 to 101 computations (21.7% saved)

regimes12.0ms (0%)

Counts
10 → 1
Calls
Call 1
Inputs
x
(+.f64 1 (-.f64 x 1))
(+.f64 (+.f64 x 3) -3)
(-.f64 (+.f64 1 x) 1)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) x) 1))
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 -1 (sqrt.f64 (-.f64 1 x)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
Calls

2 calls:

5.0ms
x
3.0ms
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Results
ErrorSegmentsBranch
0.2b1x
0.2b1(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 91 to 71 computations (22% saved)

regimes10.0ms (0%)

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

2 calls:

5.0ms
x
2.0ms
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Results
ErrorSegmentsBranch
0.4b1x
0.4b1(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 78 to 61 computations (21.8% saved)

regimes6.0ms (0%)

Accuracy

Total -58.5b remaining (-7687.8%)

Threshold costs -58.5b (-7687.8%)

Counts
4 → 1
Calls
Call 1
Inputs
x
(+.f64 1 (-.f64 x 1))
(+.f64 (+.f64 x 3) -3)
(-.f64 (+.f64 1 x) 1)
Outputs
x
Calls

1 calls:

5.0ms
x
Results
ErrorSegmentsBranch
0.8b1x
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
031179
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
x
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 (+.f64 (+.f64 x (+.f64 x (*.f64 (pow.f64 x 7) 33/512))) (*.f64 (pow.f64 x 5) 7/64)) 1/2))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
x
Compiler

Compiled 68 to 53 computations (22.1% saved)

soundness183.0ms (0.7%)

Algorithm
egg-herbie
Rules
1854×rational.json-simplify-35
1522×rational.json-simplify-51
1392×rational.json-simplify-52
1070×rational.json-simplify-1
900×rational.json-simplify-45
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
11327
01952483
14131967
210851967
328421967
450831967
561191967
673221967
779361967
Stop Event
node limit
saturated
Compiler

Compiled 77 to 61 computations (20.8% saved)

end99.0ms (0.4%)

Compiler

Compiled 64 to 49 computations (23.4% saved)

Profiling

Loading profile data...