Details

Time bar (total: 8.2s)

analyze249.0ms (3%)

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%74.9%25.1%4
0%74.9%25.1%5
0%62.4%37.6%6
12.5%43.7%43.8%7
12.5%43.7%43.8%8
25%28.1%47%9
28.1%20.3%51.6%10
28.1%20.3%51.6%11
34.3%13.3%52.4%12
35.9%9.8%54.4%13
35.9%9.8%54.4%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample1.6s (18.9%)

Results
1.3s8256×body128valid
43.0ms359×body128invalid
Compiler

Compiled 47 to 35 computations (25.5% saved)

simplify285.0ms (3.5%)

Algorithm
egg-herbie
Rules
990×fma-def_binary64
806×fma-neg_binary64
746×unsub-neg_binary64
520×distribute-rgt-in_binary64
485×distribute-neg-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01216
12916
25916
311516
427014
551414
679214
7119114
8143514
9171614
10234314
11263914
12270414
13325114
14376614
15397714
16412414
17423414
18426014
19408514
20411114
21414914
22418914
23418914
24418914
25487114
26499914
27490714

prune3.0ms (0%)

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 x 1/2 (fma.f64 y (-.f64 (log.f64 z) z) y))
Compiler

Compiled 51 to 31 computations (39.2% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series370.0ms (4.5%)

Counts
3 → 69
Calls

3 calls:

281.0ms
(fma.f64 y (-.f64 (log.f64 z) z) y)
84.0ms
(fma.f64 x 1/2 (fma.f64 y (-.f64 (log.f64 z) z) y))
5.0ms
(-.f64 (log.f64 z) z)

rewrite89.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
519×prod-diff_binary64
425×log-prod_binary64
221×fma-def_binary64
175×expm1-udef_binary64
175×log1p-udef_binary64
Counts
3 → 168
Calls

3 calls:

85.0ms
(fma.f64 x 1/2 (fma.f64 y (-.f64 (log.f64 z) z) y))
85.0ms
(-.f64 (log.f64 z) z)
85.0ms
(fma.f64 y (-.f64 (log.f64 z) z) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0930
118830
2229330
3493330
4497330
000
100

simplify297.0ms (3.6%)

Algorithm
egg-herbie
Rules
1274×unsub-neg_binary64
805×distribute-neg-in_binary64
676×sub-neg_binary64
489×fma-def_binary64
419×+-commutative_binary64
Counts
237 → 191
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
051926
1139819
2345717
3759717
42015717
52532717
63132717
73501717
83593717
93688717
103727717
113735717
123740717
133967717
144012717
154054717
164066717
174084717
184090717
194108717
204630717
214712717
225057717

prune176.0ms (2.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1838191
Fresh000
Picked101
Done000
Total1848192
Error
0.0b
Counts
192 → 8
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z))) y)
0.1b
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))
0.4b
(fma.f64 x 1/2 (fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y))
37.4b
(fma.f64 x 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 (log.f64 z) z)) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y (-.f64 (log.f64 z) z)) (*.f64 y (-.f64 (log.f64 z) z)) (-.f64 (*.f64 y y) (*.f64 (*.f64 y (-.f64 (log.f64 z) z)) y)))))
29.1b
(fma.f64 x 1/2 (fma.f64 y (+.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 z (exp.f64 z))) (cbrt.f64 (/.f64 z (exp.f64 z))))) (log.f64 (cbrt.f64 (/.f64 z (exp.f64 z))))) y))
30.7b
(fma.f64 x 1/2 (pow.f64 (sqrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 2))
0.8b
(fma.f64 x 1/2 (pow.f64 (cbrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 3))
15.2b
(fma.f64 x 1/2 (fma.f64 y (cbrt.f64 (pow.f64 (-.f64 (log.f64 z) z) 3)) y))
Compiler

Compiled 3592 to 1423 computations (60.4% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series80.0ms (1%)

Counts
1 → 36
Calls

1 calls:

80.0ms
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))

rewrite74.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
519×prod-diff_binary64
425×log-prod_binary64
224×fma-def_binary64
175×expm1-udef_binary64
175×log1p-udef_binary64
Counts
1 → 31
Calls

1 calls:

73.0ms
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
118814
2229414
3493714
4497614
000
100

simplify156.0ms (1.9%)

Algorithm
egg-herbie
Rules
856×fma-neg_binary64
847×sub-neg_binary64
705×unsub-neg_binary64
450×fma-def_binary64
382×neg-sub0_binary64
Counts
67 → 43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
037586
1107530
2281503
3656443
41675443
53078443
63726443
74162443
84502443
94718443
104687443
114687443
124911443

prune145.0ms (1.8%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1550155
Fresh077
Picked011
Done000
Total1558163
Error
0.0b
Counts
163 → 8
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z))) y)
0.1b
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))
0.4b
(fma.f64 x 1/2 (fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y))
37.4b
(fma.f64 x 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 y (-.f64 (log.f64 z) z)) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y (-.f64 (log.f64 z) z)) (*.f64 y (-.f64 (log.f64 z) z)) (-.f64 (*.f64 y y) (*.f64 (*.f64 y (-.f64 (log.f64 z) z)) y)))))
29.1b
(fma.f64 x 1/2 (fma.f64 y (+.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 z (exp.f64 z))) (cbrt.f64 (/.f64 z (exp.f64 z))))) (log.f64 (cbrt.f64 (/.f64 z (exp.f64 z))))) y))
30.7b
(fma.f64 x 1/2 (pow.f64 (sqrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 2))
0.8b
(fma.f64 x 1/2 (pow.f64 (cbrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 3))
15.2b
(fma.f64 x 1/2 (fma.f64 y (cbrt.f64 (pow.f64 (-.f64 (log.f64 z) z) 3)) y))
Compiler

Compiled 3010 to 1248 computations (58.5% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (log.f64 z) z)
0.0b
(fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z)))
0.1b
(+.f64 (fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z))) y)
0.1b
(*.f64 y (-.f64 (log.f64 z) z))

