Details

Time bar (total: 7.0s)

analyze112.0ms (1.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
25%25%75%0%0%0%0%3
28.6%25%62.5%0%0%0%12.5%4
30.8%25%56.2%0%0%0%18.7%5
36%28.1%50%0%0%0%21.9%6
38.8%29.7%46.9%0%0%0%23.4%7
40.2%30.5%45.3%0%0%0%24.2%8
40.7%30.8%44.9%0%0%0%24.2%9
41.2%31.2%44.5%0%0%0%24.2%10
41.4%31.3%44.4%0%0%0%24.2%11
41.5%31.4%44.3%0%0%0%24.3%12
Compiler

Compiled 9 to 6 computations (33.3% saved)

sample1.2s (17.6%)

Results
645.0ms2730×body1024valid
290.0ms3884×body256valid
203.0ms1365×body512valid
82.0ms277×body2048valid
1.0msbody2048infinite
0.0msbody256unsamplable
Bogosity

preprocess145.0ms (2.1%)

Algorithm
egg-herbie
Rules
2032×rational.json-simplify-35
1186×rational.json-simplify-51
898×rational.json-simplify-1
830×rational.json-simplify-2
802×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
11621
23121
36621
415921
543721
6163921
7303321
8513021
9706121
10791321
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
Outputs
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
Compiler

Compiled 9 to 6 computations (33.3% saved)

simplify147.0ms (2.1%)

Algorithm
egg-herbie
Rules
2032×rational.json-simplify-35
1186×rational.json-simplify-51
898×rational.json-simplify-1
830×rational.json-simplify-2
802×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
11621
23121
36621
415921
543721
6163921
7303321
8513021
9706121
10791321
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
Outputs
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))

eval0.0ms (0%)

Compiler

