Details

Time bar (total: 2.9s)

analyze83.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
25%74.9%0.1%3
25%62.4%12.6%4
37.5%43.7%18.8%5
37.5%34.3%28.2%6
43.7%23.4%32.9%7
43.7%18%38.3%8
46.8%12.1%41.1%9
46.8%9.2%44%10
48.4%6.1%45.5%11
48.4%4.6%47%12
49.2%3.1%47.7%13
49.2%2.3%48.5%14
Compiler

Compiled 7 to 5 computations (28.6% saved)

sample33.0ms (1.2%)

Algorithm
intervals
Symmetry

(sort x y)

Results
7.0ms256×body128valid
0.0ms19×body128nan
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
166
266

prune1.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
(sqrt.f64 (+.f64 x y))
Compiler

Compiled 18 to 12 computations (33.3% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 x y))

series20.0ms (0.7%)

Counts
1 → 8
Calls

1 calls:

20.0ms
(sqrt.f64 (+.f64 x y))

rewrite3.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
sqrt-prod_binary64
sqrt-div_binary64
add-cube-cbrt_binary64
Counts
1 → 19
Calls

1 calls:

3.0ms
(sqrt.f64 (+.f64 x y))

simplify66.0ms (2.3%)

Algorithm
egg-herbie
Rules
917×fma-neg_binary64
656×associate-*l*_binary64
406×distribute-rgt-neg-in_binary64
392×distribute-lft-neg-in_binary64
370×hypot-def_binary64
Counts
27 → 41
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
080388
1187383
2446375
31235372
42724370
54709370
64967370

prune23.0ms (0.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New39241
Fresh000
Picked011
Done000
Total39342
Error
0.0b
Counts
42 → 3
Alt Table
StatusErrorProgram
0.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
0.0b
(sqrt.f64 (+.f64 x y))
0.8b
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
Compiler

Compiled 584 to 326 computations (44.2% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
0.1b
(sqrt.f64 (/.f64 1 y))
0.2b
(*.f64 (sqrt.f64 (/.f64 1 y)) x)

series39.0ms (1.4%)

Counts
3 → 12
Calls

3 calls:

19.0ms
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
14.0ms
(*.f64 (sqrt.f64 (/.f64 1 y)) x)
5.0ms
(sqrt.f64 (/.f64 1 y))

rewrite15.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
32×add-sqr-sqrt_binary64
29×sqrt-prod_binary64
22×times-frac_binary64
21×*-un-lft-identity_binary64
19×add-cube-cbrt_binary64
Counts
3 → 77
Calls

3 calls:

6.0ms
(*.f64 (sqrt.f64 (/.f64 1 y)) x)
5.0ms
(sqrt.f64 (/.f64 1 y))
0.0ms
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))

simplify94.0ms (3.3%)

Algorithm
egg-herbie
Rules
883×fma-def_binary64
585×times-frac_binary64
466×distribute-rgt-in_binary64
458×distribute-lft-in_binary64
297×associate-*l*_binary64
Counts
89 → 93
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0801114
11201062
22801062
34421062
410371062
531641062
647431062
749451062

prune63.0ms (2.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New93093
Fresh011
Picked011
Done011
Total93396
Error
0.0b
Counts
96 → 3
Alt Table
StatusErrorProgram
0.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
0.0b
(sqrt.f64 (+.f64 x y))
0.8b
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
Compiler

Compiled 1571 to 1021 computations (35% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (cbrt.f64 (+.f64 y x)))
0.3b
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
0.5b
(cbrt.f64 (+.f64 y x))

series109.0ms (3.8%)

Counts
3 → 72
Calls

3 calls:

65.0ms
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
22.0ms
(sqrt.f64 (cbrt.f64 (+.f64 y x)))
22.0ms
(cbrt.f64 (+.f64 y x))

rewrite28.0ms (1%)

Algorithm
rewrite-expression-head
Rules
49×add-sqr-sqrt_binary64
30×cbrt-prod_binary64
24×sqrt-prod_binary64
20×*-un-lft-identity_binary64
16×cbrt-div_binary64
Counts
3 → 100
Calls

3 calls:

15.0ms
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
3.0ms
(sqrt.f64 (cbrt.f64 (+.f64 y x)))
2.0ms
(cbrt.f64 (+.f64 y x))

simplify182.0ms (6.3%)

Algorithm
egg-herbie
Rules
351×fma-neg_binary64
340×associate-*r*_binary64
339×cancel-sign-sub-inv_binary64
288×associate-/r/_binary64
261×associate-*l*_binary64
Counts
172 → 238
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03365529
19055131
229264485
348064291
449974291
549394291

prune206.0ms (7.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New2941295
Fresh000
Picked011
Done022
Total2944298
Error
0b
Counts
298 → 4
Alt Table
StatusErrorProgram
1.0b
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x)))))
0.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
0.0b
(sqrt.f64 (+.f64 x y))
0.8b
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
Compiler

Compiled 7576 to 3480 computations (54.1% saved)

localize10.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (cbrt.f64 (+.f64 y x)))
0.3b
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x)))))
0.5b
(cbrt.f64 (+.f64 y x))
0.5b
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))

series44.0ms (1.5%)

Counts
2 → 32
Calls

2 calls:

22.0ms
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
22.0ms
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x)))))

rewrite59.0ms (2.1%)

Algorithm
rewrite-expression-head
Rules
78×add-sqr-sqrt_binary64
66×sqrt-div_binary64
66×cbrt-div_binary64
55×sqrt-prod_binary64
52×pow1_binary64
Counts
2 → 175
Calls

2 calls:

20.0ms
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x)))))
11.0ms
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))

simplify130.0ms (4.5%)

Algorithm
egg-herbie
Rules
549×fma-def_binary64
348×times-frac_binary64
253×associate-*r*_binary64
247×associate-/l*_binary64
203×unswap-sqr_binary64
Counts
207 → 265
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02873920
16233748
218703440
346913325
449333325

prune1.0s (35.8%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New6250625
Fresh000
Picked011
Done033
Total6254629
Error
0b
Counts
629 → 4
Alt Table
StatusErrorProgram
1.0b
(*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (*.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x)))))
0.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (sqrt.f64 y))
0.0b
(sqrt.f64 (+.f64 x y))
0.8b
(*.f64 (fabs.f64 (cbrt.f64 (+.f64 y x))) (sqrt.f64 (cbrt.f64 (+.f64 y x))))
Compiler

Compiled 17911 to 6697 computations (62.6% saved)

regimes132.0ms (4.6%)

Accuracy

Total 0.0b remaining (33.3%)

Threshold costs 0.0b (33.3%)

Counts
28 → 1
Compiler

Compiled 1510 to 930 computations (38.4% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
166
266

end8.0ms (0.3%)

Remove

(sort x y)

Compiler

Compiled 18 to 12 computations (33.3% saved)

sample469.0ms (16.3%)

Algorithm
intervals
Results
211.0ms8000×body128valid
9.0ms230×body128nan
Compiler

Compiled 65 to 38 computations (41.5% saved)

Profiling

Loading profile data...