Details

Time bar (total: 5.6s)

analyze1.6s (29.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
0%99.8%0.2%10
0%99.8%0.2%11
0%99.8%0.2%12
3.7%96.1%0.2%13
4.2%94.5%1.3%14
Compiler

Compiled 22 to 16 computations (27.3% saved)

sample1.6s (29.1%)

Results
1.1s8256×body128valid
442.0ms2536×body128invalid
Compiler

Compiled 65 to 47 computations (27.7% saved)

simplify26.0ms (0.5%)

Algorithm
egg-herbie
Rules
669×fma-neg_binary64
614×times-frac_binary64
399×div-sub_binary64
329×cancel-sign-sub-inv_binary64
299×fma-def_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01525
12823
25623
312121
428321
553921
6117220
7346920
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
12.1b
(+.f64 (/.f64 x y) (/.f64 (+.f64 2 (*.f64 (*.f64 z 2) (-.f64 1 t))) (*.f64 t z)))
7.1b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2))
Compiler

Compiled 113 to 79 computations (30.1% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2))
0.0b
(/.f64 (+.f64 z 1) t)
6.7b
(fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2)

series44.0ms (0.8%)

Counts
3 → 96
Calls

3 calls:

28.0ms
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2))
10.0ms
(fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2)
5.0ms
(/.f64 (+.f64 z 1) t)

rewrite65.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
273×log1p-udef_binary64
272×expm1-udef_binary64
154×add-sqr-sqrt_binary64
148×log1p-expm1-u_binary64
148×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01441
131041
2421041
Stop Event
node limit
Counts
3 → 92
Calls

3 calls:

63.0ms
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2))
63.0ms
(/.f64 (+.f64 z 1) t)
63.0ms
(fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2)

simplify94.0ms (1.7%)

Algorithm
egg-herbie
Rules
1038×fma-neg_binary64
497×fma-def_binary64
240×associate-/r*_binary64
211×div-sub_binary64
207×sub-neg_binary64
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
0321452
1691452
21191452
31611452
42251281
54271281
68231281
718781281
834891218
946051218
1049171218
Stop Event
node limit
Counts
188 → 113

prune125.0ms (2.2%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1076113
Fresh101
Picked101
Done000
Total1096115
Error
0.0b
Counts
115 → 6
Alt Table
StatusErrorProgram
7.5b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (*.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) (pow.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) 2)) -2))
0.0b
(+.f64 (/.f64 x y) (-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2))
7.5b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (*.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 z 1)) 2) (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 (/.f64 (+.f64 z 1) t))) -2))
27.4b
(+.f64 (/.f64 x y) (/.f64 (/.f64 2 t) z))
7.2b
(fma.f64 x (/.f64 1 y) (fma.f64 (/.f64 2 z) (/.f64 (+.f64 z 1) t) -2))
33.6b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (pow.f64 (sqrt.f64 (/.f64 (+.f64 z 1) t)) 2) -2))
Compiler

Compiled 2577 to 1671 computations (35.2% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2)
0.0b
(*.f64 2 (/.f64 1 (*.f64 t z)))
0.0b
(+.f64 (/.f64 x y) (-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2))
0.3b
(/.f64 1 (*.f64 t z))

series58.0ms (1%)

Counts
4 → 78
Calls

4 calls:

32.0ms
(+.f64 (/.f64 x y) (-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2))
10.0ms
(-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2)
8.0ms
(/.f64 1 (*.f64 t z))
8.0ms
(*.f64 2 (/.f64 1 (*.f64 t z)))

rewrite53.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
184×add-sqr-sqrt_binary64
176×log1p-expm1-u_binary64
176×expm1-log1p-u_binary64
175×add-cbrt-cube_binary64
170×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01652
137052
Stop Event
node limit
Counts
4 → 142
Calls

4 calls:

49.0ms
(-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2)
49.0ms
(*.f64 2 (/.f64 1 (*.f64 t z)))
49.0ms
(+.f64 (/.f64 x y) (-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (/.f64 1 (*.f64 t z)))) 2))
49.0ms
(/.f64 1 (*.f64 t z))

simplify136.0ms (2.4%)

Algorithm
egg-herbie
Rules
960×fma-neg_binary64
724×fma-def_binary64
188×sub-neg_binary64
152×cancel-sign-sub-inv_binary64
126×cancel-sign-sub_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0281110
1631110
21131110
31551110
4219993
5419993
6815993
71752993
82975993
93781993
104125993
114207993
124252993
134262993
144539993
154544993
164544993
Stop Event
saturated
Counts
220 → 156

prune155.0ms (2.8%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1533156
Fresh325
Picked101
Done000
Total1575162
Error
0b
Counts
162 → 5
Alt Table
StatusErrorProgram
7.5b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (*.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) (pow.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) 2)) -2))
0.1b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
29.6b
(+.f64 (/.f64 x y) (-.f64 (+.f64 (*.f64 2 (/.f64 1 t)) (*.f64 2 (*.f64 (/.f64 (pow.f64 t -1/2) 1) (/.f64 (pow.f64 t -1/2) z)))) 2))
33.6b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (pow.f64 (sqrt.f64 (/.f64 (+.f64 z 1) t)) 2) -2))
0.1b
(fma.f64 x (/.f64 1 y) (+.f64 (/.f64 2 t) (+.f64 (/.f64 2 (*.f64 t z)) -2)))
Compiler