Compiled 15 to 8 computations (46.7% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 8 to 5 computations (37.5% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.5b
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
4.6b
(-.f64 (exp.f64 x) 1)
Compiler

Compiled 16 to 8 computations (50% saved)

series2.0ms (0%)

Counts
2 → 8
Calls

6 calls:

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

rewrite91.0ms (1.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
16732
218832
344532
4118932
5459732
Stop Event
node limit
Counts
2 → 142
Calls
Call 1
Inputs
(-.f64 (exp.f64 x) 1)
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (exp.f64 x) -1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (exp.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 (exp.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (exp.f64 x) -1) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (-.f64 1 (exp.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (exp.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (exp.f64 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 1 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (exp.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (exp.f64 x) -1) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (exp.f64 x) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (+.f64 (exp.f64 x) -1) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (exp.f64 x) -1) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (exp.f64 x) -1) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (exp.f64 x) -1) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (exp.f64 x) -1) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 -1 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (exp.f64 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (-.f64 0 (/.f64 -1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (exp.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 2 (+.f64 (exp.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1/2 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (exp.f64 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 1 (exp.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (/.f64 -1 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (exp.f64 x) -1) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 2) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 x)) (/.f64 1 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 x)) (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 x)) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (/.f64 1 (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 1/2 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 (exp.f64 x) -1)) (*.f64 (exp.f64 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 (+.f64 (exp.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -1/2) (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -1/2) (/.f64 2 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2) (*.f64 (exp.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 -1 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 (exp.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)) (*.f64 (exp.f64 x) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)) (*.f64 (exp.f64 x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))))))

simplify125.0ms (1.8%)

Algorithm
egg-herbie
Rules
1356×rational.json-simplify-35
1302×rational.json-simplify-51
1066×rational.json-simplify-2
952×rational.json-simplify-1
902×rational.json-simplify-50
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02654222
15624186
218924114
336724106
461403986
Stop Event
node limit
Counts
150 → 194
Calls
Call 1
Inputs
x
(+.f64 (*.f64 1/2 (pow.f64 x 2)) x)
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) x)))
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(+.f64 1/2 (+.f64 (*.f64 -1/720 (pow.f64 x 3)) (+.f64 (*.f64 1/12 x) (/.f64 1 x))))
(+.f64 (exp.f64 x) -1)
(+.f64 (+.f64 (exp.f64 x) -1) 0)
(+.f64 0 (+.f64 (exp.f64 x) -1))
(+.f64 -1 (exp.f64 x))
(+.f64 -1 (-.f64 1 (-.f64 1 (exp.f64 x))))
(+.f64 -2 (-.f64 (exp.f64 x) -1))
(+.f64 (-.f64 (exp.f64 x) -1) -2)
(+.f64 (-.f64 1 (-.f64 1 (exp.f64 x))) -1)
(*.f64 1 (+.f64 (exp.f64 x) -1))
(*.f64 (+.f64 (exp.f64 x) -1) 1)
(*.f64 -1 (-.f64 1 (exp.f64 x)))
(*.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 1/2)
(*.f64 (-.f64 1 (exp.f64 x)) -1)
(*.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 1/2))
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 1/4)
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -1/2)
(*.f64 4 (/.f64 (+.f64 (exp.f64 x) -1) 4))
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 1/8)
(*.f64 1/2 (+.f64 (*.f64 (exp.f64 x) 2) -2))
(*.f64 -1/2 (*.f64 (+.f64 (exp.f64 x) -1) -2))
(*.f64 1/4 (*.f64 (+.f64 (exp.f64 x) -1) 4))
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 1/2) 2)
(*.f64 1/8 (*.f64 (+.f64 (exp.f64 x) -1) 8))
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) 4) 4)
(/.f64 1 (/.f64 -1 (-.f64 1 (exp.f64 x))))
(/.f64 (+.f64 (exp.f64 x) -1) 1)
(/.f64 -1 (-.f64 0 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 2)
(/.f64 (-.f64 1 (exp.f64 x)) -1)
(/.f64 2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(/.f64 2 (/.f64 2 (+.f64 (exp.f64 x) -1)))
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 4)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -2)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 8)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -4)
(/.f64 1/2 (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(/.f64 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)) -2)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 8)) 16)
(/.f64 (/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -1) 4)
(pow.f64 (+.f64 (exp.f64 x) -1) 1)
(neg.f64 (-.f64 1 (exp.f64 x)))
(+.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)
(+.f64 0 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))))
(+.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(+.f64 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))) -1)
(-.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)
(-.f64 0 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
(*.f64 (exp.f64 x) (/.f64 -1 (-.f64 1 (exp.f64 x))))
(*.f64 (exp.f64 x) (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))))
(*.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))))
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))))
(*.f64 1 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))
(*.f64 (+.f64 (exp.f64 x) -1) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)
(*.f64 -1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
(*.f64 -1 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))
(*.f64 (*.f64 (exp.f64 x) 2) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 (exp.f64 x) 2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2))
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 1 (-.f64 1 (exp.f64 x))))
(*.f64 (neg.f64 (exp.f64 x)) (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(*.f64 (neg.f64 (exp.f64 x)) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))))
(*.f64 2 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/2)
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4))
(*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (exp.f64 x))
(*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (/.f64 1 (exp.f64 (neg.f64 x))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))))
(*.f64 -2 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)))
(*.f64 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/4)
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)))
(*.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)))
(*.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))
(*.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))) -1)
(*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))
(*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))
(*.f64 1/2 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 (exp.f64 x) -2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))
(*.f64 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) 1/2))
(*.f64 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) -1/2))
(*.f64 -1/2 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))))
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
(*.f64 (/.f64 2 (+.f64 (exp.f64 x) -1)) (*.f64 (exp.f64 x) 1/2))
(*.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 2)
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4) (*.f64 (exp.f64 x) 4))
(*.f64 (/.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -2))
(*.f64 1/4 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 (+.f64 (exp.f64 x) -1)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (*.f64 (exp.f64 x) -1/2) (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) -1/2) (/.f64 2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))) -2)
(*.f64 (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (neg.f64 (exp.f64 x)))
(*.f64 (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))) (exp.f64 x))
(*.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2) (*.f64 (exp.f64 x) 2))
(*.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) -2))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))) (exp.f64 x))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))) (exp.f64 x))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))) (neg.f64 (exp.f64 x)))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 -1 (-.f64 1 (exp.f64 x))))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 1 (/.f64 -1 (exp.f64 x))))
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))
(*.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (+.f64 1 (/.f64 -1 (exp.f64 x))))
(*.f64 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) -1)
(*.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)) -2)
(*.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)) 4)
(*.f64 (/.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -1/2))
(*.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)) (*.f64 (exp.f64 x) -4))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4) 4)
(*.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -4))
(*.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -2))
(*.f64 (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) (*.f64 (exp.f64 x) -2))
(pow.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)
(neg.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
Outputs
x
(+.f64 (*.f64 1/2 (pow.f64 x 2)) x)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 x (*.f64 1/6 (pow.f64 x 3))))
(+.f64 x (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 x 2))))
(+.f64 x (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 1/6 (pow.f64 x 3))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) x)))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 x (*.f64 1/24 (pow.f64 x 4)))))
(+.f64 (+.f64 x (*.f64 1/24 (pow.f64 x 4))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 x 2))))
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (+.f64 x (*.f64 1/6 (pow.f64 x 3))) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 x (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4)))))
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/12)))
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
(+.f64 1/2 (+.f64 (*.f64 -1/720 (pow.f64 x 3)) (+.f64 (*.f64 1/12 x) (/.f64 1 x))))
(+.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) (*.f64 (pow.f64 x 3) -1/720))))
(+.f64 (+.f64 (/.f64 1 x) (*.f64 x 1/12)) (+.f64 (*.f64 (pow.f64 x 3) -1/720) 1/2))
(+.f64 1/2 (+.f64 (+.f64 (/.f64 1 x) (*.f64 x 1/12)) (*.f64 (pow.f64 x 3) -1/720)))
(+.f64 (exp.f64 x) -1)
(+.f64 (+.f64 (exp.f64 x) -1) 0)
(+.f64 (exp.f64 x) -1)
(+.f64 0 (+.f64 (exp.f64 x) -1))
(+.f64 (exp.f64 x) -1)
(+.f64 -1 (exp.f64 x))
(+.f64 (exp.f64 x) -1)
(+.f64 -1 (-.f64 1 (-.f64 1 (exp.f64 x))))
(+.f64 (exp.f64 x) -1)
(+.f64 -2 (-.f64 (exp.f64 x) -1))
(+.f64 (exp.f64 x) -1)
(+.f64 (-.f64 (exp.f64 x) -1) -2)
(+.f64 (exp.f64 x) -1)
(+.f64 (-.f64 1 (-.f64 1 (exp.f64 x))) -1)
(+.f64 (exp.f64 x) -1)
(*.f64 1 (+.f64 (exp.f64 x) -1))
(+.f64 (exp.f64 x) -1)
(*.f64 (+.f64 (exp.f64 x) -1) 1)
(+.f64 (exp.f64 x) -1)
(*.f64 -1 (-.f64 1 (exp.f64 x)))
(+.f64 (exp.f64 x) -1)
(*.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 1/2)
(+.f64 (exp.f64 x) -1)
(*.f64 (-.f64 1 (exp.f64 x)) -1)
(+.f64 (exp.f64 x) -1)
(*.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 1/2))
(+.f64 (exp.f64 x) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 1/4)
(+.f64 (exp.f64 x) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -1/2)
(+.f64 (exp.f64 x) -1)
(*.f64 4 (/.f64 (+.f64 (exp.f64 x) -1) 4))
(+.f64 (exp.f64 x) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 1/8)
(+.f64 (exp.f64 x) -1)
(*.f64 1/2 (+.f64 (*.f64 (exp.f64 x) 2) -2))
(+.f64 (exp.f64 x) -1)
(*.f64 -1/2 (*.f64 (+.f64 (exp.f64 x) -1) -2))
(+.f64 (exp.f64 x) -1)
(*.f64 1/4 (*.f64 (+.f64 (exp.f64 x) -1) 4))
(+.f64 (exp.f64 x) -1)
(*.f64 (*.f64 (+.f64 (exp.f64 x) -1) 1/2) 2)
(+.f64 (exp.f64 x) -1)
(*.f64 1/8 (*.f64 (+.f64 (exp.f64 x) -1) 8))
(+.f64 (exp.f64 x) -1)
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) 4) 4)
(+.f64 (exp.f64 x) -1)
(/.f64 1 (/.f64 -1 (-.f64 1 (exp.f64 x))))
(+.f64 (exp.f64 x) -1)
(/.f64 (+.f64 (exp.f64 x) -1) 1)
(+.f64 (exp.f64 x) -1)
(/.f64 -1 (-.f64 0 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(+.f64 (exp.f64 x) -1)
(/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) 2)
(+.f64 (exp.f64 x) -1)
(/.f64 (-.f64 1 (exp.f64 x)) -1)
(+.f64 (exp.f64 x) -1)
(/.f64 2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(+.f64 (exp.f64 x) -1)
(/.f64 2 (/.f64 2 (+.f64 (exp.f64 x) -1)))
(+.f64 (exp.f64 x) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) 4) 4)
(+.f64 (exp.f64 x) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -2) -2)
(+.f64 (exp.f64 x) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) 8) 8)
(+.f64 (exp.f64 x) -1)
(/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -4)
(+.f64 (exp.f64 x) -1)
(/.f64 1/2 (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(+.f64 (exp.f64 x) -1)
(/.f64 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)) -2)
(+.f64 (exp.f64 x) -1)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 x) -1) 8)) 16)
(+.f64 (exp.f64 x) -1)
(/.f64 (/.f64 (*.f64 (+.f64 (exp.f64 x) -1) -4) -1) 4)
(+.f64 (exp.f64 x) -1)
(pow.f64 (+.f64 (exp.f64 x) -1) 1)
(+.f64 (exp.f64 x) -1)
(neg.f64 (-.f64 1 (exp.f64 x)))
(+.f64 (exp.f64 x) -1)
(+.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(+.f64 0 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(+.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(+.f64 (-.f64 1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x)))) -1)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(-.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 0)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(-.f64 0 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (exp.f64 x) (/.f64 -1 (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (exp.f64 x) (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 1 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (+.f64 (exp.f64 x) -1) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (+.f64 (exp.f64 x) -1) (/.f64 (/.f64 (exp.f64 (neg.f64 x)) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (exp.f64 x) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 -1 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 -1 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) 2) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 (exp.f64 x) -1)))
(*.f64 2 (-.f64 (/.f64 1/2 (+.f64 (exp.f64 x) -1)) -1/2))
(*.f64 (*.f64 (exp.f64 x) 2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 1 (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (neg.f64 (exp.f64 x)) (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (neg.f64 (exp.f64 x)) (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 2 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/2)
(*.f64 1/2 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 (exp.f64 x) -1)))
(*.f64 2 (-.f64 (/.f64 1/2 (+.f64 (exp.f64 x) -1)) -1/2))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) (/.f64 1 (exp.f64 (neg.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 1 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2)))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (/.f64 (-.f64 1 (exp.f64 x)) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (-.f64 -1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 -2 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 1/4)
(*.f64 1/4 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 8)))
(*.f64 8 (*.f64 (exp.f64 x) (/.f64 1/8 (+.f64 (exp.f64 x) -1))))
(*.f64 8 (-.f64 (/.f64 1/8 (+.f64 (exp.f64 x) -1)) -1/8))
(*.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) -4)))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 1/4 (-.f64 1 (exp.f64 x)))))
(*.f64 -4 (-.f64 (/.f64 1/4 (-.f64 1 (exp.f64 x))) 1/4))
(*.f64 (*.f64 (exp.f64 x) -4) (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) -4)))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 1/4 (-.f64 1 (exp.f64 x)))))
(*.f64 -4 (-.f64 (/.f64 1/4 (-.f64 1 (exp.f64 x))) 1/4))
(*.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))) -1)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 (exp.f64 x) -1)))
(*.f64 2 (-.f64 (/.f64 1/2 (+.f64 (exp.f64 x) -1)) -1/2))
(*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 1/2 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(/.f64 (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (exp.f64 x))
(/.f64 (/.f64 (exp.f64 x) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (exp.f64 x))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 -2 (*.f64 2 (exp.f64 x))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (-.f64 -1 (/.f64 -1 (exp.f64 x)))))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1/2 (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) -2) (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) 1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))) (*.f64 (exp.f64 x) -1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 -1/2 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))))
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
(*.f64 -1/2 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))))
(*.f64 (/.f64 2 (+.f64 (exp.f64 x) -1)) (*.f64 (exp.f64 x) 1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) 2)
(*.f64 2 (/.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 -2 (*.f64 2 (exp.f64 x))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 4) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 (/.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 1/4 (/.f64 4 (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 (+.f64 (exp.f64 x) -1)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2)))
(*.f64 (*.f64 (exp.f64 x) -1/2) (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x)))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) -1/2) (/.f64 2 (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (exp.f64 x) (/.f64 1/2 (-.f64 1 (exp.f64 x)))) -2)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 -1 (/.f64 -1 (-.f64 1 (exp.f64 x)))) (neg.f64 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 1/4) (*.f64 (exp.f64 x) 4))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (/.f64 -1/2 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 -1/2 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 (exp.f64 x) -1)))
(*.f64 2 (-.f64 (/.f64 1/2 (+.f64 (exp.f64 x) -1)) -1/2))
(*.f64 (*.f64 -1 (/.f64 1 (-.f64 1 (exp.f64 x)))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) -1/2) (*.f64 (exp.f64 x) 2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 (/.f64 1 (-.f64 1 (exp.f64 x))) 1/2) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 -1 (-.f64 1 (exp.f64 x))))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 (exp.f64 x) -1))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (-.f64 1 (exp.f64 x))))) (neg.f64 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 -1 (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 1 (/.f64 -1 (exp.f64 x))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 1 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(/.f64 (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (exp.f64 x))
(/.f64 (/.f64 (exp.f64 x) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (exp.f64 x))
(*.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 -2 (*.f64 2 (exp.f64 x))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (/.f64 (-.f64 1 (exp.f64 x)) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (/.f64 (+.f64 (exp.f64 x) -1) (-.f64 -1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (-.f64 1 (exp.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) 1/2))
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (+.f64 (exp.f64 x) -1))
(*.f64 (+.f64 (exp.f64 x) -1) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (+.f64 (exp.f64 x) -1) (/.f64 (/.f64 (exp.f64 (neg.f64 x)) (+.f64 1 (/.f64 -1 (exp.f64 x)))) (+.f64 1 (/.f64 -1 (exp.f64 x)))))
(/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (exp.f64 x) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)))))
(*.f64 (/.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 -2 (*.f64 2 (exp.f64 x))) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (-.f64 -1 (/.f64 -1 (exp.f64 x)))))))
(*.f64 (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (+.f64 1 (/.f64 -1 (exp.f64 x))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (/.f64 2 (+.f64 1 (/.f64 -1 (exp.f64 x)))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2)))
(*.f64 (/.f64 (*.f64 (exp.f64 x) 2) (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) -1)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) -2)) -2)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 (exp.f64 x) (*.f64 (+.f64 (exp.f64 x) -1) 4)) 4)
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 (/.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) -1/2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) -4)) (*.f64 (exp.f64 x) -4))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) -4)))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 1/4 (-.f64 1 (exp.f64 x)))))
(*.f64 -4 (-.f64 (/.f64 1/4 (-.f64 1 (exp.f64 x))) 1/4))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2) (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (+.f64 1 (/.f64 -1 (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 (exp.f64 x) -1) (*.f64 (+.f64 1 (/.f64 -1 (exp.f64 x))) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 -1/2 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (/.f64 (+.f64 (exp.f64 x) -1) (+.f64 1 (/.f64 -1 (exp.f64 x)))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) -1/2)))
(*.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 4) 4)
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 -1/4 (-.f64 1 (exp.f64 x))))
(*.f64 (*.f64 4 (exp.f64 x)) (/.f64 1/4 (+.f64 (exp.f64 x) -1)))
(*.f64 4 (-.f64 (/.f64 1/4 (+.f64 (exp.f64 x) -1)) -1/4))
(*.f64 (/.f64 1 (*.f64 (+.f64 (exp.f64 x) -1) 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) 8)))
(*.f64 8 (*.f64 (exp.f64 x) (/.f64 1/8 (+.f64 (exp.f64 x) -1))))
(*.f64 8 (-.f64 (/.f64 1/8 (+.f64 (exp.f64 x) -1)) -1/8))
(*.f64 (/.f64 1 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -4))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 (/.f64 -1 (-.f64 1 (exp.f64 x))) -4)))
(*.f64 (exp.f64 x) (*.f64 -4 (/.f64 1/4 (-.f64 1 (exp.f64 x)))))
(*.f64 -4 (-.f64 (/.f64 1/4 (-.f64 1 (exp.f64 x))) 1/4))
(*.f64 (/.f64 2 (*.f64 2 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2)))) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(*.f64 (/.f64 1 (neg.f64 (+.f64 (*.f64 (exp.f64 x) 2) -2))) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(pow.f64 (/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1)) 1)
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))
(neg.f64 (/.f64 (exp.f64 x) (-.f64 1 (exp.f64 x))))
(/.f64 (exp.f64 x) (+.f64 (exp.f64 x) -1))

