Details

Time bar (total: 2.5s)

analyze123.0ms (4.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%99.9%0.1%4
25%74.9%0.1%5
37.5%62.4%0.1%6
50%37.5%12.6%7
56.2%31.2%12.6%8
62.4%18.7%18.8%9
65.6%15.6%18.8%10
68.7%9.4%22%11
70.2%7.8%22%12
71.8%4.7%23.5%13
72.6%3.9%23.5%14
Compiler

Compiled 10 to 7 computations (30% saved)

sample63.0ms (2.5%)

Algorithm
intervals
Results
8.0ms256×body128valid
0.0msbody128invalid
Compiler

Compiled 21 to 15 computations (28.6% saved)

simplify25.0ms (1%)

Algorithm
egg-herbie
Rules
601×fma-def_binary64
148×fma-neg_binary64
84×distribute-rgt-in_binary64
50×distribute-lft-in_binary64
50×cancel-sign-sub-inv_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11510
23710
37110
414810
521110
629710
752610
856010
955910
1059510
1154410

prune1.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
Compiler

Compiled 27 to 18 computations (33.3% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))

series7.0ms (0.3%)

Counts
1 → 24
Calls

1 calls:

7.0ms
(*.f64 (*.f64 x y) (-.f64 1 y))

rewrite13.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
19×*-un-lft-identity_binary64
19×add-sqr-sqrt_binary64
18×prod-diff_binary64
16×add-cube-cbrt_binary64
13×distribute-lft-in_binary64
Counts
1 → 51
Calls

1 calls:

10.0ms
(*.f64 (*.f64 x y) (-.f64 1 y))

simplify105.0ms (4.2%)

Algorithm
egg-herbie
Rules
911×fma-neg_binary64
433×exp-prod_binary64
400×*-commutative_binary64
343×fma-def_binary64
288×associate-+r+_binary64
Counts
75 → 73
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081085
1223985
2948871
32323814
44186814
54991814
64915814
74901814

prune55.0ms (2.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New69473
Fresh000
Picked011
Done000
Total69574
Error
0.0b
Counts
74 → 5
Alt Table
StatusErrorProgram
11.7b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.5b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
36.5b
(*.f64 (*.f64 (*.f64 x y) (+.f64 1 (sqrt.f64 y))) (-.f64 1 (sqrt.f64 y)))
6.1b
(*.f64 (-.f64 y (pow.f64 y 2)) x)
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
Compiler

Compiled 1406 to 606 computations (56.9% saved)

localize7.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
0.2b
(cbrt.f64 (-.f64 1 y))
0.2b
(*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
0.2b
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))

series365.0ms (14.6%)

Counts
4 → 72
Calls

4 calls:

348.0ms
(*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
7.0ms
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
5.0ms
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))
4.0ms
(cbrt.f64 (-.f64 1 y))

rewrite59.0ms (2.4%)

Algorithm
rewrite-expression-head
Rules
80×cbrt-div_binary64
44×associate-*r/_binary64
44×cbrt-prod_binary64
41×add-sqr-sqrt_binary64
41×pow1_binary64
Counts
4 → 172
Calls

4 calls:

17.0ms
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
11.0ms
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))
10.0ms
(*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
2.0ms
(cbrt.f64 (-.f64 1 y))

simplify150.0ms (6%)

Algorithm
egg-herbie
Rules
758×fma-def_binary64
549×associate-*l*_binary64
390×associate-*r*_binary64
385×fma-neg_binary64
325×cancel-sign-sub-inv_binary64
Counts
244 → 289
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03005321
17604846
225524532
345534491
449844491

prune336.0ms (13.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New3752377
Fresh033
Picked011
Done011
Total3757382
Error
0b
Counts
382 → 7
Alt Table
StatusErrorProgram
36.7b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (*.f64 (cbrt.f64 (+.f64 1 (sqrt.f64 y))) (cbrt.f64 (+.f64 1 (sqrt.f64 y)))) (*.f64 (cbrt.f64 (-.f64 1 (sqrt.f64 y))) (cbrt.f64 (-.f64 1 (sqrt.f64 y)))))) (cbrt.f64 (-.f64 1 y)))
6.1b
(*.f64 (-.f64 y (pow.f64 y 2)) x)
11.7b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.5b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
33.2b
(*.f64 (*.f64 (*.f64 x y) (cbrt.f64 (*.f64 y y))) (cbrt.f64 (-.f64 1 y)))
36.5b
(*.f64 (*.f64 (*.f64 x y) (+.f64 1 (sqrt.f64 y))) (-.f64 1 (sqrt.f64 y)))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
Compiler

Compiled 10715 to 7511 computations (29.9% saved)

