Details

Time bar (total: 4.5s)

analyze22.0ms (0.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%25%75%0
0%25%75%1
12.5%12.5%75%2
12.5%12.5%75%3
18.7%6.2%75%4
21.8%3.1%75%5
23.4%1.6%75%6
23.4%1.6%75%7
24.2%0.8%75%8
24.2%0.8%75%9
24.6%0.4%75%10
24.6%0.4%75%11
24.8%0.2%75%12
24.8%0.2%75%13
24.9%0.1%75%14
Compiler

Compiled 20 to 14 computations (30% saved)

sample2.7s (61.1%)

Results
1.5s2062×body1024valid
701.0ms4629×body128valid
411.0ms1050×body512valid
140.0ms504×body256valid
15.0ms11×body2048valid
Compiler

Compiled 40 to 28 computations (30% saved)

preprocess15.0ms (0.3%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
fma-def_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01634
12830
24030
34630
44830
022
Stop Event
saturated
saturated
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify9.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
fma-def_binary64
+-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01017
11715
22315
32615
42715
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
Compiler

Compiled 49 to 31 computations (36.7% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
0.1b
(*.f64 e (cos.f64 v))
0.1b
(*.f64 e (sin.f64 v))

series38.0ms (0.8%)

Counts
3 → 52
Calls

18 calls:

7.0ms
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
v
0
6.0ms
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
v
-inf
6.0ms
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
v
inf
2.0ms
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
e
-inf
2.0ms
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
e
inf

rewrite50.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
370×prod-diff_binary64
254×fma-def_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
166×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01029
120827
2281727
Stop Event
node limit
Counts
3 → 81

simplify35.0ms (0.8%)

Algorithm
egg-herbie
Rules
691×times-frac_binary64
468×fma-def_binary64
464×associate-/l*_binary64
292×cancel-sign-sub-inv_binary64
132×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01291173
14031130
215591082
Stop Event
node limit
Counts
133 → 120

prune85.0ms (1.9%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1164120
Fresh000
Picked011
Done000
Total1165121
Error
0.1b
Counts
121 → 5
Alt Table
StatusErrorProgram
35.7b
(/.f64 (cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (sin.f64 v) 3))) (+.f64 1 (*.f64 e (cos.f64 v))))
1.1b
(/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 3) (+.f64 1 (*.f64 e (cos.f64 v))))
0.1b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
1.0b
(pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v))) -1)
0.2b
(*.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))
Compiler

Compiled 2568 to 1394 computations (45.7% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))
0.1b
(*.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))
0.3b
(/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))

series64.0ms (1.4%)

Counts
3 → 72
Calls

18 calls:

8.0ms
(*.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))
v
0
6.0ms
(*.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))
v
-inf
6.0ms
(*.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))
v
inf
6.0ms
(/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))
v
-inf
5.0ms
(/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))
v
inf

rewrite52.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
529×log-prod_binary64
186×pow1/3_binary64
181×expm1-udef_binary64
181×log1p-udef_binary64
171×pow3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01042
120739
2270239
Stop Event
node limit
Counts
3 → 115

simplify51.0ms (1.1%)

Algorithm
egg-herbie
Rules
810×fma-def_binary64
431×cancel-sign-sub-inv_binary64
177×sub-neg_binary64
158×distribute-rgt-neg-in_binary64
147×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01892185
15962112
223772043
Stop Event
node limit
Counts
187 → 179

prune174.0ms (3.9%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1718179
Fresh303
Picked101
Done011
Total1759184
Error
0.0b
Counts
184 → 9
Alt Table
StatusErrorProgram
1.1b
(/.f64 1 (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) e))
0.2b
(*.f64 e (log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))
8.6b
(*.f64 e (cbrt.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))
4.5b
(*.f64 e (*.f64 (cbrt.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) -2))))
35.7b
(cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))
0.1b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
16.6b
(*.f64 e (-.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1))
16.8b
(*.f64 e (+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))
0.5b
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
Compiler

Compiled 4200 to 2454 computations (41.6% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))
0.1b
(expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))
0.1b
(*.f64 e (log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))
0.2b
(log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))

series104.0ms (2.3%)

Counts
4 → 96
Calls

24 calls:

8.0ms
(expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))
v
-inf
6.0ms
(expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))
v
inf
6.0ms
(expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))
e
-inf
6.0ms
(*.f64 e (log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))
v
-inf
6.0ms
(*.f64 e (log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))
v
inf

rewrite57.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
896×expm1-log1p-u_binary64
895×log1p-expm1-u_binary64
114×egg-rr
97×add-sqr-sqrt_binary64
88×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01153
119853
2240353
Stop Event
node limit
Counts
4 → 114

simplify76.0ms (1.7%)

Algorithm
egg-herbie
Rules
541×cancel-sign-sub-inv_binary64
270×fma-neg_binary64
241×sub-neg_binary64
236×associate-*r*_binary64
222×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02514002
18323898
235533871
Stop Event
node limit
Counts
210 → 152

prune142.0ms (3.2%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1520152
Fresh077
Picked011
Done011
Total1529161
Error
0.0b
Counts
161 → 9
Alt Table
StatusErrorProgram
1.1b
(/.f64 1 (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) e))
0.2b
(*.f64 e (log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))
8.6b
(*.f64 e (cbrt.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))
4.5b
(*.f64 e (*.f64 (cbrt.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) -2))))
35.7b
(cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))
0.1b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
16.6b
(*.f64 e (-.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1))
16.8b
(*.f64 e (+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))
0.5b
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
Compiler

Compiled 4485 to 2592 computations (42.2% saved)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))
0.3b
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
0.3b
(/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e))

series63.0ms (1.4%)

Counts
2 → 32
Calls

12 calls:

9.0ms
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
e
-inf
7.0ms
(/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e))
e
-inf
7.0ms
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
v
-inf
7.0ms
(/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e))
v
-inf
7.0ms
(/.f64 (sqrt.f64 e) (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)) (sqrt.f64 e)))
v
inf

rewrite56.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
632×log-prod_binary64
205×expm1-udef_binary64
205×log1p-udef_binary64
190×log-pow_binary64
184×log-div_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01139
123032
2320532
Stop Event
node limit
Counts
2 → 88

simplify35.0ms (0.8%)

Algorithm
egg-herbie
Rules
674×times-frac_binary64
583×fma-def_binary64
433×associate-/l*_binary64
287×cancel-sign-sub-inv_binary64
127×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01411168
14301087
216941024
Stop Event
node limit
Counts
120 → 121

prune163.0ms (3.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1704174
Fresh516
Picked101
Done112
Total1776183
Error
0b
Counts
183 → 6
Alt Table
StatusErrorProgram
0.3b
(*.f64 (/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) 1)
0.4b
(*.f64 (sqrt.f64 e) (*.f64 (sqrt.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))
8.6b
(*.f64 e (cbrt.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))
0.4b
(/.f64 (sqrt.f64 e) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 e)) (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))
0.1b
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v))))
0.3b
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) (/.f64 (sqrt.f64 e) (pow.f64 e -1/2)))
Compiler

Compiled 4085 to 2122 computations (48.1% saved)

regimes315.0ms (7%)

Accuracy

Total 0.1b remaining (74.8%)

Threshold costs 0.1b (74.8%)

Counts
104 → 1
Compiler

Compiled 4841 to 3395 computations (29.9% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
11215
Stop Event
saturated

end90.0ms (2%)

Stop Event
fuel
Compiler

Compiled 117 to 81 computations (30.8% saved)

Profiling

Loading profile data...