Details

Time bar (total: 8.3s)

analyze107.0ms (1.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 32 to 17 computations (46.9% saved)

sample53.0ms (0.6%)

Algorithm
intervals
Results
31.0ms256×body128valid
6.0ms256×pre128true
Compiler

Compiled 57 to 29 computations (49.1% saved)

simplify50.0ms (0.6%)

Algorithm
egg-herbie
Rules
760×associate-/l/_binary32
455×associate-/l*_binary32
281×times-frac_binary32
257×associate-/r/_binary32
154×associate-*l/_binary32
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01136
12436
28036
329936
482236
5126536
6121136
7123936
8124736
9125136
10125336
11121936
12121736

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.7b
Counts
1 → 1
Alt Table
StatusErrorProgram
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 46 to 20 computations (56.5% saved)

localize35.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.3b
(*.f32 x PI.f32)
0.4b
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
0.4b
(/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))
0.4b
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))

rewrite115.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
20×add-exp-log_binary32 add-cbrt-cube_binary32
12×add-sqr-sqrt_binary32
10×add-cube-cbrt_binary32 *-un-lft-identity_binary32
pow1_binary32 times-frac_binary32 associate-/l*_binary32
prod-exp_binary32 div-exp_binary32 cbrt-undiv_binary32 cbrt-unprod_binary32
Counts
4 → 69
Calls

4 calls:

7.0ms
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))
5.0ms
(/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))
4.0ms
(*.f32 x PI.f32)
2.0ms
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
Compiler

Compiled 1878 to 277 computations (85.3% saved)

series170.0ms (2.1%)

Error
0.3b
Counts
4 → 33
Calls

4 calls:

53.0ms
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))
38.0ms
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
21.0ms
(/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))
9.0ms
(*.f32 x PI.f32)
Compiler

Compiled 2119 to 1158 computations (45.4% saved)

simplify97.0ms (1.2%)

Algorithm
egg-herbie
Rules
494×cancel-sign-sub-inv_binary32
395×associate-/l/_binary32
363×associate-*l/_binary32
297×distribute-rgt-neg-in_binary32
288×distribute-lft-neg-in_binary32
Counts
102 → 82
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02112309
15001981
219561972
344231966
449911966

prune133.0ms (1.6%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New691382
Fresh000
Picked101
Done000
Total701383
Error
0.2b
Counts
83 → 13
Alt Table
StatusErrorProgram
4.3b
(*.f32 (/.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 5) (*.f32 (pow.f32 PI.f32 5) (pow.f32 x 5)))) (-.f32 (*.f32 tau (*.f32 PI.f32 x)) (*.f32 1/6 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 3)))) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (*.f32 (/.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))))) (*.f32 PI.f32 x)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
3.0b
(*.f32 (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4))))) (+.f32 (*.f32 1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 PI.f32 2) (*.f32 x x)))) (*.f32 1/5040 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 6)))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
1.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 PI.f32 x))) x) (/.f32 (sqrt.f32 (sin.f32 (*.f32 PI.f32 x))) PI.f32)))
1.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 PI.f32 2) (*.f32 x x))) (*.f32 1/5040 (pow.f32 (*.f32 PI.f32 x) 6)))))
0.9b
(*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 (*.f32 PI.f32 x)) (cbrt.f32 (*.f32 PI.f32 x))) (cbrt.f32 (*.f32 PI.f32 x)))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 x) (cbrt.f32 x)) (*.f32 PI.f32 (cbrt.f32 x)))))
5.1b
(*.f32 (/.f32 (log.f32 (exp.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))))) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 2561 to 813 computations (68.3% saved)

localize46.0ms (0.6%)

Local error

Found 4 expressions with local error:

0.4b
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
0.4b
(/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x))
0.4b
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))

rewrite135.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
24×add-exp-log_binary32
18×add-cbrt-cube_binary32
10×add-cube-cbrt_binary32 add-sqr-sqrt_binary32 *-un-lft-identity_binary32
times-frac_binary32
log-prod_binary32 div-exp_binary32
Counts
4 → 70
Calls

4 calls:

7.0ms
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))
5.0ms
(/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x))
4.0ms
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))
Compiler

Compiled 2060 to 322 computations (84.4% saved)

series229.0ms (2.8%)

Error
0.1b
Counts
4 → 36
Calls

4 calls:

55.0ms
(/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau))
42.0ms
(sin.f32 (*.f32 (*.f32 x PI.f32) tau))
40.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))
22.0ms
(/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x))
Compiler

Compiled 2597 to 1483 computations (42.9% saved)

simplify112.0ms (1.4%)

Algorithm
egg-herbie
Rules
578×cancel-sign-sub-inv_binary32
422×associate-/l/_binary32
351×distribute-rgt-neg-in_binary32
341×distribute-lft-neg-in_binary32
295×neg-mul-1_binary32
Counts
106 → 76
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02542779
15962393
222582372
345162372
450932372

