Details

Time bar (total: 12.7s)

analyze2.4s (18.5%)

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)

sample5.9s (46.6%)

Results
3.1s2048×body1024valid
1.4s4733×body128valid
904.0ms1008×body512valid
264.0ms463×body256valid
14.0msbody2048valid
Compiler

Compiled 101 to 56 computations (44.6% saved)

simplify278.0ms (2.2%)

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

prune2.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)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series109.0ms (0.9%)

Counts
4 → 132
Calls

4 calls:

44.0ms
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
38.0ms
(*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))
19.0ms
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))
8.0ms
(*.f64 eh (sin.f64 t))

rewrite16.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
16×add-cbrt-cube_binary64
16×add-exp-log_binary64
11×add-sqr-sqrt_binary64
11×pow1_binary64
*-un-lft-identity_binary64
Counts
4 → 78
Calls

4 calls:

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

simplify156.0ms (1.2%)

Algorithm
egg-herbie
Rules
793×times-frac_binary64
772×fma-def_binary64
226×associate-*l*_binary64
212×cancel-sign-sub-inv_binary64
202×associate-*r*_binary64
Counts
210 → 141
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01983795
15133459
218953449
343873445
450003445
549993445
649493445

prune165.0ms (1.3%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1819190
Fresh000
Picked101
Done000
Total1829191
Error
0.1b
Counts
191 → 9
Alt Table
StatusErrorProgram
30.6b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (sqrt.f64 (*.f64 eh (sin.f64 t))) (sqrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
30.5b
(fabs.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (sqrt.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))))))
26.9b
(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.1b
(fabs.f64 (-.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 ew ew) ew) (*.f64 (*.f64 (cos.f64 t) (cos.f64 t)) (cos.f64 t))) (*.f64 (*.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (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))))))
0.6b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (cbrt.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))))))
31.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 (*.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.7b
(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 (cbrt.f64 eh) (cbrt.f64 eh)) (*.f64 (cbrt.f64 eh) (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
24.6b
(fabs.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (atan.f64 (neg.f64 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) (*.f64 ew (cos.f64 t))) 3)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 7944 to 1778 computations (77.6% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) (cbrt.f64 (*.f64 eh (sin.f64 t))))
1.8b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
7.0b
(cbrt.f64 (*.f64 eh (sin.f64 t)))
25.9b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

series944.0ms (7.4%)

Counts
2 → 48
Calls

2 calls:

598.0ms
(*.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) (cbrt.f64 (*.f64 eh (sin.f64 t))))
346.0ms
(cbrt.f64 (*.f64 eh (sin.f64 t)))

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
pow1_binary64
add-sqr-sqrt_binary64
pow1/3_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
2 → 44
Calls

2 calls:

4.0ms
(*.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) (cbrt.f64 (*.f64 eh (sin.f64 t))))
2.0ms
(cbrt.f64 (*.f64 eh (sin.f64 t)))

simplify93.0ms (0.7%)

Algorithm
egg-herbie
Rules
921×fma-neg_binary64
526×associate-*l*_binary64
432×associate-*r*_binary64
335×distribute-rgt-neg-in_binary64
313×distribute-lft-neg-in_binary64
Counts
92 → 85
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01301914
13121727
28171370
327651110
446831110
549421110

prune458.0ms (3.6%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New2515256
Fresh178
Picked101
Done000
Total25312265
Error
0.0b
Counts
265 → 12
Alt Table
StatusErrorProgram
0.7b
(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 (cbrt.f64 eh) (cbrt.f64 eh)) (*.f64 (cbrt.f64 eh) (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
26.9b
(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.1b
(fabs.f64 (-.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 ew ew) ew) (*.f64 (*.f64 (cos.f64 t) (cos.f64 t)) (cos.f64 t))) (*.f64 (*.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (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))))))
0.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (cbrt.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))))))
1.0b
(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 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
14.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 eh (sin.f64 t)) 2)) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
31.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 (*.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.6b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (cbrt.f64 eh) (cbrt.f64 (sin.f64 t)))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
30.5b
(fabs.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (sqrt.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))))))
24.6b
(fabs.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (atan.f64 (neg.f64 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) (*.f64 ew (cos.f64 t))) 3)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 14030 to 2837 computations (79.8% saved)

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(cbrt.f64 eh)
1.8b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
7.0b
(cbrt.f64 (*.f64 eh (sin.f64 t)))
25.9b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

series28.0ms (0.2%)

Counts
1 → 12
Calls

1 calls:

28.0ms
(cbrt.f64 eh)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
cbrt-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
1 → 13
Calls

1 calls:

1.0ms
(cbrt.f64 eh)

simplify59.0ms (0.5%)