eval40.0ms (0.6%)

Compiler

Compiled 2689 to 1777 computations (33.9% saved)

prune121.0ms (1.7%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1886194
Fresh000
Picked101
Done000
Total1896195
Error
0b
Counts
195 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
1.3b
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
1.6b
(/.f64 (exp.f64 x) x)
21.9b
(/.f64 1 x)
22.1b
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
22.0b
(+.f64 1/2 (/.f64 1 x))
40.5b
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
Compiler

Compiled 92 to 72 computations (21.7% saved)

localize12.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
0.0b
(+.f64 (*.f64 1/2 (pow.f64 x 2)) x)
Compiler

Compiled 31 to 21 computations (32.3% saved)

series2.0ms (0%)

Counts
2 → 15
Calls

6 calls:

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

rewrite742.0ms (10.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01148
17348
216648
340148
496848
5384848
Stop Event
node limit
Counts
2 → 111
Calls
Call 1
Inputs
(+.f64 (*.f64 1/2 (pow.f64 x 2)) x)
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 x (+.f64 x (pow.f64 x 2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (-.f64 0 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (-.f64 0 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (neg.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 1 (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (exp.f64 x)) (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (exp.f64 x)) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) (*.f64 (exp.f64 x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))))))

simplify134.0ms (1.9%)

Algorithm
egg-herbie
Rules
1534×rational.json-simplify-53
1288×rational.json-simplify-2
1112×rational.json-simplify-39
1104×rational.json-simplify-55
776×rational.json-simplify-51
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02275252
14915168
220554930
335684730
466094612
Stop Event
node limit
Counts
126 → 174
Calls
Call 1
Inputs
x
(*.f64 1/2 (pow.f64 x 2))
(*.f64 1/2 (pow.f64 x 2))
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 x 2)) (+.f64 (/.f64 1 x) (*.f64 1/4 x))))
(*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2)))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))))))
(*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2)))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))))))
(-.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 0)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2))))
(*.f64 2 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(*.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 1/2)
(*.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 1/4)
(*.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(*.f64 -1 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4))
(*.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 1/8)
(*.f64 1/4 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 2)
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4) 4)
(*.f64 1/8 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8))
(/.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(/.f64 1 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 2)
(/.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 4)
(/.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(/.f64 -1 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 8)
(/.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2) -2)
(/.f64 (neg.f64 (+.f64 x (+.f64 x (pow.f64 x 2)))) -2)
(/.f64 -2 (-.f64 0 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(/.f64 -2 (-.f64 0 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) 16)
(/.f64 -1/2 (neg.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) 2)
(pow.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(neg.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)
(+.f64 0 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 -1 (-.f64 1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(+.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(-.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)
(-.f64 0 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 2 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (exp.f64 x) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)
(*.f64 1 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) 1/2)
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (exp.f64 x))
(*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 1 (exp.f64 (neg.f64 x))))
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 -1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 -1 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4))
(*.f64 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) 1/4)
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)))
(*.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 2 (exp.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) 2)
(*.f64 (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 1/4 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))
(*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) 4))
(*.f64 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (neg.f64 (exp.f64 x)))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (*.f64 1/2 (exp.f64 x)) (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (*.f64 1/2 (exp.f64 x)) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))) (exp.f64 x))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (exp.f64 x))
(*.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 (exp.f64 x) 4))
(*.f64 (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))) -1)
(*.f64 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))) 4)
(*.f64 (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4) 4)
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) (*.f64 (exp.f64 x) -2))
(*.f64 (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))
(pow.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)
(neg.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(neg.f64 (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))
(neg.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))
Outputs
x
(*.f64 1/2 (pow.f64 x 2))
(*.f64 1/2 (pow.f64 x 2))
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 x 2)) (+.f64 (/.f64 1 x) (*.f64 1/4 x))))
(+.f64 1/2 (+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/4) (*.f64 (pow.f64 x 2) 1/24))))
(*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2)))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))) (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))))))
(*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2)))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))) (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))))))
(+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4)))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5)))))
(+.f64 (*.f64 2 (/.f64 (exp.f64 x) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (exp.f64 x) (pow.f64 x 3))) (+.f64 (*.f64 8 (/.f64 (exp.f64 x) (pow.f64 x 4))) (*.f64 -16 (/.f64 (exp.f64 x) (pow.f64 x 5))))))
(-.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 0)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(-.f64 0 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 2 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 1/2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 1/4)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 -1 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4))
(*.f64 4 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1/4))
(*.f64 4 (*.f64 1/4 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 4 (*.f64 1/8 (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 1/8)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 1/4 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (*.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4) 4)
(*.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4))
(*.f64 4 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1/4))
(*.f64 4 (*.f64 1/4 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 4 (*.f64 1/8 (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 1/8 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 1 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) 2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2)))) 4)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 -1 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8) 8)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2) -2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (neg.f64 (+.f64 x (+.f64 x (pow.f64 x 2)))) -2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 -2 (-.f64 0 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 -2 (-.f64 0 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) 16)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 -1/2 (neg.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(/.f64 (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) 2)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(pow.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(neg.f64 (neg.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(+.f64 x (*.f64 1/2 (pow.f64 x 2)))
(+.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(+.f64 0 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(+.f64 -1 (-.f64 1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(+.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(+.f64 (/.f64 (exp.f64 x) (+.f64 (pow.f64 x 2) (+.f64 x x))) (/.f64 (exp.f64 x) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(-.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(-.f64 0 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 2 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (exp.f64 (neg.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (exp.f64 x)))
(*.f64 (exp.f64 x) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (exp.f64 x) (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 1 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (exp.f64 x) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) 1/2)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 1 (exp.f64 (neg.f64 x))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (neg.f64 (exp.f64 x)))
(/.f64 (-.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0) (exp.f64 x))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 2)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (*.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 -1 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 -1 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) 1/4)
(*.f64 1/4 (/.f64 (exp.f64 x) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4)))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1/4)))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 1/4 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 1/8 (+.f64 (pow.f64 x 2) (+.f64 x x)))))
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1 (*.f64 8 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1/8 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1/8 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 8 (/.f64 (exp.f64 x) (*.f64 4 (+.f64 (pow.f64 x 2) (+.f64 x x)))))
(*.f64 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 2 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (exp.f64 x))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 1/2 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) -1)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 1/2 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (exp.f64 x) (+.f64 x (+.f64 x (pow.f64 x 2)))) 2)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))))
(*.f64 (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (*.f64 (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))) 1/2))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 4 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))) (+.f64 (pow.f64 x 2) (+.f64 x x))))))
(*.f64 1/4 (/.f64 4 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))
(*.f64 1/4 (/.f64 (exp.f64 x) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 4)))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1/4)))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 1/4 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 1/4 (/.f64 (exp.f64 x) (*.f64 1/8 (+.f64 (pow.f64 x 2) (+.f64 x x)))))
(*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (/.f64 -1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (neg.f64 (exp.f64 x)))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (neg.f64 (exp.f64 x)))
(/.f64 (-.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0) (exp.f64 x))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 2 (exp.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x))))
(/.f64 (/.f64 2 (exp.f64 x)) (/.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (exp.f64 x)))
(*.f64 (*.f64 1/2 (exp.f64 x)) (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (exp.f64 x)) (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (*.f64 2 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (exp.f64 x))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1/4) (*.f64 (exp.f64 x) 4))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (*.f64 1/2 (/.f64 1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (*.f64 (exp.f64 x) 4))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))))
(*.f64 (*.f64 1/2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x))) (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (*.f64 (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))) 1/2))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 4 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))) (+.f64 (pow.f64 x 2) (+.f64 x x))))))
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (neg.f64 (exp.f64 x)))
(/.f64 (-.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0) (exp.f64 x))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 2 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (exp.f64 x))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (neg.f64 (exp.f64 x)))
(/.f64 (-.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0) (exp.f64 x))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (exp.f64 (neg.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x)))))
(*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (exp.f64 x)))
(*.f64 (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 2 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 2)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (*.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x))))
(*.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))) -1)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 (exp.f64 x) (*.f64 2 (+.f64 x (+.f64 x (pow.f64 x 2))))) 4)
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (/.f64 -1/2 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x)))) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)) (/.f64 1/2 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x)))))
(*.f64 (/.f64 2 (exp.f64 x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 x) (/.f64 (+.f64 x (+.f64 x (pow.f64 x 2))) (exp.f64 x))))
(/.f64 (/.f64 2 (exp.f64 x)) (/.f64 (/.f64 (+.f64 (pow.f64 x 2) (+.f64 x x)) (exp.f64 x)) (exp.f64 x)))
(*.f64 (/.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 4) 4)
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))))
(*.f64 4 (*.f64 (/.f64 1/2 (+.f64 x (+.f64 x (pow.f64 x 2)))) (exp.f64 x)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) 2) (+.f64 (pow.f64 x 2) (+.f64 x x))))
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1 (*.f64 8 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1/8 (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1/8 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(*.f64 8 (/.f64 (exp.f64 x) (*.f64 4 (+.f64 (pow.f64 x 2) (+.f64 x x)))))
(*.f64 (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) -2)) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(*.f64 (/.f64 -1 (+.f64 x (+.f64 x (pow.f64 x 2)))) (*.f64 (exp.f64 x) -2))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(pow.f64 (/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 1)
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(neg.f64 (/.f64 (neg.f64 (exp.f64 x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))
(neg.f64 (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (neg.f64 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (exp.f64 x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (/.f64 1 (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (*.f64 (exp.f64 x) (exp.f64 x)))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 1 (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (*.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))))
(/.f64 (neg.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))) (neg.f64 (exp.f64 x)))
(/.f64 (-.f64 (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x (*.f64 1/2 (pow.f64 x 2)))) 0) (exp.f64 x))
(neg.f64 (/.f64 (*.f64 (exp.f64 x) -2) (+.f64 x (+.f64 x (pow.f64 x 2)))))
(/.f64 (exp.f64 x) (+.f64 x (*.f64 1/2 (pow.f64 x 2))))

localize3.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize135.0ms (1.9%)

Compiler

Compiled 12 to 9 computations (25% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
0.3b
(*.f64 x 1/12)
Compiler

Compiled 25 to 19 computations (24% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(*.f64 x 1/12)
0.0ms
x
@0
(*.f64 x 1/12)
0.0ms
x
@inf
(*.f64 x 1/12)
0.0ms
x
@inf
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
0.0ms
x
@-inf
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))

rewrite888.0ms (12.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01032
18032
218032
335932
478832
5218132
6568932
Stop Event
node limit
Counts
2 → 36
Calls
Call 1
Inputs
(*.f64 x 1/12)
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/12) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/24) (*.f64 x 1/24))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/12) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/12) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/3) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/12) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x 1/12) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 1/12) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x 1/12) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (/.f64 2 x))) (*.f64 x 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6))) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (/.f64 2 x) (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2)) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (/.f64 1/2 x) (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 x 1/24) (/.f64 (+.f64 (/.f64 1 x) 1/2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 x 1/12) 1/2) 4) (/.f64 4 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)))))