series344.0ms (4.2%)

Counts
3 → 84
Calls

3 calls:

185.0ms
(*.f64 y (-.f64 (log.f64 z) z))
79.0ms
(+.f64 (fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z))) y)
79.0ms
(fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z)))

rewrite66.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
518×log-prod_binary64
385×fma-def_binary64
203×expm1-udef_binary64
203×log1p-udef_binary64
198×fma-neg_binary64
Counts
3 → 109
Calls

3 calls:

63.0ms
(fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z)))
63.0ms
(+.f64 (fma.f64 x 1/2 (*.f64 y (-.f64 (log.f64 z) z))) y)
63.0ms
(*.f64 y (-.f64 (log.f64 z) z))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01038
121738
2280236
3539336
000
100

simplify280.0ms (3.4%)

Algorithm
egg-herbie
Rules
942×unsub-neg_binary64
628×sub-neg_binary64
606×fma-neg_binary64
559×fma-def_binary64
510×distribute-neg-in_binary64
Counts
193 → 134
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0501217
11491068
2351960
3780954
41759954
52846954
63494954
74028954
84418954
94482954
104428954
114428954
124427954
134674954
144825954
154891954
164894954
174894954
185072954

prune295.0ms (3.6%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2433246
Fresh246
Picked101
Done011
Total2468254
Error
0.0b
Counts
254 → 8
Alt Table
StatusErrorProgram
29.1b
(fma.f64 x 1/2 (fma.f64 y (+.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 z (exp.f64 z))) (cbrt.f64 (/.f64 z (exp.f64 z))))) (log.f64 (cbrt.f64 (/.f64 z (exp.f64 z))))) y))
15.3b
(+.f64 (fma.f64 x 1/2 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 (log.f64 z) z) 3)))) y)
0.1b
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))
30.7b
(fma.f64 x 1/2 (pow.f64 (sqrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 2))
0.8b
(fma.f64 x 1/2 (pow.f64 (cbrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 3))
29.0b
(+.f64 (fma.f64 x 1/2 (cbrt.f64 (pow.f64 (*.f64 y (-.f64 (log.f64 z) z)) 3))) y)
0.4b
(fma.f64 x 1/2 (fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y))
12.2b
(+.f64 (fma.f64 x 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (log.f64 z) 2) (*.f64 z z)) y) (+.f64 z (log.f64 z)))) y)
Compiler

