Details

Time bar (total: 20.1s)

analyze28.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
62.5%62.4%37.5%0.1%0%0%0%5
66.7%62.4%31.2%0.1%6.2%0%0%6
75.9%68.7%21.9%0.1%9.4%0%0%7
80%68.7%17.2%0.1%14%0%0%8
86%71.8%11.7%0.1%16.4%0%0%9
88.9%71.8%9%0.1%19.1%0%0%10
92.4%73.4%6%0.1%20.5%0%0%11
94.1%73.4%4.6%0.1%22%0%0%12
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample12.9s (64%)

Results
6.3s1749×body1024valid
5.1s3820×body256valid
735.0ms1164×body512valid
622.0ms1523×body2048valid
27.0ms325×body256infinite
Bogosity

preprocess16.0ms (0.1%)

Algorithm
egg-herbie
Rules
rational.json-simplify-16
swap-a-x
rational.json-simplify-2
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01234
11534
21634
022
122
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
0
Call 2
Inputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(-.f64 (exp.f64 (*.f64 x a)) 1)
Outputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(-.f64 (exp.f64 (*.f64 x a)) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)
Symmetry

(sort a x)

Compiler

Compiled 10 to 8 computations (20% saved)

simplify8.0ms (0%)

Algorithm
egg-herbie
Rules
rational.json-simplify-16
rational.json-simplify-2
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
11217
21317
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
Outputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)

eval0.0ms (0%)

Compiler

Compiled 14 to 8 computations (42.9% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
25.9b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
25.9b
(-.f64 (exp.f64 (*.f64 a x)) 1)
Compiler

Compiled 8 to 6 computations (25% saved)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(exp.f64 (*.f64 a x))
3.2b
(-.f64 (exp.f64 (*.f64 a x)) 1)
Compiler

Compiled 18 to 7 computations (61.1% saved)

series2.0ms (0%)

Counts
2 → 16
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(-.f64 (exp.f64 (*.f64 a x)) 1)
0.0ms
x
@0
(-.f64 (exp.f64 (*.f64 a x)) 1)
0.0ms
a
@-inf
(-.f64 (exp.f64 (*.f64 a x)) 1)
0.0ms
x
@-inf
(-.f64 (exp.f64 (*.f64 a x)) 1)
0.0ms
a
@inf
(-.f64 (exp.f64 (*.f64 a x)) 1)

rewrite190.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1728×rational.json-simplify-35
1540×rational.json-1
1540×rational.json-2
1540×rational.json-3
1218×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
16828
215128
328328
450728
5108928
6272928
7466728
8583328
9753528
Stop Event
node limit
Counts
2 → 72
Calls
Call 1
Inputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(exp.f64 (*.f64 a x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (*.f64 a x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (exp.f64 (*.f64 a x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (exp.f64 (*.f64 a x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (exp.f64 (*.f64 a x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (*.f64 a x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (*.f64 a x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (*.f64 (exp.f64 (*.f64 a x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (*.f64 a x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 a x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (*.f64 a x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (exp.f64 (*.f64 a x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (exp.f64 (*.f64 a x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (exp.f64 (*.f64 a x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (exp.f64 (*.f64 a x)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 a (*.f64 x 1/2))) (exp.f64 (*.f64 a (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (*.f64 a x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 a x)) (exp.f64 (*.f64 a x))) (exp.f64 (*.f64 a x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 a x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (exp.f64 (*.f64 a x)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (exp.f64 (*.f64 a x))))))))

simplify334.0ms (1.7%)

Algorithm
egg-herbie
Rules
1172×rational.json-simplify-38
964×rational.json-simplify-44
858×rational.json-simplify-61
802×rational.json-simplify-47
760×rational.json-simplify-41
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01531808
13561604
212331598
355301598
Stop Event
node limit
Counts
88 → 99
Calls
Call 1
Inputs
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (*.f64 a x)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (*.f64 a x)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 0)
(+.f64 0 (+.f64 (exp.f64 (*.f64 a x)) -1))
(+.f64 -1 (exp.f64 (*.f64 a x)))
(+.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))
(+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) -1))
(*.f64 1 (+.f64 (exp.f64 (*.f64 a x)) -1))
(*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))
(*.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 1/2)
(*.f64 4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4))
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 1/4)
(*.f64 1/2 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2))
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 1/8)
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4))
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))
(/.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(/.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 2)
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 4)
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) 128)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))))) 256)
(pow.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(+.f64 (exp.f64 (*.f64 a x)) 0)
(+.f64 0 (exp.f64 (*.f64 a x)))
(+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (*.f64 (exp.f64 (*.f64 a x)) 1/2))
(-.f64 (exp.f64 (*.f64 a x)) 0)
(*.f64 (exp.f64 (*.f64 a x)) 1)
(*.f64 1 (exp.f64 (*.f64 a x)))
(*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 1/2))
(*.f64 2 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)))
(*.f64 4 (*.f64 (exp.f64 (*.f64 a x)) 1/4))
(*.f64 4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 1/2)
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 1/4)
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 a x)) 2))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 1/8)
(*.f64 1/4 (*.f64 (exp.f64 (*.f64 a x)) 4))
(*.f64 1/4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) 2)
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4) 4)
(*.f64 1/8 (*.f64 (exp.f64 (*.f64 a x)) 8))
(*.f64 1/8 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)))
(*.f64 (exp.f64 (*.f64 a (*.f64 x 1/2))) (exp.f64 (*.f64 a (*.f64 x 1/2))))
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)) 2)
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)) 4)
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 1/4)
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 1/8)
(/.f64 (exp.f64 (*.f64 a x)) 1)
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 2)
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 4)
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 128)
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) (exp.f64 (*.f64 a x))) (exp.f64 (*.f64 a x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 256)
(/.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 4)
(/.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 8)
(/.f64 (fabs.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 16)
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 32)
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 64)
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 128)
(pow.f64 (exp.f64 (*.f64 a x)) 1)
(fabs.f64 (exp.f64 (*.f64 a x)))
(fabs.f64 (-.f64 0 (exp.f64 (*.f64 a x))))
Outputs
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (*.f64 a x)))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) 1))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) 1)))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) 1))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)))
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (*.f64 a x)))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) 1))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) 1)))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) 1))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 0)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 0 (+.f64 (exp.f64 (*.f64 a x)) -1))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 -1 (exp.f64 (*.f64 a x)))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) -1))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 1 (+.f64 (exp.f64 (*.f64 a x)) -1))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 1/2)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 1/4)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 1/2 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 1/8)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/2) 2)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 1/4 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1/4) 4)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(*.f64 1/8 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (+.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) -2) 2)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 4) 4)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8) 8)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)) 16)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))) 32)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))) 64)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) 128)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 8)))))) 256)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(pow.f64 (+.f64 (exp.f64 (*.f64 a x)) -1) 1)
(+.f64 (exp.f64 (*.f64 a x)) -1)
(+.f64 (exp.f64 (*.f64 a x)) 0)
(exp.f64 (*.f64 a x))
(+.f64 0 (exp.f64 (*.f64 a x)))
(exp.f64 (*.f64 a x))
(+.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) (*.f64 (exp.f64 (*.f64 a x)) 1/2))
(exp.f64 (*.f64 a x))
(-.f64 (exp.f64 (*.f64 a x)) 0)
(exp.f64 (*.f64 a x))
(*.f64 (exp.f64 (*.f64 a x)) 1)
(exp.f64 (*.f64 a x))
(*.f64 1 (exp.f64 (*.f64 a x)))
(exp.f64 (*.f64 a x))
(*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 1/2))
(exp.f64 (*.f64 a x))
(*.f64 2 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 4 (*.f64 (exp.f64 (*.f64 a x)) 1/4))
(exp.f64 (*.f64 a x))
(*.f64 4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 1/2)
(exp.f64 (*.f64 a x))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 1/4)
(exp.f64 (*.f64 a x))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 a x)) 2))
(exp.f64 (*.f64 a x))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 1/8)
(exp.f64 (*.f64 a x))
(*.f64 1/4 (*.f64 (exp.f64 (*.f64 a x)) 4))
(exp.f64 (*.f64 a x))
(*.f64 1/4 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2) 2)
(exp.f64 (*.f64 a x))
(*.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4) 4)
(exp.f64 (*.f64 a x))
(*.f64 1/8 (*.f64 (exp.f64 (*.f64 a x)) 8))
(exp.f64 (*.f64 a x))
(*.f64 1/8 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (exp.f64 (*.f64 a (*.f64 x 1/2))) (exp.f64 (*.f64 a (*.f64 x 1/2))))
(exp.f64 (+.f64 (*.f64 a (*.f64 x 1/2)) (*.f64 a (*.f64 x 1/2))))
(exp.f64 (*.f64 (*.f64 x 1/2) (+.f64 a a)))
(exp.f64 (*.f64 a (*.f64 x 1)))
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/2)) 2)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 1/4)) 4)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 1/4)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 1/8)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (exp.f64 (*.f64 a x)) 1)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 2) 2)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 4) 4)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) 8) 8)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)) 16)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 32)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 64)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 128)
(exp.f64 (*.f64 a x))
(/.f64 (*.f64 (exp.f64 (*.f64 a x)) (exp.f64 (*.f64 a x))) (exp.f64 (*.f64 a x)))
(exp.f64 (*.f64 a x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 256)
(exp.f64 (*.f64 a x))
(/.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 4)) 4)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (fabs.f64 (*.f64 (exp.f64 (*.f64 a x)) 8)) 8)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (fabs.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))) 16)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))) 32)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8))))) 64)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(/.f64 (fabs.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 a x)) 8)))))) 128)
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))
(pow.f64 (exp.f64 (*.f64 a x)) 1)
(exp.f64 (*.f64 a x))
(fabs.f64 (exp.f64 (*.f64 a x)))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (-.f64 0 (exp.f64 (*.f64 a x))))
(*.f64 2 (fabs.f64 (*.f64 1/2 (exp.f64 (*.f64 a x)))))
(fabs.f64 (exp.f64 (*.f64 a x)))

