Details

Time bar (total: 22.2s)

analyze3.0ms (0%)

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
0%0%50%0%25%25%0%3
50%25%25%0%25%25%0%4
75%37.5%12.5%0%25%25%0%5
87.5%43.7%6.2%0%25%25%0%6
93.8%46.9%3.1%0%25%25%0%7
96.9%48.4%1.6%0%25%25%0%8
98.4%49.2%0.8%0%25%25%0%9
99.2%49.6%0.4%0%25%25%0%10
99.6%49.8%0.2%0%25%25%0%11
99.8%49.9%0.1%0%25%25%0%12
Compiler

Compiled 10 to 8 computations (20% saved)

sample20.0s (89.8%)

Results
8.9s4110×body1024valid
7.7s1652×body256valid
1.8s2081×body512valid
1.6s413×body2048valid
0.0msbody256invalid
Bogosity

preprocess92.0ms (0.4%)

Algorithm
egg-herbie
Rules
2122×rational.json-simplify-35
858×rational.json-simplify-51
858×rational.json-simplify-2
796×rational.json-simplify-1
774×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
11523
22523
35623
413723
539323
667123
7148523
8288923
9488823
10740223
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Outputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
(log.f64 (/.f64 (+.f64 eps -1) (-.f64 -1 eps)))
Compiler

Compiled 10 to 8 computations (20% saved)

simplify93.0ms (0.4%)

Algorithm
egg-herbie
Rules
2122×rational.json-simplify-35
858×rational.json-simplify-51
858×rational.json-simplify-2
796×rational.json-simplify-1
774×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
11523
22523
35623
413723
539323
667123
7148523
8288923
9488823
10740223
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Outputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
(log.f64 (/.f64 (+.f64 eps -1) (-.f64 -1 eps)))

eval1.0ms (0%)

Compiler

Compiled 25 to 19 computations (24% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Error
57.7b
Counts
4 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
57.7b
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

localize10.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 1 eps) (-.f64 eps -1))
5.2b
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
Compiler