simplify134.0ms (1.9%)

Algorithm
egg-herbie
Rules
1806×rational.json-simplify-35
1136×rational.json-simplify-2
1102×rational.json-simplify-1
998×rational.json-simplify-59
830×rational.json-simplify-46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0941044
12001044
24891044
314201044
430581044
539591044
643191044
749221044
862461044
Stop Event
node limit
Counts
60 → 48
Calls
Call 1
Inputs
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(*.f64 1/12 x)
(+.f64 1/2 (*.f64 1/12 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(*.f64 1/12 x)
(+.f64 1/2 (*.f64 1/12 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 (*.f64 x 1/12) 0)
(+.f64 0 (*.f64 x 1/12))
(+.f64 (*.f64 x 1/24) (*.f64 x 1/24))
(-.f64 (*.f64 x 1/12) 0)
(/.f64 (*.f64 x 1/12) 1)
(/.f64 (*.f64 x 1/6) 2)
(/.f64 (*.f64 x 1/3) 4)
(/.f64 (*.f64 (*.f64 x 1/12) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 x 1/12) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 1/12) 8))) 32)
(pow.f64 (*.f64 x 1/12) 1)
(-.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 0)
(*.f64 1 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (/.f64 2 x))) (*.f64 x 1/6)))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6))) (/.f64 2 x)))
(*.f64 1/2 (+.f64 (/.f64 2 x) (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6)))))
(*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2)) (/.f64 1/2 x)))
(*.f64 2 (+.f64 (/.f64 1/2 x) (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2))))
(*.f64 2 (+.f64 (*.f64 x 1/24) (/.f64 (+.f64 (/.f64 1 x) 1/2) 2)))
(*.f64 4 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))
(*.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 1/2)
(*.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))
(*.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 x 1/12) 1/2) 4) (/.f64 4 x)))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))) 2)
(*.f64 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)
(/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8))) 32)
(pow.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
Outputs
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(*.f64 1/12 x)
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 (/.f64 1 x) 1/2)
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(+.f64 1/2 (+.f64 (*.f64 1/12 x) (/.f64 1 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/12 x)
(+.f64 1/2 (*.f64 1/12 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/12 x)
(+.f64 1/2 (*.f64 1/12 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/12 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(+.f64 (*.f64 x 1/12) 0)
(*.f64 1/12 x)
(+.f64 0 (*.f64 x 1/12))
(*.f64 1/12 x)
(+.f64 (*.f64 x 1/24) (*.f64 x 1/24))
(*.f64 1/12 x)
(-.f64 (*.f64 x 1/12) 0)
(*.f64 1/12 x)
(/.f64 (*.f64 x 1/12) 1)
(*.f64 1/12 x)
(/.f64 (*.f64 x 1/6) 2)
(*.f64 1/12 x)
(/.f64 (*.f64 x 1/3) 4)
(*.f64 1/12 x)
(/.f64 (*.f64 (*.f64 x 1/12) 8) 8)
(*.f64 1/12 x)
(/.f64 (*.f64 2 (*.f64 (*.f64 x 1/12) 8)) 16)
(*.f64 1/12 x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 1/12) 8))) 32)
(*.f64 1/12 x)
(pow.f64 (*.f64 x 1/12) 1)
(*.f64 1/12 x)
(-.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 0)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (/.f64 2 x))) (*.f64 x 1/6)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6))) (/.f64 2 x)))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/2 (+.f64 (/.f64 2 x) (+.f64 1/2 (+.f64 1/2 (*.f64 x 1/6)))))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 2 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2)) (/.f64 1/2 x)))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 1/12 x))) (/.f64 1/2 x)))
(*.f64 2 (+.f64 (/.f64 1/2 x) (*.f64 1/2 (+.f64 (*.f64 x 1/12) 1/2))))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 1/12 x))) (/.f64 1/2 x)))
(*.f64 2 (+.f64 (*.f64 x 1/24) (/.f64 (+.f64 (/.f64 1 x) 1/2) 2)))
(*.f64 2 (+.f64 (*.f64 x 1/24) (/.f64 (+.f64 1 (/.f64 2 x)) 4)))
(*.f64 4 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 1/2)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 1/4)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4))
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 1/4 (+.f64 (*.f64 (+.f64 (*.f64 x 1/12) 1/2) 4) (/.f64 4 x)))
(*.f64 1/4 (+.f64 (*.f64 4 (+.f64 1/2 (*.f64 1/12 x))) (/.f64 4 x)))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2))) 2)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(*.f64 (/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 2) 2)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 4) 4)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8) 8)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8)) 16)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 8))) 32)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))
(pow.f64 (+.f64 (*.f64 x 1/12) (+.f64 (/.f64 1 x) 1/2)) 1)
(+.f64 (*.f64 1/12 x) (+.f64 (/.f64 1 x) 1/2))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 1/12 x)))

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (exp.f64 x) x)
Compiler

Compiled 8 to 3 computations (62.5% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(/.f64 (exp.f64 x) x)
0.0ms
x
@inf
(/.f64 (exp.f64 x) x)
0.0ms
x
@0
(/.f64 (exp.f64 x) x)

rewrite73.0ms (1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0611
14111
211611
330111
476911
5322011
Stop Event
node limit
Counts
1 → 78
Calls
Call 1
Inputs
(/.f64 (exp.f64 x) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (exp.f64 x) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (exp.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) (*.f64 (/.f64 (exp.f64 x) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (exp.f64 x) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (exp.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 2) (/.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 2) (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (/.f64 1 (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 x) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (/.f64 1 (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (exp.f64 x)) (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (exp.f64 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (exp.f64 x) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 (exp.f64 x) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (exp.f64 x) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 8) (*.f64 1/4 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 x)) (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 x) (*.f64 (exp.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) -2) (*.f64 -1 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (/.f64 (exp.f64 x) 4) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 x)) (*.f64 (exp.f64 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (neg.f64 (exp.f64 x)) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 1/8 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 x) (*.f64 (exp.f64 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 (exp.f64 x) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 x)) (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x 4)) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 x) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (neg.f64 (exp.f64 x)) 4) (*.f64 -1/2 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 x) 1/4) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 2 x)) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 x)) (*.f64 (exp.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (*.f64 x (/.f64 1/2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (exp.f64 x) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x 8)) (*.f64 (exp.f64 x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 x -2)) (*.f64 (exp.f64 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))) (*.f64 (exp.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 x (exp.f64 x)) (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))))))

simplify266.0ms (3.8%)