eval22.0ms (0.1%)

Compiler

Compiled 1291 to 798 computations (38.2% saved)

prune18.0ms (0.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New93699
Fresh000
Picked011
Done000
Total937100
Error
0.1b
Counts
100 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
49.9b
(-.f64 (+.f64 (*.f64 a x) 1) 1)
25.9b
(-.f64 (exp.f64 (*.f64 a x)) 1)
51.1b
(-.f64 1 1)
24.2b
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
24.4b
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
24.8b
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
24.4b
(*.f64 a x)
Compiler

Compiled 172 to 114 computations (33.7% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (*.f64 a x) 2)
0.2b
(pow.f64 (*.f64 a x) 3)
5.2b
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
15.5b
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
Compiler

Compiled 65 to 34 computations (47.7% saved)

series8.0ms (0%)

Counts
4 → 96
Calls

24 calls:

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

rewrite116.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
015112
1103112
2214112
3446112
4933112
52451112
64426112
75682112
Stop Event
node limit
Counts
4 → 161
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (*.f64 a x) 3)
(pow.f64 (*.f64 a x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 a x) 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 a x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 a x) 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a x) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 a x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a 3) (pow.f64 x 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 3) (pow.f64 a 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (pow.f64 (*.f64 a x) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 2 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 2 (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (*.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (*.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (pow.f64 (*.f64 a x) 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 a x) 3) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3) 8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 (pow.f64 x 3) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 (pow.f64 a 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 (pow.f64 a 3) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 (pow.f64 x 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 64 (pow.f64 (/.f64 (*.f64 a x) 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 128 (*.f64 (pow.f64 (/.f64 x 4) 3) (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 128 (*.f64 (pow.f64 (/.f64 a 4) 3) (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 3) 1/64)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (pow.f64 (*.f64 a 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (pow.f64 (*.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 a x) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))))) 128)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 a x) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 a x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 a x) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 a x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a 2) (pow.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 2) (pow.f64 a 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 2 (pow.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/2 (pow.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/4 (*.f64 2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/4 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (/.f64 (pow.f64 (*.f64 a x) 2) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 (pow.f64 a 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 (pow.f64 a 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 (pow.f64 x 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 a 2) 1/4) (*.f64 (pow.f64 x 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 (pow.f64 a 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (pow.f64 (/.f64 (*.f64 a x) 4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 32 (*.f64 (pow.f64 (/.f64 x 4) 2) (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 32 (*.f64 (pow.f64 (/.f64 a 4) 2) (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (pow.f64 (*.f64 x 4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (pow.f64 (*.f64 a 4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 2 (pow.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 2) 1/16)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 a x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))))) 128)))))

simplify466.0ms (2.3%)

Algorithm
egg-herbie
Rules
3400×rational.json-simplify-2
2466×rational.json-simplify-35
1502×rational.json-simplify-1
1456×rational.json-simplify-53
1102×rational.json-simplify-43
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03335957
17875897
219475897
330225897
442135897
544965897
647535897
749375897
858145897
961755897
1067255897
1168665897
1268665897
1372155897
1475105897
1576845897
Stop Event
node limit
Counts
257 → 193
Calls
Call 1
Inputs
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(-.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 0)
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))
(*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(*.f64 1 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))))
(*.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 1/4)
(*.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))
(*.f64 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)
(/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(/.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))))) 128)
(pow.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(-.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 0)
(*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))))
(*.f64 1/2 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))
(*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(*.f64 1 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))) 2)
(*.f64 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)
(*.f64 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))) 1/2)
(/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))))) 128)
(pow.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(+.f64 (pow.f64 (*.f64 a x) 3) 0)
(+.f64 0 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))
(-.f64 (pow.f64 (*.f64 a x) 3) 0)
(*.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 3)))
(*.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))
(*.f64 (pow.f64 (*.f64 a x) 3) 1)
(*.f64 1 (pow.f64 (*.f64 a x) 3))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(*.f64 (pow.f64 x 3) (pow.f64 a 3))
(*.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 1/2)
(*.f64 4 (/.f64 (pow.f64 (*.f64 a x) 3) 4))
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3))))
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3)))
(*.f64 (*.f64 2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3)))
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 1/4)
(*.f64 8 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3))
(*.f64 (*.f64 (pow.f64 x 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 3))))
(*.f64 (*.f64 (pow.f64 a 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) 2)
(*.f64 1/4 (*.f64 (pow.f64 (*.f64 a x) 3) 4))
(*.f64 1/4 (*.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 1/2 (pow.f64 a 3))))
(*.f64 1/4 (*.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 1/2 (pow.f64 x 3))))
(*.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 8)))
(*.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 8)))
(*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 2 (pow.f64 x 3)))
(*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 2 (pow.f64 a 3)))
(*.f64 16 (*.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 1/2 (pow.f64 a 3))))
(*.f64 16 (*.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 1/2 (pow.f64 x 3))))
(*.f64 16 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 1/8)))
(*.f64 16 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 1/8)))
(*.f64 1/8 (*.f64 (pow.f64 (*.f64 a x) 3) 8))
(*.f64 (/.f64 (pow.f64 (*.f64 a x) 3) 4) 4)
(*.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3) 8)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 8) 1/8)
(*.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 (pow.f64 x 3) 1/8))
(*.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 (pow.f64 a 3) 8))
(*.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 (pow.f64 a 3) 1/8))
(*.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 (pow.f64 x 3) 8))
(*.f64 64 (pow.f64 (/.f64 (*.f64 a x) 4) 3))
(*.f64 128 (*.f64 (pow.f64 (/.f64 x 4) 3) (*.f64 1/2 (pow.f64 a 3))))
(*.f64 128 (*.f64 (pow.f64 (/.f64 a 4) 3) (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 a 3))))
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 3) 1/64)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 a 3))))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 x 3))))
(*.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 a 3))))
(*.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (pow.f64 (*.f64 a 4) 3)))
(*.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (pow.f64 (*.f64 x 4) 3)))
(/.f64 (pow.f64 (*.f64 a x) 3) 1)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 2)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))))) 128)
(+.f64 (pow.f64 (*.f64 a x) 2) 0)
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 0 (pow.f64 (*.f64 a x) 2))
(-.f64 (pow.f64 (*.f64 a x) 2) 0)
(*.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 4)))
(*.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 2 (*.f64 (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 4)))
(*.f64 2 (*.f64 (*.f64 4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 1/4)))
(*.f64 (pow.f64 (*.f64 a x) 2) 1)
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 2)
(*.f64 1 (pow.f64 (*.f64 a x) 2))
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(*.f64 (pow.f64 x 2) (pow.f64 a 2))
(*.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 1/2)
(*.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 2 (pow.f64 a 2)))
(*.f64 4 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2))
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/2 (pow.f64 a 2)))
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)))
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/4 (*.f64 2 (pow.f64 a 2))))
(*.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 1/4)
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)))
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/4 (*.f64 2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 2 (pow.f64 x 2)))
(*.f64 8 (/.f64 (pow.f64 (*.f64 a x) 2) 8))
(*.f64 8 (*.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 1/2 (pow.f64 a 2))))
(*.f64 8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 (pow.f64 a 2) 1/4)))
(*.f64 8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 1/4)))
(*.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 (pow.f64 a 2) 1/4))
(*.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 2))))
(*.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 (pow.f64 x 2) 1/4))
(*.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 2))))
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(*.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2) 4)
(*.f64 (*.f64 (pow.f64 a 2) 1/4) (*.f64 (pow.f64 x 2) 4))
(*.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 (pow.f64 a 2) 4))
(*.f64 16 (pow.f64 (/.f64 (*.f64 a x) 4) 2))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 a 2))))
(*.f64 32 (*.f64 (pow.f64 (/.f64 x 4) 2) (*.f64 1/2 (pow.f64 a 2))))
(*.f64 32 (*.f64 (pow.f64 (/.f64 a 4) 2) (*.f64 1/2 (pow.f64 x 2))))
(*.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (pow.f64 (*.f64 x 4) 2)))
(*.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (pow.f64 (*.f64 a 4) 2)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 2 (pow.f64 x 2)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 2 (pow.f64 a 2)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 a 2))))
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 2) 1/16)
(*.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 2))))
(*.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 2))))
(/.f64 (pow.f64 (*.f64 a x) 2) 1)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 2)
(/.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 4)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)) 8)
(/.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))))) 128)
Outputs
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(-.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 0)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 1/2)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 4 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 1/4)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))) 2)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4) 4)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)) 8)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))) 16)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))) 32)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) 64)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 4)))))) 128)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))) 1)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(-.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 0)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 1/2)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 4 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 1/4)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))) 2)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 a x) 2) (*.f64 a (+.f64 x x))) 1/2)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (+.f64 (*.f64 a x) (+.f64 (*.f64 a x) (pow.f64 (*.f64 a x) 2))) 2)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4) 4)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)) 8)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))) 16)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))) 32)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) 64)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 4)))))) 128)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) 1)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (pow.f64 (*.f64 a x) 3) 0)
(pow.f64 (*.f64 a x) 3)
(+.f64 0 (pow.f64 (*.f64 a x) 3))
(pow.f64 (*.f64 a x) 3)
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))
(pow.f64 (*.f64 a x) 3)
(-.f64 (pow.f64 (*.f64 a x) 3) 0)
(pow.f64 (*.f64 a x) 3)
(*.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 (*.f64 a x) 3) 1)
(pow.f64 (*.f64 a x) 3)
(*.f64 1 (pow.f64 (*.f64 a x) 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 a 3) (pow.f64 x 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 x 3) (pow.f64 a 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 1/2)
(pow.f64 (*.f64 a x) 3)
(*.f64 4 (/.f64 (pow.f64 (*.f64 a x) 3) 4))
(pow.f64 (*.f64 a x) 3)
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 a 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (pow.f64 a 3)) (*.f64 1/2 (pow.f64 x 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 1/4)
(pow.f64 (*.f64 a x) 3)
(*.f64 8 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 x 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 a 3) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 3)) 2)
(pow.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (pow.f64 (*.f64 a x) 3) 4))
(pow.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 8)))
(pow.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 8)))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 2 (pow.f64 x 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 2 (pow.f64 a 3)))
(pow.f64 (*.f64 a x) 3)
(*.f64 16 (*.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 16 (*.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 16 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (*.f64 (pow.f64 x 3) 1/8)))
(pow.f64 (*.f64 a x) 3)
(*.f64 16 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (pow.f64 a 3) 1/8)))
(pow.f64 (*.f64 a x) 3)
(*.f64 1/8 (*.f64 (pow.f64 (*.f64 a x) 3) 8))
(pow.f64 (*.f64 a x) 3)
(*.f64 (/.f64 (pow.f64 (*.f64 a x) 3) 4) 4)
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 3) 8)
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 8) 1/8)
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 a 3) 8) (*.f64 (pow.f64 x 3) 1/8))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 x 3) 1/8) (*.f64 (pow.f64 a 3) 8))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 x 3) 8) (*.f64 (pow.f64 a 3) 1/8))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (pow.f64 a 3) 1/8) (*.f64 (pow.f64 x 3) 8))
(pow.f64 (*.f64 a x) 3)
(*.f64 64 (pow.f64 (/.f64 (*.f64 a x) 4) 3))
(*.f64 64 (pow.f64 (*.f64 a (/.f64 x 4)) 3))
(*.f64 128 (*.f64 (pow.f64 (/.f64 x 4) 3) (*.f64 1/2 (pow.f64 a 3))))
(*.f64 128 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (pow.f64 (/.f64 x 4) 3)))
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a (/.f64 x 4)) 3) 128))
(*.f64 1/2 (*.f64 128 (pow.f64 (*.f64 a (/.f64 x 4)) 3)))
(*.f64 128 (*.f64 (pow.f64 (/.f64 a 4) 3) (*.f64 1/2 (pow.f64 x 3))))
(*.f64 128 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (pow.f64 (/.f64 x 4) 3)))
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a (/.f64 x 4)) 3) 128))
(*.f64 1/2 (*.f64 128 (pow.f64 (*.f64 a (/.f64 x 4)) 3)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 8)) (*.f64 1/8 (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 3) 1/64)
(*.f64 (*.f64 64 (pow.f64 (*.f64 a x) 3)) 1/64)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 64) 1/64)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 a 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 3) 1/8)) (*.f64 8 (*.f64 1/2 (pow.f64 x 3))))
(pow.f64 (*.f64 a x) 3)
(*.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 x 3))))
(*.f64 1/64 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 2 (*.f64 (pow.f64 a 3) 64))))
(*.f64 (*.f64 (pow.f64 a 3) 128) (*.f64 (pow.f64 x 3) 1/128))
(*.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 3)) (*.f64 1/64 (*.f64 1/2 (pow.f64 a 3))))
(*.f64 1/64 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 2 (*.f64 (pow.f64 a 3) 64))))
(*.f64 (*.f64 (pow.f64 a 3) 128) (*.f64 (pow.f64 x 3) 1/128))
(*.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 x 3)) (pow.f64 (*.f64 a 4) 3)))
(*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (*.f64 (pow.f64 a 3) 64) 1/32))
(*.f64 1/32 (*.f64 1/2 (pow.f64 (*.f64 a (*.f64 x 4)) 3)))
(*.f64 1/32 (*.f64 1/2 (*.f64 64 (pow.f64 (*.f64 a x) 3))))
(*.f64 1/32 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 a x) 3) 64)))
(*.f64 1/32 (*.f64 (*.f64 1/2 (pow.f64 a 3)) (pow.f64 (*.f64 x 4) 3)))
(*.f64 (*.f64 1/2 (pow.f64 x 3)) (*.f64 (*.f64 (pow.f64 a 3) 64) 1/32))
(*.f64 1/32 (*.f64 1/2 (pow.f64 (*.f64 a (*.f64 x 4)) 3)))
(*.f64 1/32 (*.f64 1/2 (*.f64 64 (pow.f64 (*.f64 a x) 3))))
(*.f64 1/32 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 a x) 3) 64)))
(/.f64 (pow.f64 (*.f64 a x) 3) 1)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) 2)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 4) 4)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)) 8)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))) 16)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))) 32)
(pow.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) 64)
(pow.f64 (*.f64 a x) 3)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 3) 4)))))) 128)
(pow.f64 (*.f64 a x) 3)
(+.f64 (pow.f64 (*.f64 a x) 2) 0)
(pow.f64 (*.f64 a x) 2)
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (*.f64 a x) 2)
(+.f64 0 (pow.f64 (*.f64 a x) 2))
(pow.f64 (*.f64 a x) 2)
(-.f64 (pow.f64 (*.f64 a x) 2) 0)
(pow.f64 (*.f64 a x) 2)
(*.f64 1/2 (*.f64 2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 1/2 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 2 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 2 (*.f64 (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 2 (*.f64 (*.f64 4 (*.f64 1/2 (pow.f64 x 2))) (*.f64 (pow.f64 a 2) 1/4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 (*.f64 a x) 2) 1)
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 2)
(pow.f64 (*.f64 a x) 2)
(*.f64 1 (pow.f64 (*.f64 a x) 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 a 2) (pow.f64 x 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 x 2) (pow.f64 a 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 1/2)
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 2 (pow.f64 a 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 4 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/2 (pow.f64 a 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 1/4 (*.f64 2 (pow.f64 a 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 1/4)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/2 (pow.f64 x 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (pow.f64 a 2)) (*.f64 1/4 (*.f64 2 (pow.f64 x 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 2 (pow.f64 x 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 8 (/.f64 (pow.f64 (*.f64 a x) 2) 8))
(pow.f64 (*.f64 a x) 2)
(*.f64 8 (*.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 1/2 (pow.f64 a 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 (pow.f64 a 2) 1/4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (*.f64 (pow.f64 x 2) 1/4)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 (pow.f64 a 2) 1/4))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 x 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 (pow.f64 x 2) 1/4))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 a 2) 4) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(*.f64 (pow.f64 (*.f64 (*.f64 a x) 1/2) 2) 4)
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 a 2) 1/4) (*.f64 (pow.f64 x 2) 4))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (pow.f64 x 2) 1/4) (*.f64 (pow.f64 a 2) 4))
(pow.f64 (*.f64 a x) 2)
(*.f64 16 (pow.f64 (/.f64 (*.f64 a x) 4) 2))
(*.f64 16 (pow.f64 (*.f64 a (/.f64 x 4)) 2))
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 x 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 4)) (*.f64 1/4 (*.f64 1/2 (pow.f64 a 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 32 (*.f64 (pow.f64 (/.f64 x 4) 2) (*.f64 1/2 (pow.f64 a 2))))
(*.f64 32 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 (/.f64 x 4) 2))))
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a (/.f64 x 4)) 2) 32))
(*.f64 1/2 (*.f64 32 (pow.f64 (*.f64 a (/.f64 x 4)) 2)))
(*.f64 32 (*.f64 (pow.f64 (/.f64 a 4) 2) (*.f64 1/2 (pow.f64 x 2))))
(*.f64 32 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 (/.f64 x 4) 2))))
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a (/.f64 x 4)) 2) 32))
(*.f64 1/2 (*.f64 32 (pow.f64 (*.f64 a (/.f64 x 4)) 2)))
(*.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 a 2)) (pow.f64 (*.f64 x 4) 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 1/8 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (pow.f64 (*.f64 a 4) 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 2 (pow.f64 x 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 a 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 x 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 2 (pow.f64 a 2)))
(pow.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 1/4)) (*.f64 4 (*.f64 1/2 (pow.f64 a 2))))
(pow.f64 (*.f64 a x) 2)
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 2) 1/16)
(*.f64 (*.f64 16 (pow.f64 (*.f64 a x) 2)) 1/16)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 16) 1/16)
(*.f64 1/16 (*.f64 (pow.f64 (*.f64 a x) 2) 16))
(*.f64 (*.f64 2 (pow.f64 (*.f64 x 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 2))))
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 2) 1/16)
(*.f64 (*.f64 16 (pow.f64 (*.f64 a x) 2)) 1/16)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 16) 1/16)
(*.f64 1/16 (*.f64 (pow.f64 (*.f64 a x) 2) 16))
(*.f64 (*.f64 2 (pow.f64 (*.f64 a 4) 2)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (pow.f64 (*.f64 a (*.f64 x 4)) 2) 1/16)
(*.f64 (*.f64 16 (pow.f64 (*.f64 a x) 2)) 1/16)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 16) 1/16)
(*.f64 1/16 (*.f64 (pow.f64 (*.f64 a x) 2) 16))
(/.f64 (pow.f64 (*.f64 a x) 2) 1)
(pow.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 2)
(pow.f64 (*.f64 a x) 2)
(/.f64 (pow.f64 (*.f64 a (+.f64 x x)) 2) 4)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(/.f64 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)) 8)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(/.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))) 16)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))) 32)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) 64)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 a (+.f64 x x)) 2)))))) 128)
(*.f64 1/4 (pow.f64 (*.f64 a (+.f64 x x)) 2))