Algorithm
egg-herbie
Rules
610×associate-/l/_binary64
374×log-prod_binary64
316×distribute-rgt-neg-in_binary64
314×distribute-lft-neg-in_binary64
287×*-commutative_binary64
Counts
25 → 18
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
024141
138141
286141
3208140
4626136
51904136
62565136
73552136
84861136

prune360.0ms (2.8%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1890189
Fresh01111
Picked011
Done000
Total18912201
Error
0.0b
Counts
201 → 12
Alt Table
StatusErrorProgram
0.7b
(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 (cbrt.f64 eh) (cbrt.f64 eh)) (*.f64 (cbrt.f64 eh) (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
26.9b
(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.1b
(fabs.f64 (-.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 ew ew) ew) (*.f64 (*.f64 (cos.f64 t) (cos.f64 t)) (cos.f64 t))) (*.f64 (*.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (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))))))
0.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (cbrt.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))))))
1.0b
(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 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
14.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 eh (sin.f64 t)) 2)) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
31.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 (*.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.6b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (cbrt.f64 eh) (cbrt.f64 (sin.f64 t)))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
30.5b
(fabs.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (sqrt.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))))))
24.6b
(fabs.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (atan.f64 (neg.f64 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) (*.f64 ew (cos.f64 t))) 3)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 10783 to 2115 computations (80.4% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 eh) (cbrt.f64 eh))
0.7b
(cbrt.f64 eh)
1.8b
(/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)
25.9b
(cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))

series36.0ms (0.3%)

Counts
1 → 12
Calls

1 calls:

36.0ms
(*.f64 (cbrt.f64 eh) (cbrt.f64 eh))

rewrite7.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
17×add-sqr-sqrt_binary64
16×cbrt-prod_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
pow1_binary64
Counts
1 → 42
Calls

1 calls:

5.0ms
(*.f64 (cbrt.f64 eh) (cbrt.f64 eh))

simplify68.0ms (0.5%)

Algorithm
egg-herbie
Rules
451×log-prod_binary64
315×log-div_binary64
306×*-commutative_binary64
259×associate-*r/_binary64
257×associate-/l*_binary64
Counts
54 → 56
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
050493
185461
2201425
3482411
4931333
51343333
63411333
74917333
84871333

prune414.0ms (3.3%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New2290229
Fresh01010
Picked011
Done011
Total22912241
Error
0.0b
Counts
241 → 12
Alt Table
StatusErrorProgram
0.7b
(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 (cbrt.f64 eh) (cbrt.f64 eh)) (*.f64 (cbrt.f64 eh) (sin.f64 t))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
26.9b
(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.1b
(fabs.f64 (-.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 ew ew) ew) (*.f64 (*.f64 (cos.f64 t) (cos.f64 t)) (cos.f64 t))) (*.f64 (*.f64 (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (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))))))
0.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (cbrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))))) (cbrt.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))))))
1.0b
(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 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))) (cbrt.f64 (cbrt.f64 (*.f64 eh (sin.f64 t)))))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
14.9b
(fabs.f64 (-.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew)))) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 eh (sin.f64 t)) 2)) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
31.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 (*.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.6b
(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 (cbrt.f64 (*.f64 eh (sin.f64 t))) (*.f64 (cbrt.f64 eh) (cbrt.f64 (sin.f64 t)))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
30.5b
(fabs.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 ew (cos.f64 t)) (cos.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))) (sqrt.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))))))
24.6b
(fabs.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (atan.f64 (neg.f64 (/.f64 (*.f64 (tan.f64 t) eh) ew)))) (*.f64 ew (cos.f64 t))) 3)) (*.f64 (*.f64 eh (sin.f64 t)) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
0.8b
(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 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 eh (sin.f64 t))) 2))) (cbrt.f64 (*.f64 eh (sin.f64 t)))) (sin.f64 (atan.f64 (/.f64 (*.f64 (neg.f64 eh) (tan.f64 t)) ew))))))
Compiler

Compiled 10289 to 1909 computations (81.4% saved)

regimes843.0ms (6.6%)

Accuracy

Total 0.1b remaining (49.6%)

Threshold costs 0.1b (49.6%)

Counts
125 → 1
Compiler

Compiled 27889 to 14848 computations (46.8% saved)

simplify16.0ms (0.1%)

Algorithm
egg-herbie
Rules
62×distribute-rgt-neg-in_binary64
41×distribute-lft-neg-in_binary64
41×cancel-sign-sub-inv_binary64
33×neg-sub0_binary64
33×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02264
14164
26560
39160
411860
514260
617060
718660
819560
921060
1022760
1123860
1225260
1325860
1428060
1529760
1630060
1729460

end274.0ms (2.2%)

Compiler

Compiled 705 to 327 computations (53.6% saved)

Profiling

Loading profile data...