localize4.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 y (pow.f64 y 2))
5.7b
(*.f64 (-.f64 y (pow.f64 y 2)) x)

series12.0ms (0.5%)

Counts
2 → 15
Calls

2 calls:

10.0ms
(*.f64 (-.f64 y (pow.f64 y 2)) x)
2.0ms
(-.f64 y (pow.f64 y 2))

rewrite16.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
35×add-sqr-sqrt_binary64
27×*-un-lft-identity_binary64
24×prod-diff_binary64
21×add-cube-cbrt_binary64
14×unpow-prod-down_binary64
Counts
2 → 82
Calls

2 calls:

6.0ms
(*.f64 (-.f64 y (pow.f64 y 2)) x)
6.0ms
(-.f64 y (pow.f64 y 2))

simplify94.0ms (3.8%)

Algorithm
egg-herbie
Rules
967×fma-neg_binary64
456×fma-def_binary64
377×exp-prod_binary64
263×cancel-sign-sub-inv_binary64
232×difference-of-squares_binary64
Counts
97 → 124
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01451889
12611074
2791924
32087924
43779924
54661924
64794924

prune90.0ms (3.6%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1240124
Fresh044
Picked011
Done022
Total1247131
Error
0b
Counts
131 → 7
Alt Table
StatusErrorProgram
36.7b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (*.f64 (cbrt.f64 (+.f64 1 (sqrt.f64 y))) (cbrt.f64 (+.f64 1 (sqrt.f64 y)))) (*.f64 (cbrt.f64 (-.f64 1 (sqrt.f64 y))) (cbrt.f64 (-.f64 1 (sqrt.f64 y)))))) (cbrt.f64 (-.f64 1 y)))
6.1b
(*.f64 (-.f64 y (pow.f64 y 2)) x)
11.7b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.5b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
33.2b
(*.f64 (*.f64 (*.f64 x y) (cbrt.f64 (*.f64 y y))) (cbrt.f64 (-.f64 1 y)))
36.5b
(*.f64 (*.f64 (*.f64 x y) (+.f64 1 (sqrt.f64 y))) (-.f64 1 (sqrt.f64 y)))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
Compiler

Compiled 2380 to 1328 computations (44.2% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 1 y))
0.1b
(*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y)))
0.1b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))

series31.0ms (1.2%)

Counts
3 → 44
Calls

3 calls:

16.0ms
(*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y)))
8.0ms
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
7.0ms
(sqrt.f64 (-.f64 1 y))

rewrite27.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
18×sqrt-prod_binary64
18×associate-*r*_binary64
18×add-sqr-sqrt_binary64
18×pow1_binary64
17×*-un-lft-identity_binary64
Counts
3 → 85
Calls

3 calls:

12.0ms
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
6.0ms
(*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y)))
3.0ms
(sqrt.f64 (-.f64 1 y))

simplify95.0ms (3.8%)

Algorithm
egg-herbie
Rules
524×*-commutative_binary64
460×fma-def_binary64
361×associate-*l*_binary64
333×fma-neg_binary64
321×cancel-sign-sub-inv_binary64
Counts
129 → 136
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01441853
13731689
213521668
329491656
446981656
549661656

prune130.0ms (5.2%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New1660166
Fresh033
Picked011
Done033
Total1667173
Error
0b
Counts
173 → 7
Alt Table
StatusErrorProgram
36.7b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (*.f64 (cbrt.f64 (+.f64 1 (sqrt.f64 y))) (cbrt.f64 (+.f64 1 (sqrt.f64 y)))) (*.f64 (cbrt.f64 (-.f64 1 (sqrt.f64 y))) (cbrt.f64 (-.f64 1 (sqrt.f64 y)))))) (cbrt.f64 (-.f64 1 y)))
6.1b
(*.f64 (-.f64 y (pow.f64 y 2)) x)
11.7b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.5b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
33.2b
(*.f64 (*.f64 (*.f64 x y) (cbrt.f64 (*.f64 y y))) (cbrt.f64 (-.f64 1 y)))
36.5b
(*.f64 (*.f64 (*.f64 x y) (+.f64 1 (sqrt.f64 y))) (-.f64 1 (sqrt.f64 y)))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
Compiler

Compiled 3383 to 2201 computations (34.9% saved)

regimes107.0ms (4.3%)

Accuracy

Total 0.1b remaining (77.5%)

Threshold costs 0.1b (77.5%)

Counts
37 → 1
Compiler

Compiled 1977 to 1334 computations (32.5% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
21710
31910
42010
51910

end0.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

sample572.0ms (22.9%)

Algorithm
intervals
Results
272.0ms8000×body128valid
5.0ms195×body128invalid
Compiler

Compiled 138 to 97 computations (29.7% saved)

Profiling

Loading profile data...