Details

Time bar (total: 6.6s)

analyze28.0ms (0.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
99.9%0%0.1%1
Compiler

Compiled 10 to 7 computations (30% saved)

sample114.0ms (1.7%)

Algorithm
intervals
Results
60.0ms124×body1024valid
32.0ms35×body2048valid
9.0ms39×body512valid
4.0ms48×body128valid
2.0ms10×body256valid
Compiler

Compiled 21 to 15 computations (28.6% saved)

simplify12.0ms (0.2%)

Algorithm
egg-herbie
Rules
15×sub-neg_binary64
14×cancel-sign-sub-inv_binary64
10×distribute-rgt-in_binary64
neg-mul-1_binary64
associate--r+_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11011
21511
32111
42711
54211
66511
77811
89011
99211
108611
117211

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
38.3b
Counts
1 → 1
Alt Table
StatusErrorProgram
38.3b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 18 to 12 computations (33.3% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(sin.f64 x)
1.2b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.2b
(sin.f64 (+.f64 x eps))

rewrite36.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
22.6b
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-log-exp_binary64
add-cube-cbrt_binary64
cancel-sign-sub-inv_binary64
Counts
3 → 33
Calls

3 calls:

5.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.0ms
(sin.f64 (+.f64 x eps))
1.0ms
(sin.f64 x)
Compiler

Compiled 453 to 117 computations (74.2% saved)

series43.0ms (0.6%)

Error
13.7b
Counts
3 → 25
Calls

3 calls:

15.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
11.0ms
(sin.f64 (+.f64 x eps))
4.0ms
(sin.f64 x)
Compiler

Compiled 708 to 422 computations (40.4% saved)

simplify110.0ms (1.7%)

Algorithm
egg-herbie
Rules
650×cancel-sign-sub-inv_binary64
539×sub-neg_binary64
443×*-commutative_binary64
412×unsub-neg_binary64
261×neg-mul-1_binary64
Counts
58 → 32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
093760
1219727
2477711
31497704
43426704
54377700
64784700
74848700

prune32.0ms (0.5%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New27532
Fresh000
Picked101
Done000
Total28533
Error
0.3b
Counts
33 → 5
Alt Table
StatusErrorProgram
29.9b
(+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
32.7b
(+.f64 (sin.f64 eps) (-.f64 (*.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))) x))
22.9b
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
15.0b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))))
22.9b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
Compiler

Compiled 600 to 261 computations (56.5% saved)

localize14.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 x (+.f64 eps x))
0.2b
(*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2)))
2.9b
(cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))

rewrite52.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
10×*-un-lft-identity_binary64
add-log-exp_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
3 → 41
Calls

3 calls:

5.0ms
(cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))
4.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2)))
4.0ms
(+.f64 x (+.f64 eps x))
Compiler

Compiled 903 to 542 computations (40% saved)

series73.0ms (1.1%)

Error
0.3b
Counts
3 → 32
Calls

3 calls:

25.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2)))
18.0ms
(+.f64 x (+.f64 eps x))
15.0ms
(cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))
Compiler

Compiled 1273 to 1014 computations (20.3% saved)

simplify92.0ms (1.4%)

Algorithm
egg-herbie
Rules
644×distribute-rgt-in_binary64
586×distribute-lft-in_binary64
313×distribute-rgt-neg-in_binary64
297×distribute-lft-neg-in_binary64
267×associate-*l*_binary64
Counts
73 → 57
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01161314
12961187
27471136
321021117
449781117
549211117

prune48.0ms (0.7%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New51657
Fresh134
Picked011
Done000
Total521062
Error
0.2b
Counts
62 → 10
Alt Table
StatusErrorProgram
29.9b
(+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
22.9b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))))
22.9b
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
33.4b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (-.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) -1/2) 1) (cos.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
15.0b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))))
38.8b
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) (sin.f64 (/.f64 eps 2)))) (sqrt.f64 (*.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) (sin.f64 (/.f64 eps 2))))))
29.5b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (*.f64 (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
15.5b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
Compiler

Compiled 1305 to 866 computations (33.6% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))
0.2b
(*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))))
0.4b
(log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))
2.9b
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))

rewrite97.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
14×add-sqr-sqrt_binary64
12×*-un-lft-identity_binary64
12×add-cube-cbrt_binary64
log-prod_binary64
exp-prod_binary64
Counts
4 → 61
Calls

4 calls:

11.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))))
9.0ms
(exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))
7.0ms
(log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))
7.0ms
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))
Compiler

Compiled 1585 to 1020 computations (35.6% saved)

series156.0ms (2.4%)

Error
0.2b
Counts
4 → 40
Calls

4 calls:

46.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))))
35.0ms
(log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))
33.0ms
(exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)))
16.0ms
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))
Compiler

