Details

Time bar (total: 4.6s)

analyze82.0ms (1.8%)

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%99.9%0.1%4
37.5%62.4%0.1%5
43.7%56.2%0.1%6
71.8%28.1%0.1%7
73.4%25%1.7%8
80.4%16.4%3.2%9
80.8%14%5.2%10
84.1%8.8%7.1%11
84.2%7.4%8.4%12
85.8%4.5%9.7%13
85.8%3.8%10.4%14
Compiler

Compiled 10 to 7 computations (30% saved)

sample761.0ms (16.7%)

Results
710.0ms8256×body128valid
15.0ms193×body128invalid
Compiler

Compiled 29 to 20 computations (31% saved)

simplify11.0ms (0.3%)

Algorithm
egg-herbie
Rules
39×fma-neg_binary64
17×sub-neg_binary64
17×fma-def_binary64
16×cancel-sign-sub-inv_binary64
associate-/l*_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11111
21811
32711
44311
57711
68911
711211
813611
915911
1016711
1116111
1214411

prune1.0ms (0%)

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
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Compiler

Compiled 27 to 18 computations (33.3% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))

series17.0ms (0.4%)

Counts
1 → 0
Calls

1 calls:

17.0ms
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))

rewrite17.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
71×add-sqr-sqrt_binary64
70×fabs-mul_binary64
63×times-frac_binary64
53×*-un-lft-identity_binary64
37×add-cube-cbrt_binary64
Counts
1 → 96
Calls

1 calls:

6.0ms
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))

simplify90.0ms (2%)

Algorithm
egg-herbie
Rules
901×div-sub_binary64
444×associate-/l/_binary64
439×times-frac_binary64
383×associate-/l*_binary64
382×fma-def_binary64
Counts
96 → 112
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01472173
12222127
24912127
310852127
427142127
551672127

prune69.0ms (1.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1093112
Fresh000
Picked011
Done000
Total1094113
Error
0b
Counts
113 → 4
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y))))
0.0b
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
0.6b
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
0.6b
(*.f64 (/.f64 1 (sqrt.f64 (fabs.f64 y))) (/.f64 (fabs.f64 (-.f64 x y)) (sqrt.f64 (fabs.f64 y))))
Compiler

Compiled 2070 to 421 computations (79.7% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y)))
0.1b
(/.f64 1 (/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y))))

series65.0ms (1.4%)

Counts
2 → 24
Calls

2 calls:

44.0ms
(/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y)))
20.0ms
(/.f64 1 (/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y))))

rewrite108.0ms (2.4%)

Algorithm
rewrite-expression-head
Rules
522×times-frac_binary64
394×add-sqr-sqrt_binary64
318×fabs-mul_binary64
312×*-un-lft-identity_binary64
240×add-cube-cbrt_binary64
Counts
2 → 398
Calls

2 calls:

21.0ms
(/.f64 1 (/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y))))
6.0ms
(/.f64 (fabs.f64 y) (fabs.f64 (-.f64 x y)))

simplify368.0ms (8.1%)

Algorithm
egg-herbie
Rules
882×fma-def_binary64
447×times-frac_binary64
356×associate-/r/_binary64
302×associate-/r*_binary64
275×associate-/l*_binary64
Counts
422 → 482
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
026110334
14479455
211759242
329969242
441659242
554409242

prune240.0ms (5.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New4811482
Fresh112
Picked101
Done011
Total4833486
Error
0b
Counts
486 → 3
Alt Table
StatusErrorProgram
0.2b
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))
0.0b
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
0.6b
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
Compiler

Compiled 10437 to 2827 computations (72.9% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (fabs.f64 (-.f64 x y)))
0.1b
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))

series38.0ms (0.8%)

Counts
2 → 24
Calls

2 calls:

20.0ms
(/.f64 1 (fabs.f64 (-.f64 x y)))
17.0ms
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))

rewrite227.0ms (5%)

Algorithm
rewrite-expression-head
Rules
2268×times-frac_binary64
1260×add-sqr-sqrt_binary64
1076×*-un-lft-identity_binary64
912×add-cube-cbrt_binary64
716×fabs-mul_binary64
Counts
2 → 976
Calls

2 calls:

27.0ms
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))
5.0ms
(/.f64 1 (fabs.f64 (-.f64 x y)))

simplify1.1s (23.2%)

Algorithm
egg-herbie
Rules
680×fma-def_binary64
582×associate-*l/_binary64
448×*-commutative_binary64
394×associate-/r/_binary64
302×associate-/l/_binary64
Counts
1000 → 975
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
030429700
181026610
2216325971
3280925971
4377325971
5480425971
6529825971

prune566.0ms (12.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New9750975
Fresh011
Picked011
Done011
Total9753978
Error
0b
Counts
978 → 3
Alt Table
StatusErrorProgram
0.2b
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))
0.0b
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
0.6b
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
Compiler

Compiled 27515 to 13499 computations (50.9% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (fabs.f64 (-.f64 x y)))
0.3b
(/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))
0.3b
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))

series40.0ms (0.9%)

Counts
3 → 48
Calls

3 calls:

20.0ms
(/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))
15.0ms
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
5.0ms
(sqrt.f64 (fabs.f64 (-.f64 x y)))

rewrite90.0ms (2%)

Algorithm
rewrite-expression-head
Rules
356×add-sqr-sqrt_binary64
228×sqrt-prod_binary64
216×times-frac_binary64
209×fabs-mul_binary64
138×*-un-lft-identity_binary64
Counts
3 → 328
Calls

3 calls:

30.0ms
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
8.0ms
(/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))
3.0ms
(sqrt.f64 (fabs.f64 (-.f64 x y)))

simplify330.0ms (7.2%)

Algorithm
egg-herbie
Rules
628×fma-def_binary64
595×times-frac_binary64
380×associate-/r/_binary64
282×*-commutative_binary64
250×unswap-sqr_binary64
Counts
376 → 417
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
030910082
16338256
219447024
321017024
432907024
546227024
649867024
749247024

prune156.0ms (3.4%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New4510451
Fresh000
Picked011
Done022
Total4513454
Error
0b
Counts
454 → 3
Alt Table
StatusErrorProgram
0.2b
(/.f64 (/.f64 1 (fabs.f64 y)) (/.f64 1 (fabs.f64 (-.f64 x y))))
0.0b
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
0.6b
(*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)))
Compiler

Compiled 10823 to 1541 computations (85.8% saved)

regimes151.0ms (3.3%)

Accuracy

Total 0.0b remaining (66.4%)

Threshold costs 0.0b (66.4%)

Counts
58 → 1
Compiler

Compiled 2588 to 1721 computations (33.5% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
1119
2189
3229
4269
5289
6299
7299

end46.0ms (1%)

Compiler

Compiled 54 to 34 computations (37% saved)

Profiling

Loading profile data...