Details

Time bar (total: 4.6s)

analyze1.3s (27.6%)

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
0%99.8%0.2%9
3.5%96.2%0.2%10
9.5%90.2%0.2%11
14.3%85.4%0.2%12
22.4%77.4%0.2%13
23.5%76.3%0.2%14
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample1.3s (27.5%)

Results
1.1s8254×body128valid
102.0ms781×body128invalid
0.0msbody512valid
0.0msbody256valid
Compiler

Compiled 50 to 32 computations (36% saved)

simplify23.0ms (0.5%)

Algorithm
egg-herbie
Rules
740×fma-def_binary64
579×times-frac_binary64
533×div-sub_binary64
520×fma-neg_binary64
208×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01116
11816
23714
38114
419114
539214
683314
7239714
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
9.4b
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) (-.f64 a t)))
Compiler

Compiled 88 to 50 computations (43.2% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 z t) (-.f64 a t))
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)

series53.0ms (1.1%)

Counts
2 → 96
Calls

2 calls:

35.0ms
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
17.0ms
(/.f64 (-.f64 z t) (-.f64 a t))

rewrite53.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
365×fma-def_binary64
222×expm1-udef_binary64
222×log1p-udef_binary64
200×fma-neg_binary64
192×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
122624
2337124
Stop Event
node limit
Counts
2 → 77
Calls

2 calls:

51.0ms
(/.f64 (-.f64 z t) (-.f64 a t))
51.0ms
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)

simplify56.0ms (1.2%)

Algorithm
egg-herbie
Rules
878×fma-def_binary64
678×cancel-sign-sub-inv_binary64
618×times-frac_binary64
322×sub-neg_binary64
175×associate--l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01722919
15532907
220572615
Stop Event
node limit
Counts
173 → 155

prune121.0ms (2.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1514155
Fresh101
Picked011
Done000
Total1525157
Error
0.0b
Counts
157 → 5
Alt Table
StatusErrorProgram
1.8b
(pow.f64 (cbrt.f64 (fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)) 3)
0.6b
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
1.6b
(-.f64 (fma.f64 (/.f64 y (-.f64 a t)) z x) (*.f64 (/.f64 y (-.f64 a t)) t))
9.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
Compiler

Compiled 3633 to 1210 computations (66.7% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (-.f64 a t))
0.2b
(*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t)))
0.6b
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)

series64.0ms (1.4%)

Counts
3 → 120
Calls

3 calls:

35.0ms
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)
21.0ms
(*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t)))
7.0ms
(/.f64 1 (-.f64 a t))

rewrite58.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
801×prod-diff_binary64
133×add-sqr-sqrt_binary64
125×add-cbrt-cube_binary64
125×log1p-expm1-u_binary64
125×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
125931
2355131
Stop Event
node limit
Counts
3 → 89
Calls

3 calls:

55.0ms
(/.f64 1 (-.f64 a t))
55.0ms
(*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t)))
55.0ms
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)

simplify59.0ms (1.3%)

Algorithm
egg-herbie
Rules
948×fma-def_binary64
681×cancel-sign-sub-inv_binary64
632×times-frac_binary64
329×sub-neg_binary64
176×+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01953411
16093381
222453089
Stop Event
node limit
Counts
209 → 181