Compiled 25 to 18 computations (28% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
0.0ms
eps
@inf
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
0.0ms
eps
@-inf
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
0.0ms
eps
@inf
(/.f64 (-.f64 1 eps) (-.f64 eps -1))
0.0ms
eps
@0
(/.f64 (-.f64 1 eps) (-.f64 eps -1))

rewrite79.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1876×bool.json-1
1876×bool.json-2
1836×rational.json-1
1508×bool.json-3
718×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01042
111042
234442
379142
4192242
5543542
Stop Event
node limit
Counts
2 → 70
Calls
Call 1
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
(/.f64 (-.f64 1 eps) (-.f64 eps -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (*.f64 2 (/.f64 1/2 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (*.f64 (/.f64 1 (-.f64 -1 eps)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (*.f64 (*.f64 2 (/.f64 1 (+.f64 1 eps))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (*.f64 (/.f64 2 (+.f64 1 eps)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (*.f64 -1 (/.f64 1 (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (+.f64 eps -1) (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (*.f64 2 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 2) (/.f64 1/2 (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 2 (/.f64 1/2 (+.f64 1 eps))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 -1/2 (/.f64 1 (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps -1) (/.f64 1 (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps -1) (*.f64 -1 (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps -1) (*.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps -1) (*.f64 (*.f64 2 (/.f64 1 (-.f64 -1 eps))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps -1) (*.f64 -2 (/.f64 1/2 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (-.f64 1 eps) 2) (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 1 eps) (/.f64 1/2 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (-.f64 1 eps) -2) (/.f64 1 (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 (+.f64 1 eps)) (-.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 4) (/.f64 1/2 (+.f64 2 (+.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/4 (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (+.f64 1 eps)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1 (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 1 eps)) (*.f64 (-.f64 1 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 -1 eps)) (+.f64 eps -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1/2 (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 (/.f64 1/2 (-.f64 -1 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 1/2 (/.f64 1 (-.f64 -1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) (*.f64 (-.f64 1 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) (+.f64 eps -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) (*.f64 (-.f64 1 eps) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (-.f64 -1 eps)) (+.f64 eps (+.f64 eps -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1/2 (+.f64 1 eps)) (/.f64 1/2 (+.f64 1 eps))) (-.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x and (/.f64 (-.f64 1 eps) (+.f64 1 eps)) (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f64 (-.f64 1 eps) (+.f64 1 eps)) (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))))

simplify122.0ms (0.5%)

Algorithm
egg-herbie
Rules
1168×rational.json-simplify-2
1098×rational.json-simplify-51
1080×rational.json-simplify-35
952×rational.json-simplify-53
786×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01992832
14132820
27832244
315912226
430822226
556092226
673942226
Stop Event
node limit
Counts
94 → 116
Calls
Call 1
Inputs
(*.f64 -2 eps)
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (*.f64 -2/3 (pow.f64 eps 3)))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
1
(+.f64 (*.f64 -2 eps) 1)
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) 1))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -2 (pow.f64 eps 3)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(+.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)
(+.f64 0 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(-.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)
(*.f64 1 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(*.f64 2 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(*.f64 2 (*.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1))
(*.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1/2)
(*.f64 1/2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(*.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)
(/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(/.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)
(/.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4))) 16)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(+.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)
(+.f64 0 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(-.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)
(-.f64 0 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
(*.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(*.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))
(*.f64 (-.f64 1 eps) (*.f64 2 (/.f64 1/2 (+.f64 1 eps))))
(*.f64 (-.f64 1 eps) (*.f64 (/.f64 1 (-.f64 -1 eps)) -1))
(*.f64 (-.f64 1 eps) (*.f64 (*.f64 2 (/.f64 1 (+.f64 1 eps))) 1/2))
(*.f64 (-.f64 1 eps) (*.f64 (/.f64 2 (+.f64 1 eps)) 1/2))
(*.f64 (-.f64 1 eps) (*.f64 -1 (/.f64 1 (-.f64 -1 eps))))
(*.f64 -1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
(*.f64 -1 (*.f64 (+.f64 eps -1) (/.f64 1 (+.f64 1 eps))))
(*.f64 -1 (*.f64 (*.f64 2 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))) 1/2))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(*.f64 (*.f64 (-.f64 1 eps) 2) (/.f64 1/2 (+.f64 1 eps)))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 2 (/.f64 1/2 (+.f64 1 eps))) 1/2))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 -1/2 (/.f64 1 (-.f64 -1 eps))))
(*.f64 (+.f64 eps -1) (/.f64 1 (-.f64 -1 eps)))
(*.f64 (+.f64 eps -1) (*.f64 -1 (/.f64 1 (+.f64 1 eps))))
(*.f64 (+.f64 eps -1) (*.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) 1))
(*.f64 (+.f64 eps -1) (*.f64 (*.f64 2 (/.f64 1 (-.f64 -1 eps))) 1/2))
(*.f64 (+.f64 eps -1) (*.f64 -2 (/.f64 1/2 (+.f64 1 eps))))
(*.f64 2 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 1))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) 2) (/.f64 1 (+.f64 1 eps))))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1/2))
(*.f64 2 (*.f64 (-.f64 1 eps) (/.f64 1/2 (+.f64 1 eps))))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) -2) (/.f64 1 (-.f64 -1 eps))))
(*.f64 2 (*.f64 (/.f64 1/2 (+.f64 1 eps)) (-.f64 1 eps)))
(*.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)) 1/2)
(*.f64 (*.f64 (-.f64 1 eps) 4) (/.f64 1/2 (+.f64 2 (+.f64 eps eps))))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) 1))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/4 (/.f64 1 (+.f64 1 eps))))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 1 eps))))
(*.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))
(*.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)) -1)
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (+.f64 1 eps)) -1))
(*.f64 1/2 (*.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1 (-.f64 -1 eps))))
(*.f64 (/.f64 1/2 (+.f64 1 eps)) (*.f64 (-.f64 1 eps) 2))
(*.f64 (/.f64 1 (-.f64 -1 eps)) (+.f64 eps -1))
(*.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1/2 (-.f64 -1 eps)))
(*.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 (/.f64 1/2 (-.f64 -1 eps)) 1))
(*.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 1/2 (/.f64 1 (-.f64 -1 eps))))
(*.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) (*.f64 (-.f64 1 eps) 2))
(*.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) (+.f64 eps -1))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 2)
(*.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) (*.f64 (-.f64 1 eps) 4))
(*.f64 (/.f64 1/2 (-.f64 -1 eps)) (+.f64 eps (+.f64 eps -2)))
(*.f64 (+.f64 (/.f64 1/2 (+.f64 1 eps)) (/.f64 1/2 (+.f64 1 eps))) (-.f64 1 eps))
(neg.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
Outputs
(*.f64 -2 eps)
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (*.f64 -2/3 (pow.f64 eps 3)))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (*.f64 -2/5 (pow.f64 eps 5)))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/7 (pow.f64 eps 7)))))
(+.f64 (+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3))) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/7 (pow.f64 eps 7))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/7 (pow.f64 eps 7)))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/3 (/.f64 1 (pow.f64 eps 3)))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))) (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/3 (/.f64 1 (pow.f64 eps 3)))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))) (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
1
(+.f64 (*.f64 -2 eps) 1)
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) 1))
(+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 (*.f64 -2 eps) 1))
(+.f64 (*.f64 -2 eps) (+.f64 1 (*.f64 2 (pow.f64 eps 2))))
(+.f64 (+.f64 (*.f64 -2 eps) 1) (*.f64 2 (pow.f64 eps 2)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -2 (pow.f64 eps 3)))))
(+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 (+.f64 1 (*.f64 -2 (pow.f64 eps 3))) (*.f64 -2 eps)))
(+.f64 (*.f64 -2 eps) (+.f64 1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 -2 (pow.f64 eps 3)))))
(+.f64 1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 -2 (+.f64 eps (pow.f64 eps 3)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(+.f64 (*.f64 2 (/.f64 1 eps)) -1)
(+.f64 -1 (*.f64 2 (/.f64 1 eps)))
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 (pow.f64 eps 2)) (/.f64 1 eps))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(+.f64 (*.f64 2 (/.f64 1 eps)) (-.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2))))))
(-.f64 (*.f64 2 (+.f64 (/.f64 1 (pow.f64 eps 3)) (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (*.f64 2 (+.f64 (/.f64 1 eps) (/.f64 1 (pow.f64 eps 3)))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 (pow.f64 eps 2)) (+.f64 (/.f64 1 eps) (/.f64 1 (pow.f64 eps 3))))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(+.f64 (*.f64 2 (/.f64 1 eps)) -1)
(+.f64 -1 (*.f64 2 (/.f64 1 eps)))
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 (pow.f64 eps 2)) (/.f64 1 eps))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(+.f64 (*.f64 2 (/.f64 1 eps)) (-.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2))))))
(-.f64 (*.f64 2 (+.f64 (/.f64 1 (pow.f64 eps 3)) (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (*.f64 2 (+.f64 (/.f64 1 eps) (/.f64 1 (pow.f64 eps 3)))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 -1 (*.f64 2 (-.f64 (/.f64 1 (pow.f64 eps 2)) (+.f64 (/.f64 1 eps) (/.f64 1 (pow.f64 eps 3))))))
(+.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(+.f64 0 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(-.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 0)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 1 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 2 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 2 (*.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1))
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 1/2)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 1/2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(*.f64 (/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(/.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(/.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) 2)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(/.f64 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4) 4)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(/.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) 8)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4)) (*.f64 2 (*.f64 (log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 4))) 16)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(+.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(+.f64 0 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(-.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 0)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(-.f64 0 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (*.f64 2 (/.f64 1/2 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (*.f64 (/.f64 1 (-.f64 -1 eps)) -1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (*.f64 (*.f64 2 (/.f64 1 (+.f64 1 eps))) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (*.f64 (/.f64 2 (+.f64 1 eps)) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (*.f64 -1 (/.f64 1 (-.f64 -1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 -1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 -1 (*.f64 (+.f64 eps -1) (/.f64 1 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 -1 (*.f64 (*.f64 2 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (/.f64 1/2 (+.f64 1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) 1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 (*.f64 2 (/.f64 1/2 (+.f64 1 eps))) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 2) (*.f64 -1/2 (/.f64 1 (-.f64 -1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps -1) (/.f64 1 (-.f64 -1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps -1) (*.f64 -1 (/.f64 1 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps -1) (*.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) 1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps -1) (*.f64 (*.f64 2 (/.f64 1 (-.f64 -1 eps))) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps -1) (*.f64 -2 (/.f64 1/2 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) 2) (/.f64 1 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (-.f64 1 eps) (/.f64 1/2 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (/.f64 (-.f64 1 eps) -2) (/.f64 1 (-.f64 -1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 2 (*.f64 (/.f64 1/2 (+.f64 1 eps)) (-.f64 1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)) 1/2)
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 -2 eps)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (-.f64 -1 eps)))
(*.f64 -1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (+.f64 eps 1)))
(*.f64 (*.f64 (-.f64 1 eps) 4) (/.f64 1/2 (+.f64 2 (+.f64 eps eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) 1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/4 (/.f64 1 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 (-.f64 1 eps) 4) (*.f64 1/2 (/.f64 1/2 (+.f64 1 eps))))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)) -1)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 eps -2)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 -2 eps)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (-.f64 -1 eps)))
(*.f64 -1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (+.f64 eps 1)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 eps (+.f64 eps -2)) (+.f64 1 eps)) -1))
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 -2 eps)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (-.f64 -1 eps)))
(*.f64 -1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (+.f64 eps 1)))
(*.f64 1/2 (*.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1 (-.f64 -1 eps))))
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 -2 eps)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (-.f64 -1 eps)))
(*.f64 -1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (+.f64 eps 1)))
(*.f64 (/.f64 1/2 (+.f64 1 eps)) (*.f64 (-.f64 1 eps) 2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 1 (-.f64 -1 eps)) (+.f64 eps -1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (+.f64 eps (+.f64 eps -2)) (/.f64 1/2 (-.f64 -1 eps)))
(*.f64 (+.f64 eps (+.f64 -2 eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 1/2 (-.f64 -1 eps)))
(*.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 (/.f64 1/2 (-.f64 -1 eps)) 1))
(*.f64 (+.f64 eps (+.f64 -2 eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 1/2 (-.f64 -1 eps)))
(*.f64 (+.f64 eps (+.f64 eps -2)) (*.f64 1/2 (/.f64 1 (-.f64 -1 eps))))
(*.f64 1/2 (/.f64 (+.f64 eps (+.f64 -2 eps)) (-.f64 -1 eps)))
(*.f64 1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (-.f64 -1 eps)))
(*.f64 -1/2 (/.f64 (+.f64 -2 (+.f64 eps eps)) (+.f64 eps 1)))
(*.f64 (*.f64 (/.f64 1 (+.f64 1 eps)) 1/2) (*.f64 (-.f64 1 eps) 2))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (*.f64 -1 (/.f64 1 (+.f64 1 eps))) (+.f64 eps -1))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 2 (+.f64 eps eps))) 2)
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 1/2 (+.f64 2 (+.f64 eps eps))) (*.f64 (-.f64 1 eps) 4))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 1/2 (-.f64 -1 eps)) (+.f64 eps (+.f64 eps -2)))
(*.f64 (+.f64 eps (+.f64 -2 eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 -1/2 (+.f64 eps 1)))
(*.f64 (+.f64 -2 (+.f64 eps eps)) (/.f64 1/2 (-.f64 -1 eps)))
(*.f64 (+.f64 (/.f64 1/2 (+.f64 1 eps)) (/.f64 1/2 (+.f64 1 eps))) (-.f64 1 eps))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(neg.f64 (/.f64 (-.f64 1 eps) (-.f64 -1 eps)))
(+.f64 -1 (-.f64 1 (/.f64 (-.f64 1 eps) (-.f64 -1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))

eval33.0ms (0.1%)

Compiler

Compiled 1537 to 1259 computations (18.1% saved)

prune17.0ms (0.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1133116
Fresh000
Picked011
Done000
Total1134117
Error
0.0b
Counts
117 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
0.5b
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
0.7b
(*.f64 -2 eps)
57.7b
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
Compiler

Compiled 39 to 31 computations (20.5% saved)

localize5.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize10.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -2/3 (pow.f64 eps 3))
Compiler

Compiled 25 to 19 computations (24% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(*.f64 -2/3 (pow.f64 eps 3))
0.0ms
eps
@inf
(*.f64 -2/3 (pow.f64 eps 3))
0.0ms
eps
@-inf
(*.f64 -2/3 (pow.f64 eps 3))

rewrite89.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1592×bool.json-1
1592×bool.json-2
1534×rational.json-1
1534×rational.json-2
1534×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
16913
218813
338113
475813
5158813
6367913
7637813
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 -2/3 (pow.f64 eps 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -2/3 (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 eps 3) -1/3) (*.f64 (pow.f64 eps 3) -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 3) -4/3) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 3) -8/3) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 3) -16/3) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 -2/3 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/3 (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/3 (pow.f64 eps 3)))))))