Algorithm
egg-herbie
Rules
1904×rational.json-simplify-35
1244×rational.json-simplify-53
932×rational.json-simplify-2
800×rational.json-simplify-41
704×rational.json-simplify-50
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01682052
13602032
29151840
325181840
451161708
Stop Event
node limit
Counts
82 → 113
Calls
Call 1
Inputs
(/.f64 1 x)
(+.f64 1 (/.f64 1 x))
(+.f64 1 (+.f64 (*.f64 1/2 x) (/.f64 1 x)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (/.f64 1 x))))
(+.f64 (/.f64 (exp.f64 x) x) 0)
(+.f64 0 (/.f64 (exp.f64 x) x))
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))
(+.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) (*.f64 (/.f64 (exp.f64 x) x) 1/2))
(-.f64 (/.f64 (exp.f64 x) x) 0)
(-.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (exp.f64 x) (/.f64 1 x))
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 x)))
(*.f64 (/.f64 (exp.f64 x) x) 1)
(*.f64 1 (/.f64 (exp.f64 x) x))
(*.f64 (*.f64 (exp.f64 x) 2) (/.f64 1/2 x))
(*.f64 (*.f64 (exp.f64 x) 2) (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))))
(*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 1/2))
(*.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 1/2)
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1 (*.f64 x 4)))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 x) 1/4))
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 x)))
(*.f64 (/.f64 1 x) (exp.f64 x))
(*.f64 (/.f64 1 x) (/.f64 1 (exp.f64 (neg.f64 x))))
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 x))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 -1 (/.f64 (exp.f64 x) (neg.f64 x)))
(*.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 x 4)))
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) x) 4))
(*.f64 4 (*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 1/2 x)))
(*.f64 (*.f64 (/.f64 (exp.f64 x) x) 4) 1/4)
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 x 8)))
(*.f64 (*.f64 (exp.f64 x) 8) (*.f64 1/4 (/.f64 1/2 x)))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 1/2 x) (*.f64 (exp.f64 x) 2))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 x -2)))
(*.f64 (*.f64 (exp.f64 x) -2) (*.f64 -1 (/.f64 1/2 x)))
(*.f64 8 (*.f64 (/.f64 (exp.f64 x) 4) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (/.f64 1 x)) (*.f64 (exp.f64 x) 1/2))
(*.f64 -2 (*.f64 (neg.f64 (exp.f64 x)) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 1/8 (/.f64 1/2 x)))
(*.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)
(*.f64 (/.f64 2 x) (*.f64 (exp.f64 x) 1/2))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) 2)
(*.f64 1/4 (*.f64 (/.f64 (exp.f64 x) x) 4))
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))
(*.f64 (/.f64 1 (*.f64 x 4)) (*.f64 (exp.f64 x) 4))
(*.f64 (/.f64 -1 x) (neg.f64 (exp.f64 x)))
(*.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 1 x)))
(*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 x))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 (*.f64 (neg.f64 (exp.f64 x)) 4) (*.f64 -1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 (/.f64 1 x) 1/4) (*.f64 (exp.f64 x) 4))
(*.f64 (*.f64 1/2 (/.f64 2 x)) (exp.f64 x))
(*.f64 (*.f64 1/2 (/.f64 1/2 x)) (*.f64 (exp.f64 x) 4))
(*.f64 (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (exp.f64 x)))
(*.f64 (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (*.f64 x (/.f64 1/2 (exp.f64 x))))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 x))
(*.f64 (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) x)
(*.f64 (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))
(*.f64 (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (exp.f64 x)))
(*.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 4)
(*.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))
(*.f64 (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))
(*.f64 (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 (/.f64 (exp.f64 x) x) 4) 4)
(*.f64 (/.f64 1 (*.f64 x 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (/.f64 1 (*.f64 x -2)) (*.f64 (exp.f64 x) -2))
(*.f64 (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))) (*.f64 (exp.f64 x) 2))
(pow.f64 (/.f64 (exp.f64 x) x) 1)
(neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))
(neg.f64 (/.f64 (/.f64 x (exp.f64 x)) (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))
Outputs
(/.f64 1 x)
(+.f64 1 (/.f64 1 x))
(+.f64 1 (+.f64 (*.f64 1/2 x) (/.f64 1 x)))
(+.f64 1 (+.f64 (/.f64 1 x) (*.f64 x 1/2)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (/.f64 1 x))))
(+.f64 1 (+.f64 (*.f64 x 1/2) (+.f64 (/.f64 1 x) (*.f64 1/6 (pow.f64 x 2)))))
(+.f64 1 (+.f64 (/.f64 1 x) (+.f64 (*.f64 1/6 (pow.f64 x 2)) (*.f64 x 1/2))))
(+.f64 (*.f64 x 1/2) (+.f64 (+.f64 1 (/.f64 1 x)) (*.f64 1/6 (pow.f64 x 2))))
(+.f64 1 (+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/2) (*.f64 1/6 (pow.f64 x 2)))))
(+.f64 (+.f64 1 (/.f64 1 x)) (+.f64 (*.f64 x 1/2) (*.f64 1/6 (pow.f64 x 2))))
(+.f64 (/.f64 (exp.f64 x) x) 0)
(/.f64 (exp.f64 x) x)
(+.f64 0 (/.f64 (exp.f64 x) x))
(/.f64 (exp.f64 x) x)
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))
(/.f64 (exp.f64 x) x)
(+.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) (*.f64 (/.f64 (exp.f64 x) x) 1/2))
(/.f64 (exp.f64 x) x)
(-.f64 (/.f64 (exp.f64 x) x) 0)
(/.f64 (exp.f64 x) x)
(-.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (exp.f64 x) (/.f64 1 x))
(/.f64 (exp.f64 x) x)
(*.f64 (exp.f64 x) (*.f64 1/2 (/.f64 2 x)))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 (exp.f64 x) x) 1)
(/.f64 (exp.f64 x) x)
(*.f64 1 (/.f64 (exp.f64 x) x))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 2) (/.f64 1/2 x))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (*.f64 (exp.f64 x) 2) (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))))
(/.f64 (exp.f64 x) x)
(*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 1/2))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 1/2)
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (*.f64 (exp.f64 x) 4) (/.f64 1 (*.f64 x 4)))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 (/.f64 1 x) 1/4))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 4) (*.f64 1/2 (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (/.f64 1 x) (exp.f64 x))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 1 x) (/.f64 1 (exp.f64 (neg.f64 x))))
(/.f64 (exp.f64 x) x)
(*.f64 (neg.f64 (exp.f64 x)) (/.f64 -1 x))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x))
(*.f64 -1 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 x (*.f64 (exp.f64 x) 1/2)) (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 4 (/.f64 (exp.f64 x) (*.f64 x 4)))
(/.f64 (exp.f64 x) x)
(*.f64 4 (/.f64 (/.f64 (exp.f64 x) x) 4))
(/.f64 (exp.f64 x) x)
(*.f64 4 (*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (*.f64 (/.f64 (exp.f64 x) x) 4) 1/4)
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 x 8)))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1/8 x)))
(*.f64 8 (*.f64 (exp.f64 x) (/.f64 1/8 x)))
(*.f64 (*.f64 (exp.f64 x) 8) (*.f64 1/4 (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 1/2 x) (*.f64 (exp.f64 x) 2))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))
(*.f64 (exp.f64 x) (*.f64 -2 (/.f64 -1/2 x)))
(*.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 -1/2 x)))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 1 (*.f64 x -2)))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))
(*.f64 (exp.f64 x) (*.f64 -2 (/.f64 -1/2 x)))
(*.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 -1/2 x)))
(*.f64 (*.f64 (exp.f64 x) -2) (*.f64 -1 (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 8 (*.f64 (/.f64 (exp.f64 x) 4) (/.f64 1/2 x)))
(*.f64 (/.f64 (exp.f64 x) 4) (*.f64 (/.f64 1/2 x) 8))
(*.f64 (/.f64 1/2 x) (*.f64 8 (/.f64 (exp.f64 x) 4)))
(*.f64 (*.f64 2 (/.f64 1 x)) (*.f64 (exp.f64 x) 1/2))
(/.f64 (exp.f64 x) x)
(*.f64 -2 (*.f64 (neg.f64 (exp.f64 x)) (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 1/8 (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 2 x) (*.f64 (exp.f64 x) 1/2))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (/.f64 x 2)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 2 (/.f64 x (exp.f64 (+.f64 x x)))))
(*.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (*.f64 (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) x))
(*.f64 (/.f64 1/2 (exp.f64 x)) (*.f64 x (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2))))
(*.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2)))
(*.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2)) (*.f64 x (/.f64 1/2 (exp.f64 x))))
(*.f64 (*.f64 (/.f64 (exp.f64 x) x) 1/2) 2)
(/.f64 (exp.f64 x) x)
(*.f64 1/4 (*.f64 (/.f64 (exp.f64 x) x) 4))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 -1 (exp.f64 x)) (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 1 (*.f64 x 4)) (*.f64 (exp.f64 x) 4))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 -1 x) (neg.f64 (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 2 (/.f64 1 x)))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 2 x))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 x (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 x (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 1/2 (/.f64 x (exp.f64 (+.f64 x x)))))
(*.f64 (*.f64 (neg.f64 (exp.f64 x)) 4) (*.f64 -1/2 (/.f64 1/2 x)))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (*.f64 (/.f64 1 x) 1/4) (*.f64 (exp.f64 x) 4))
(/.f64 (exp.f64 x) x)
(*.f64 (*.f64 1/2 (/.f64 2 x)) (exp.f64 x))
(*.f64 1/2 (*.f64 (exp.f64 x) (/.f64 2 x)))
(*.f64 (/.f64 2 x) (*.f64 1/2 (exp.f64 x)))
(*.f64 (*.f64 1/2 (/.f64 1/2 x)) (*.f64 (exp.f64 x) 4))
(*.f64 (exp.f64 x) (*.f64 2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(*.f64 (*.f64 2 (exp.f64 x)) (/.f64 1/2 x))
(*.f64 (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (exp.f64 x)))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x))
(*.f64 (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (+.f64 x x) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (/.f64 x 2)))
(*.f64 (/.f64 1/2 (exp.f64 x)) (/.f64 2 (/.f64 x (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (*.f64 x (/.f64 1/2 (exp.f64 x))))
(*.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 1/2 (exp.f64 x)) (*.f64 (/.f64 2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) x))
(*.f64 (/.f64 1/2 (exp.f64 x)) (*.f64 x (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2))))
(*.f64 (*.f64 x (/.f64 1/2 (exp.f64 x))) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2)))
(*.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (/.f64 x 2)) (*.f64 x (/.f64 1/2 (exp.f64 x))))
(*.f64 (/.f64 1 (exp.f64 (neg.f64 x))) (/.f64 1 x))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 x (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (exp.f64 (neg.f64 x)))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 x (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))) (/.f64 -1 (exp.f64 x)))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) x)
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 1 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 2 (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 x (exp.f64 x)))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 1 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 (/.f64 x (exp.f64 x)) (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x))
(*.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 4)
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))
(*.f64 (exp.f64 x) (*.f64 -2 (/.f64 -1/2 x)))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 -1/2 x)))
(*.f64 (/.f64 1/2 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))) (/.f64 x (*.f64 (exp.f64 x) 1/2)))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))
(*.f64 (/.f64 x (*.f64 (+.f64 x x) (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))) (/.f64 2 (exp.f64 x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 x (*.f64 (exp.f64 x) (exp.f64 x))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (*.f64 (+.f64 x x) (/.f64 x (exp.f64 (+.f64 x x))))))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 (exp.f64 (+.f64 x x)) (+.f64 x x)))
(*.f64 (/.f64 2 (exp.f64 x)) (/.f64 1/2 (/.f64 x (exp.f64 (+.f64 x x)))))
(*.f64 (/.f64 (/.f64 (exp.f64 x) x) 4) 4)
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 1 (*.f64 x 8)) (*.f64 (exp.f64 x) 8))
(*.f64 (*.f64 (exp.f64 x) 8) (/.f64 1 (*.f64 x 8)))
(*.f64 (exp.f64 x) (*.f64 8 (/.f64 1/8 x)))
(*.f64 8 (*.f64 (exp.f64 x) (/.f64 1/8 x)))
(*.f64 (/.f64 1 (*.f64 x -2)) (*.f64 (exp.f64 x) -2))
(*.f64 (*.f64 (exp.f64 x) -2) (/.f64 -1/2 x))
(*.f64 (exp.f64 x) (*.f64 -2 (/.f64 -1/2 x)))
(*.f64 (/.f64 -1/2 x) (*.f64 (exp.f64 x) -2))
(*.f64 -2 (*.f64 (exp.f64 x) (/.f64 -1/2 x)))
(*.f64 (+.f64 (/.f64 1 (*.f64 x 4)) (/.f64 1 (*.f64 x 4))) (*.f64 (exp.f64 x) 2))
(/.f64 (exp.f64 x) x)
(pow.f64 (/.f64 (exp.f64 x) x) 1)
(/.f64 (exp.f64 x) x)
(neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(neg.f64 (/.f64 (/.f64 x (exp.f64 x)) (neg.f64 (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x))))))
(*.f64 x (/.f64 (exp.f64 (neg.f64 x)) (*.f64 (/.f64 x (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(*.f64 x (/.f64 (exp.f64 x) (/.f64 x (/.f64 (exp.f64 x) (/.f64 x (exp.f64 (neg.f64 x)))))))
(*.f64 x (/.f64 (/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) x) (exp.f64 x)))
(/.f64 (/.f64 (exp.f64 (+.f64 x x)) x) (exp.f64 x))

eval524.0ms (7.5%)

Compiler

Compiled 5218 to 3246 computations (37.8% saved)

prune886.0ms (12.6%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New3323335
Fresh011
Picked011
Done134
Total3338341
Error
0b
Counts
341 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
1.6b
(/.f64 (exp.f64 x) x)
21.9b
(/.f64 1 x)
22.1b
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
22.1b
(+.f64 1 (/.f64 1 x))
22.0b
(+.f64 1/2 (/.f64 1 x))
22.2b
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
40.5b
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
1.6b
(*.f64 (/.f64 1 x) (exp.f64 x))
Compiler

Compiled 58 to 46 computations (20.7% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 1 x) (exp.f64 x))
Compiler

Compiled 14 to 8 computations (42.9% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite79.0ms (1.1%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0817
16311
214811
331311
468311
5215211
6547511
Stop Event
node limit
Counts
1 → 68
Calls
Call 1
Inputs
(*.f64 (/.f64 1 x) (exp.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (exp.f64 x) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (exp.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) (*.f64 (exp.f64 x) (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (exp.f64 x) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 x) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 x) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 x) (/.f64 (*.f64 x x) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (exp.f64 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 x (/.f64 2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (*.f64 x 4) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 x) (/.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) 2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 x (neg.f64 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 x (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (/.f64 (*.f64 x 8) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) (/.f64 4 x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 x) (*.f64 2 (/.f64 2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (*.f64 2 (/.f64 x (neg.f64 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (*.f64 2 (neg.f64 (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) 4) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (*.f64 x 1/2) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (exp.f64 x)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (exp.f64 x)) (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (*.f64 2 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (*.f64 2 (/.f64 (*.f64 x 8) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (exp.f64 x) x) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) -2) (*.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -4 (*.f64 2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -4 (neg.f64 (/.f64 (*.f64 x 4) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) 8) (*.f64 x 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (/.f64 2 (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 2 (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 (*.f64 x x) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (exp.f64 x) -2)) (*.f64 (neg.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 2 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (exp.f64 x) 8) x) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (neg.f64 (/.f64 (*.f64 x 1/2) (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (exp.f64 x) 8)) (neg.f64 (*.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (exp.f64 x) 4)) (neg.f64 (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 x (exp.f64 x))) (neg.f64 (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (exp.f64 x) -2)) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 x) -2))) (*.f64 2 (*.f64 (neg.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (*.f64 (exp.f64 x) 8) x)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (exp.f64 x) (neg.f64 x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 2 (neg.f64 (*.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (exp.f64 x) 1/2)) (neg.f64 (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (*.f64 (exp.f64 x) -2))) (neg.f64 (*.f64 (neg.f64 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (neg.f64 (neg.f64 (*.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1 x)) (neg.f64 (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 2 x)) (neg.f64 (/.f64 2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 x) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))))))

simplify77.0ms (1.1%)

Algorithm
egg-herbie
Rules
1544×rational.json-simplify-51
1520×rational.json-simplify-35
1354×rational.json-simplify-61
1184×rational.json-simplify-46
1150×rational.json-simplify-49
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0177924
1620924
21827924
35986924
Stop Event
node limit
Counts
80 → 77
Calls
Call 1
Inputs
(/.f64 1 x)
(+.f64 1 (/.f64 1 x))
(+.f64 1 (+.f64 (*.f64 1/2 x) (/.f64 1 x)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (/.f64 1 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(+.f64 (/.f64 (exp.f64 x) x) 0)
(+.f64 0 (/.f64 (exp.f64 x) x))
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))
(+.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(-.f64 (/.f64 (exp.f64 x) x) 0)
(-.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 1 (/.f64 x (exp.f64 x)))
(/.f64 (/.f64 1 x) (exp.f64 (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) (/.f64 (*.f64 x x) x))
(/.f64 (/.f64 (exp.f64 x) x) 1)
(/.f64 2 (*.f64 x (/.f64 2 (exp.f64 x))))
(/.f64 4 (/.f64 (*.f64 x 4) (exp.f64 x)))
(/.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 2)
(/.f64 (/.f64 2 x) (/.f64 2 (exp.f64 x)))
(/.f64 (*.f64 (exp.f64 x) 2) (+.f64 x x))
(/.f64 -1 (/.f64 x (neg.f64 (exp.f64 x))))
(/.f64 -1 (neg.f64 (/.f64 x (exp.f64 x))))
(/.f64 8 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x))))
(/.f64 8 (/.f64 (*.f64 x 8) (exp.f64 x)))
(/.f64 (*.f64 (exp.f64 x) (/.f64 4 x)) 4)
(/.f64 (/.f64 4 x) (*.f64 2 (/.f64 2 (exp.f64 x))))
(/.f64 -2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x)))))
(/.f64 -2 (*.f64 2 (/.f64 x (neg.f64 (exp.f64 x)))))
(/.f64 -2 (*.f64 2 (neg.f64 (/.f64 x (exp.f64 x)))))
(/.f64 (*.f64 (exp.f64 x) 4) (*.f64 x 4))
(/.f64 1/2 (/.f64 (*.f64 x 1/2) (exp.f64 x)))
(/.f64 (neg.f64 (exp.f64 x)) (neg.f64 x))
(/.f64 (/.f64 x (exp.f64 x)) (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x))))
(/.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(/.f64 16 (*.f64 2 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x)))))
(/.f64 16 (*.f64 2 (/.f64 (*.f64 x 8) (exp.f64 x))))
(/.f64 (*.f64 (/.f64 (exp.f64 x) x) 8) 8)
(/.f64 (*.f64 (exp.f64 x) -2) (*.f64 x -2))
(/.f64 -4 (*.f64 2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x))))))
(/.f64 -4 (neg.f64 (/.f64 (*.f64 x 4) (exp.f64 x))))
(/.f64 (*.f64 (exp.f64 x) 8) (*.f64 x 8))
(/.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (/.f64 2 (exp.f64 x)))))
(/.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 2 (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x))))))
(/.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) 1/2)
(/.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 x 1/2))
(/.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 (*.f64 x x) (+.f64 x x)))
(/.f64 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8)) 16)
(/.f64 (*.f64 2 (*.f64 (exp.f64 x) -2)) (*.f64 (neg.f64 x) 4))
(/.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 2 (*.f64 x 8)))
(/.f64 (/.f64 (*.f64 (exp.f64 x) 8) x) 8)
(/.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)
(/.f64 -1/2 (neg.f64 (/.f64 (*.f64 x 1/2) (exp.f64 x))))
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 8)) (neg.f64 (*.f64 x 8)))
(/.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 1/4)
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 4)) (neg.f64 (*.f64 x 4)))
(/.f64 (neg.f64 (/.f64 x (exp.f64 x))) (neg.f64 (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(/.f64 (neg.f64 (*.f64 (exp.f64 x) -2)) (+.f64 x x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 x) -2))) (*.f64 2 (*.f64 (neg.f64 x) 4)))
(/.f64 (*.f64 2 (/.f64 (*.f64 (exp.f64 x) 8) x)) 16)
(/.f64 (*.f64 2 (/.f64 (exp.f64 x) (neg.f64 x))) -2)
(/.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 2 (neg.f64 (*.f64 x 4))))
(/.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x 4))
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 1/2)) (neg.f64 (*.f64 x 1/2)))
(/.f64 (neg.f64 (*.f64 2 (*.f64 (exp.f64 x) -2))) (neg.f64 (*.f64 (neg.f64 x) 4)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 x 4))
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (neg.f64 (neg.f64 (*.f64 x 4))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x -2))
(/.f64 (neg.f64 (/.f64 1 x)) (neg.f64 (exp.f64 (neg.f64 x))))
(/.f64 (neg.f64 (/.f64 2 x)) (neg.f64 (/.f64 2 (exp.f64 x))))
(pow.f64 (/.f64 (exp.f64 x) x) 1)
(neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))
Outputs
(/.f64 1 x)
(+.f64 1 (/.f64 1 x))
(+.f64 1 (+.f64 (*.f64 1/2 x) (/.f64 1 x)))
(+.f64 1 (+.f64 (/.f64 1 x) (*.f64 x 1/2)))
(+.f64 (/.f64 1 x) (+.f64 1 (*.f64 x 1/2)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 2)) (+.f64 (*.f64 1/2 x) (/.f64 1 x))))
(+.f64 1 (+.f64 (+.f64 (/.f64 1 x) (*.f64 x 1/2)) (*.f64 1/6 (pow.f64 x 2))))
(+.f64 (+.f64 (/.f64 1 x) (+.f64 1 (*.f64 x 1/2))) (*.f64 1/6 (pow.f64 x 2)))
(+.f64 1 (+.f64 (/.f64 1 x) (+.f64 (*.f64 1/6 (pow.f64 x 2)) (*.f64 x 1/2))))
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(+.f64 (/.f64 (exp.f64 x) x) 0)
(/.f64 (exp.f64 x) x)
(+.f64 0 (/.f64 (exp.f64 x) x))
(/.f64 (exp.f64 x) x)
(+.f64 -1 (-.f64 1 (/.f64 (exp.f64 x) (neg.f64 x))))
(/.f64 (exp.f64 x) x)
(+.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) (*.f64 (exp.f64 x) (/.f64 1/2 x)))
(/.f64 (exp.f64 x) x)
(-.f64 (/.f64 (exp.f64 x) x) 0)
(/.f64 (exp.f64 x) x)
(-.f64 0 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 1 (/.f64 x (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 1 x) (exp.f64 (neg.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) x)
(/.f64 (exp.f64 x) (/.f64 (*.f64 x x) x))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (exp.f64 x) x) 1)
(/.f64 (exp.f64 x) x)
(/.f64 2 (*.f64 x (/.f64 2 (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 4 (/.f64 (*.f64 x 4) (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) (/.f64 2 x)) 2)
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 2 x) (/.f64 2 (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) 2) (+.f64 x x))
(/.f64 (exp.f64 x) x)
(/.f64 -1 (/.f64 x (neg.f64 (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 -1 (neg.f64 (/.f64 x (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 8 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 8 (/.f64 (*.f64 x 8) (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) (/.f64 4 x)) 4)
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 4 x) (*.f64 2 (/.f64 2 (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 -2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 -2 (*.f64 2 (/.f64 x (neg.f64 (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 -2 (*.f64 2 (neg.f64 (/.f64 x (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) 4) (*.f64 x 4))
(/.f64 (exp.f64 x) x)
(/.f64 1/2 (/.f64 (*.f64 x 1/2) (exp.f64 x)))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (exp.f64 x)) (neg.f64 x))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 x (exp.f64 x)) (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 16 (*.f64 2 (*.f64 2 (/.f64 (*.f64 x 4) (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 16 (*.f64 2 (/.f64 (*.f64 x 8) (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (/.f64 (exp.f64 x) x) 8) 8)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) -2) (*.f64 x -2))
(/.f64 (exp.f64 x) x)
(/.f64 -4 (*.f64 2 (neg.f64 (*.f64 x (/.f64 2 (exp.f64 x))))))
(/.f64 (exp.f64 x) x)
(/.f64 -4 (neg.f64 (/.f64 (*.f64 x 4) (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) 8) (*.f64 x 8))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 (*.f64 x (/.f64 2 (exp.f64 x))) (*.f64 x (/.f64 2 (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (*.f64 x 4) (exp.f64 x)) (*.f64 2 (*.f64 x (*.f64 (/.f64 2 (exp.f64 x)) (/.f64 x (exp.f64 x))))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) (/.f64 1/2 x)) 1/2)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) 1/2) (*.f64 x 1/2))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 (exp.f64 x) 1/2) (/.f64 (*.f64 x x) (+.f64 x x)))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8)) 16)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (*.f64 (exp.f64 x) -2)) (*.f64 (neg.f64 x) 4))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (*.f64 (exp.f64 x) 8)) (*.f64 2 (*.f64 x 8)))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (*.f64 (exp.f64 x) 8) x) 8)
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (exp.f64 x) (neg.f64 x)) -1)
(/.f64 (exp.f64 x) x)
(/.f64 -1/2 (neg.f64 (/.f64 (*.f64 x 1/2) (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 8)) (neg.f64 (*.f64 x 8)))
(/.f64 (exp.f64 x) x)
(/.f64 (/.f64 (exp.f64 x) (*.f64 x 4)) 1/4)
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 4)) (neg.f64 (*.f64 x 4)))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (/.f64 x (exp.f64 x))) (neg.f64 (*.f64 x (/.f64 (/.f64 x (exp.f64 x)) (exp.f64 x)))))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (*.f64 (exp.f64 x) -2)) (+.f64 x x))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (/.f64 (exp.f64 x) x) 8))) 32)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 x) -2))) (*.f64 2 (*.f64 (neg.f64 x) 4)))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (/.f64 (*.f64 (exp.f64 x) 8) x)) 16)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (/.f64 (exp.f64 x) (neg.f64 x))) -2)
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 2 (neg.f64 (*.f64 x 4))))
(/.f64 (exp.f64 x) x)
(/.f64 (*.f64 2 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x 4))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (*.f64 (exp.f64 x) 1/2)) (neg.f64 (*.f64 x 1/2)))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (*.f64 2 (*.f64 (exp.f64 x) -2))) (neg.f64 (*.f64 (neg.f64 x) 4)))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (*.f64 x 4))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) 4))) (neg.f64 (neg.f64 (*.f64 x 4))))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (neg.f64 (*.f64 (exp.f64 x) -2))) (*.f64 x -2))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (/.f64 1 x)) (neg.f64 (exp.f64 (neg.f64 x))))
(/.f64 (exp.f64 x) x)
(/.f64 (neg.f64 (/.f64 2 x)) (neg.f64 (/.f64 2 (exp.f64 x))))
(/.f64 (exp.f64 x) x)
(pow.f64 (/.f64 (exp.f64 x) x) 1)
(/.f64 (exp.f64 x) x)
(neg.f64 (/.f64 (exp.f64 x) (neg.f64 x)))
(/.f64 (exp.f64 x) x)