localize3.0ms (0%)

Compiler

Compiled 7 to 3 computations (57.1% saved)

localize3.0ms (0%)

Compiler

Compiled 6 to 6 computations (0% saved)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a x) 1)
3.2b
(-.f64 (+.f64 (*.f64 a x) 1) 1)
Compiler

Compiled 20 to 10 computations (50% saved)

series1.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite240.0ms (1.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0832
16620
216020
329320
460120
5139620
6293120
7442620
8565820
9710320
10789020
11798820
12798820
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 a x) 1) 1)
(+.f64 (*.f64 a x) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (*.f64 a x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 a x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 2 (+.f64 (*.f64 a x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (*.f64 a x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) -3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 3 (+.f64 (*.f64 a x) -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a x) 3) -3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 a 1/2)) (*.f64 x (*.f64 a 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) (*.f64 (+.f64 (*.f64 a x) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -3 (+.f64 (*.f64 a x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 a x) -1) 1/2) (*.f64 (+.f64 (*.f64 a x) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x a)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x (*.f64 a 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 a (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (+.f64 a a)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 a a) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 a 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (/.f64 a 8) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (*.f64 1/2 (*.f64 x 1/4)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (*.f64 1/2 (*.f64 a 1/4)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 a 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 4) (*.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (*.f64 a 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 x (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 1/4 (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 1/8 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 a 8)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 1/4 (*.f64 a 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 1/8 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 x (*.f64 a 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (+.f64 a a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 a 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/8 (*.f64 a 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/16 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/8 (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/16 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 x (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/4) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 1/4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/4) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 a a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 a 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 a 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x (*.f64 a 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 a x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) 1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 a x) 1) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 2 (*.f64 x (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 1) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 1) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a x) 1) 1)))))

simplify171.0ms (0.9%)

Algorithm
egg-herbie
Rules
2606×rational.json-simplify-51
1902×rational.json-simplify-2
1840×rational.json-simplify-35
1174×rational.json-simplify-53
730×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01711255
14021255
211621255
325961255
439671255
550721255
653811255
755461255
857011255
976131255
Stop Event
node limit
Counts
139 → 96
Calls
Call 1
Inputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
1
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
1
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 0)
(+.f64 1 (+.f64 (*.f64 a x) -1))
(+.f64 (+.f64 (*.f64 a x) 1) -1)
(+.f64 0 (*.f64 a x))
(+.f64 -1 (+.f64 (*.f64 a x) 1))
(+.f64 (+.f64 (*.f64 a x) -1) 1)
(+.f64 2 (+.f64 (*.f64 a x) -2))
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(+.f64 (+.f64 (*.f64 a x) -2) 2)
(+.f64 -2 (+.f64 (*.f64 a x) 2))
(+.f64 (+.f64 (*.f64 a x) -3) 3)
(+.f64 3 (+.f64 (*.f64 a x) -3))
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(+.f64 (*.f64 x (*.f64 a 1/2)) (*.f64 x (*.f64 a 1/2)))
(+.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) (*.f64 (+.f64 (*.f64 a x) -1) 1/2))
(+.f64 -3 (+.f64 (*.f64 a x) 3))
(+.f64 (*.f64 (+.f64 (*.f64 a x) -1) 1/2) (*.f64 (+.f64 (*.f64 a x) 1) 1/2))
(*.f64 a x)
(*.f64 x a)
(*.f64 (*.f64 a x) 1)
(*.f64 1 (*.f64 a x))
(*.f64 2 (*.f64 x (*.f64 a 1/2)))
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 (*.f64 x (+.f64 a a)) 1/2)
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 8 (*.f64 (/.f64 a 8) x))
(*.f64 8 (*.f64 (*.f64 1/2 (*.f64 x 1/4)) a))
(*.f64 8 (*.f64 (*.f64 1/2 (*.f64 a 1/4)) x))
(*.f64 (*.f64 x (*.f64 a 4)) 1/4)
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 1/2 (*.f64 x (+.f64 a a)))
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 (*.f64 a 8) (*.f64 1/4 (*.f64 x 1/2)))
(*.f64 (*.f64 a 8) (*.f64 1/8 x))
(*.f64 (*.f64 x (*.f64 a 8)) 1/8)
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 (*.f64 x 8) (*.f64 1/4 (*.f64 a 1/2)))
(*.f64 (*.f64 x 8) (*.f64 1/8 a))
(*.f64 1/4 (*.f64 x (*.f64 a 4)))
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 (*.f64 x (*.f64 a 1/2)) 2)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/8 (*.f64 a 1/2)))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/16 a))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/8 (*.f64 x 1/2)))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/16 x))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 1/8 (*.f64 x (*.f64 a 8)))
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(/.f64 (*.f64 a x) 1)
(/.f64 (*.f64 x (+.f64 a a)) 2)
(/.f64 (*.f64 x (*.f64 a 4)) 4)
(/.f64 (*.f64 x (*.f64 a 8)) 8)
(/.f64 (*.f64 2 (*.f64 x (*.f64 a 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))))) 256)
(pow.f64 (*.f64 a x) 1)
(-.f64 (*.f64 a x) -1)
(-.f64 (+.f64 (*.f64 a x) 1) 0)
(-.f64 (+.f64 (*.f64 a x) 2) 1)
(*.f64 1 (+.f64 (*.f64 a x) 1))
(*.f64 (+.f64 (*.f64 a x) 1) 1)
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 1/2))
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 1) 1/4))
(*.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 1/2)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 1/4)
(*.f64 1/2 (+.f64 2 (*.f64 x (+.f64 a a))))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 1/8)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 1) 4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) 2)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 1) 8))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/4) 4)
(/.f64 (+.f64 (*.f64 a x) 1) 1)
(/.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))))) 256)
(pow.f64 (+.f64 (*.f64 a x) 1) 1)
Outputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
1
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(*.f64 a x)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 1 (*.f64 a x))
(+.f64 (*.f64 a x) 1)
(+.f64 (*.f64 a x) 0)
(*.f64 a x)
(+.f64 1 (+.f64 (*.f64 a x) -1))
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) 1) -1)
(*.f64 a x)
(+.f64 0 (*.f64 a x))
(*.f64 a x)
(+.f64 -1 (+.f64 (*.f64 a x) 1))
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) -1) 1)
(*.f64 a x)
(+.f64 2 (+.f64 (*.f64 a x) -2))
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) -2) 2)
(*.f64 a x)
(+.f64 -2 (+.f64 (*.f64 a x) 2))
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) -3) 3)
(*.f64 a x)
(+.f64 3 (+.f64 (*.f64 a x) -3))
(*.f64 a x)
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(*.f64 a x)
(+.f64 (*.f64 x (*.f64 a 1/2)) (*.f64 x (*.f64 a 1/2)))
(*.f64 a x)
(+.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) (*.f64 (+.f64 (*.f64 a x) -1) 1/2))
(*.f64 a x)
(+.f64 -3 (+.f64 (*.f64 a x) 3))
(*.f64 a x)
(+.f64 (*.f64 (+.f64 (*.f64 a x) -1) 1/2) (*.f64 (+.f64 (*.f64 a x) 1) 1/2))
(*.f64 a x)
(*.f64 a x)
(*.f64 x a)
(*.f64 a x)
(*.f64 (*.f64 a x) 1)
(*.f64 a x)
(*.f64 1 (*.f64 a x))
(*.f64 a x)
(*.f64 2 (*.f64 x (*.f64 a 1/2)))
(*.f64 a x)
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 x (+.f64 a a)) 1/2)
(*.f64 a x)
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 a x)
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 a x)
(*.f64 8 (*.f64 (/.f64 a 8) x))
(*.f64 a x)
(*.f64 8 (*.f64 (*.f64 1/2 (*.f64 x 1/4)) a))
(*.f64 a x)
(*.f64 8 (*.f64 (*.f64 1/2 (*.f64 a 1/4)) x))
(*.f64 a x)
(*.f64 (*.f64 x (*.f64 a 4)) 1/4)
(*.f64 a x)
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 a x)
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 a x)
(*.f64 1/2 (*.f64 x (+.f64 a a)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 1/4 (*.f64 x 1/2)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 1/8 x))
(*.f64 a x)
(*.f64 (*.f64 x (*.f64 a 8)) 1/8)
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 1/4 (*.f64 a 1/2)))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 1/8 a))
(*.f64 a x)
(*.f64 1/4 (*.f64 x (*.f64 a 4)))
(*.f64 a x)
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 a x)
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 a x)
(*.f64 (*.f64 x (*.f64 a 1/2)) 2)
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/8 (*.f64 a 1/2)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/16 a))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/8 (*.f64 x 1/2)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/16 x))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 1/8 (*.f64 x (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 a x)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(*.f64 a x)
(/.f64 (*.f64 a x) 1)
(*.f64 a x)
(/.f64 (*.f64 x (+.f64 a a)) 2)
(*.f64 a x)
(/.f64 (*.f64 x (*.f64 a 4)) 4)
(*.f64 a x)
(/.f64 (*.f64 x (*.f64 a 8)) 8)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 x (*.f64 a 8))) 16)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))) 32)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))) 64)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8)))))) 128)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 x (*.f64 a 8))))))) 256)
(*.f64 a x)
(pow.f64 (*.f64 a x) 1)
(*.f64 a x)
(-.f64 (*.f64 a x) -1)
(+.f64 (*.f64 a x) 1)
(-.f64 (+.f64 (*.f64 a x) 1) 0)
(+.f64 (*.f64 a x) 1)
(-.f64 (+.f64 (*.f64 a x) 2) 1)
(+.f64 (*.f64 a x) 1)
(*.f64 1 (+.f64 (*.f64 a x) 1))
(+.f64 (*.f64 a x) 1)
(*.f64 (+.f64 (*.f64 a x) 1) 1)
(+.f64 (*.f64 a x) 1)
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 1/2))
(+.f64 (*.f64 a x) 1)
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 1) 1/4))
(+.f64 (*.f64 a x) 1)
(*.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 1/2)
(*.f64 1/2 (+.f64 2 (*.f64 x (+.f64 a a))))
(*.f64 1/2 (+.f64 2 (*.f64 a (+.f64 x x))))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 1/4)
(+.f64 (*.f64 a x) 1)
(*.f64 1/2 (+.f64 2 (*.f64 x (+.f64 a a))))
(*.f64 1/2 (+.f64 2 (*.f64 a (+.f64 x x))))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 1/8)
(+.f64 (*.f64 a x) 1)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 1) 4))
(+.f64 (*.f64 a x) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/2) 2)
(+.f64 (*.f64 a x) 1)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 1) 8))
(+.f64 (*.f64 a x) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 1) 1/4) 4)
(+.f64 (*.f64 a x) 1)
(/.f64 (+.f64 (*.f64 a x) 1) 1)
(+.f64 (*.f64 a x) 1)
(/.f64 (+.f64 2 (*.f64 x (+.f64 a a))) 2)
(/.f64 (+.f64 2 (*.f64 a (+.f64 x x))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 1) 4) 4)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 1) 8) 8)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)) 16)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))) 32)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))) 64)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8))))) 128)
(+.f64 (*.f64 a x) 1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 1) 8)))))) 256)
(+.f64 (*.f64 a x) 1)
(pow.f64 (+.f64 (*.f64 a x) 1) 1)
(+.f64 (*.f64 a x) 1)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
0.2b
(pow.f64 (*.f64 a x) 2)
5.2b
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
Compiler