Compiled 4720 to 2002 computations (57.6% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y)
0.2b
(fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z))
0.5b
(cbrt.f64 (log.f64 z))
0.5b
(pow.f64 (cbrt.f64 (log.f64 z)) 2)

series1.6s (19.4%)

Counts
4 → 60
Calls

4 calls:

880.0ms
(fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y)
302.0ms
(pow.f64 (cbrt.f64 (log.f64 z)) 2)
289.0ms
(cbrt.f64 (log.f64 z))
124.0ms
(fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z))

rewrite74.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
727×log1p-expm1-u_binary64
727×expm1-log1p-u_binary64
308×prod-diff_binary64
247×egg-rr
96×add-sqr-sqrt_binary64
Counts
4 → 247
Calls

4 calls:

69.0ms
(fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y)
69.0ms
(fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z))
69.0ms
(cbrt.f64 (log.f64 z))
69.0ms
(pow.f64 (cbrt.f64 (log.f64 z)) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01053
119929
2191029
3488329
000
100

simplify77.0ms (0.9%)

Algorithm
egg-herbie
Rules
580×unsub-neg_binary64
508×associate-*l*_binary64
467×associate-*r*_binary64
461×fma-def_binary64
386×neg-sub0_binary64
Counts
307 → 269
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
051541
1152535
2326496
3910478
43327478
54377478
65077478

prune291.0ms (3.5%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2950295
Fresh066
Picked011
Done011
Total2958303
Error
0.0b
Counts
303 → 8
Alt Table
StatusErrorProgram
29.1b
(fma.f64 x 1/2 (fma.f64 y (+.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 z (exp.f64 z))) (cbrt.f64 (/.f64 z (exp.f64 z))))) (log.f64 (cbrt.f64 (/.f64 z (exp.f64 z))))) y))
15.3b
(+.f64 (fma.f64 x 1/2 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 (log.f64 z) z) 3)))) y)
0.1b
(fma.f64 y (-.f64 (log.f64 z) z) (fma.f64 1/2 x y))
30.7b
(fma.f64 x 1/2 (pow.f64 (sqrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 2))
0.8b
(fma.f64 x 1/2 (pow.f64 (cbrt.f64 (fma.f64 y (-.f64 (log.f64 z) z) y)) 3))
29.0b
(+.f64 (fma.f64 x 1/2 (cbrt.f64 (pow.f64 (*.f64 y (-.f64 (log.f64 z) z)) 3))) y)
0.4b
(fma.f64 x 1/2 (fma.f64 y (fma.f64 (cbrt.f64 (log.f64 z)) (pow.f64 (cbrt.f64 (log.f64 z)) 2) (neg.f64 z)) y))
12.2b
(+.f64 (fma.f64 x 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (log.f64 z) 2) (*.f64 z z)) y) (+.f64 z (log.f64 z)))) y)
Compiler

Compiled 7606 to 3267 computations (57% saved)

regimes1.2s (14.8%)

Accuracy

Total 0.1b remaining (79%)

Threshold costs 0.1b (79%)

Counts
162 → 1
Compiler

Compiled 19309 to 12638 computations (34.5% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01114
11414
21814
32014
42114
52114

end466.0ms (5.7%)

Compiler

Compiled 176 to 109 computations (38.1% saved)

Profiling

Loading profile data...