localize11.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 31 to 18 computations (41.9% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite70.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1698×rational.json-simplify-35
1160×rational.json-simplify-2
1000×exponential.json-3
1000×rational.json-1
1000×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
15915
214415
331415
463815
5156815
6419315
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 -1 (exp.f64 (neg.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (neg.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 x)) (-.f64 1 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -1 (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (exp.f64 x)) (*.f64 1/2 (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -2 (/.f64 2 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 -1) (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 1 x)) (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (exp.f64 x)) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (/.f64 2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))) (exp.f64 -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (/.f64 1/2 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (*.f64 2 (neg.f64 (exp.f64 x)))) 1) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (/.f64 (exp.f64 x) -1/2)) 1) (exp.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (exp.f64 x)) (exp.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (+.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)))))

simplify231.0ms (3.3%)

Algorithm
egg-herbie
Rules
1394×rational.json-simplify-41
1156×rational.json-simplify-35
1134×rational.json-simplify-2
1080×rational.json-simplify-53
608×rational.json-simplify-61
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0106825
1224825
2468825
31443823
42997823
55512823
66624823
Stop Event
node limit
Counts
49 → 55
Calls
Call 1
Inputs
(*.f64 -1 x)
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1 x))
(+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1 x)))
(+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1 x))))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(-.f64 (exp.f64 (neg.f64 x)) 1)
(-.f64 (exp.f64 (neg.f64 x)) 1)
(-.f64 (exp.f64 (neg.f64 x)) 1)
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(-.f64 (exp.f64 (neg.f64 x)) 1)
(-.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 0)
(*.f64 (exp.f64 (neg.f64 x)) (-.f64 1 (exp.f64 x)))
(*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
(*.f64 1 (+.f64 -1 (exp.f64 (neg.f64 x))))
(*.f64 2 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))))
(*.f64 2 (*.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (exp.f64 (neg.f64 x))))
(*.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 1/2)
(*.f64 (/.f64 2 (exp.f64 x)) (*.f64 1/2 (-.f64 1 (exp.f64 x))))
(*.f64 4 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))
(*.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 1/4)
(*.f64 1/2 (+.f64 -2 (/.f64 2 (exp.f64 x))))
(*.f64 (exp.f64 -1) (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))))
(*.f64 (exp.f64 (-.f64 1 x)) (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))))
(*.f64 (-.f64 1 (exp.f64 x)) (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))) 2)
(*.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (/.f64 2 (exp.f64 x)))
(*.f64 (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))) (exp.f64 -1))
(*.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (-.f64 1 x)))
(*.f64 1/4 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)
(*.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (/.f64 1/2 (exp.f64 x)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 2 (neg.f64 (exp.f64 x)))) 1) (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 (*.f64 1/2 (/.f64 (exp.f64 x) -1/2)) 1) (exp.f64 (neg.f64 x)))
(/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
(/.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 2)
(/.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)
(/.f64 (-.f64 1 (exp.f64 x)) (exp.f64 x))
(/.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)) 16)
(/.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 1/2))
(/.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (+.f64 -1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) 32)
(/.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)))) 64)
(/.f64 (neg.f64 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))
(pow.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
Outputs
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1 x))
(+.f64 (neg.f64 x) (*.f64 1/2 (pow.f64 x 2)))
(+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1 x)))
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (neg.f64 x) (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (neg.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 x 2))))
(+.f64 (neg.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (+.f64 (neg.f64 x) (*.f64 1/2 (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 x 3)))
(+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1 x))))
(+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (+.f64 (neg.f64 x) (*.f64 1/24 (pow.f64 x 4))) (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (+.f64 (neg.f64 x) (*.f64 1/24 (pow.f64 x 4))) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (+.f64 (neg.f64 x) (*.f64 1/2 (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 (neg.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 1/24 (pow.f64 x 4)))))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (*.f64 -1 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 (neg.f64 x)) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(-.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 0)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 (neg.f64 x)) (-.f64 1 (exp.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 1 (+.f64 -1 (exp.f64 (neg.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 2 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 2 (*.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (exp.f64 (neg.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 1/2)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 2 (exp.f64 x)) (*.f64 1/2 (-.f64 1 (exp.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 4 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 1/4)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 1/2 (+.f64 -2 (/.f64 2 (exp.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 -1) (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (exp.f64 (-.f64 1 x)) (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (-.f64 1 (exp.f64 x)) (exp.f64 (neg.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 -1/2 (/.f64 1/2 (exp.f64 x))) 2)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (/.f64 2 (exp.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (*.f64 (exp.f64 (-.f64 1 x)) (-.f64 1 (exp.f64 x))) (exp.f64 -1))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (-.f64 1 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 1/4 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (/.f64 1/2 (exp.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 2 (neg.f64 (exp.f64 x)))) 1) (exp.f64 (neg.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(*.f64 (+.f64 (*.f64 1/2 (/.f64 (exp.f64 x) -1/2)) 1) (exp.f64 (neg.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (+.f64 -2 (/.f64 2 (exp.f64 x))) 2)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 4) 4)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (-.f64 1 (exp.f64 x)) (exp.f64 x))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8) 8)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)) 16)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 1/2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 1/2))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 (exp.f64 -1) (-.f64 1 (exp.f64 x))) (exp.f64 (+.f64 -1 x)))
(*.f64 (-.f64 1 (exp.f64 x)) (/.f64 (exp.f64 -1) (exp.f64 (+.f64 -1 x))))
(*.f64 (exp.f64 -1) (/.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) (exp.f64 -1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) 32)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (*.f64 2 (-.f64 1 (exp.f64 x))) (*.f64 (exp.f64 x) 2))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 8)))) 64)
(+.f64 -1 (exp.f64 (neg.f64 x)))
(/.f64 (neg.f64 (-.f64 1 (exp.f64 x))) (neg.f64 (exp.f64 x)))
(+.f64 -1 (exp.f64 (neg.f64 x)))
(pow.f64 (+.f64 -1 (exp.f64 (neg.f64 x))) 1)
(+.f64 -1 (exp.f64 (neg.f64 x)))

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
Compiler

