Details

Time bar (total: 3.7s)

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.2s (58.6%)

Results
1.3s4108×body1024valid
442.0ms2087×body512valid
234.0ms1645×body256valid
136.0ms416×body2048valid
Bogosity

preprocess3.0ms (0.1%)

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)

simplify7.0ms (0.2%)

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

eval2.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.5b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
58.5b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
Compiler

Compiled 10 to 8 computations (20% saved)

localize11.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 20 computations (25.9% saved)

series9.0ms (0.2%)

Counts
3 → 12
Calls

9 calls:

TimeVariablePointExpression
6.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))

rewrite90.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
1514×bool.json-1
1514×bool.json-2
1466×rational.json-1
1466×rational.json-2
1466×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01149
111349
230549
360449
4121749
5269049
6572649
Stop Event
node limit
Counts
3 → 74
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 (sqrt.f64 (+.f64 x 1)) (-.f64 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 (-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 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))) 1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 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 x 1)) (sqrt.f64 (-.f64 1 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.f64 (sqrt.f64 (-.f64 1 x)) 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 x 1)) (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/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) (*.f64 (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 x 1)) (sqrt.f64 (-.f64 1 x))) 1/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 (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 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))) -2)))) (#(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 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) (*.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 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 4) -1) 4)))) (#(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 not (not (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))))))))
((#(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 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (-.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (-.f64 1 x)))))))
((#(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 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))))) (#(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 (*.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 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))))) (#(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 (/.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 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 x 1))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (+.f64 x 1)))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (+.f64 x 1)))))))

simplify214.0ms (5.8%)

Algorithm
egg-herbie
Rules
3082×rational.json-simplify-2
1802×rational.json-simplify-35
1596×rational.json-simplify-52
1228×rational.json-simplify-1
834×rational.json-simplify-51
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01632066
13182066
28381658
320091658
437021658
548651658
657841658
764481658
869051658
974081658
Stop Event
node limit
Counts
86 → 112
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 (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 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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))) -1)
(+.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 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 x 1)) (sqrt.f64 (-.f64 1 x))) 1/2))
(*.f64 2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.f64 (sqrt.f64 (-.f64 1 x)) 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 x 1)) (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/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) (*.f64 (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 x 1)) (sqrt.f64 (-.f64 1 x))) 1/2) 2)
(*.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 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 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) 16)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 4) -4)
(/.f64 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))))) 4)
(/.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) 4) -1) 4)
(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 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)
(+.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 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 4) 1/4)
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 x 1)) 2))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) 2)
(*.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 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)
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 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)) (+.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 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.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 x -1/2) (+.f64 1 (*.f64 -1/8 (pow.f64 x 2))))
(+.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 -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 (*.f64 x -1/2) (+.f64 1 (+.f64 (*.f64 (pow.f64 x 3) -1/16) (*.f64 -1/8 (pow.f64 x 2)))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) -1/16))))
(+.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 1 (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 x 1/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 (*.f64 x 1/2) (+.f64 1 (*.f64 (pow.f64 x 3) 1/16))))
(+.f64 1 (+.f64 (*.f64 x 1/2) (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 (pow.f64 x 3) 1/16))))
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.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)) (sqrt.f64 (-.f64 1 x)))
(+.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 -1 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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))) 1/2))
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) (*.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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 4 (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(*.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(*.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 x 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)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))) -1)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))) -2)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) 2)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (sqrt.f64 (-.f64 1 x))) 8)) (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 x 1)) (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)) (sqrt.f64 (-.f64 1 x)))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1))))) (neg.f64 (*.f64 2 (-.f64 (sqrt.f64 (-.f64 1 x)) (sqrt.f64 (+.f64 x 1)))))) 4)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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))) 4) -1) 4)
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (sqrt.f64 (+.f64 x 1)) (-.f64 1 (sqrt.f64 (-.f64 1 x)))))
(-.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 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 1 x)) 8))) 32)
(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 4 (/.f64 (sqrt.f64 (+.f64 x 1)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 2) 1/2)
(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 1/4 (*.f64 (sqrt.f64 (+.f64 x 1)) 4))
(sqrt.f64 (+.f64 x 1))
(*.f64 (*.f64 (sqrt.f64 (+.f64 x 1)) 1/2) 2)
(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 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 x 1)) 8))) 32)
(sqrt.f64 (+.f64 x 1))

eval34.0ms (0.9%)

Compiler

Compiled 1582 to 1308 computations (17.3% saved)