Compiled 32 to 16 computations (50% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite244.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
2506×rational.json-simplify-35
1448×rational.json-1
1174×exponential.json-3
1174×rational.json-2
1174×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
16119
213419
326819
450219
5118419
6259619
7427719
8520419
9623019
10705719
11705719
12705719
13791619
Stop Event
node limit
Counts
1 → 15
Calls
Call 1
Inputs
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 1/2 (*.f64 a x)) 2) (pow.f64 (*.f64 1/2 (*.f64 a x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 a x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 8) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)))))

simplify953.0ms (4.7%)

Algorithm
egg-herbie
Rules
9408×rational.json-simplify-41
4756×rational.json-simplify-35
2072×rational.json-simplify-2
750×exponential.json-simplify-26
734×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048741
1125741
2267741
3727741
42027741
53483741
63981741
74313741
84546741
94716741
104860741
115320741
125548741
135594741
145612741
155621741
165629741
175631741
185768741
195905741
206042741
216179741
226316741
236453741
246590741
256727741
266864741
276864741
287001741
297138741
307275741
Stop Event
node limit
Counts
39 → 17
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)
(+.f64 0 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (pow.f64 (*.f64 1/2 (*.f64 a x)) 2) (pow.f64 (*.f64 1/2 (*.f64 a x)) 2))
(-.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)
(/.f64 (pow.f64 (*.f64 a x) 2) 2)
(/.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 4)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 4) 8)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 8) 16)
(/.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))))) 256)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))))) 512)
(pow.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)
Outputs
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 0 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(+.f64 (pow.f64 (*.f64 1/2 (*.f64 a x)) 2) (pow.f64 (*.f64 1/2 (*.f64 a x)) 2))
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(-.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 0)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (pow.f64 (*.f64 a x) 2) 2)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (pow.f64 (*.f64 a x) 2)) 4)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 4) 8)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 2) 8) 16)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)) 32)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))) 64)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))) 128)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8))))) 256)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 2) 8)))))) 512)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))
(pow.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) 1)
(*.f64 1/2 (pow.f64 (*.f64 a x) 2))

