Details

Time bar (total: 11.9s)

analyze2.7s (22.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
12.5%87.4%0.1%8
31.2%68.6%0.1%9
31.2%68.6%0.1%10
31.2%68.6%0.1%11
40.6%59.3%0.1%12
40.6%59.3%0.1%13
40.6%59.3%0.1%14
Compiler

Compiled 34 to 19 computations (44.1% saved)

sample6.0s (50.9%)

Results
3.1s2076×body1024valid
1.4s4580×body128valid
1.0s1040×body512valid
340.0ms557×body256valid
13.0msbody2048valid
Compiler

Compiled 101 to 56 computations (44.6% saved)

simplify281.0ms (2.4%)

Algorithm
egg-herbie
Rules
1350×fma-def_binary64
1306×fma-neg_binary64
889×div-sub_binary64
757×associate-/r/_binary64
558×associate-/l*_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01950
14450
210950
322950
433350
551550
671750
798450
8130850
9163350
10158950
11159150
12162350
13167150
14167150
15210350
16259150
17255950
18261550
19278350
20287950
21292750
22335150
23331950
24331950
25248750
26286350
27259150
28259150
29259150
30259150
31237650

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 99 to 54 computations (45.5% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (neg.f64 eh) (tan.f64 t))
0.1b
(*.f64 eh (sin.f64 t))
2.3b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
19.6b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

series100.0ms (0.8%)

Counts
4 → 120
Calls

4 calls:

48.0ms
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
25.0ms
(*.f64 (neg.f64 eh) (tan.f64 t))
20.0ms
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))
8.0ms
(*.f64 eh (sin.f64 t))

rewrite17.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
16×add-sqr-sqrt_binary64
13×associate-*l*_binary64
13×add-cbrt-cube_binary64
13×add-exp-log_binary64
12×*-un-lft-identity_binary64
Counts
4 → 85
Calls

4 calls:

4.0ms
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
4.0ms
(*.f64 eh (sin.f64 t))
4.0ms
(*.f64 (neg.f64 eh) (tan.f64 t))
1.0ms
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

simplify107.0ms (0.9%)

Algorithm
egg-herbie
Rules
776×times-frac_binary64
641×fma-def_binary64
349×div-sub_binary64
186×fma-neg_binary64
182×distribute-lft-neg-out_binary64
Counts
205 → 155
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01882842
14682661
216742646
342042644
451132644

prune210.0ms (1.8%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2573260
Fresh000
Picked101
Done000
Total2583261
Error
0.1b
Counts
261 → 3
Alt Table
StatusErrorProgram
31.4b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (*.f64 eh (sqrt.f64 (sin.f64 t))) (sqrt.f64 (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 9537 to 2081 computations (78.2% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 eh (sin.f64 t))
1.7b
(log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))
2.3b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
19.6b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

series22.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

22.0ms
(log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))

rewrite3.0ms (0%)

Algorithm
rewrite-expression-head
Rules
log-pow_binary64
log-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
exp-prod_binary64
Counts
1 → 17
Calls

1 calls:

2.0ms
(log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))

simplify87.0ms (0.7%)

Algorithm
egg-herbie
Rules
850×log-prod_binary64
664×unswap-sqr_binary64
463×fma-def_binary64
368×associate-/l/_binary64
221×associate-/l*_binary64
Counts
53 → 32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
045934
160885
294885
3139885
4192885
5302885
6533885
71184885
84305885
95269885

prune173.0ms (1.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1800180
Fresh022
Picked011
Done000
Total1803183
Error
0.1b
Counts
183 → 3
Alt Table
StatusErrorProgram
31.4b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (*.f64 eh (sqrt.f64 (sin.f64 t))) (sqrt.f64 (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 7120 to 1499 computations (78.9% saved)

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.3b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
7.5b
(*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))
19.6b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))
35.5b
(cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t))))

series46.0ms (0.4%)

Counts
2 → 48
Calls

2 calls:

29.0ms
(*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))
17.0ms
(cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t))))

rewrite43.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
126×pow1_binary64
53×pow-prod-down_binary64
40×pow-plus_binary64
40×pow-prod-up_binary64
38×add-cbrt-cube_binary64
Counts
2 → 78
Calls

2 calls:

18.0ms
(*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))
14.0ms
(cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t))))

simplify70.0ms (0.6%)

Algorithm
egg-herbie
Rules
853×unswap-sqr_binary64
502×fma-neg_binary64
448×cancel-sign-sub-inv_binary64
435×*-commutative_binary64
308×fma-def_binary64
Counts
126 → 84
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231750
12761458
210761422
325791366
451241366

prune238.0ms (2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2021203
Fresh011
Picked011
Done011
Total2024206
Error
0.1b
Counts
206 → 4
Alt Table
StatusErrorProgram
31.4b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (*.f64 eh (sqrt.f64 (sin.f64 t))) (sqrt.f64 (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 9646 to 1871 computations (80.6% saved)

localize31.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
7.5b
(*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))
19.6b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))
35.5b
(cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))))
35.5b
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))

series63.0ms (0.5%)

Counts
3 → 52
Calls

3 calls:

30.0ms
(*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))
18.0ms
(cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))))
15.0ms
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))

rewrite25.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
33×add-sqr-sqrt_binary64
16×unswap-sqr_binary64
15×add-exp-log_binary64
14×cube-prod_binary64
14×unpow-prod-down_binary64
Counts
3 → 85
Calls

3 calls:

9.0ms
(cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))))
8.0ms
(*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))
4.0ms
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))

simplify106.0ms (0.9%)

Algorithm
egg-herbie
Rules
791×fma-def_binary64
539×log-prod_binary64
465×unswap-sqr_binary64
450×fma-neg_binary64
274×exp-prod_binary64
Counts
137 → 119
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01412067
13051981
213461873
332141867
449301847
552381847

prune667.0ms (5.6%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New3511352
Fresh011
Picked011
Done022
Total3515356
Error
0.1b
Counts
356 → 5
Alt Table
StatusErrorProgram
31.4b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (*.f64 eh (sqrt.f64 (sin.f64 t))) (sqrt.f64 (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (log.f64 (exp.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
23.1b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 eh eh) eh) (*.f64 (*.f64 (sin.f64 t) (sin.f64 t)) (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
25.7b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3)))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 t) 3) (pow.f64 eh 3))))))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 22396 to 10224 computations (54.3% saved)

regimes639.0ms (5.4%)

Accuracy

Total 0.0b remaining (17.3%)

Threshold costs 0.0b (17.3%)

Counts
78 → 1
Compiler

Compiled 15929 to 9828 computations (38.3% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02452
14252
27152
39952
412052
513152
613352
713352

end177.0ms (1.5%)

Compiler

Compiled 305 to 187 computations (38.7% saved)

Profiling

Loading profile data...