Details

Time bar (total: 2.5s)

analyze73.0ms (2.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%74.9%25.1%4
12.5%62.4%25.1%5
31.2%31.2%37.6%6
37.5%25%37.6%7
40.6%15.6%43.8%8
42.9%11.7%45.4%9
44.1%7.4%48.5%10
45.1%5.7%49.3%11
45.6%3.6%50.8%12
46%2.8%51.2%13
46.2%1.8%52%14
Compiler

Compiled 17 to 14 computations (17.6% saved)

sample989.0ms (39.2%)

Results
901.0ms8256×body128valid
25.0ms254×body128invalid
Compiler

Compiled 50 to 41 computations (18% saved)

simplify36.0ms (1.4%)

Algorithm
egg-herbie
Rules
892×fma-def_binary64
453×fma-neg_binary64
318×cancel-sign-sub-inv_binary64
251×distribute-rgt-neg-in_binary64
168×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01321
12818
26918
319416
440216
558616
6116416
7252716
8428116
9490516
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.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.5b
(*.f64 (sqrt.f64 x) (+.f64 (/.f64 1/3 x) (fma.f64 3 y -3)))
Compiler

Compiled 85 to 66 computations (22.4% saved)

localize11.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 y (/.f64 1 (*.f64 x 9)))
0.2b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.2b
(/.f64 1 (*.f64 x 9))
0.3b
(*.f64 3 (sqrt.f64 x))

series31.0ms (1.2%)

Counts
4 → 48
Calls

4 calls:

21.0ms
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
5.0ms
(*.f64 3 (sqrt.f64 x))
4.0ms
(+.f64 y (/.f64 1 (*.f64 x 9)))
1.0ms
(/.f64 1 (*.f64 x 9))

rewrite58.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
620×prod-diff_binary64
226×log1p-udef_binary64
134×add-sqr-sqrt_binary64
130×add-cbrt-cube_binary64
130×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01344
128335
2370735
Stop Event
node limit
Counts
4 → 102
Calls

4 calls:

56.0ms
(+.f64 y (/.f64 1 (*.f64 x 9)))
56.0ms
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
56.0ms
(/.f64 1 (*.f64 x 9))
56.0ms
(*.f64 3 (sqrt.f64 x))

simplify68.0ms (2.7%)

Algorithm
egg-herbie
Rules
985×fma-def_binary64
636×fma-neg_binary64
234×distribute-rgt-in_binary64
221×distribute-rgt-neg-in_binary64
202×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
024453
157408
2117387
3222387
4441387
5785387
61535387
72724387
83683387
94025387
104790387
114790387
Stop Event
node limit
Counts
150 → 113

prune99.0ms (3.9%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New10310113
Fresh101
Picked011
Done000
Total10411115
Error
0b
Counts
115 → 11
Alt Table
StatusErrorProgram
25.9b
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 2)
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
0.6b
(pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 1)
28.4b
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 (/.f64 1/9 x) y) 2) -1) (sqrt.f64 (/.f64 x 1/9))) (+.f64 1 (+.f64 (/.f64 1/9 x) y)))
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
4.6b
(*.f64 (exp.f64 (log.f64 (sqrt.f64 (/.f64 x 1/9)))) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.6b
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 x 1/9))) 2) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
34.6b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 3))
Compiler

Compiled 2332 to 1737 computations (25.5% saved)

localize10.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 x 1/9))
0.2b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.2b
(/.f64 1 (*.f64 x 9))
0.3b
(/.f64 x 1/9)

series24.0ms (1%)

Counts
3 → 24
Calls

3 calls:

18.0ms
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
4.0ms
(sqrt.f64 (/.f64 x 1/9))
1.0ms
(/.f64 x 1/9)

rewrite60.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
639×prod-diff_binary64
218×log1p-udef_binary64
127×add-sqr-sqrt_binary64
126×add-cbrt-cube_binary64
126×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01331
129528
2363828
Stop Event
node limit
Counts
3 → 93
Calls

3 calls:

59.0ms
(sqrt.f64 (/.f64 x 1/9))
59.0ms
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
59.0ms
(/.f64 x 1/9)

simplify48.0ms (1.9%)

Algorithm
egg-herbie
Rules
949×fma-neg_binary64
618×fma-def_binary64
221×distribute-rgt-neg-in_binary64
192×associate-/l*_binary64
188×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
024315
158270
2116249
3221249
4439249
5778249
61523249
72714249
83669249
94422249
Stop Event
node limit
Counts
117 → 100