eval117.0ms (0.6%)

Compiler

Compiled 7427 to 4838 computations (34.9% saved)

prune63.0ms (0.3%)

Pruning

9 alts after pruning (3 fresh and 6 done)

PrunedKeptTotal
New3952397
Fresh011
Picked011
Done055
Total3959404
Error
0.1b
Counts
404 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
49.9b
(-.f64 (+.f64 (*.f64 a x) 1) 1)
25.9b
(-.f64 (exp.f64 (*.f64 a x)) 1)
51.1b
(-.f64 1 1)
24.2b
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
49.9b
(+.f64 (+.f64 (*.f64 a x) 3) -3)
49.9b
(+.f64 (+.f64 (*.f64 a x) 2) -2)
24.4b
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
24.8b
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
24.4b
(*.f64 a x)
Compiler

Compiled 108 to 74 computations (31.5% saved)

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (*.f64 a x) 3)
0.2b
(pow.f64 (*.f64 a x) 4)
5.2b
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
13.6b
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
Compiler

Compiled 114 to 65 computations (43% saved)

series7.0ms (0%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
a
@0
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
1.0ms
x
@0
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
0.0ms
x
@inf
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
0.0ms
a
@inf
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
0.0ms
a
@0
(pow.f64 (*.f64 a x) 4)

rewrite121.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1718×rational.json-1
1718×rational.json-2
1718×rational.json-4
1718×rational.json-3
1496×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020135
1140135
2292135
3624135
41434135
53272135
65193135
76901135
Stop Event
node limit
Counts
3 → 87
Calls
Call 1
Inputs
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(pow.f64 (*.f64 a x) 4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/12 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)) 1/12)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 a x) 4) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 a x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 a x) 4) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (pow.f64 (*.f64 a x) 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a x) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (pow.f64 (*.f64 a x) 4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 a x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a 4) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 4) (pow.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (pow.f64 x 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (pow.f64 a 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (pow.f64 (*.f64 a x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 2 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 2 (pow.f64 a 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 32 (*.f64 (pow.f64 (*.f64 x 1/2) 4) (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 32 (*.f64 (pow.f64 (*.f64 a 1/2) 4) (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (pow.f64 (+.f64 x x) 4) (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (pow.f64 (+.f64 a a) 4) (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 a x) 4) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/16 (pow.f64 (*.f64 x (+.f64 a a)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (+.f64 x x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 a a) 4) (pow.f64 (*.f64 x 1/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (+.f64 a a) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x x) 4) (pow.f64 (*.f64 a 1/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4) 16)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (+.f64 a a)) 4) 1/16)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (+.f64 a a) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (+.f64 x x) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (*.f64 x 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 a 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (*.f64 a 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 a x) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))))) 64)))))

simplify486.0ms (2.4%)