prune16.0ms (0.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1084112
Fresh000
Picked011
Done000
Total1085113
Error
0b
Counts
113 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
58.5b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.1b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
0b
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.4b
x
Compiler

Compiled 54 to 42 computations (22.2% saved)

localize29.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/8 (pow.f64 x 3))
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 79 to 63 computations (20.3% saved)

series5.0ms (0.1%)

Counts
4 → 12
Calls

12 calls:

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

rewrite110.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
1646×bool.json-1
1646×bool.json-2
1578×rational.json-1
1578×rational.json-2
1070×bool.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01788
116588
238488
374688
4160288
5337488
6624188
Stop Event
node limit
Counts
4 → 56
Calls
Call 1
Inputs
(*.f64 7/128 (pow.f64 x 5))
(*.f64 33/1024 (pow.f64 x 7))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/8 (pow.f64 x 3))
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 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 7/128 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 7/128 (pow.f64 x 5)) (*.f64 7/128 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 7/128 (pow.f64 x 5)) (*.f64 7/128 (pow.f64 x 5)))))))
((#(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 33/1024 (pow.f64 x 7)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 33/1024 (pow.f64 x 7))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 33/1024 (pow.f64 x 7)) (*.f64 33/1024 (pow.f64 x 7)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 33/1024 (pow.f64 x 7)) (*.f64 33/1024 (pow.f64 x 7)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2) (*.f64 (pow.f64 x 3) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (/.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) (*.f64 (pow.f64 x 3) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2) (*.f64 (pow.f64 x 5) 7/64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2) (*.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 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/8 (pow.f64 x 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/8 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (pow.f64 x 3) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/8 (pow.f64 x 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 x 3) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/8 (pow.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 2) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 4) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 1/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 3) 8) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) 128)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/8 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/8 (pow.f64 x 3)) (*.f64 1/8 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/8 (pow.f64 x 3)) (*.f64 1/8 (pow.f64 x 3)))))))

simplify637.0ms (17.3%)

Algorithm
egg-herbie
Rules
5110×rational.json-simplify-35
1652×rational.json-simplify-2
1582×rational.json-simplify-1
952×rational.json-simplify-41
948×rational.json-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01312066
12752066
26212066
317472066
441032066
545102066
648652066
750782066
852742066
952742066
1062192066
1162262066
1262332066
1362332066
1464132066
1565932066
1667732066
1769532066
1871332066
1973132066
2073132066
2174932066
2276732066
2378532066
Stop Event
node limit
Counts
68 → 66
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 3))
(+.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 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))
(*.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))
(*.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))
(+.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 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)
(+.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 33/1024 (pow.f64 x 7)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8))) 32)
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 0)
(*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)
(*.f64 1 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))))
(*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2))
(*.f64 2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (/.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))
(*.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) (*.f64 (pow.f64 x 3) 1/2)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2))
(*.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2) (*.f64 (pow.f64 x 5) 7/64)))
(*.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2) (*.f64 (pow.f64 x 3) 1/4)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2) 2)
(*.f64 (/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)
(/.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8))) 32)
(+.f64 (*.f64 1/8 (pow.f64 x 3)) 0)
(+.f64 0 (*.f64 1/8 (pow.f64 x 3)))
(+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (pow.f64 x 3) 1/16))
(-.f64 (*.f64 1/8 (pow.f64 x 3)) 0)
(/.f64 (pow.f64 x 3) 8)
(/.f64 (*.f64 1/8 (pow.f64 x 3)) 1)
(/.f64 (*.f64 (pow.f64 x 3) 2) 16)
(/.f64 (*.f64 (pow.f64 x 3) 1/4) 2)
(/.f64 (*.f64 (pow.f64 x 3) 4) 32)
(/.f64 (*.f64 (pow.f64 x 3) 1/2) 4)
(/.f64 (*.f64 (pow.f64 x 3) 8) 64)
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) 128)
Outputs
(*.f64 1/8 (pow.f64 x 3))
(+.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 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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)) (*.f64 1/8 (pow.f64 x 3))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.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 (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8)) (*.f64 2 (*.f64 (*.f64 7/128 (pow.f64 x 5)) 8))) 32)
(*.f64 7/128 (pow.f64 x 5))
(+.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 33/1024 (pow.f64 x 7)) 8) 8)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) 16)
(*.f64 33/1024 (pow.f64 x 7))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8)) (*.f64 2 (*.f64 (*.f64 33/1024 (pow.f64 x 7)) 8))) 32)
(*.f64 33/1024 (pow.f64 x 7))
(-.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 0)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2)))
(*.f64 2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 1/2) (*.f64 (pow.f64 x 3) 1/16)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (/.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 5) 7/256) (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 1/2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 1/4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 4) (*.f64 (pow.f64 x 3) 1/2)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3))) 2) (*.f64 (pow.f64 x 5) 7/64)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/2 (+.f64 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2) (*.f64 (pow.f64 x 3) 1/4)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 3) 1/4) (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))) 2)))
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1/2) 2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 1)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 2) 2)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 4) 4)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8) 8)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) 16)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 33/1024 (pow.f64 x 7)) (*.f64 1/8 (pow.f64 x 3)))) 8))) 32)
(+.f64 (*.f64 7/128 (pow.f64 x 5)) (+.f64 (*.f64 1/8 (pow.f64 x 3)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7))))
(+.f64 (*.f64 1/8 (pow.f64 x 3)) 0)
(*.f64 1/8 (pow.f64 x 3))
(+.f64 0 (*.f64 1/8 (pow.f64 x 3)))
(*.f64 1/8 (pow.f64 x 3))
(+.f64 (*.f64 (pow.f64 x 3) 1/16) (*.f64 (pow.f64 x 3) 1/16))
(*.f64 1/8 (pow.f64 x 3))
(-.f64 (*.f64 1/8 (pow.f64 x 3)) 0)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (pow.f64 x 3) 8)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 1/8 (pow.f64 x 3)) 1)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 (pow.f64 x 3) 2) 16)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 (pow.f64 x 3) 1/4) 2)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 (pow.f64 x 3) 4) 32)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 (pow.f64 x 3) 1/2) 4)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 (pow.f64 x 3) 8) 64)
(*.f64 1/8 (pow.f64 x 3))
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) 128)
(*.f64 1/8 (pow.f64 x 3))

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 14 computations (26.3% saved)