prune117.0ms (4.6%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1233126
Fresh369
Picked011
Done101
Total12710137
Error
0b
Counts
137 → 10
Alt Table
StatusErrorProgram
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
25.6b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 3 (sqrt.f64 x)) (+.f64 y (+.f64 (/.f64 1/9 x) -1)))) 2)
0.6b
(pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 1)
28.4b
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 (/.f64 1/9 x) y) 2) -1) (sqrt.f64 (/.f64 x 1/9))) (+.f64 1 (+.f64 (/.f64 1/9 x) y)))
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
34.6b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 3))
Compiler

Compiled 2494 to 1921 computations (23% saved)

localize8.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 y (/.f64 1 (*.f64 x 9)))
0.1b
(sqrt.f64 (*.f64 9 x))
0.2b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.2b
(/.f64 1 (*.f64 x 9))

series30.0ms (1.2%)

Counts
2 → 12
Calls

2 calls:

25.0ms
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
4.0ms
(sqrt.f64 (*.f64 9 x))

rewrite48.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
620×prod-diff_binary64
201×log1p-udef_binary64
200×expm1-udef_binary64
117×add-sqr-sqrt_binary64
114×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01227
126524
2328024
Stop Event
node limit
Counts
2 → 50
Calls

2 calls:

47.0ms
(sqrt.f64 (*.f64 9 x))
47.0ms
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))

simplify45.0ms (1.8%)

Algorithm
egg-herbie
Rules
953×fma-neg_binary64
618×fma-def_binary64
230×distribute-rgt-in_binary64
221×distribute-rgt-neg-in_binary64
201×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
022267
155222
2113201
3218201
4436201
5779201
61524201
72722201
83671201
94312201
Stop Event
node limit
Counts
62 → 57

prune116.0ms (4.6%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1250125
Fresh088
Picked011
Done011
Total12510135
Error
0b
Counts
135 → 10
Alt Table
StatusErrorProgram
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
25.6b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 3 (sqrt.f64 x)) (+.f64 y (+.f64 (/.f64 1/9 x) -1)))) 2)
0.6b
(pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 1)
28.4b
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 (/.f64 1/9 x) y) 2) -1) (sqrt.f64 (/.f64 x 1/9))) (+.f64 1 (+.f64 (/.f64 1/9 x) y)))
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
34.6b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 3))
Compiler

Compiled 2496 to 1945 computations (22.1% saved)

localize9.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.2b
(/.f64 1 (*.f64 x 9))
0.3b
(pow.f64 (/.f64 1/9 x) -1)
0.4b
(/.f64 1/9 x)

series23.0ms (0.9%)

Counts
3 → 24
Calls

3 calls:

18.0ms
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
4.0ms
(pow.f64 (/.f64 1/9 x) -1)
1.0ms
(/.f64 1/9 x)

rewrite57.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
726×prod-diff_binary64
150×log1p-expm1-u_binary64
150×expm1-log1p-u_binary64
148×add-cbrt-cube_binary64
147×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01533
133126
2419526
Stop Event
node limit
Counts
3 → 90
Calls

3 calls:

56.0ms
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
56.0ms
(pow.f64 (/.f64 1/9 x) -1)
56.0ms
(/.f64 1/9 x)

simplify50.0ms (2%)

Algorithm
egg-herbie
Rules
949×fma-neg_binary64
618×fma-def_binary64
221×distribute-rgt-neg-in_binary64
192×associate-/l*_binary64
188×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
024315
158270
2116249
3221249
4439249
5778249
61523249
72714249
83669249
94422249
Stop Event
node limit
Counts
114 → 97

prune102.0ms (4%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New1230123
Fresh077
Picked011
Done022
Total12310133
Error
0b
Counts
133 → 10
Alt Table
StatusErrorProgram
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
25.6b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 3 (sqrt.f64 x)) (+.f64 y (+.f64 (/.f64 1/9 x) -1)))) 2)
0.6b
(pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 1)
28.4b
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 (/.f64 1/9 x) y) 2) -1) (sqrt.f64 (/.f64 x 1/9))) (+.f64 1 (+.f64 (/.f64 1/9 x) y)))
0.4b
(*.f64 (*.f64 3 (sqrt.f64 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
0.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
34.6b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1)))) 3))
Compiler

Compiled 2414 to 1890 computations (21.7% saved)

regimes273.0ms (10.8%)

Accuracy

Total 0.4b remaining (93.9%)

Threshold costs 0.4b (93.9%)

Counts
91 → 1
Compiler

Compiled 4436 to 3592 computations (19% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01221
12021
22121
Stop Event
saturated

end133.0ms (5.3%)

Compiler

Compiled 210 to 170 computations (19% saved)

Profiling

Loading profile data...