Details

Time bar (total: 1.9s)

analyze4.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
75%25%0%4
75%12.5%12.5%5
75%6.2%18.8%6
75%3.1%21.9%7
75%1.6%23.5%8
75%0.8%24.3%9
75%0.4%24.6%10
75%0.2%24.8%11
75%0.1%24.9%12
75%0%24.9%13
75%0%25%14
Compiler

Compiled 11 to 9 computations (18.2% saved)

sample46.0ms (2.4%)

Algorithm
intervals
Results
7.0ms256×body128valid
Compiler

Compiled 22 to 18 computations (18.2% saved)

simplify25.0ms (1.3%)

Algorithm
egg-herbie
Rules
271×fma-def_binary64
257×fma-neg_binary64
76×cancel-sign-sub-inv_binary64
55×sub-neg_binary64
32×associate--r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0913
12511
25411
312211
42229
53619
64239
75879
86459
96649
105939

prune4.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.1b
(-.f64 1 (*.f64 x (+.f64 253/1000 (*.f64 x 3/25))))
0.1b
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)
Compiler

Compiled 53 to 41 computations (22.6% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x -3/25 -253/1000)
0.1b
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)

series4.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)
2.0ms
(fma.f64 x -3/25 -253/1000)

rewrite1.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
2 → 20
Calls

2 calls:

0.0ms
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)
0.0ms
(fma.f64 x -3/25 -253/1000)

simplify75.0ms (4%)

Algorithm
egg-herbie
Rules
549×associate-*l*_binary64
533×fma-neg_binary64
477×associate-*r*_binary64
446×unsub-neg_binary64
418×times-frac_binary64
Counts
44 → 38
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042455
177344
2166341
3592341
42915341
54504341
65515341

prune41.0ms (2.2%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New32638
Fresh101
Picked101
Done000
Total34640
Error
0.0b
Counts
40 → 6
Alt Table
StatusErrorProgram
51.6b
(fma.f64 x (*.f64 (sqrt.f64 (fma.f64 x -3/25 -253/1000)) (sqrt.f64 (fma.f64 x -3/25 -253/1000))) 1)
7.7b
(fma.f64 x (cbrt.f64 (pow.f64 (fma.f64 x -3/25 -253/1000) 3)) 1)
0.1b
(*.f64 1 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))
0.5b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
14.4b
(cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1) 3))
0.1b
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
Compiler

Compiled 541 to 418 computations (22.7% saved)

localize8.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
0.1b
(*.f64 253/1000 x)
0.1b
(fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))

series7.0ms (0.4%)

Counts
3 → 24
Calls

3 calls:

3.0ms
(fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))
2.0ms
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
2.0ms
(*.f64 253/1000 x)

rewrite11.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity_binary64
10×fma-def_binary64
10×add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
Counts
3 → 58
Calls

3 calls:

5.0ms
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
3.0ms
(*.f64 253/1000 x)
0.0ms
(fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))

simplify86.0ms (4.5%)

Algorithm
egg-herbie
Rules
801×fma-neg_binary64
389×times-frac_binary64
263×associate-*l*_binary64
251×distribute-rgt-neg-out_binary64
242×unsub-neg_binary64
Counts
82 → 89
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
086931
1185804
2469696
32036650
44136650
55081650

prune90.0ms (4.8%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New88189
Fresh145
Picked011
Done000
Total89695
Error
0.0b
Counts
95 → 6
Alt Table
StatusErrorProgram
7.7b
(fma.f64 x (cbrt.f64 (pow.f64 (fma.f64 x -3/25 -253/1000) 3)) 1)
21.6b
(fma.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) (neg.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x)))) 1)
0.1b
(*.f64 1 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))
0.5b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
14.4b
(cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1) 3))
0.1b
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
Compiler

Compiled 1561 to 1100 computations (29.5% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x -3/25 -253/1000)
0.1b
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)

prune59.0ms (3.1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New38038
Fresh044
Picked011
Done011
Total38644
Error
0.0b
Counts
44 → 6
Alt Table
StatusErrorProgram
7.7b
(fma.f64 x (cbrt.f64 (pow.f64 (fma.f64 x -3/25 -253/1000) 3)) 1)
21.6b
(fma.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) (neg.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x)))) 1)
0.1b
(*.f64 1 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))
0.5b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
14.4b
(cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1) 3))
0.1b
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
Compiler

Compiled 609 to 483 computations (20.7% saved)

localize8.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (fma.f64 x -3/25 -253/1000) 1)
0.2b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
0.2b
(*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
0.2b
(cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))

series16.0ms (0.9%)

Counts
3 → 36
Calls

3 calls:

7.0ms
(cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))
6.0ms
(*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
3.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))

rewrite21.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64
24×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×pow1/3_binary64
14×*-un-lft-identity_binary64
Counts
3 → 93
Calls

3 calls:

9.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
5.0ms
(*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
1.0ms
(cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))

simplify142.0ms (7.5%)

Algorithm
egg-herbie
Rules
621×fma-neg_binary64
358×associate-*l*_binary64
358×fma-def_binary64
283×associate-*r*_binary64
219×sub-neg_binary64
Counts
129 → 168
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01803216
14282859
211142332
336792128
448992128
549732128

prune499.0ms (26.4%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New3091310
Fresh033
Picked011
Done022
Total3097316
Error
0b
Counts
316 → 7
Alt Table
StatusErrorProgram
7.7b
(fma.f64 x (cbrt.f64 (pow.f64 (fma.f64 x -3/25 -253/1000) 3)) 1)
21.6b
(fma.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) (neg.f64 (sqrt.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x)))) 1)
0.1b
(*.f64 1 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))
0.5b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
14.4b
(cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1) 3))
0.8b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1))) 6) (cbrt.f64 (fma.f64 x (fma.f64 x -3/25 -253/1000) 1)))
0.1b
(+.f64 (neg.f64 (fma.f64 3/25 (*.f64 x x) (*.f64 253/1000 x))) 1)
Compiler

Compiled 10304 to 8195 computations (20.5% saved)

regimes217.0ms (11.5%)

Accuracy

Total 0.2b remaining (88.2%)

Threshold costs 0.2b (88.2%)

Counts
60 → 1
Compiler

Compiled 2808 to 2225 computations (20.8% saved)

simplify3.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
unsub-neg_binary64
neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01016
11714
22014
32114
42014

end1.0ms (0%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

sample510.0ms (27%)

Algorithm
intervals
Results
245.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 137 to 106 computations (22.6% saved)

Profiling

Loading profile data...