Details

Time bar (total: 2.6s)

analyze70.0ms (2.7%)

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)

sample995.0ms (38.2%)

Results
915.0ms8256×body128valid
28.0ms254×body128invalid
Compiler

Compiled 50 to 41 computations (18% saved)

simplify39.0ms (1.5%)

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)

localize8.0ms (0.3%)

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))

series35.0ms (1.3%)

Counts
4 → 48
Calls

4 calls:

24.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))

rewrite59.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:

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

simplify65.0ms (2.5%)

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

prune102.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))
2.2b
(*.f64 (expm1.f64 (log1p.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)

localize8.0ms (0.3%)

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)

series26.0ms (1%)

Counts
3 → 24
Calls

3 calls:

20.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)

rewrite55.0ms (2.1%)

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:

54.0ms
(sqrt.f64 (/.f64 x 1/9))
54.0ms
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
54.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

prune126.0ms (4.8%)

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)
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
25.9b
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 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.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 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 (/.f64 x 1/9)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.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))

series25.0ms (1%)

Counts
2 → 12
Calls

2 calls:

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

rewrite45.0ms (1.7%)

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:

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

simplify45.0ms (1.7%)

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

prune107.0ms (4.1%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1241125
Fresh178
Picked101
Done011
Total1269135
Error
0b
Counts
135 → 9
Alt Table
StatusErrorProgram
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
25.9b
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 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.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.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 2480 to 1932 computations (22.1% saved)

localize9.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

series35.0ms (1.3%)

Counts
4 → 12
Calls

4 calls:

20.0ms
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
8.0ms
(pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)
6.0ms
(sqrt.f64 (/.f64 1/9 x))
1.0ms
(/.f64 1/9 x)

rewrite57.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
770×prod-diff_binary64
141×log1p-expm1-u_binary64
141×expm1-log1p-u_binary64
140×add-sqr-sqrt_binary64
138×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01532
133132
2388632
Stop Event
node limit
Counts
4 → 112
Calls

4 calls:

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

simplify46.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
124 → 98

prune89.0ms (3.4%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New98098
Fresh077
Picked011
Done011
Total989107
Error
0b
Counts
107 → 9
Alt Table
StatusErrorProgram
1.4b
(pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 1))))) 3)
0.4b
(*.f64 (sqrt.f64 (pow.f64 (/.f64 1/9 x) -1)) (-.f64 (+.f64 y (/.f64 1 (*.f64 x 9))) 1))
25.9b
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 3 (+.f64 (/.f64 1/9 x) (-.f64 y 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.6b
(-.f64 (+.f64 (*.f64 3 (*.f64 y (sqrt.f64 x))) (*.f64 1/3 (sqrt.f64 (/.f64 1 x)))) (*.f64 3 (sqrt.f64 x)))
0.3b
(*.f64 (sqrt.f64 (*.f64 9 x)) (-.f64 (+.f64 y (pow.f64 (sqrt.f64 (/.f64 1/9 x)) 2)) 1))
0.3b
(*.f64 (sqrt.f64 (/.f64 x 1/9)) (-.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 1831 to 1396 computations (23.8% saved)

regimes364.0ms (14%)

Accuracy

Total 0.4b remaining (93.5%)

Threshold costs 0.4b (93.5%)

Counts
122 → 1
Compiler

Compiled 6026 to 4876 computations (19.1% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01421
12821
23621
33921
44021
Stop Event
saturated

end130.0ms (5%)

Compiler

Compiled 194 to 157 computations (19.1% saved)

Profiling

Loading profile data...