Details

Time bar (total: 2.9s)

analyze97.0ms (3.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
0%50%50%3
25%25%50%4
37.5%12.5%50%5
43.7%6.2%50%6
46.9%3.1%50%7
48.4%1.6%50%8
49.2%0.8%50%9
49.6%0.4%50%10
49.8%0.2%50%11
49.9%0.1%50%12
49.9%0%50.1%13
49.9%0%50.1%14
Compiler

Compiled 21 to 16 computations (23.8% saved)

sample30.0ms (1%)

Algorithm
intervals
Results
20.0ms256×body128valid
Compiler

Compiled 42 to 32 computations (23.8% saved)

simplify79.0ms (2.7%)

Algorithm
egg-herbie
Rules
750×div-sub_binary64
748×fma-neg_binary64
599×fma-def_binary64
502×associate-/l*_binary64
423×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01529
13729
28227
320127
452627
599125
6161425
7327325
8365325
9469425
10494225

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
Compiler

Compiled 73 to 56 computations (23.3% saved)

localize10.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fma.f64 v (*.f64 v -3) 1))
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1)))
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))

series34.0ms (1.2%)

Counts
3 → 36
Calls

3 calls:

16.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
12.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1)))
6.0ms
(sqrt.f64 (fma.f64 v (*.f64 v -3) 1))

rewrite21.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
18×pow1_binary64
17×add-cbrt-cube_binary64
17×add-exp-log_binary64
16×distribute-lft-in_binary64
16×distribute-rgt-in_binary64
Counts
3 → 76
Calls

3 calls:

8.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
5.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1)))
1.0ms
(sqrt.f64 (fma.f64 v (*.f64 v -3) 1))

simplify108.0ms (3.8%)

Algorithm
egg-herbie
Rules
766×fma-def_binary64
672×fma-neg_binary64
569×cancel-sign-sub-inv_binary64
256×associate-*r*_binary64
230×sub-neg_binary64
Counts
112 → 143
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02333324
16443084
223502985
343642978
449882978

prune148.0ms (5.2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1412143
Fresh000
Picked101
Done000
Total1422144
Error
0b
Counts
144 → 2
Alt Table
StatusErrorProgram
1.0b
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
Compiler

Compiled 4205 to 3457 computations (17.8% saved)

localize13.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))
0.0b
(*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1))))
0.2b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4)))

series48.0ms (1.7%)

Counts
4 → 48
Calls

4 calls:

16.0ms
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
12.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4)))
9.0ms
(*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1))))
9.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))

rewrite91.0ms (3.2%)

Algorithm
rewrite-expression-head
Rules
32×add-cbrt-cube_binary64
32×add-exp-log_binary64
32×pow1_binary64
19×cbrt-unprod_binary64
19×prod-exp_binary64
Counts
4 → 93
Calls

4 calls:

61.0ms
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
11.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4)))
7.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))
5.0ms
(*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1))))

simplify107.0ms (3.7%)

Algorithm
egg-herbie
Rules
729×cancel-sign-sub-inv_binary64
519×fma-neg_binary64
394×associate-*r*_binary64
340×associate-*l*_binary64
275×times-frac_binary64
Counts
141 → 200
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02684360
18133982
229993928
352393928

prune213.0ms (7.4%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New2000200
Fresh011
Picked011
Done000
Total2002202
Error
0b
Counts
202 → 2
Alt Table
StatusErrorProgram
1.0b
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
Compiler

Compiled 7969 to 6401 computations (19.7% saved)

localize15.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1)))
0.0b
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
0.0b
(pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)
1.0b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3))

series129.0ms (4.5%)

Counts
3 → 36
Calls

3 calls:

61.0ms
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
43.0ms
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3))
25.0ms
(pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)

rewrite20.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
20×cbrt-prod_binary64
19×add-sqr-sqrt_binary64
11×associate-*r*_binary64
11×add-exp-log_binary64
11×pow1_binary64
Counts
3 → 82
Calls

3 calls:

8.0ms
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
5.0ms
(pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)
2.0ms
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3))

simplify135.0ms (4.7%)

Algorithm
egg-herbie
Rules
678×fma-neg_binary64
324×sub-neg_binary64
310×associate-*r*_binary64
230×associate-*l*_binary64
223×fma-def_binary64
Counts
118 → 181
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02744419
17824102
233054066
348824066
450564066

prune237.0ms (8.3%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New2310231
Fresh000
Picked011
Done011
Total2312233
Error
0b
Counts
233 → 2
Alt Table
StatusErrorProgram
1.0b
(*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))) 3)))
0.0b
(+.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (*.f64 v v) -1/4))) (*.f64 (sqrt.f64 2) (*.f64 1/4 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)))))
Compiler

Compiled 7863 to 6617 computations (15.8% saved)

regimes422.0ms (14.7%)

Accuracy

Total 0.0b remaining (49.6%)

Threshold costs 0.0b (49.6%)

Counts
130 → 1
Compiler

Compiled 8440 to 6978 computations (17.3% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01742
12442
22342

end1.0ms (0%)

Compiler

Compiled 29 to 23 computations (20.7% saved)

sample902.0ms (31.5%)

Algorithm
intervals
Results
628.0ms8000×body128valid
0.0msbody128nan
Compiler

Compiled 102 to 81 computations (20.6% saved)

Profiling

Loading profile data...