prune133.0ms (1.6%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New72476
Fresh3912
Picked101
Done000
Total761389
Error
0.2b
Counts
89 → 13
Alt Table
StatusErrorProgram
4.3b
(*.f32 (/.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 5) (*.f32 (pow.f32 PI.f32 5) (pow.f32 x 5)))) (-.f32 (*.f32 tau (*.f32 PI.f32 x)) (*.f32 1/6 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 3)))) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
1.2b
(*.f32 (*.f32 (/.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))))) (*.f32 PI.f32 x)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
3.0b
(*.f32 (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4))))) (+.f32 (*.f32 1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 PI.f32 2) (*.f32 x x)))) (*.f32 1/5040 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 6)))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (/.f32 1 (/.f32 (*.f32 x PI.f32) (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) tau))) (exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 PI.f32 x))) (/.f32 x (/.f32 (sqrt.f32 (sin.f32 (*.f32 x PI.f32))) PI.f32))))))
1.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 PI.f32 2) (*.f32 x x))) (*.f32 1/5040 (pow.f32 (*.f32 PI.f32 x) 6)))))
0.9b
(*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 (*.f32 PI.f32 x)) (cbrt.f32 (*.f32 PI.f32 x))) (cbrt.f32 (*.f32 PI.f32 x)))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 x) (cbrt.f32 x)) (*.f32 PI.f32 (cbrt.f32 x)))))
Compiler

Compiled 2581 to 915 computations (64.5% saved)

localize63.0ms (0.8%)

Local error

Found 4 expressions with local error:

0.5b
(*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))

rewrite219.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
26×add-sqr-sqrt_binary32
24×add-exp-log_binary32 cbrt-prod_binary32
21×log-prod_binary32
20×pow1_binary32 *-un-lft-identity_binary32
18×add-cube-cbrt_binary32
Counts
4 → 102
Calls

4 calls:

9.0ms
(*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 4673 to 493 computations (89.5% saved)

series273.0ms (3.3%)

Error
0.1b
Counts
4 → 24
Calls

4 calls:

72.0ms
(*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))
44.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
43.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
43.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 3312 to 1599 computations (51.7% saved)

simplify133.0ms (1.6%)

Algorithm
egg-herbie
Rules
585×associate-*l*_binary32
523×associate-*r*_binary32
458×distribute-rgt-neg-in_binary32
451×distribute-lft-neg-in_binary32
179×*-commutative_binary32
Counts
126 → 88
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01443944
13143600
28453190
332223148
449993148

prune208.0ms (2.5%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New86288
Fresh11112
Picked011
Done000
Total8714101
Error
0.1b
Counts
101 → 14
Alt Table
StatusErrorProgram
2.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (+.f32 (cbrt.f32 (*.f32 (pow.f32 x 4) (*.f32 (pow.f32 PI.f32 4) 1/36))) (*.f32 (cbrt.f32 (*.f32 (pow.f32 x 4) (*.f32 (pow.f32 PI.f32 4) 1/36))) (+.f32 (*.f32 (*.f32 (*.f32 x x) (pow.f32 PI.f32 2)) 1/45) (*.f32 (*.f32 (pow.f32 x 4) (pow.f32 PI.f32 4)) 73/56700)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
4.3b
(*.f32 (/.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 5) (*.f32 (pow.f32 PI.f32 5) (pow.f32 x 5)))) (-.f32 (*.f32 tau (*.f32 PI.f32 x)) (*.f32 1/6 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 3)))) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
1.2b
(*.f32 (*.f32 (/.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))))) (*.f32 PI.f32 x)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
3.0b
(*.f32 (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4))))) (+.f32 (*.f32 1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 PI.f32 2) (*.f32 x x)))) (*.f32 1/5040 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 6)))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 PI.f32 x))) (/.f32 x (/.f32 (sqrt.f32 (sin.f32 (*.f32 x PI.f32))) PI.f32))))))
1.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 PI.f32 2) (*.f32 x x))) (*.f32 1/5040 (pow.f32 (*.f32 PI.f32 x) 6)))))
0.9b
(*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5) (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
0.9b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 (*.f32 PI.f32 x)) (cbrt.f32 (*.f32 PI.f32 x))) (cbrt.f32 (*.f32 PI.f32 x)))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 x) (cbrt.f32 x)) (*.f32 PI.f32 (cbrt.f32 x)))))
Compiler

Compiled 4600 to 1309 computations (71.5% saved)

localize71.0ms (0.9%)

Local error

Found 4 expressions with local error:

1.0b
(pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5)
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
14.9b
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))