Compiled 4321 to 2766 computations (36% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
0.0b
(fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2)
0.2b
(/.f64 (pow.f64 t -1) z)

series46.0ms (0.8%)

Counts
3 → 96
Calls

3 calls:

30.0ms
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
9.0ms
(fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2)
7.0ms
(/.f64 (pow.f64 t -1) z)

rewrite64.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
277×expm1-udef_binary64
277×log1p-udef_binary64
156×add-sqr-sqrt_binary64
151×log1p-expm1-u_binary64
151×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01447
131247
2433247
Stop Event
node limit
Counts
3 → 91
Calls

3 calls:

62.0ms
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
62.0ms
(fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2)
62.0ms
(/.f64 (pow.f64 t -1) z)

simplify167.0ms (3%)

Algorithm
egg-herbie
Rules
965×fma-neg_binary64
731×fma-def_binary64
188×sub-neg_binary64
152×cancel-sign-sub-inv_binary64
129×cancel-sign-sub_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0281398
1631398
21131398
31551398
42191227
54191227
68131227
717501227
829851227
937981227
1041661227
1142481227
1242931227
1343031227
1445801227
1545851227
1645851227
Stop Event
saturated
Counts
187 → 107

prune93.0ms (1.7%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1061107
Fresh134
Picked011
Done000
Total1075112
Error
0b
Counts
112 → 5
Alt Table
StatusErrorProgram
29.6b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (*.f64 (/.f64 (pow.f64 t -1/2) 1) (/.f64 (pow.f64 t -1/2) z))) -2))
7.5b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (*.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) (pow.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) 2)) -2))
0.1b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
33.6b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (pow.f64 (sqrt.f64 (/.f64 (+.f64 z 1) t)) 2) -2))
0.1b
(fma.f64 x (/.f64 1 y) (+.f64 (/.f64 2 t) (+.f64 (/.f64 2 (*.f64 t z)) -2)))
Compiler

Compiled 2666 to 1805 computations (32.3% saved)

localize12.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series48.0ms (0.9%)

Counts
3 → 72
Calls

3 calls:

35.0ms
(fma.f64 x (/.f64 1 y) (+.f64 (/.f64 2 t) (+.f64 (/.f64 2 (*.f64 t z)) -2)))
8.0ms
(/.f64 2 (*.f64 t z))
6.0ms
(+.f64 (/.f64 2 (*.f64 t z)) -2)

rewrite68.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
291×log1p-udef_binary64
164×add-sqr-sqrt_binary64
156×log1p-expm1-u_binary64
156×expm1-log1p-u_binary64
155×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01540
133239
2453739
Stop Event
node limit
Counts
3 → 91
Calls

3 calls:

66.0ms
(+.f64 (/.f64 2 (*.f64 t z)) -2)
66.0ms
(fma.f64 x (/.f64 1 y) (+.f64 (/.f64 2 t) (+.f64 (/.f64 2 (*.f64 t z)) -2)))
66.0ms
(/.f64 2 (*.f64 t z))

simplify137.0ms (2.5%)

Algorithm
egg-herbie
Rules
961×fma-neg_binary64
731×fma-def_binary64
187×sub-neg_binary64
152×cancel-sign-sub-inv_binary64
125×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0281107
1621107
21141107
31621107
4226990
5426990
6821990
71757990
82985990
93795990
104156990
114238990
124283990
134293990
144570990
154575990
164575990
Stop Event
saturated
Counts
163 → 106

prune91.0ms (1.6%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1060106
Fresh033
Picked011
Done011
Total1065111
Error
0b
Counts
111 → 5
Alt Table
StatusErrorProgram
29.6b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (*.f64 (/.f64 (pow.f64 t -1/2) 1) (/.f64 (pow.f64 t -1/2) z))) -2))
7.5b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (*.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) (pow.f64 (cbrt.f64 (/.f64 (+.f64 z 1) t)) 2)) -2))
0.1b
(+.f64 (/.f64 x y) (fma.f64 2 (+.f64 (pow.f64 t -1) (/.f64 (pow.f64 t -1) z)) -2))
33.6b
(+.f64 (/.f64 x y) (fma.f64 (/.f64 2 z) (pow.f64 (sqrt.f64 (/.f64 (+.f64 z 1) t)) 2) -2))
0.1b
(fma.f64 x (/.f64 1 y) (+.f64 (/.f64 2 t) (+.f64 (/.f64 2 (*.f64 t z)) -2)))
Compiler

Compiled 2297 to 1603 computations (30.2% saved)

regimes675.0ms (12.1%)

Accuracy

Total 0.1b remaining (73.3%)

Threshold costs 0.1b (73.3%)

Counts
92 → 1
Compiler

Compiled 13601 to 10182 computations (25.1% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01523
11823
Stop Event
saturated

end107.0ms (1.9%)

Compiler

Compiled 155 to 117 computations (24.5% saved)

Profiling

Loading profile data...