Details

Time bar (total: 7.2s)

analyze372.0ms (5.2%)

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)

sample1.8s (24.6%)

Results
1.5s8256×body128valid
44.0ms246×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify104.0ms (1.5%)

Algorithm
egg-herbie
Rules
649×fma-neg_binary64
504×div-sub_binary64
481×fma-def_binary64
326×times-frac_binary64
174×associate-/l/_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
22110
33710
46410
511310
621610
741510
875410
9118310
10153710
11161210
12165710
13168410
14169410
15170210
16170210
17160010

prune5.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 30 to 18 computations (40% saved)

localize13.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

series38.0ms (0.5%)

Counts
1 → 36
Calls

1 calls:

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

rewrite177.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
952×prod-diff_binary64
728×fma-udef_binary64
226×fma-neg_binary64
166×expm1-udef_binary64
166×log1p-udef_binary64
Counts
1 → 68
Calls

1 calls:

173.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
116710
2253010
3473010
4451710
5510810
000
100

simplify107.0ms (1.5%)

Algorithm
egg-herbie
Rules
753×sub-neg_binary64
431×associate--l+_binary64
342×fma-def_binary64
338×associate--r+_binary64
311×associate-+l+_binary64
Counts
104 → 100
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0761081
12251075
2827933
34185927
44904927
55012927

prune160.0ms (2.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New982100
Fresh000
Picked011
Done000
Total983101
Error
0b
Counts
101 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))
0.1b
(+.f64 (+.f64 (/.f64 x (-.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)))
0.8b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x y)) 2) (pow.f64 (cbrt.f64 (-.f64 z y)) 2)) (cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y))))
Compiler

Compiled 2390 to 838 computations (64.9% saved)

localize31.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (-.f64 z y))
0.0b
(+.f64 (/.f64 x (-.f64 z y)) (neg.f64 (*.f64 (/.f64 1 (-.f64 z y)) y)))
0.2b
(*.f64 (/.f64 1 (-.f64 z y)) y)
54.4b
(fma.f64 (neg.f64 (/.f64 1 (-.f64 z y))) y (*.f64 (/.f64 1 (-.f64 z y)) y))

series693.0ms (9.7%)

Counts
4 → 108
Calls

4 calls:

612.0ms
(fma.f64 (neg.f64 (/.f64 1 (-.f64 z y))) y (*.f64 (/.f64 1 (-.f64 z y)) y))
50.0ms
(+.f64 (/.f64 x (-.f64 z y)) (neg.f64 (*.f64 (/.f64 1 (-.f64 z y)) y)))
16.0ms
(*.f64 (/.f64 1 (-.f64 z y)) y)
14.0ms
(/.f64 1 (-.f64 z y))

rewrite170.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
444×fma-def_binary64
342×fma-neg_binary64
227×egg-rr
220×expm1-udef_binary64
220×log1p-udef_binary64
Counts
4 → 227
Calls

4 calls:

161.0ms
(/.f64 1 (-.f64 z y))
161.0ms
(+.f64 (/.f64 x (-.f64 z y)) (neg.f64 (*.f64 (/.f64 1 (-.f64 z y)) y)))
161.0ms
(*.f64 (/.f64 1 (-.f64 z y)) y)
161.0ms
(fma.f64 (neg.f64 (/.f64 1 (-.f64 z y))) y (*.f64 (/.f64 1 (-.f64 z y)) y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01347
128934
2337934
3493434
000
100

simplify129.0ms (1.8%)

Algorithm
egg-herbie
Rules
441×associate--l+_binary64
425×fma-def_binary64
391×associate--r+_binary64
374×associate-+l+_binary64
250×times-frac_binary64
Counts
335 → 287
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01032051
12942015
210801761
349971761

prune762.0ms (10.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New4360436
Fresh011
Picked011
Done011
Total4363439
Error
0b
Counts
439 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))
0.1b
(+.f64 (+.f64 (/.f64 x (-.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)))
0.8b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x y)) 2) (pow.f64 (cbrt.f64 (-.f64 z y)) 2)) (cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y))))
Compiler

Compiled 15550 to 6549 computations (57.9% saved)

localize26.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (-.f64 x y)) 2)
0.5b
(cbrt.f64 (-.f64 x y))
0.6b
(cbrt.f64 (-.f64 z y))
1.5b
(cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y)))

series684.0ms (9.5%)

Counts
4 → 108
Calls

4 calls:

441.0ms
(cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y)))
100.0ms
(pow.f64 (cbrt.f64 (-.f64 x y)) 2)
90.0ms
(cbrt.f64 (-.f64 x y))
51.0ms
(cbrt.f64 (-.f64 z y))

rewrite138.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
968×prod-diff_binary64
129×add-sqr-sqrt_binary64
124×log1p-expm1-u_binary64
124×expm1-log1p-u_binary64
122×add-cube-cbrt_binary64
Counts
4 → 107
Calls

4 calls:

132.0ms
(pow.f64 (cbrt.f64 (-.f64 x y)) 2)
132.0ms
(cbrt.f64 (-.f64 x y))
132.0ms
(cbrt.f64 (-.f64 z y))
132.0ms
(cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
126031
2338331
3525231
000
100

simplify250.0ms (3.5%)

Algorithm
egg-herbie
Rules
738×times-frac_binary64
661×fma-def_binary64
286×*-commutative_binary64
160×sqr-pow_binary64
155×cancel-sign-sub-inv_binary64
Counts
215 → 262
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
07207417
125117247
251597247

prune578.0ms (8.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2620262
Fresh000
Picked011
Done022
Total2623265
Error
0b
Counts
265 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 z y))
0.1b
(+.f64 (+.f64 (/.f64 x (-.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)))
0.8b
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 x y)) 2) (pow.f64 (cbrt.f64 (-.f64 z y)) 2)) (cbrt.f64 (/.f64 (-.f64 x y) (-.f64 z y))))
Compiler

Compiled 14095 to 7675 computations (45.5% saved)

regimes838.0ms (11.7%)

Accuracy

Total 0.0b remaining (60.2%)

Threshold costs 0.0b (60.2%)

Counts
101 → 1
Compiler

Compiled 9708 to 5586 computations (42.5% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11010
21610
31810
41910
51910

end126.0ms (1.8%)

Compiler

Compiled 88 to 51 computations (42% saved)

Profiling

Loading profile data...