Details

Time bar (total: 2.5s)

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)

sample525.0ms (20.9%)

Infinites
24.6% of outputs are infinite.
Results
460.0ms8256×body128valid
Compiler

Compiled 29 to 20 computations (31% saved)

simplify18.0ms (0.7%)

Algorithm
egg-herbie
Rules
265×fma-def_binary64
84×fma-neg_binary64
35×distribute-rgt-in_binary64
26×unsub-neg_binary64
25×sub-neg_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11610
23110
36310
413410
518310
623610
732810
836010
935910
1038910
1134610

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

Compiled 27 to 18 computations (33.3% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

series7.0ms (0.3%)

Counts
1 → 24
Calls

1 calls:

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

rewrite7.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
prod-diff_binary64
distribute-lft-in_binary64
distribute-rgt-in_binary64
*-un-lft-identity_binary64
Counts
1 → 32
Calls

1 calls:

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

simplify60.0ms (2.4%)

Algorithm
egg-herbie
Rules
888×fma-def_binary64
584×unsub-neg_binary64
561×distribute-neg-out_binary64
311×associate-*l*_binary64
293×unswap-sqr_binary64
Counts
56 → 51
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069723
1140663
2421626
31318606
42818606
55568606

prune43.0ms (1.7%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New44751
Fresh000
Picked101
Done000
Total45752
Error
0.0b
Counts
52 → 7
Alt Table
StatusErrorProgram
1.0b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))
6.9b
(-.f64 x (*.f64 y (pow.f64 x 2)))
16.1b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 x y)))) (sqrt.f64 (-.f64 1 (*.f64 x y))))
25.6b
(/.f64 (fma.f64 (pow.f64 x 3) (*.f64 y (neg.f64 y)) x) (+.f64 1 (*.f64 x y)))
23.2b
(/.f64 (*.f64 x (-.f64 1 (pow.f64 (*.f64 x y) 3))) (+.f64 (*.f64 1 1) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (*.f64 1 (*.f64 x y)))))
0.1b
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))
9.6b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 y x))) x) (*.f64 (fma.f64 (neg.f64 y) x (*.f64 y x)) x))
Compiler

Compiled 962 to 457 computations (52.5% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))
0.1b
(*.f64 (neg.f64 (*.f64 x y)) x)

series19.0ms (0.7%)

Counts
2 → 48
Calls

2 calls:

10.0ms
(*.f64 (neg.f64 (*.f64 x y)) x)
9.0ms
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))

rewrite7.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
associate-*l*_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 40
Calls

2 calls:

3.0ms
(*.f64 (neg.f64 (*.f64 x y)) x)
3.0ms
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))

simplify98.0ms (3.9%)

Algorithm
egg-herbie
Rules
786×unsub-neg_binary64
423×times-frac_binary64
380×neg-sub0_binary64
365×neg-mul-1_binary64
320×distribute-lft-neg-out_binary64
Counts
88 → 70
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069933
1189909
2748899
32086893
43687893
54607893
65301893

prune62.0ms (2.5%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New69170
Fresh156
Picked011
Done000
Total70777
Error
0b
Counts
77 → 7
Alt Table
StatusErrorProgram
1.0b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))
6.9b
(-.f64 x (*.f64 y (pow.f64 x 2)))
16.1b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 x y)))) (sqrt.f64 (-.f64 1 (*.f64 x y))))
25.6b
(/.f64 (fma.f64 (pow.f64 x 3) (*.f64 y (neg.f64 y)) x) (+.f64 1 (*.f64 x y)))
29.6b
(+.f64 (*.f64 1 x) (*.f64 (*.f64 y (neg.f64 (pow.f64 x 3/2))) (sqrt.f64 x)))
0.1b
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))
9.6b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 y x))) x) (*.f64 (fma.f64 (neg.f64 y) x (*.f64 y x)) x))
Compiler