localize18.0ms (0.5%)

Local error

Found 2 expressions with local error:

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

Compiled 42 to 32 computations (23.8% saved)

eval42.0ms (1.1%)

Compiler

Compiled 1930 to 1568 computations (18.8% saved)

prune12.0ms (0.3%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New1010101
Fresh011
Picked011
Done033
Total1015106
Error
0b
Counts
106 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
58.5b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.1b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
0b
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.4b
x
Compiler

Compiled 54 to 42 computations (22.2% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune2.0ms (0.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done044
Total055
Error
0b
Counts
5 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
58.5b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.1b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
0b
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.4b
x
Compiler

Compiled 54 to 42 computations (22.2% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune3.0ms (0.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done044
Total055
Error
0b
Counts
5 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
58.5b
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
0.0b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 x (*.f64 7/128 (pow.f64 x 5))))
0.1b
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
0b
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
0.4b
x
Compiler

Compiled 54 to 42 computations (22.2% saved)

regimes9.0ms (0.3%)

Counts
6 → 1
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/8 (pow.f64 x 3)) x)
(-.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 (-.f64 1 x)))
(-.f64 (sqrt.f64 (-.f64 x -1)) (sqrt.f64 (-.f64 1 x)))
(+.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 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
Outputs
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.f64 (*.f64 7/128 (pow.f64 x 5)) (*.f64 33/1024 (pow.f64 x 7)))))
Calls

2 calls:

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

Compiled 71 to 54 computations (23.9% saved)

regimes8.0ms (0.2%)

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

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

Compiled 52 to 39 computations (25% saved)

regimes7.0ms (0.2%)

Accuracy

Total -58.6b remaining (-55172.5%)

Threshold costs -58.6b (-55172.5%)

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

2 calls:

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

Compiled 39 to 29 computations (25.6% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021112
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 x (+.f64 (*.f64 1/8 (pow.f64 x 3)) (+.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 44 to 34 computations (22.7% saved)

soundness207.0ms (5.6%)

Algorithm
egg-herbie
Rules
3082×rational.json-simplify-2
1802×rational.json-simplify-35
1596×rational.json-simplify-52
1228×rational.json-simplify-1
834×rational.json-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
11327
01632066
13182066
28381658
320091658
437021658
548651658
657841658
764481658
869051658
974081658
Stop Event
node limit
saturated
Compiler

Compiled 115 to 91 computations (20.9% saved)

end36.0ms (1%)

Compiler

Compiled 41 to 31 computations (24.4% saved)

Profiling

Loading profile data...