Algorithm
egg-herbie
Rules
3812×rational.json-simplify-51
2406×rational.json-simplify-35
1656×rational.json-simplify-2
1350×rational.json-simplify-1
1008×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01965403
14365403
210125403
320165403
435195403
538425403
640175403
741465403
842675403
943865403
1049555403
1152215403
1252445403
1352565403
1452695403
1552915403
1653285403
1754955403
1856305403
Stop Event
node limit
Counts
159 → 107
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 0)
(*.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4))
(*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2))
(*.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 1/2)
(*.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 1/4)
(*.f64 1/12 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)))
(*.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2) 2)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(*.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4) 4)
(*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)) 1/12)
(/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 4)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))))) 64)
(pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 0)
(*.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(*.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/2)
(*.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/4)
(*.f64 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(*.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4) 4)
(/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(/.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 4)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) 64)
(pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(+.f64 (pow.f64 (*.f64 a x) 4) 0)
(+.f64 0 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))
(-.f64 (pow.f64 (*.f64 a x) 4) 0)
(*.f64 4 (/.f64 (pow.f64 (*.f64 a x) 4) 4))
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4))))
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4))))
(*.f64 (pow.f64 (*.f64 a x) 4) 1)
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a x) 4) 2))
(*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))
(*.f64 1 (pow.f64 (*.f64 a x) 4))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (pow.f64 a 4))
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 1/2)
(*.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 1/4)
(*.f64 (*.f64 2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4)))
(*.f64 (*.f64 2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4)))
(*.f64 (*.f64 4 (pow.f64 x 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 4))))
(*.f64 (*.f64 4 (pow.f64 a 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 4))))
(*.f64 1/4 (*.f64 4 (pow.f64 (*.f64 a x) 4)))
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) 2)
(*.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 2 (pow.f64 x 4)))
(*.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 2 (pow.f64 a 4)))
(*.f64 16 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4))
(*.f64 32 (*.f64 (pow.f64 (*.f64 x 1/2) 4) (*.f64 1/2 (pow.f64 a 4))))
(*.f64 32 (*.f64 (pow.f64 (*.f64 a 1/2) 4) (*.f64 1/2 (pow.f64 x 4))))
(*.f64 1/8 (*.f64 (pow.f64 (+.f64 x x) 4) (*.f64 1/2 (pow.f64 a 4))))
(*.f64 1/8 (*.f64 (pow.f64 (+.f64 a a) 4) (*.f64 1/2 (pow.f64 x 4))))
(*.f64 (/.f64 (pow.f64 (*.f64 a x) 4) 4) 4)
(*.f64 1/16 (pow.f64 (*.f64 x (+.f64 a a)) 4))
(*.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (+.f64 x x) 4))
(*.f64 (pow.f64 (+.f64 a a) 4) (pow.f64 (*.f64 x 1/2) 4))
(*.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (+.f64 a a) 4))
(*.f64 (pow.f64 (+.f64 x x) 4) (pow.f64 (*.f64 a 1/2) 4))
(*.f64 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4) 16)
(*.f64 (pow.f64 (*.f64 x (+.f64 a a)) 4) 1/16)
(*.f64 (*.f64 2 (pow.f64 (+.f64 a a) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 4))))
(*.f64 (*.f64 2 (pow.f64 (+.f64 x x) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 4))))
(*.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (*.f64 x 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 a 4))))
(*.f64 (+.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (*.f64 a 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 x 4))))
(/.f64 (pow.f64 (*.f64 a x) 4) 1)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 2)
(/.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 4)
(/.f64 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))))) 64)
Outputs
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))
(*.f64 1/6 (pow.f64 (*.f64 a x) 3))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 a x)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (*.f64 a x))
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4)))
(*.f64 1/24 (pow.f64 (*.f64 a x) 4))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 a 2) (pow.f64 x 2))) (+.f64 (*.f64 a x) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a 4) (pow.f64 x 4))) (*.f64 1/6 (*.f64 (pow.f64 a 3) (pow.f64 x 3))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 0)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 1/2)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 1/4)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/12 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)))
(*.f64 1/12 (+.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 4))))
(*.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1/2) 2)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 4) 4)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 a x) 3) 2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2)) 1/12)
(*.f64 1/12 (+.f64 (*.f64 2 (pow.f64 (*.f64 a x) 3)) (*.f64 1/2 (pow.f64 (*.f64 a x) 4))))
(/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 2) 2)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))) 4)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))) 8)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))) 16)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) 32)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))))) 64)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) 1)
(+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))
(-.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 0)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/2)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 1/4)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(*.f64 (/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 4) 4)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (*.f64 2 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 2)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))) 4)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))) 8)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))) 16)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) 32)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))))))) 64)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(pow.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 a x) 4)) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))) 1)
(+.f64 (*.f64 a x) (+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4)))))
(+.f64 (*.f64 1/2 (pow.f64 (*.f64 a x) 2)) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))))
(+.f64 (pow.f64 (*.f64 a x) 4) 0)
(pow.f64 (*.f64 a x) 4)
(+.f64 0 (pow.f64 (*.f64 a x) 4))
(pow.f64 (*.f64 a x) 4)
(+.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))
(pow.f64 (*.f64 a x) 4)
(-.f64 (pow.f64 (*.f64 a x) 4) 0)
(pow.f64 (*.f64 a x) 4)
(*.f64 4 (/.f64 (pow.f64 (*.f64 a x) 4) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 4 (*.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (*.f64 a x) 4) 1)
(pow.f64 (*.f64 a x) 4)
(*.f64 1/2 (*.f64 (pow.f64 (*.f64 a x) 4) 2))
(pow.f64 (*.f64 a x) 4)
(*.f64 2 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2))
(pow.f64 (*.f64 a x) 4)
(*.f64 1 (pow.f64 (*.f64 a x) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 a 4) (pow.f64 x 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 x 4) (pow.f64 a 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 1/2)
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 1/4)
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 2 (pow.f64 x 4)) (*.f64 1/2 (pow.f64 a 4)))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 2 (pow.f64 a 4)) (*.f64 1/2 (pow.f64 x 4)))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 4 (pow.f64 x 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 4 (pow.f64 a 4)) (*.f64 1/2 (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 1/4 (*.f64 4 (pow.f64 (*.f64 a x) 4)))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 1/2) 2)
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 1/2 (pow.f64 a 4)) (*.f64 2 (pow.f64 x 4)))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 1/2 (pow.f64 x 4)) (*.f64 2 (pow.f64 a 4)))
(pow.f64 (*.f64 a x) 4)
(*.f64 16 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 32 (*.f64 (pow.f64 (*.f64 x 1/2) 4) (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 32 (*.f64 (pow.f64 (*.f64 a 1/2) 4) (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 1/8 (*.f64 (pow.f64 (+.f64 x x) 4) (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 1/8 (*.f64 (pow.f64 (+.f64 a a) 4) (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (/.f64 (pow.f64 (*.f64 a x) 4) 4) 4)
(pow.f64 (*.f64 a x) 4)
(*.f64 1/16 (pow.f64 (*.f64 x (+.f64 a a)) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (+.f64 x x) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (+.f64 a a) 4) (pow.f64 (*.f64 x 1/2) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (+.f64 a a) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (+.f64 x x) 4) (pow.f64 (*.f64 a 1/2) 4))
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (*.f64 a (*.f64 x 1/2)) 4) 16)
(pow.f64 (*.f64 a x) 4)
(*.f64 (pow.f64 (*.f64 x (+.f64 a a)) 4) 1/16)
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 2 (pow.f64 (+.f64 a a) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (*.f64 2 (pow.f64 (+.f64 x x) 4)) (*.f64 1/16 (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (+.f64 (pow.f64 (*.f64 x 1/2) 4) (pow.f64 (*.f64 x 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 a 4))))
(pow.f64 (*.f64 a x) 4)
(*.f64 (+.f64 (pow.f64 (*.f64 a 1/2) 4) (pow.f64 (*.f64 a 1/2) 4)) (*.f64 16 (*.f64 1/2 (pow.f64 x 4))))
(pow.f64 (*.f64 a x) 4)
(/.f64 (pow.f64 (*.f64 a x) 4) 1)
(pow.f64 (*.f64 a x) 4)
(/.f64 (*.f64 (pow.f64 (*.f64 a x) 4) 2) 2)
(pow.f64 (*.f64 a x) 4)
(/.f64 (*.f64 4 (pow.f64 (*.f64 a x) 4)) 4)
(pow.f64 (*.f64 a x) 4)
(/.f64 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))) 8)
(pow.f64 (*.f64 a x) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))) 16)
(pow.f64 (*.f64 a x) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) 32)
(pow.f64 (*.f64 a x) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (pow.f64 (*.f64 a x) 4)))))) 64)
(pow.f64 (*.f64 a x) 4)

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a x) 2)
3.2b
(+.f64 (+.f64 (*.f64 a x) 2) -2)
Compiler

Compiled 21 to 11 computations (47.6% saved)

series1.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (+.f64 (*.f64 a x) 2) -2)
0.0ms
a
@inf
(+.f64 (*.f64 a x) 2)
0.0ms
a
@0
(+.f64 (*.f64 a x) 2)
0.0ms
a
@-inf
(+.f64 (*.f64 a x) 2)
0.0ms
a
@inf
(+.f64 (+.f64 (*.f64 a x) 2) -2)

rewrite268.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
2580×rational.json-simplify-2
2260×rational.json-simplify-35
1366×rational.json-1
1216×rational.json-simplify-1
1084×exponential.json-3
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0932
15920
211920
323120
444720
5105720
6224520
7348220
8459220
9582120
10635020
11635020
12720420
13720420
14799620
Stop Event
node limit
Counts
2 → 88
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(+.f64 (*.f64 a x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 a x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x a)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x (*.f64 a 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 a a) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 a 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 a (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (*.f64 a 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 4) (*.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 a (/.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 8)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 a 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 a (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (+.f64 a a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 a 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 a (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 1/4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/4) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/4) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 a (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (/.f64 x 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/8) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/8) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (*.f64 x 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 a x) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 2) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a x) 2) 1)))))

simplify401.0ms (2%)

Algorithm
egg-herbie
Rules
3950×rational.json-simplify-41
2720×rational.json-simplify-35
2406×rational.json-simplify-2
2104×rational.json-simplify-53
904×exponential.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01591192
13831192
210031192
323721192
436981192
548361192
651221192
752621192
853971192
955301192
1065211192
1170361192
1270791192
1370791192
1472121192
1573451192
1674781192
Stop Event
node limit
Counts
136 → 91
Calls
Call 1
Inputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
2
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
2
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(+.f64 2 (*.f64 a x))
(-.f64 (*.f64 a x) 0)
(*.f64 a x)
(*.f64 x a)
(*.f64 (*.f64 a x) 1)
(*.f64 2 (*.f64 x (*.f64 a 1/2)))
(*.f64 1 (*.f64 a x))
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 (*.f64 a (+.f64 x x)) 1/2)
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))
(*.f64 (*.f64 a (*.f64 x 4)) 1/4)
(*.f64 8 (*.f64 a (/.f64 x 8)))
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))
(*.f64 (*.f64 a 8) (*.f64 x 1/8))
(*.f64 (*.f64 a (*.f64 x 8)) 1/8)
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))
(*.f64 (*.f64 x 8) (*.f64 a 1/8))
(*.f64 1/2 (*.f64 a (+.f64 x x)))
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 (*.f64 x (*.f64 a 1/2)) 2)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 1/4 (*.f64 a (*.f64 x 4)))
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 1/8 (*.f64 a (*.f64 x 8)))
(*.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))
(*.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))
(*.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))
(*.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))
(*.f64 (*.f64 a (/.f64 x 8)) 8)
(*.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))
(*.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))
(*.f64 (*.f64 a 1/8) (*.f64 x 8))
(*.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))
(*.f64 (*.f64 x 1/8) (*.f64 a 8))
(*.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))
(*.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))
(/.f64 (*.f64 a x) 1)
(/.f64 (*.f64 a (+.f64 x x)) 2)
(/.f64 (*.f64 a (*.f64 x 4)) 4)
(/.f64 (*.f64 a (*.f64 x 8)) 8)
(/.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)
(pow.f64 (*.f64 a x) 1)
(-.f64 (+.f64 (*.f64 a x) 2) 0)
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 1/2))
(*.f64 (+.f64 (*.f64 a x) 2) 1)
(*.f64 1 (+.f64 (*.f64 a x) 2))
(*.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 1/2)
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 2) 1/4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 1/4)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 1/8)
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) 2)))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 2) 4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 2) 8))
(/.f64 (+.f64 (*.f64 a x) 2) 1)
(/.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) 256)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))))) 512)
(pow.f64 (+.f64 (*.f64 a x) 2) 1)
Outputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
2
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
2
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(*.f64 a x)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(+.f64 2 (*.f64 a x))
(+.f64 (*.f64 a x) 2)
(-.f64 (*.f64 a x) 0)
(*.f64 a x)
(*.f64 a x)
(*.f64 x a)
(*.f64 a x)
(*.f64 (*.f64 a x) 1)
(*.f64 a x)
(*.f64 2 (*.f64 x (*.f64 a 1/2)))
(*.f64 a x)
(*.f64 1 (*.f64 a x))
(*.f64 a x)
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 a x)
(*.f64 (*.f64 a (+.f64 x x)) 1/2)
(*.f64 a x)
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 a x)
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 a x)
(*.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))
(*.f64 a x)
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 a x)
(*.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 4)) 1/4)
(*.f64 a x)
(*.f64 8 (*.f64 a (/.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 x 1/8))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 8)) 1/8)
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 a 1/8))
(*.f64 a x)
(*.f64 1/2 (*.f64 a (+.f64 x x)))
(*.f64 a x)
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 a x)
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 a x)
(*.f64 (*.f64 x (*.f64 a 1/2)) 2)
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 1/4 (*.f64 a (*.f64 x 4)))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 a x)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 a x)
(*.f64 1/8 (*.f64 a (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 a (/.f64 x 8)) 8)
(*.f64 a x)
(*.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 a 1/8) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 x 1/8) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(/.f64 (*.f64 a x) 1)
(*.f64 a x)
(/.f64 (*.f64 a (+.f64 x x)) 2)
(*.f64 a x)
(/.f64 (*.f64 a (*.f64 x 4)) 4)
(*.f64 a x)
(/.f64 (*.f64 a (*.f64 x 8)) 8)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)
(*.f64 a x)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)
(*.f64 a x)
(pow.f64 (*.f64 a x) 1)
(*.f64 a x)
(-.f64 (+.f64 (*.f64 a x) 2) 0)
(+.f64 (*.f64 a x) 2)
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 1/2))
(+.f64 (*.f64 a x) 2)
(*.f64 (+.f64 (*.f64 a x) 2) 1)
(+.f64 (*.f64 a x) 2)
(*.f64 1 (+.f64 (*.f64 a x) 2))
(+.f64 (*.f64 a x) 2)
(*.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 1/2)
(+.f64 (*.f64 a x) 2)
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 2) 1/4))
(+.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 1/4)
(+.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 1/8)
(+.f64 (*.f64 a x) 2)
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 a x) 2)))
(+.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/2) 2)
(+.f64 (*.f64 a x) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 2) 4))
(+.f64 (*.f64 a x) 2)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 2) 1/4) 4)
(+.f64 (*.f64 a x) 2)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 2) 8))
(+.f64 (*.f64 a x) 2)
(/.f64 (+.f64 (*.f64 a x) 2) 1)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (+.f64 (*.f64 a x) 2)) 2)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 2) 4) 4)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 2) 8) 8)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)) 16)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))) 32)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))) 64)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))) 128)
(+.f64 (*.f64 a x) 2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) 256)
(+.f64 (*.f64 a x) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 2) 8))))))) 512)
(+.f64 (*.f64 a x) 2)
(pow.f64 (+.f64 (*.f64 a x) 2) 1)
(+.f64 (*.f64 a x) 2)

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a x) 3)
3.2b
(+.f64 (+.f64 (*.f64 a x) 3) -3)
Compiler