prune110.0ms (2.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1801181
Fresh213
Picked011
Done011
Total1824186
Error
0.0b
Counts
186 → 4
Alt Table
StatusErrorProgram
38.2b
(-.f64 (/.f64 y (/.f64 (-.f64 a t) z)) (/.f64 t (/.f64 (-.f64 a t) y)))
0.6b
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
9.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
Compiler

Compiled 4012 to 1466 computations (63.5% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x)
0.0b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
3.8b
(/.f64 (*.f64 y z) (-.f64 a t))
8.0b
(/.f64 (*.f64 y t) (-.f64 a t))

series107.0ms (2.3%)

Counts
4 → 114
Calls

4 calls:

42.0ms
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
24.0ms
(/.f64 (*.f64 y z) (-.f64 a t))
24.0ms
(+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x)
17.0ms
(/.f64 (*.f64 y t) (-.f64 a t))

rewrite88.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
294×log1p-udef_binary64
181×egg-rr
160×add-sqr-sqrt_binary64
154×log1p-expm1-u_binary64
154×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01358
130458
2498858
Stop Event
node limit
Counts
4 → 181
Calls

4 calls:

84.0ms
(+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x)
84.0ms
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
84.0ms
(/.f64 (*.f64 y z) (-.f64 a t))
84.0ms
(/.f64 (*.f64 y t) (-.f64 a t))

simplify58.0ms (1.3%)

Algorithm
egg-herbie
Rules
893×fma-def_binary64
856×cancel-sign-sub-inv_binary64
638×times-frac_binary64
246×sub-neg_binary64
131×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01833200
16333200
220062827
Stop Event
node limit
Counts
295 → 282

prune182.0ms (3.9%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New2802282
Fresh011
Picked011
Done022
Total2806286
Error
0b
Counts
286 → 6
Alt Table
StatusErrorProgram
38.2b
(-.f64 (/.f64 y (/.f64 (-.f64 a t) z)) (/.f64 t (/.f64 (-.f64 a t) y)))
0.6b
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
7.5b
(-.f64 (+.f64 (*.f64 (/.f64 z (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 y (cbrt.f64 (-.f64 a t)))) x) (/.f64 (*.f64 y t) (-.f64 a t)))
8.6b
(-.f64 (+.f64 (*.f64 z (*.f64 y (/.f64 1 (-.f64 a t)))) x) (/.f64 (*.f64 y t) (-.f64 a t)))
9.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
Compiler

Compiled 8159 to 2000 computations (75.5% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (-.f64 a t))
0.5b
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
2.9b
(*.f64 (/.f64 z (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 y (cbrt.f64 (-.f64 a t))))
8.0b
(/.f64 (*.f64 y t) (-.f64 a t))

series114.0ms (2.5%)

Counts
3 → 64
Calls

3 calls:

52.0ms
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
31.0ms
(cbrt.f64 (-.f64 a t))
30.0ms
(*.f64 (/.f64 z (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 y (cbrt.f64 (-.f64 a t))))

rewrite60.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
413×prod-diff_binary64
238×log1p-udef_binary64
134×add-sqr-sqrt_binary64
128×log1p-expm1-u_binary64
128×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01225
126725
2377825
Stop Event
node limit
Counts
3 → 99
Calls

3 calls:

58.0ms
(cbrt.f64 (-.f64 a t))
58.0ms
(pow.f64 (cbrt.f64 (-.f64 a t)) 2)
58.0ms
(*.f64 (/.f64 z (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 y (cbrt.f64 (-.f64 a t))))

simplify49.0ms (1.1%)

Algorithm
egg-herbie
Rules
658×fma-def_binary64
538×times-frac_binary64
321×cancel-sign-sub-inv_binary64
202×distribute-rgt-neg-in_binary64
196×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01751858
15401854
219541686
Stop Event
node limit
Counts
163 → 154

prune231.0ms (5%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New2591260
Fresh112
Picked011
Done033
Total2606266
Error
0b
Counts
266 → 6
Alt Table
StatusErrorProgram
8.5b
(-.f64 (+.f64 (/.f64 z (/.f64 (-.f64 a t) y)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
38.2b
(-.f64 (/.f64 y (/.f64 (-.f64 a t) z)) (/.f64 t (/.f64 (-.f64 a t) y)))
0.6b
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 1 (-.f64 a t))) x)
0.6b
(fma.f64 y (/.f64 (-.f64 z t) (-.f64 a t)) x)
7.5b
(-.f64 (+.f64 (*.f64 (/.f64 z (pow.f64 (cbrt.f64 (-.f64 a t)) 2)) (/.f64 y (cbrt.f64 (-.f64 a t)))) x) (/.f64 (*.f64 y t) (-.f64 a t)))
9.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (-.f64 a t)) x) (/.f64 (*.f64 y t) (-.f64 a t)))
Compiler

Compiled 8837 to 3527 computations (60.1% saved)

regimes473.0ms (10.2%)

Accuracy

Total 1.4b remaining (99.2%)

Threshold costs 0b (0%)

Counts
72 → 1
Compiler

Compiled 8892 to 5441 computations (38.8% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01316
12216
22716
32916
43016
Stop Event
saturated

end73.0ms (1.6%)

Compiler

Compiled 158 to 91 computations (42.4% saved)

Profiling

Loading profile data...