simplify638.0ms (2.9%)

Algorithm
egg-herbie
Rules
8108×rational.json-simplify-41
3924×rational.json-simplify-35
2720×rational.json-simplify-2
2692×rational.json-simplify-49
782×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037143
180143
2145143
3324143
4758143
52243143
62980143
73164143
83246143
93316143
103381143
113441143
123498143
133553143
143608143
153664143
163720143
173776143
183832143
193888143
203944143
215789143
225794143
235804143
245804143
256832143
267111143
277359143
287602143
297845143
307845143
317872143
Stop Event
node limit
Counts
11 → 12
Calls
Call 1
Inputs
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(+.f64 0 (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 (pow.f64 eps 3) -1/3) (*.f64 (pow.f64 eps 3) -1/3))
(-.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(/.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)
(/.f64 (*.f64 (pow.f64 eps 3) -4/3) 2)
(/.f64 (*.f64 (pow.f64 eps 3) -8/3) 4)
(/.f64 (*.f64 (pow.f64 eps 3) -16/3) 8)
(/.f64 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)))) 64)
Outputs
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(+.f64 0 (*.f64 -2/3 (pow.f64 eps 3)))
(*.f64 -2/3 (pow.f64 eps 3))
(+.f64 (*.f64 (pow.f64 eps 3) -1/3) (*.f64 (pow.f64 eps 3) -1/3))
(*.f64 -2/3 (pow.f64 eps 3))
(-.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 (pow.f64 eps 3) -4/3) 2)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 (pow.f64 eps 3) -8/3) 4)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 (pow.f64 eps 3) -16/3) 8)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)) 16)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) 32)
(*.f64 -2/3 (pow.f64 eps 3))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 3) -16/3)))) 64)
(*.f64 -2/3 (pow.f64 eps 3))

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 eps 5)
0.0b
(+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3)))
0.1b
(*.f64 -2/5 (pow.f64 eps 5))
0.1b
(*.f64 -2/3 (pow.f64 eps 3))
Compiler