Compiled 21 to 11 computations (47.6% saved)

series1.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (+.f64 (*.f64 a x) 3) -3)
0.0ms
a
@-inf
(+.f64 (+.f64 (*.f64 a x) 3) -3)
0.0ms
a
@0
(+.f64 (*.f64 a x) 3)
0.0ms
a
@-inf
(+.f64 (*.f64 a x) 3)
0.0ms
a
@inf
(+.f64 (*.f64 a x) 3)

rewrite237.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
2566×rational.json-simplify-2
2260×rational.json-simplify-35
1218×rational.json-simplify-1
1084×exponential.json-3
1084×rational.json-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0932
15920
212020
323720
445920
5108620
6227220
7350720
8461720
9584620
10637520
11637520
12722320
13722320
Stop Event
node limit
Counts
2 → 88
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(+.f64 (*.f64 a x) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 a x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x a)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 a (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 a a) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (*.f64 a 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 a (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 4) (*.f64 x 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (*.f64 a 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 a (/.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 8) (*.f64 a 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 8) (*.f64 x 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 8)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 a (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (+.f64 a a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 a (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 x 1/4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/4) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/4) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 a (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (/.f64 x 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/8) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/8) (*.f64 a 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (*.f64 x 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a x) 3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a x) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 a x) 3) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 a x) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a x) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a x) 3) 1)))))

simplify400.0ms (2%)

Algorithm
egg-herbie
Rules
3928×rational.json-simplify-41
2714×rational.json-simplify-35
2388×rational.json-simplify-2
2102×rational.json-simplify-53
910×exponential.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01601192
13861192
210281192
323471192
436841192
548251192
651111192
752511192
853861192
955191192
1064951192
1170051192
1270481192
1370481192
1471811192
1573141192
1674471192
Stop Event
node limit
Counts
136 → 91
Calls
Call 1
Inputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
3
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
3
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(+.f64 3 (*.f64 a x))
(-.f64 (*.f64 a x) 0)
(*.f64 a x)
(*.f64 x a)
(*.f64 (*.f64 a x) 1)
(*.f64 1 (*.f64 a x))
(*.f64 2 (*.f64 a (*.f64 x 1/2)))
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 (*.f64 a (+.f64 x x)) 1/2)
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))
(*.f64 (*.f64 a (*.f64 x 4)) 1/4)
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))
(*.f64 8 (*.f64 a (/.f64 x 8)))
(*.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 (*.f64 x 8) (*.f64 a 1/8))
(*.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 (*.f64 a 8) (*.f64 x 1/8))
(*.f64 (*.f64 a (*.f64 x 8)) 1/8)
(*.f64 1/2 (*.f64 a (+.f64 x x)))
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 (*.f64 a (*.f64 x 1/2)) 2)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 1/4 (*.f64 a (*.f64 x 4)))
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 1/8 (*.f64 a (*.f64 x 8)))
(*.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))
(*.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))
(*.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))
(*.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))
(*.f64 (*.f64 a (/.f64 x 8)) 8)
(*.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))
(*.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))
(*.f64 (*.f64 a 1/8) (*.f64 x 8))
(*.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))
(*.f64 (*.f64 x 1/8) (*.f64 a 8))
(*.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))
(*.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))
(/.f64 (*.f64 a x) 1)
(/.f64 (*.f64 a (+.f64 x x)) 2)
(/.f64 (*.f64 a (*.f64 x 4)) 4)
(/.f64 (*.f64 a (*.f64 x 8)) 8)
(/.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)
(pow.f64 (*.f64 a x) 1)
(-.f64 (+.f64 (*.f64 a x) 3) 0)
(*.f64 (+.f64 (*.f64 a x) 3) 1)
(*.f64 1 (+.f64 (*.f64 a x) 3))
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 1/2))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 1/2)
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 3) 1/4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 1/4)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 1/8)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 a x) 3) 2))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 3) 4))
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 3) 8))
(/.f64 (+.f64 (*.f64 a x) 3) 1)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) 256)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))))) 512)
(pow.f64 (+.f64 (*.f64 a x) 3) 1)
Outputs
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
(*.f64 a x)
3
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
3
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(*.f64 a x)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(+.f64 3 (*.f64 a x))
(+.f64 (*.f64 a x) 3)
(-.f64 (*.f64 a x) 0)
(*.f64 a x)
(*.f64 a x)
(*.f64 x a)
(*.f64 a x)
(*.f64 (*.f64 a x) 1)
(*.f64 a x)
(*.f64 1 (*.f64 a x))
(*.f64 a x)
(*.f64 2 (*.f64 a (*.f64 x 1/2)))
(*.f64 a x)
(*.f64 (+.f64 a a) (*.f64 x 1/2))
(*.f64 a x)
(*.f64 (*.f64 a (+.f64 x x)) 1/2)
(*.f64 a x)
(*.f64 (+.f64 x x) (*.f64 a 1/2))
(*.f64 a x)
(*.f64 4 (*.f64 a (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 a 4) (*.f64 x 1/4))
(*.f64 a x)
(*.f64 (*.f64 a 4) (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 4)) 1/4)
(*.f64 a x)
(*.f64 (*.f64 x 4) (*.f64 a 1/4))
(*.f64 a x)
(*.f64 (*.f64 x 4) (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))))
(*.f64 a x)
(*.f64 8 (*.f64 a (/.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 (*.f64 a 1/2) 1/4))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 1/2 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 (*.f64 x 8) (*.f64 a 1/8))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 (*.f64 x 1/2) 1/4))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 1/2 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 a 8) (*.f64 x 1/8))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 8)) 1/8)
(*.f64 a x)
(*.f64 1/2 (*.f64 a (+.f64 x x)))
(*.f64 a x)
(*.f64 (*.f64 x 1/2) (+.f64 a a))
(*.f64 a x)
(*.f64 (*.f64 a 1/2) (+.f64 x x))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 1/2)) 2)
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 (*.f64 x 1/2) 1/8))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 x 1/16))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 a 8)) (*.f64 1/4 (*.f64 x 1/4)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 (*.f64 a 1/2) 1/8))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 a 1/16))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 x 8)) (*.f64 1/4 (*.f64 a 1/4)))
(*.f64 a x)
(*.f64 1/4 (*.f64 a (*.f64 x 4)))
(*.f64 a x)
(*.f64 (*.f64 a (*.f64 x 1/4)) 4)
(*.f64 a x)
(*.f64 (*.f64 a 1/4) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 x 1/4) (*.f64 a 4))
(*.f64 a x)
(*.f64 1/8 (*.f64 a (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 x 1/2) 1/4) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 a 1/2) 1/4) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 1/2 (*.f64 x 1/4)) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 1/2 (*.f64 a 1/4)) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 a (/.f64 x 8)) 8)
(*.f64 a x)
(*.f64 (*.f64 (*.f64 a 1/2) 1/8) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 (*.f64 x 1/2) 1/8) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 a 1/8) (*.f64 x 8))
(*.f64 a x)
(*.f64 (*.f64 a 1/16) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(*.f64 (*.f64 x 1/8) (*.f64 a 8))
(*.f64 a x)
(*.f64 (*.f64 x 1/16) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 x 1/4))) (*.f64 a 4))
(*.f64 a x)
(*.f64 (*.f64 2 (*.f64 1/2 (*.f64 a 1/4))) (*.f64 x 4))
(*.f64 a x)
(*.f64 (*.f64 1/4 (*.f64 x 1/4)) (*.f64 2 (*.f64 a 8)))
(*.f64 a x)
(*.f64 (*.f64 1/4 (*.f64 a 1/4)) (*.f64 2 (*.f64 x 8)))
(*.f64 a x)
(/.f64 (*.f64 a x) 1)
(*.f64 a x)
(/.f64 (*.f64 a (+.f64 x x)) 2)
(*.f64 a x)
(/.f64 (*.f64 a (*.f64 x 4)) 4)
(*.f64 a x)
(/.f64 (*.f64 a (*.f64 x 8)) 8)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 a (*.f64 x 8))) 16)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))) 32)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))) 64)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))) 128)
(*.f64 a x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) 256)
(*.f64 a x)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 a (*.f64 x 8)))))))) 512)
(*.f64 a x)
(pow.f64 (*.f64 a x) 1)
(*.f64 a x)
(-.f64 (+.f64 (*.f64 a x) 3) 0)
(+.f64 (*.f64 a x) 3)
(*.f64 (+.f64 (*.f64 a x) 3) 1)
(+.f64 (*.f64 a x) 3)
(*.f64 1 (+.f64 (*.f64 a x) 3))
(+.f64 (*.f64 a x) 3)
(*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 1/2))
(+.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 1/2)
(+.f64 (*.f64 a x) 3)
(*.f64 4 (*.f64 (+.f64 (*.f64 a x) 3) 1/4))
(+.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 1/4)
(+.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 1/8)
(+.f64 (*.f64 a x) 3)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 a x) 3) 2))
(+.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/2) 2)
(+.f64 (*.f64 a x) 3)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 a x) 3) 4))
(+.f64 (*.f64 a x) 3)
(*.f64 (*.f64 (+.f64 (*.f64 a x) 3) 1/4) 4)
(+.f64 (*.f64 a x) 3)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 a x) 3) 8))
(+.f64 (*.f64 a x) 3)
(/.f64 (+.f64 (*.f64 a x) 3) 1)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 2) 2)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 4) 4)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 (+.f64 (*.f64 a x) 3) 8) 8)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)) 16)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))) 32)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))) 64)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))) 128)
(+.f64 (*.f64 a x) 3)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) 256)
(+.f64 (*.f64 a x) 3)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 a x) 3) 8))))))) 512)
(+.f64 (*.f64 a x) 3)
(pow.f64 (+.f64 (*.f64 a x) 3) 1)
(+.f64 (*.f64 a x) 3)

