Details

Time bar (total: 3.9s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
99.9%0%0.1%1
Compiler

Compiled 10 to 7 computations (30% saved)

sample550.0ms (14%)

Infinites
25.1% of outputs are infinite.
Results
468.0ms8256×body128valid
Compiler

Compiled 29 to 20 computations (31% saved)

simplify24.0ms (0.6%)

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

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.1%)

Local error

Found 1 expressions with local error:

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

series8.0ms (0.2%)

Counts
1 → 24
Calls

1 calls:

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

rewrite11.0ms (0.3%)

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:

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

simplify109.0ms (2.8%)

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

prune87.0ms (2.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New68573
Fresh000
Picked011
Done000
Total68674
Error
0b
Counts
74 → 6
Alt Table
StatusErrorProgram
35.9b
(*.f64 (*.f64 x (+.f64 y (pow.f64 y 3/2))) (-.f64 1 (sqrt.f64 y)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
14.3b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.4b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
3.7b
(*.f64 x (*.f64 y (-.f64 1 y)))
Compiler

Compiled 1460 to 640 computations (56.2% saved)

localize8.0ms (0.2%)

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.1b
(*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
0.3b
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))
0.3b
(cbrt.f64 (-.f64 1 y))

series400.0ms (10.2%)

Counts
4 → 72
Calls

4 calls:

380.0ms
(*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
8.0ms
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
7.0ms
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))
5.0ms
(cbrt.f64 (-.f64 1 y))

rewrite65.0ms (1.7%)

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:

19.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 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y))))
11.0ms
(*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))
2.0ms
(cbrt.f64 (-.f64 1 y))

simplify155.0ms (4%)

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 → 288
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03005299
17604846
225524532
345534491
449844491

prune373.0ms (9.5%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New3760376
Fresh044
Picked011
Done011
Total3766382
Error
0b
Counts
382 → 6
Alt Table
StatusErrorProgram
35.9b
(*.f64 (*.f64 x (+.f64 y (pow.f64 y 3/2))) (-.f64 1 (sqrt.f64 y)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
14.3b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.4b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
3.7b
(*.f64 x (*.f64 y (-.f64 1 y)))
Compiler

Compiled 10643 to 7456 computations (29.9% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series922.0ms (23.5%)

Counts
3 → 72
Calls

3 calls:

562.0ms
(*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
329.0ms
(cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))
30.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))

rewrite36.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
78×associate-*r/_binary64
68×cbrt-div_binary64
34×flip--_binary64
34×flip3--_binary64
32×frac-times_binary64
Counts
3 → 115
Calls

3 calls:

11.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
6.0ms
(*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
4.0ms
(cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))

simplify163.0ms (4.1%)

Algorithm
egg-herbie
Rules
658×fma-def_binary64
601×times-frac_binary64
297×cancel-sign-sub-inv_binary64
296×fma-neg_binary64
231×associate-*l*_binary64
Counts
187 → 232
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02885751
16935324
222134690
348484688
449594688

prune488.0ms (12.4%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New5530553
Fresh033
Picked011
Done022
Total5536559
Error
0b
Counts
559 → 6
Alt Table
StatusErrorProgram
35.9b
(*.f64 (*.f64 x (+.f64 y (pow.f64 y 3/2))) (-.f64 1 (sqrt.f64 y)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
14.3b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.4b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
3.7b
(*.f64 x (*.f64 y (-.f64 1 y)))
Compiler

Compiled 21034 to 11625 computations (44.7% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series10.0ms (0.2%)

Counts
2 → 36
Calls

2 calls:

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

rewrite27.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
65×distribute-lft-in_binary64
65×distribute-rgt-in_binary64
54×prod-diff_binary64
52×add-sqr-sqrt_binary64
50×*-un-lft-identity_binary64
Counts
2 → 125
Calls

2 calls:

8.0ms
(*.f64 x (*.f64 y (-.f64 1 y)))
6.0ms
(*.f64 y (-.f64 1 y))

simplify110.0ms (2.8%)

Algorithm
egg-herbie
Rules
468×*-commutative_binary64
386×exp-prod_binary64
367×fma-def_binary64
307×distribute-rgt-neg-out_binary64
294×distribute-lft-neg-out_binary64
Counts
161 → 165
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01662288
12432085
210641753
327421585
445141585
547661585

prune119.0ms (3%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New1650165
Fresh022
Picked011
Done033
Total1656171
Error
0b
Counts
171 → 6
Alt Table
StatusErrorProgram
35.9b
(*.f64 (*.f64 x (+.f64 y (pow.f64 y 3/2))) (-.f64 1 (sqrt.f64 y)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y)))) (cbrt.f64 (*.f64 (*.f64 x y) (-.f64 1 y))))
0.1b
(*.f64 (*.f64 x y) (-.f64 1 y))
14.3b
(*.f64 (*.f64 (*.f64 x y) (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)))
0.4b
(*.f64 (*.f64 (*.f64 x y) (*.f64 (cbrt.f64 (-.f64 1 y)) (cbrt.f64 (-.f64 1 y)))) (cbrt.f64 (-.f64 1 y)))
3.7b
(*.f64 x (*.f64 y (-.f64 1 y)))
Compiler

Compiled 3189 to 1352 computations (57.6% saved)

regimes162.0ms (4.1%)

Accuracy

Total 0.1b remaining (80.1%)

Threshold costs 0.1b (80.1%)

Counts
58 → 1
Compiler

Compiled 3138 to 2165 computations (31% 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

end77.0ms (2%)

Compiler

Compiled 113 to 77 computations (31.9% saved)

Profiling

Loading profile data...