Details

Time bar (total: 3.3s)

analyze192.0ms (5.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
18.7%81.1%0.1%6
40.6%59.3%0.1%7
45.2%54.6%0.1%8
65.5%34.3%0.1%9
78%21.8%0.1%10
80%19.5%0.5%11
81.7%17.7%0.5%12
87.9%11.3%0.8%13
88.3%10.1%1.6%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample834.0ms (25.4%)

Results
750.0ms8256×body128valid
37.0ms220×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify59.0ms (1.8%)

Algorithm
egg-herbie
Rules
649×fma-neg_binary64
496×div-sub_binary64
481×fma-def_binary64
322×times-frac_binary64
160×associate-/l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
22110
33710
47210
512710
626510
754710
8135310
9275010
10366410
11402610
12415110
13417810
14418810
15419610
16419610
Stop Event
saturated
Counts
1 → 2

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 37 to 21 computations (43.2% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))

series17.0ms (0.5%)

Counts
1 → 36
Calls

1 calls:

17.0ms
(/.f64 (-.f64 x y) (-.f64 z y))

rewrite102.0ms (3.1%)

Algorithm
batch-egg-rewrite
Rules
952×prod-diff_binary64
233×egg-rr
166×expm1-udef_binary64
166×log1p-udef_binary64
90×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
116710
2265410
Stop Event
node limit
Counts
1 → 233
Calls

1 calls:

93.0ms
(/.f64 (-.f64 x y) (-.f64 z y))

simplify55.0ms (1.7%)

Algorithm
egg-herbie
Rules
754×sub-neg_binary64
431×associate--l+_binary64
342×fma-def_binary64
333×associate--r+_binary64
311×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0761081
12271075
2847933
34704927
Stop Event
node limit
Counts
269 → 265

prune191.0ms (5.8%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2614265
Fresh000
Picked101
Done000
Total2624266
Error
0b
Counts
266 → 4
Alt Table
StatusErrorProgram
0.3b
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)
0.0b
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))
33.4b
(+.f64 (/.f64 x z) (+.f64 (*.f64 (/.f64 x z) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 y z))) (*.f64 (/.f64 y z) (-.f64 -1 (/.f64 y z)))))
0.3b
(+.f64 (fma.f64 x (/.f64 1 (-.f64 z y)) (neg.f64 (*.f64 (/.f64 1 (-.f64 z y)) y))) (fma.f64 (neg.f64 (/.f64 1 (-.f64 z y))) y (*.f64 (/.f64 1 (-.f64 z y)) y)))
Compiler

Compiled 12610 to 3405 computations (73% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (-.f64 z y))
0.0b
(/.f64 y (-.f64 z y))
0.0b
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))

series43.0ms (1.3%)

Counts
3 → 75
Calls

3 calls:

20.0ms
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))
15.0ms
(/.f64 x (-.f64 z y))
8.0ms
(/.f64 y (-.f64 z y))

rewrite83.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
520×fma-def_binary64
277×fma-neg_binary64
237×egg-rr
192×expm1-udef_binary64
192×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
119524
2330324
Stop Event
node limit
Counts
3 → 237
Calls

3 calls:

76.0ms
(/.f64 x (-.f64 z y))
76.0ms
(/.f64 y (-.f64 z y))
76.0ms
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))

simplify47.0ms (1.4%)

Algorithm
egg-herbie
Rules
437×associate--l+_binary64
382×associate--r+_binary64
382×fma-def_binary64
344×associate-+l+_binary64
237×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0841997
12601979
29871653
Stop Event
node limit
Counts
312 → 297

prune182.0ms (5.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2952297
Fresh213
Picked011
Done000
Total2974301
Error
0b
Counts
301 → 4
Alt Table
StatusErrorProgram
30.9b
(-.f64 (/.f64 x (-.f64 z y)) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 y z)))
0.1b
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))
0.3b
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)
0.0b
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))
Compiler

Compiled 6515 to 1856 computations (71.5% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (-.f64 z y))
0.0b
(/.f64 (neg.f64 y) (-.f64 z y))
0.1b
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))

series40.0ms (1.2%)

Counts
3 → 84
Calls

3 calls:

23.0ms
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))
10.0ms
(/.f64 (neg.f64 y) (-.f64 z y))
7.0ms
(/.f64 1 (-.f64 z y))

rewrite120.0ms (3.7%)

Algorithm
batch-egg-rewrite
Rules
653×prod-diff_binary64
333×egg-rr
168×expm1-udef_binary64
168×log1p-udef_binary64
108×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01035
121527
2309327
Stop Event
node limit
Counts
3 → 333
Calls

3 calls:

110.0ms
(/.f64 1 (-.f64 z y))
110.0ms
(/.f64 (neg.f64 y) (-.f64 z y))
110.0ms
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))

simplify57.0ms (1.7%)

Algorithm
egg-herbie
Rules
438×associate--l+_binary64
437×fma-def_binary64
392×associate-+l+_binary64
369×associate--r+_binary64
250×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01032033
12952009
210981743
Stop Event
node limit
Counts
417 → 394

prune265.0ms (8.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New3940394
Fresh022
Picked011
Done011
Total3944398
Error
0b
Counts
398 → 4
Alt Table
StatusErrorProgram
30.9b
(-.f64 (/.f64 x (-.f64 z y)) (*.f64 (+.f64 (/.f64 y z) 1) (/.f64 y z)))
0.1b
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))
0.3b
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)
0.0b
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))
Compiler

Compiled 14800 to 5214 computations (64.8% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 z y) (-.f64 x y))
0.3b
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)

series70.0ms (2.1%)

Counts
2 → 72
Calls

2 calls:

51.0ms
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)
18.0ms
(/.f64 (-.f64 z y) (-.f64 x y))

rewrite120.0ms (3.7%)

Algorithm
batch-egg-rewrite
Rules
952×prod-diff_binary64
281×egg-rr
109×add-sqr-sqrt_binary64
105×log1p-expm1-u_binary64
105×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0923
120920
2311820
Stop Event
node limit
Counts
2 → 281
Calls

2 calls:

110.0ms
(/.f64 (-.f64 z y) (-.f64 x y))
110.0ms
(pow.f64 (/.f64 (-.f64 z y) (-.f64 x y)) -1)

simplify79.0ms (2.4%)

Algorithm
egg-herbie
Rules
442×sub-neg_binary64
385×times-frac_binary64
276×associate-/l*_binary64
235×+-commutative_binary64
235×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02643611
19093548
242593473
Stop Event
node limit
Counts
353 → 356

prune269.0ms (8.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New3551356
Fresh101
Picked101
Done022
Total3573360
Error
0b
Counts
360 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 x (/.f64 1 (-.f64 z y)) (/.f64 (neg.f64 y) (-.f64 z y)))
0.0b
(-.f64 (/.f64 x (-.f64 z y)) (/.f64 y (-.f64 z y)))
0.3b
(pow.f64 (-.f64 (/.f64 z (-.f64 x y)) (/.f64 y (-.f64 x y))) -1)
Compiler

Compiled 15936 to 5103 computations (68% saved)

regimes375.0ms (11.5%)

Accuracy

Total 0.0b remaining (73%)

Threshold costs 0.0b (73%)

Counts
100 → 1
Compiler

Compiled 6270 to 3880 computations (38.1% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0910
11510
22010
32210
42310
Stop Event
saturated

end51.0ms (1.5%)

Compiler

Compiled 66 to 37 computations (43.9% saved)

Profiling

Loading profile data...