Compiled 52 to 41 computations (21.2% saved)

series3.0ms (0%)

Counts
3 → 3
Calls

9 calls:

TimeVariablePointExpression
1.0ms
eps
@-inf
(pow.f64 eps 5)
0.0ms
eps
@0
(*.f64 -2/5 (pow.f64 eps 5))
0.0ms
eps
@inf
(pow.f64 eps 5)
0.0ms
eps
@inf
(+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3)))
0.0ms
eps
@-inf
(*.f64 -2/5 (pow.f64 eps 5))

rewrite113.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1908×bool.json-1
1384×rational.json-simplify-35
1280×bool.json-2
1220×rational.json-1
1220×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01251
111651
227851
353851
4110351
5238651
6486951
7774151
Stop Event
node limit
Counts
3 → 52
Calls
Call 1
Inputs
(*.f64 -2/5 (pow.f64 eps 5))
(+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3)))
(pow.f64 eps 5)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -2/5 (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 5) -1/5))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2/5 (pow.f64 eps 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 5) -4/5) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 5) -8/5) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 -2/5 (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/5 (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/5 (pow.f64 eps 5)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 3) -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 eps 3) -4/3) (*.f64 (pow.f64 eps 5) -4/5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 eps 5) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 eps 5))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 eps 5) 1/2) (*.f64 (pow.f64 eps 5) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 eps 5) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 eps 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 eps 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (pow.f64 eps 5) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 eps 5) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (pow.f64 eps 5) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 eps 5) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (pow.f64 eps 5) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 eps 5) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (pow.f64 eps 5) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 eps 5) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 eps 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 5) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 5) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 5) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x and (pow.f64 eps 5) (pow.f64 eps 5))))) (#(struct:change #<rule egg-rr> (2) ((x or (pow.f64 eps 5) (pow.f64 eps 5))))))

simplify344.0ms (1.5%)

Algorithm
egg-herbie
Rules
4590×rational.json-simplify-41
3278×rational.json-simplify-51
1948×rational.json-simplify-35
1192×rational.json-simplify-2
698×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0106955
1209955
2605955
31384955
42388955
53000955
63086955
73148955
83203955
93256955
103309955
113397955
123450955
133503955
143556955
153609955
163662955
173715955
183768955
193821955
Stop Event
node limit
Counts
55 → 56
Calls
Call 1
Inputs
(*.f64 -2/3 (pow.f64 eps 3))
(*.f64 -2/5 (pow.f64 eps 5))
(*.f64 -2/5 (pow.f64 eps 5))
(+.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)
(+.f64 0 (*.f64 -2/5 (pow.f64 eps 5)))
(+.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 5) -1/5))
(-.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)
(/.f64 (*.f64 -2/5 (pow.f64 eps 5)) 1)
(/.f64 (*.f64 (pow.f64 eps 5) -4/5) 2)
(/.f64 (*.f64 (pow.f64 eps 5) -8/5) 4)
(/.f64 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)))) 64)
(-.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 0)
(*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)
(*.f64 1 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2))
(*.f64 2 (+.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 3) -1/3)))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 eps 3) -4/3) (*.f64 (pow.f64 eps 5) -4/5)))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))
(*.f64 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)
(/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)))) 64)
(+.f64 (pow.f64 eps 5) 0)
(+.f64 0 (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 5) 1/2) (*.f64 (pow.f64 eps 5) 1/2))
(-.f64 (pow.f64 eps 5) 0)
(*.f64 (pow.f64 eps 5) 1)
(*.f64 1 (pow.f64 eps 5))
(*.f64 2 (*.f64 (pow.f64 eps 5) 1/2))
(*.f64 (*.f64 (pow.f64 eps 5) 2) 1/2)
(*.f64 4 (/.f64 (pow.f64 eps 5) 4))
(*.f64 (*.f64 (pow.f64 eps 5) 4) 1/4)
(*.f64 1/2 (*.f64 (pow.f64 eps 5) 2))
(*.f64 (*.f64 (pow.f64 eps 5) 1/2) 2)
(*.f64 1/4 (*.f64 (pow.f64 eps 5) 4))
(*.f64 (/.f64 (pow.f64 eps 5) 4) 4)
(/.f64 (pow.f64 eps 5) 1)
(/.f64 (*.f64 (pow.f64 eps 5) 2) 2)
(/.f64 (*.f64 (pow.f64 eps 5) 4) 4)
(/.f64 (*.f64 (pow.f64 eps 5) 8) 8)
(/.f64 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)))) 64)
Outputs
(*.f64 -2/3 (pow.f64 eps 3))
(*.f64 -2/5 (pow.f64 eps 5))
(*.f64 -2/5 (pow.f64 eps 5))
(+.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)
(*.f64 -2/5 (pow.f64 eps 5))
(+.f64 0 (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 -2/5 (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 5) -1/5))
(*.f64 -2/5 (pow.f64 eps 5))
(-.f64 (*.f64 -2/5 (pow.f64 eps 5)) 0)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 -2/5 (pow.f64 eps 5)) 1)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 (pow.f64 eps 5) -4/5) 2)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 (pow.f64 eps 5) -8/5) 4)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8) 8)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)) 16)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) 32)
(*.f64 -2/5 (pow.f64 eps 5))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 -2/5 (pow.f64 eps 5)) 8)))) 64)
(*.f64 -2/5 (pow.f64 eps 5))
(-.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 0)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 1 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 eps 5) -1/5) (*.f64 (pow.f64 eps 3) -1/3)))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 1/2)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 4 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 1/4)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 eps 3) -4/3) (*.f64 (pow.f64 eps 5) -4/5)))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1/2) 2)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4))
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(*.f64 (/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 2) 2)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 4) 4)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8) 8)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)) 16)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) 32)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))) 8)))) 64)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) (*.f64 -2/5 (pow.f64 eps 5)))
(+.f64 (pow.f64 eps 5) 0)
(pow.f64 eps 5)
(+.f64 0 (pow.f64 eps 5))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 5) 1/2) (*.f64 (pow.f64 eps 5) 1/2))
(pow.f64 eps 5)
(-.f64 (pow.f64 eps 5) 0)
(pow.f64 eps 5)
(*.f64 (pow.f64 eps 5) 1)
(pow.f64 eps 5)
(*.f64 1 (pow.f64 eps 5))
(pow.f64 eps 5)
(*.f64 2 (*.f64 (pow.f64 eps 5) 1/2))
(pow.f64 eps 5)
(*.f64 (*.f64 (pow.f64 eps 5) 2) 1/2)
(pow.f64 eps 5)
(*.f64 4 (/.f64 (pow.f64 eps 5) 4))
(pow.f64 eps 5)
(*.f64 (*.f64 (pow.f64 eps 5) 4) 1/4)
(pow.f64 eps 5)
(*.f64 1/2 (*.f64 (pow.f64 eps 5) 2))
(pow.f64 eps 5)
(*.f64 (*.f64 (pow.f64 eps 5) 1/2) 2)
(pow.f64 eps 5)
(*.f64 1/4 (*.f64 (pow.f64 eps 5) 4))
(pow.f64 eps 5)
(*.f64 (/.f64 (pow.f64 eps 5) 4) 4)
(pow.f64 eps 5)
(/.f64 (pow.f64 eps 5) 1)
(pow.f64 eps 5)
(/.f64 (*.f64 (pow.f64 eps 5) 2) 2)
(pow.f64 eps 5)
(/.f64 (*.f64 (pow.f64 eps 5) 4) 4)
(pow.f64 eps 5)
(/.f64 (*.f64 (pow.f64 eps 5) 8) 8)
(pow.f64 eps 5)
(/.f64 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)) 16)
(pow.f64 eps 5)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) 32)
(pow.f64 eps 5)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 eps 5) 8)))) 64)
(pow.f64 eps 5)