Compiled 2259 to 1755 computations (22.3% saved)

simplify117.0ms (1.8%)

Algorithm
egg-herbie
Rules
542×distribute-rgt-neg-in_binary64
498×distribute-lft-neg-in_binary64
461×associate-*l*_binary64
443×associate-*r*_binary64
310×neg-mul-1_binary64
Counts
101 → 74
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01602337
13442128
29282005
325731967
449051967
551061967

prune66.0ms (1%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New73174
Fresh178
Picked011
Done011
Total741084
Error
0.2b
Counts
84 → 10
Alt Table
StatusErrorProgram
29.9b
(+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
22.9b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))))
22.9b
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
33.4b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (-.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) -1/2) 1) (cos.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
15.0b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))))
38.8b
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) (sin.f64 (/.f64 eps 2)))) (sqrt.f64 (*.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) (sin.f64 (/.f64 eps 2))))))
29.5b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (*.f64 (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
16.5b
(*.f64 2 (+.f64 (*.f64 2 (*.f64 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))) (sin.f64 (/.f64 eps 2)))) (*.f64 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))) (sin.f64 (/.f64 eps 2)))))
Compiler

Compiled 1658 to 1128 computations (32% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)))
0.5b
(cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))
0.6b
(pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)
2.9b
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))

rewrite103.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
28×cbrt-prod_binary64
24×add-sqr-sqrt_binary64
15×associate-*r*_binary64
15×*-un-lft-identity_binary64
15×add-cube-cbrt_binary64
Counts
4 → 85
Calls

4 calls:

10.0ms
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))
8.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)))
2.0ms
(pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)
2.0ms
(cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))
Compiler

Compiled 2054 to 1353 computations (34.1% saved)

series124.0ms (1.9%)

Error
0.2b
Counts
4 → 42
Calls

4 calls:

35.0ms
(pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)
26.0ms
(*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)))
18.0ms
(cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))
15.0ms
(cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))
Compiler

Compiled 2330 to 1846 computations (20.8% saved)

simplify141.0ms (2.1%)

Algorithm
egg-herbie
Rules
502×cancel-sign-sub-inv_binary64
372×sub-neg_binary64
327×unswap-sqr_binary64
229×associate-*r*_binary64
224×distribute-rgt-neg-in_binary64
Counts
127 → 101
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01873093
14702805
215732693
336052693
446952690
550052690

prune74.0ms (1.1%)

Pruning

13 alts after pruning (10 fresh and 3 done)

PrunedKeptTotal
New974101
Fresh167
Picked011
Done022
Total9813111
Error
0.2b
Counts
111 → 13
Alt Table
StatusErrorProgram
29.9b
(+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (log.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
22.9b
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
15.3b
(*.f64 2 (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (sin.f64 (/.f64 eps 2))) (cbrt.f64 (*.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
22.9b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
32.0b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2) (-.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) 3) x))))))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3))))
29.5b
(*.f64 2 (*.f64 (*.f64 (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (sin.f64 (/.f64 eps 2))) (cbrt.f64 (sqrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 3)))))
33.4b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (-.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) -1/2) 1) (cos.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
15.0b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cos.f64 (/.f64 (+.f64 x (+.f64 eps x)) 2))))
15.2b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2)) 9)))))
29.5b
(*.f64 2 (*.f64 (sin.f64 (/.f64 eps 2)) (*.f64 (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))) (sqrt.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))))
16.5b
(*.f64 2 (+.f64 (*.f64 2 (*.f64 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))) (sin.f64 (/.f64 eps 2)))) (*.f64 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (/.f64 (+.f64 eps (+.f64 x x)) 2))))) (sin.f64 (/.f64 eps 2)))))
Compiler

Compiled 1765 to 1202 computations (31.9% saved)

regimes823.0ms (12.4%)

Accuracy

Total 0.1b remaining (28.2%)

Threshold costs 0.1b (28.2%)

Compiler

Compiled 7329 to 5155 computations (29.7% saved)

bsearch80.0ms (1.2%)

Steps
ItersRangePoint
9
7.04632333588665e-11
1.2957138262504432e-5
1.2826844230892183e-5
6
-0.001394042734779424
-0.0002282471671853582
-0.00023068637899912437
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02966
14466
24966
35166
45266
55266

end1.0ms (0%)

Compiler

Compiled 44 to 28 computations (36.4% saved)

sample4.2s (62.6%)

Algorithm
intervals
Results
1.8s3549×body1024valid
1.2s1208×body2048valid
345.0ms1336×body512valid
155.0ms1299×body128valid
103.0ms608×body256valid
Compiler

Compiled 379 to 273 computations (28% saved)

Profiling

Loading profile data...