Details

Time bar (total: 3.1s)

analyze900.0ms (29.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
9.4%90.4%0.2%10
18.7%70.2%11.1%11
21.1%66.7%12.3%12
31.6%55.9%12.5%13
34.5%52.3%13.2%14
Compiler

Compiled 14 to 9 computations (35.7% saved)

sample1.2s (38.9%)

Results
933.0ms8256×body128valid
220.0ms1894×body128invalid
Compiler

Compiled 41 to 26 computations (36.6% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
22×fma-def_binary64
+-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
099
1159
2259
3389
4529
5529

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (fma.f64 x y z) t)
Compiler

Compiled 42 to 22 computations (47.6% saved)

localize6.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 x y z) t)

series15.0ms (0.5%)

Counts
1 → 48
Calls

1 calls:

15.0ms
(fma.f64 y (fma.f64 x y z) t)

rewrite1.0ms (0%)

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
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 y (fma.f64 x y z) t)

simplify64.0ms (2.1%)

Algorithm
egg-herbie
Rules
775×associate-+l+_binary64
772×associate-+r+_binary64
678×unswap-sqr_binary64
551×*-commutative_binary64
295×distribute-lft-in_binary64
Counts
58 → 31
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
026697
147499
284499
3257499
41272499
53520499
64213499
75348499

prune18.0ms (0.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New29231
Fresh000
Picked011
Done000
Total29332
Error
0.0b
Counts
32 → 3
Alt Table
StatusErrorProgram
4.7b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
0.1b
(fma.f64 y (fma.f64 x y z) t)
28.8b
(*.f64 (sqrt.f64 (fma.f64 y (fma.f64 x y z) t)) (sqrt.f64 (fma.f64 y (fma.f64 x y z) t)))
Compiler

Compiled 393 to 117 computations (70.2% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 t (*.f64 (pow.f64 y 2) x))
0.0b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
8.4b
(*.f64 (pow.f64 y 2) x)

series40.0ms (1.3%)

Counts
3 → 33
Calls

3 calls:

20.0ms
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
11.0ms
(+.f64 t (*.f64 (pow.f64 y 2) x))
8.0ms
(*.f64 (pow.f64 y 2) x)

rewrite13.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
13×add-sqr-sqrt_binary64
10×add-log-exp_binary64
associate-*l*_binary64
add-exp-log_binary64
*-un-lft-identity_binary64
Counts
3 → 61
Calls

3 calls:

4.0ms
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
4.0ms
(*.f64 (pow.f64 y 2) x)
2.0ms
(+.f64 t (*.f64 (pow.f64 y 2) x))

simplify103.0ms (3.4%)

Algorithm
egg-herbie
Rules
447×fma-def_binary64
404×sub-neg_binary64
344×fma-neg_binary64
329×distribute-rgt-in_binary64
291×distribute-lft-in_binary64
Counts
94 → 108
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01021107
1275940
2892932
32642932
44258932
54933932
64942932

prune68.0ms (2.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1053108
Fresh101
Picked011
Done011
Total1065111
Error
0.0b
Counts
111 → 5
Alt Table
StatusErrorProgram
26.2b
(+.f64 (*.f64 y z) (/.f64 (-.f64 (*.f64 t t) (*.f64 (*.f64 (pow.f64 y 2) x) (*.f64 (pow.f64 y 2) x))) (-.f64 t (*.f64 (pow.f64 y 2) x))))
4.7b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
0.1b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 y (*.f64 y x))))
0.1b
(fma.f64 y (fma.f64 x y z) t)
33.3b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (*.f64 y (*.f64 y (sqrt.f64 x))) (sqrt.f64 x))))
Compiler

Compiled 1927 to 867 computations (55% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 t (*.f64 y (*.f64 y x)))
0.0b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 y (*.f64 y x))))
0.1b
(*.f64 y (*.f64 y x))

series40.0ms (1.3%)

Counts
3 → 108
Calls

3 calls:

18.0ms
(+.f64 (*.f64 y z) (+.f64 t (*.f64 y (*.f64 y x))))
13.0ms
(+.f64 t (*.f64 y (*.f64 y x)))
10.0ms
(*.f64 y (*.f64 y x))

rewrite12.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
10×add-log-exp_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
Counts
3 → 52
Calls

3 calls:

4.0ms
(+.f64 (*.f64 y z) (+.f64 t (*.f64 y (*.f64 y x))))
4.0ms
(*.f64 y (*.f64 y x))
2.0ms
(+.f64 t (*.f64 y (*.f64 y x)))

simplify88.0ms (2.9%)

Algorithm
egg-herbie
Rules
480×fma-def_binary64
429×sub-neg_binary64
416×fma-neg_binary64
331×distribute-rgt-in_binary64
299×cancel-sign-sub-inv_binary64
Counts
160 → 92
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0891748
12611533
29081381
327221379
446361379
550981379

prune49.0ms (1.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New90292
Fresh112
Picked101
Done112
Total93497
Error
0.0b
Counts
97 → 4
Alt Table
StatusErrorProgram
4.7b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
33.3b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (*.f64 y (*.f64 y (sqrt.f64 x))) (sqrt.f64 x))))
0.1b
(fma.f64 y z (+.f64 t (*.f64 y (*.f64 y x))))
31.5b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (sqrt.f64 y) (*.f64 x (pow.f64 y 3/2)))))
Compiler

Compiled 1595 to 419 computations (73.7% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y z (+.f64 t (*.f64 y (*.f64 y x))))
0.0b
(+.f64 t (*.f64 y (*.f64 y x)))
0.1b
(*.f64 y (*.f64 y x))

series18.0ms (0.6%)

Counts
1 → 48
Calls

1 calls:

18.0ms
(fma.f64 y z (+.f64 t (*.f64 y (*.f64 y x))))

rewrite1.0ms (0%)

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
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 y z (+.f64 t (*.f64 y (*.f64 y x))))

simplify86.0ms (2.8%)

Algorithm
egg-herbie
Rules
862×distribute-rgt-in_binary64
858×distribute-lft-in_binary64
428×associate-*l*_binary64
371×associate-*r*_binary64
318×fma-def_binary64
Counts
58 → 30
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
027750
144630
2123495
3504495
43340495
53637495
64317495
74982495
84834495

prune47.0ms (1.5%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New83184
Fresh112
Picked011
Done011
Total84488
Error
0.0b
Counts
88 → 4
Alt Table
StatusErrorProgram
4.7b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (pow.f64 y 2) x)))
33.3b
(+.f64 (*.f64 y z) (+.f64 t (*.f64 (*.f64 y (*.f64 y (sqrt.f64 x))) (sqrt.f64 x))))
31.5b
(fma.f64 y z (+.f64 t (*.f64 (sqrt.f64 y) (*.f64 x (pow.f64 y 3/2)))))
0.1b
(fma.f64 y z (+.f64 t (*.f64 y (*.f64 y x))))
Compiler

Compiled 1269 to 350 computations (72.4% saved)

regimes206.0ms (6.7%)

Accuracy

Total 0.0b remaining (67.7%)

Threshold costs 0.0b (67.7%)

Counts
37 → 1
Compiler

Compiled 3536 to 2116 computations (40.2% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11214
21214

end58.0ms (1.9%)

Compiler

Compiled 93 to 56 computations (39.8% saved)

Profiling

Loading profile data...