eval416.0ms (2.1%)

Compiler

Compiled 7522 to 4975 computations (33.9% saved)

prune47.0ms (0.2%)

Pruning

9 alts after pruning (0 fresh and 9 done)

PrunedKeptTotal
New3620362
Fresh000
Picked011
Done088
Total3629371
Error
0.1b
Counts
371 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
49.9b
(-.f64 (+.f64 (*.f64 a x) 1) 1)
25.9b
(-.f64 (exp.f64 (*.f64 a x)) 1)
51.1b
(-.f64 1 1)
24.2b
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
49.9b
(+.f64 (+.f64 (*.f64 a x) 3) -3)
49.9b
(+.f64 (+.f64 (*.f64 a x) 2) -2)
24.4b
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
24.8b
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
24.4b
(*.f64 a x)
Compiler

Compiled 108 to 74 computations (31.5% saved)

regimes52.0ms (0.3%)

Counts
9 → 2
Calls
Call 1
Inputs
(*.f64 a x)
(-.f64 1 1)
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(-.f64 (+.f64 (*.f64 a x) 1) 1)
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
Outputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
Calls

5 calls:

16.0ms
x
16.0ms
a
9.0ms
(*.f64 a x)
3.0ms
(-.f64 (exp.f64 (*.f64 a x)) 1)
3.0ms
(exp.f64 (*.f64 a x))
Results
ErrorSegmentsBranch
12.5b2a
11.5b2x
0.3b2(-.f64 (exp.f64 (*.f64 a x)) 1)
0.3b2(exp.f64 (*.f64 a x))
0.3b2(*.f64 a x)
Compiler

Compiled 117 to 68 computations (41.9% saved)

bsearch13.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
-0.0048660134567146615
-1.0429006176019177e-5
Results
11.0ms128×body256valid
Compiler

Compiled 245 to 202 computations (17.6% saved)

regimes47.0ms (0.2%)

Counts
8 → 2
Calls
Call 1
Inputs
(*.f64 a x)
(-.f64 1 1)
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(-.f64 (+.f64 (*.f64 a x) 1) 1)
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
Outputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3)))
Calls

5 calls:

15.0ms
x
14.0ms
a
9.0ms
(*.f64 a x)
3.0ms
(exp.f64 (*.f64 a x))
3.0ms
(-.f64 (exp.f64 (*.f64 a x)) 1)
Results
ErrorSegmentsBranch
12.5b2a
11.5b2x
0.4b2(-.f64 (exp.f64 (*.f64 a x)) 1)
0.4b2(exp.f64 (*.f64 a x))
0.4b2(*.f64 a x)
Compiler

Compiled 90 to 53 computations (41.1% saved)

bsearch13.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
-0.0048660134567146615
-1.0429006176019177e-5
Results
11.0ms128×body256valid
Compiler

Compiled 197 to 162 computations (17.8% saved)

regimes39.0ms (0.2%)

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

5 calls:

13.0ms
a
9.0ms
x
7.0ms
(*.f64 a x)
3.0ms
(-.f64 (exp.f64 (*.f64 a x)) 1)
3.0ms
(exp.f64 (*.f64 a x))
Results
ErrorSegmentsBranch
12.8b2a
11.7b2x
0.6b2(-.f64 (exp.f64 (*.f64 a x)) 1)
0.6b2(exp.f64 (*.f64 a x))
0.6b2(*.f64 a x)
Compiler

Compiled 71 to 43 computations (39.4% saved)

bsearch9.0ms (0%)

Algorithm
binary-search
Steps
TimeLeftRight
9.0ms
-1.0429006176019177e-5
-7.200315911696906e-7
Results
8.0ms96×body256valid
Compiler

Compiled 115 to 94 computations (18.3% saved)

regimes686.0ms (3.4%)

Counts
6 → 2
Calls
Call 1
Inputs
(*.f64 a x)
(-.f64 1 1)
(+.f64 (+.f64 (*.f64 a x) 2) -2)
(+.f64 (+.f64 (*.f64 a x) 3) -3)
(-.f64 (+.f64 (*.f64 a x) 1) 1)
(-.f64 (exp.f64 (*.f64 a x)) 1)
Outputs
(-.f64 (exp.f64 (*.f64 a x)) 1)
(*.f64 a x)
Calls

5 calls:

661.0ms
a
8.0ms
(*.f64 a x)
8.0ms
x
3.0ms
(-.f64 (exp.f64 (*.f64 a x)) 1)
3.0ms
(exp.f64 (*.f64 a x))
Results
ErrorSegmentsBranch
12.8b2a
11.7b2x
1.0b2(-.f64 (exp.f64 (*.f64 a x)) 1)
1.0b2(exp.f64 (*.f64 a x))
1.0b2(*.f64 a x)
Compiler

Compiled 60 to 38 computations (36.7% saved)

bsearch657.0ms (3.3%)

Algorithm
binary-search
Steps
TimeLeftRight
657.0ms
-7.200315911696906e-7
-2.395062374992031e-18
Results
655.0ms160×body256valid
Compiler

Compiled 123 to 100 computations (18.7% saved)

regimes13.0ms (0.1%)

Accuracy

Total -26.8b remaining (-109.7%)

Threshold costs -26.8b (-109.7%)

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

3 calls:

4.0ms
x
4.0ms
a
4.0ms
(*.f64 a x)
Results
ErrorSegmentsBranch
24.4b1a
24.4b1x
24.4b1(*.f64 a x)
Compiler

Compiled 40 to 25 computations (37.5% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041307
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 a x) -4242751136953197/4611686018427387904) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))
(if (<=.f64 (*.f64 a x) -6456360425798343/36893488147419103232) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(if (<=.f64 (*.f64 a x) -6611313076017503/1180591620717411303424) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(if (<=.f64 (*.f64 a x) -279564095785883/37778931862957161709568) (-.f64 (exp.f64 (*.f64 a x)) 1) (*.f64 a x))
(*.f64 a x)
Outputs
(if (<=.f64 (*.f64 a x) -4242751136953197/4611686018427387904) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (*.f64 a x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 (*.f64 a x) 3)) (*.f64 1/24 (pow.f64 (*.f64 a x) 4))) (*.f64 1/2 (pow.f64 (*.f64 a x) 2)))))
(if (<=.f64 (*.f64 a x) -6456360425798343/36893488147419103232) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))) (*.f64 1/6 (pow.f64 (*.f64 a x) 3))))
(if (<=.f64 (*.f64 a x) -6611313076017503/1180591620717411303424) (-.f64 (exp.f64 (*.f64 a x)) 1) (+.f64 (*.f64 a x) (*.f64 1/2 (pow.f64 (*.f64 a x) 2))))
(if (<=.f64 (*.f64 a x) -279564095785883/37778931862957161709568) (-.f64 (exp.f64 (*.f64 a x)) 1) (*.f64 a x))
(*.f64 a x)
Compiler

Compiled 121 to 69 computations (43% saved)

soundness108.0ms (0.5%)

Algorithm
egg-herbie
Rules
1172×rational.json-simplify-38
964×rational.json-simplify-44
858×rational.json-simplify-61
802×rational.json-simplify-47
760×rational.json-simplify-41
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01531808
13561604
212331598
355301598
Stop Event
node limit
Compiler

Compiled 188 to 129 computations (31.4% saved)

end93.0ms (0.5%)

Remove

(sort a x)

Compiler

Compiled 195 to 102 computations (47.7% saved)

Profiling

Loading profile data...