Compiled 1284 to 530 computations (58.7% saved)

localize8.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

series86.0ms (3.4%)

Counts
3 → 72
Calls

3 calls:

40.0ms
(*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))
30.0ms
(cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))
16.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))

rewrite33.0ms (1.3%)

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:

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

simplify141.0ms (5.6%)

Algorithm
egg-herbie
Rules
734×cancel-sign-sub-inv_binary64
304×associate-/r*_binary64
208×associate-*l*_binary64
192×sub-neg_binary64
192×times-frac_binary64
Counts
187 → 247
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03306638
19226109
233035782
350865782

prune539.0ms (21.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New5240524
Fresh055
Picked011
Done011
Total5247531
Error
0b
Counts
531 → 7
Alt Table
StatusErrorProgram
1.0b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))
6.9b
(-.f64 x (*.f64 y (pow.f64 x 2)))
16.1b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 x y)))) (sqrt.f64 (-.f64 1 (*.f64 x y))))
25.6b
(/.f64 (fma.f64 (pow.f64 x 3) (*.f64 y (neg.f64 y)) x) (+.f64 1 (*.f64 x y)))
29.6b
(+.f64 (*.f64 1 x) (*.f64 (*.f64 y (neg.f64 (pow.f64 x 3/2))) (sqrt.f64 x)))
0.1b
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))
9.6b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 y x))) x) (*.f64 (fma.f64 (neg.f64 y) x (*.f64 y x)) x))
Compiler

Compiled 21625 to 11956 computations (44.7% saved)

localize9.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

series96.0ms (3.8%)

Counts
2 → 6
Calls

2 calls:

81.0ms
(-.f64 x (*.f64 y (pow.f64 x 2)))
15.0ms
(*.f64 y (pow.f64 x 2))

rewrite16.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
13×add-sqr-sqrt_binary64
associate-*r*_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-exp-log_binary64
Counts
2 → 49
Calls

2 calls:

7.0ms
(*.f64 y (pow.f64 x 2))
5.0ms
(-.f64 x (*.f64 y (pow.f64 x 2)))

simplify118.0ms (4.7%)

Algorithm
egg-herbie
Rules
518×fma-neg_binary64
448×associate-*l*_binary64
412×unswap-sqr_binary64
398×associate-*r*_binary64
375×distribute-rgt-neg-in_binary64
Counts
55 → 82
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
087730
1176586
2495558
32159558
44134558
54989558
64819558

prune131.0ms (5.2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New82082
Fresh044
Picked011
Done022
Total82789
Error
0b
Counts
89 → 7
Alt Table
StatusErrorProgram
1.0b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 x y)))))
6.9b
(-.f64 x (*.f64 y (pow.f64 x 2)))
16.1b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 x y)))) (sqrt.f64 (-.f64 1 (*.f64 x y))))
25.6b
(/.f64 (fma.f64 (pow.f64 x 3) (*.f64 y (neg.f64 y)) x) (+.f64 1 (*.f64 x y)))
29.6b
(+.f64 (*.f64 1 x) (*.f64 (*.f64 y (neg.f64 (pow.f64 x 3/2))) (sqrt.f64 x)))
0.1b
(+.f64 (*.f64 1 x) (*.f64 (neg.f64 (*.f64 x y)) x))
9.6b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 y x))) x) (*.f64 (fma.f64 (neg.f64 y) x (*.f64 y x)) x))
Compiler

Compiled 1181 to 607 computations (48.6% saved)

regimes329.0ms (13.1%)

Accuracy

Total 0.1b remaining (83.9%)

Threshold costs 0.1b (83.9%)

Counts
62 → 1
Compiler

Compiled 3360 to 2073 computations (38.3% saved)

simplify5.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11710
22610
33710
44310
54610
64710
74610

end145.0ms (5.8%)

Compiler

Compiled 137 to 86 computations (37.2% saved)

Profiling

Loading profile data...