eval306.0ms (1.4%)

Compiler

Compiled 1457 to 1221 computations (16.2% saved)

prune10.0ms (0%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New80080
Fresh000
Picked011
Done033
Total80484
Error
0.0b
Counts
84 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
0.5b
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
0.7b
(*.f64 -2 eps)
57.7b
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
Compiler

Compiled 39 to 31 computations (20.5% saved)

regimes10.0ms (0%)

Counts
5 → 1
Calls
Call 1
Inputs
(*.f64 -2 eps)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
Outputs
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
Calls

3 calls:

5.0ms
eps
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Results
ErrorSegmentsBranch
0.4b1eps
0.4b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.4b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 63 to 48 computations (23.8% saved)

regimes9.0ms (0%)

Counts
4 → 1
Calls
Call 1
Inputs
(*.f64 -2 eps)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
Outputs
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
Calls

3 calls:

4.0ms
eps
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Results
ErrorSegmentsBranch
0.5b1eps
0.5b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.5b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 48 to 36 computations (25% saved)

regimes8.0ms (0%)

Accuracy

Total -57.5b remaining (-7699.7%)

Threshold costs -57.5b (-7699.7%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 -2 eps)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(log.f64 (/.f64 (-.f64 1 eps) (-.f64 eps -1)))
Outputs
(*.f64 -2 eps)
Calls

3 calls:

3.0ms
eps
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Results
ErrorSegmentsBranch
0.7b1eps
0.7b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.7b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 39 to 29 computations (25.6% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01675
Stop Event
done
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(*.f64 -2 eps)
Outputs
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(*.f64 -2 eps)
Compiler

Compiled 30 to 24 computations (20% saved)

soundness163.0ms (0.7%)

Algorithm
egg-herbie
Rules
2122×rational.json-simplify-35
858×rational.json-simplify-51
858×rational.json-simplify-2
796×rational.json-simplify-1
774×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
11523
22523
35623
413723
539323
667123
7148523
8288923
9488823
10740223
Stop Event
node limit
Compiler

Compiled 17 to 13 computations (23.5% saved)

end73.0ms (0.3%)

Compiler

Compiled 28 to 22 computations (21.4% saved)

Profiling

Loading profile data...