Compiled 27 to 20 computations (25.9% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite221.0ms (3.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01025
18025
218025
335825
478025
5216425
6582125
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 1/2 x))) (/.f64 2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (/.f64 1/2 x) (/.f64 (+.f64 1/2 (*.f64 x 1/4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)))))

simplify322.0ms (4.6%)

Algorithm
egg-herbie
Rules
4426×rational.json-simplify-41
1520×rational.json-simplify-35
1304×rational.json-simplify-49
1258×rational.json-simplify-48
892×rational.json-simplify-2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
061770
1124746
2253746
3769746
41550746
52597746
63020746
73123746
83185746
93232746
103271746
113308746
123345746
133382746
143419746
153456746
163493746
173530746
183567746
194535746
207789746
217950746
Stop Event
node limit
Counts
32 → 38
Calls
Call 1
Inputs
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(*.f64 1/4 x)
(+.f64 1/2 (*.f64 1/4 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(*.f64 1/4 x)
(+.f64 1/2 (*.f64 1/4 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 0)
(*.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 1/2 x))) (/.f64 2 x)))
(*.f64 1 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))))
(*.f64 1/4 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))
(*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
(*.f64 2 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))))
(*.f64 2 (+.f64 (/.f64 1/2 x) (/.f64 (+.f64 1/2 (*.f64 x 1/4)) 2)))
(*.f64 4 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))
(*.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 1/2)
(*.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 1/4)
(*.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))) 2)
(*.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)
(/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
(/.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 2)
(/.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)
(/.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8))) 32)
(pow.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
Outputs
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 (/.f64 1 x) 1/2)
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(*.f64 1/4 x)
(*.f64 x 1/4)
(+.f64 1/2 (*.f64 1/4 x))
(+.f64 1/2 (*.f64 x 1/4))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(*.f64 1/4 x)
(*.f64 x 1/4)
(+.f64 1/2 (*.f64 1/4 x))
(+.f64 1/2 (*.f64 x 1/4))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 1/4 x)))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (+.f64 (/.f64 1 x) 1/2) (*.f64 x 1/4))
(+.f64 (/.f64 1 x) (+.f64 1/2 (*.f64 x 1/4)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 0)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))))
(*.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 x 1/2) (/.f64 2 x)))))
(*.f64 1/2 (+.f64 (+.f64 (*.f64 x 1/2) (/.f64 2 x)) 1))
(*.f64 1/2 (+.f64 1 (+.f64 (*.f64 x 1/2) (/.f64 2 x))))
(*.f64 1/2 (+.f64 (+.f64 1/2 (+.f64 1/2 (*.f64 1/2 x))) (/.f64 2 x)))
(*.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 x 1/2) (/.f64 2 x)))))
(*.f64 1/2 (+.f64 (+.f64 (*.f64 x 1/2) (/.f64 2 x)) 1))
(*.f64 1/2 (+.f64 1 (+.f64 (*.f64 x 1/2) (/.f64 2 x))))
(*.f64 1 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))))
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 1/4 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 2 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))))
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 2 (+.f64 (/.f64 1/2 x) (/.f64 (+.f64 1/2 (*.f64 x 1/4)) 2)))
(*.f64 4 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4))
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 1/2)
(*.f64 1/2 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 x 1/2) (/.f64 2 x)))))
(*.f64 1/2 (+.f64 (+.f64 (*.f64 x 1/2) (/.f64 2 x)) 1))
(*.f64 1/2 (+.f64 1 (+.f64 (*.f64 x 1/2) (/.f64 2 x))))
(*.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 1/4)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))) 2)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(*.f64 (/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(/.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(/.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 1/2 x) (/.f64 2 x)))) 2)
(/.f64 (+.f64 1/2 (+.f64 1/2 (+.f64 (*.f64 x 1/2) (/.f64 2 x)))) 2)
(/.f64 (+.f64 (+.f64 (*.f64 x 1/2) (/.f64 2 x)) 1) 2)
(/.f64 (+.f64 1 (+.f64 (*.f64 x 1/2) (/.f64 2 x))) 2)
(/.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 4) 4)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(/.f64 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8) 8)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(/.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) 16)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8)) (*.f64 2 (*.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 8))) 32)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))
(pow.f64 (+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x)))) 1)
(+.f64 1/2 (*.f64 1/4 (+.f64 x (/.f64 4 x))))