rewrite224.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
23×add-exp-log_binary32
21×log-prod_binary32
14×add-cube-cbrt_binary32 add-sqr-sqrt_binary32 *-un-lft-identity_binary32
11×cbrt-prod_binary32
10×unpow-prod-down_binary32
Counts
4 → 82
Calls

4 calls:

5.0ms
(pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5)
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
4.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 4265 to 676 computations (84.2% saved)

series260.0ms (3.1%)

Error
0.1b
Counts
4 → 21
Calls

4 calls:

59.0ms
(pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5)
45.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
45.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
44.0ms
(log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
Compiler

Compiled 3122 to 1450 computations (53.6% saved)

simplify175.0ms (2.1%)

Algorithm
egg-herbie
Rules
457×distribute-rgt-neg-in_binary32
451×unswap-sqr_binary32
450×distribute-lft-neg-in_binary32
309×associate-*l*_binary32
300×associate-*r*_binary32
Counts
103 → 59
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01412832
12952609
26922557
323092557
446442557
549092521
649172521

prune167.0ms (2%)

Pruning

16 alts after pruning (14 fresh and 2 done)

PrunedKeptTotal
New57259
Fresh01212
Picked011
Done011
Total571673
Error
0.1b
Counts
73 → 16
Alt Table
StatusErrorProgram
1.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5) (cbrt.f32 (cbrt.f32 (-.f32 (*.f32 (pow.f32 x 6) (*.f32 (pow.f32 PI.f32 6) -1/2835)) (+.f32 (*.f32 (*.f32 (*.f32 x x) (pow.f32 PI.f32 2)) 1/6) (*.f32 (pow.f32 (*.f32 x PI.f32) 4) (+.f32 1/180 (*.f32 1/37800 (pow.f32 (*.f32 x PI.f32) 4))))))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
2.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (+.f32 (cbrt.f32 (*.f32 (pow.f32 x 4) (*.f32 (pow.f32 PI.f32 4) 1/36))) (*.f32 (cbrt.f32 (*.f32 (pow.f32 x 4) (*.f32 (pow.f32 PI.f32 4) 1/36))) (+.f32 (*.f32 (*.f32 (*.f32 x x) (pow.f32 PI.f32 2)) 1/45) (*.f32 (*.f32 (pow.f32 x 4) (pow.f32 PI.f32 4)) 73/56700)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
4.3b
(*.f32 (/.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 5) (*.f32 (pow.f32 PI.f32 5) (pow.f32 x 5)))) (-.f32 (*.f32 tau (*.f32 PI.f32 x)) (*.f32 1/6 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 3)))) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
1.2b
(*.f32 (*.f32 (/.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))))) (*.f32 PI.f32 x)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x)))) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.9b
(*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
3.0b
(*.f32 (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4))))) (+.f32 (*.f32 1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 PI.f32 2) (*.f32 x x)))) (*.f32 1/5040 (pow.f32 (*.f32 tau (*.f32 PI.f32 x)) 6)))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (log.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 PI.f32 x))) (/.f32 x (/.f32 (sqrt.f32 (sin.f32 (*.f32 x PI.f32))) PI.f32))))))
1.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (-.f32 (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 PI.f32 4) (pow.f32 x 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 PI.f32 2) (*.f32 x x))) (*.f32 1/5040 (pow.f32 (*.f32 PI.f32 x) 6)))))
0.9b
(*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x)))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 PI.f32 x))) (*.f32 tau (*.f32 PI.f32 x))))) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 5) (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) 2)) 5) (pow.f32 (cbrt.f32 (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))) 5)) (cbrt.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
0.9b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 PI.f32 x)) (*.f32 PI.f32 x)))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 (*.f32 PI.f32 x)) (cbrt.f32 (*.f32 PI.f32 x))) (cbrt.f32 (*.f32 PI.f32 x)))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (exp.f32 (*.f32 (*.f32 (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32))))) (cbrt.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 x PI.f32)))))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x PI.f32) tau)) (*.f32 (*.f32 x PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x PI.f32)) (*.f32 (*.f32 (cbrt.f32 x) (cbrt.f32 x)) (*.f32 PI.f32 (cbrt.f32 x)))))
Compiler

Compiled 3366 to 971 computations (71.2% saved)

regimes2.7s (32.3%)

Accuracy

Total 0.5b remaining (75.6%)

Threshold costs 0.5b (75.6%)

Compiler

Compiled 36914 to 17788 computations (51.8% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
11636
21636

end1.0ms (0%)

Compiler

Compiled 23 to 11 computations (52.2% saved)

sample2.4s (28.7%)

Algorithm
intervals
Results
818.0ms8000×body128valid
193.0ms8000×pre128true
Compiler

Compiled 797 to 386 computations (51.6% saved)

Profiling

Loading profile data...