localize8.0ms (0.1%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

eval38.0ms (0.5%)

Compiler

Compiled 1973 to 1411 computations (28.5% saved)

prune30.0ms (0.4%)

Pruning

9 alts after pruning (1 fresh and 8 done)

PrunedKeptTotal
New1691170
Fresh000
Picked011
Done077
Total1699178
Error
0b
Counts
178 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
1.6b
(/.f64 (exp.f64 x) x)
21.9b
(/.f64 1 x)
22.1b
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
22.1b
(+.f64 1 (/.f64 1 x))
22.0b
(+.f64 1/2 (/.f64 1 x))
22.2b
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
40.5b
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
1.6b
(*.f64 (/.f64 1 x) (exp.f64 x))
61.8b
(*.f64 x 1/4)
Compiler

Compiled 62 to 49 computations (21% saved)

localize2.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune3.0ms (0%)

Pruning

9 alts after pruning (0 fresh and 9 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done088
Total099
Error
0b
Counts
9 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
1.6b
(/.f64 (exp.f64 x) x)
21.9b
(/.f64 1 x)
22.1b
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
22.1b
(+.f64 1 (/.f64 1 x))
22.0b
(+.f64 1/2 (/.f64 1 x))
22.2b
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
40.5b
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
1.6b
(*.f64 (/.f64 1 x) (exp.f64 x))
61.8b
(*.f64 x 1/4)
Compiler

Compiled 62 to 49 computations (21% saved)

regimes14.0ms (0.2%)

Counts
11 → 1
Calls
Call 1
Inputs
(*.f64 x 1/4)
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1 (/.f64 1 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 1 x) (exp.f64 x))
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
Outputs
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
Calls

3 calls:

7.0ms
x
2.0ms
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
2.0ms
(exp.f64 x)
Results
ErrorSegmentsBranch
1.3b1x
1.3b1(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
1.3b1(exp.f64 x)
Compiler

Compiled 84 to 57 computations (32.1% saved)

regimes12.0ms (0.2%)

Counts
10 → 1
Calls
Call 1
Inputs
(*.f64 x 1/4)
(/.f64 1 x)
(+.f64 1/2 (/.f64 1 x))
(+.f64 1 (/.f64 1 x))
(+.f64 1/2 (+.f64 (/.f64 1 x) (*.f64 x 1/4)))
(+.f64 (/.f64 1 x) (+.f64 (*.f64 x 1/12) 1/2))
(/.f64 (exp.f64 x) x)
(*.f64 (/.f64 1 x) (exp.f64 x))
(*.f64 (/.f64 2 (+.f64 -1 (exp.f64 (neg.f64 x)))) -1/2)
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
Outputs
(*.f64 (/.f64 1 x) (exp.f64 x))
Calls

3 calls:

6.0ms
x
2.0ms
(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
2.0ms
(exp.f64 x)
Results
ErrorSegmentsBranch
1.6b1x
1.6b1(/.f64 (exp.f64 x) (-.f64 (exp.f64 x) 1))
1.6b1(exp.f64 x)
Compiler

Compiled 74 to 51 computations (31.1% saved)

regimes7.0ms (0.1%)

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

1 calls:

6.0ms
x
Results
ErrorSegmentsBranch
1.6b1x
Compiler

Compiled 41 to 30 computations (26.8% saved)

regimes6.0ms (0.1%)

Accuracy

Total -39.9b remaining (-182%)

Threshold costs -39.9b (-182%)

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

1 calls:

5.0ms
x
Results
ErrorSegmentsBranch
21.9b1x
Compiler

Compiled 37 to 28 computations (24.3% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01771
Stop Event
done
saturated
Calls
Call 1
Inputs
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
(*.f64 (/.f64 1 x) (exp.f64 x))
(/.f64 (exp.f64 x) x)
(/.f64 1 x)
(*.f64 x 1/4)
Outputs
(/.f64 (exp.f64 x) (+.f64 (*.f64 1/2 (pow.f64 x 2)) x))
(*.f64 (/.f64 1 x) (exp.f64 x))
(/.f64 (exp.f64 x) x)
(/.f64 1 x)
(*.f64 x 1/4)
Compiler

Compiled 31 to 22 computations (29% saved)

soundness0.0ms (0%)

end29.0ms (0.4%)

Compiler

Compiled 27 to 16 computations (40.7% saved)

Profiling

Loading profile data...