Details

Time bar (total: 3.3s)

analyze101.0ms (3%)

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
50%50%0.1%6
56.2%37.5%6.3%7
68.7%25%6.3%8
71.8%18.7%9.5%9
78%12.5%9.5%10
79.6%9.4%11%11
82.7%6.2%11%12
83.5%4.7%11.8%13
85.1%3.1%11.8%14
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample957.0ms (28.7%)

Results
846.0ms8256×body128valid
6.0ms66×body128invalid
Compiler

Compiled 41 to 32 computations (22% saved)

simplify45.0ms (1.3%)

Algorithm
egg-herbie
Rules
723×fma-neg_binary64
586×fma-def_binary64
222×cancel-sign-sub-inv_binary64
115×sub-neg_binary64
82×associate--r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01116
12714
25812
310912
422911
545011
666111
794011
8119411
9132011
10134711
11126811

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
0.0b
(-.f64 (fma.f64 y (+.f64 x -1/2) 918938533204673/1000000000000000) x)
Compiler

Compiled 67 to 49 computations (26.9% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2))
0.0b
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
0.0b
(*.f64 x (-.f64 y 1))

series15.0ms (0.5%)

Counts
3 → 72
Calls

3 calls:

6.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
5.0ms
(-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2))
4.0ms
(*.f64 x (-.f64 y 1))

rewrite36.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
56×prod-diff_binary64
54×add-sqr-sqrt_binary64
53×*-un-lft-identity_binary64
52×associate--l+_binary64
48×add-cube-cbrt_binary64
Counts
3 → 142
Calls

3 calls:

10.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
6.0ms
(-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2))
6.0ms
(*.f64 x (-.f64 y 1))

simplify119.0ms (3.6%)

Algorithm
egg-herbie
Rules
498×associate-*l*_binary64
467×cancel-sign-sub-inv_binary64
407×associate-*r*_binary64
355×fma-def_binary64
343×distribute-rgt-in_binary64
Counts
214 → 237
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01552104
13431880
29191854
336201854
449131854
548961854

prune185.0ms (5.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2352237
Fresh101
Picked011
Done000
Total2363239
Error
0b
Counts
239 → 3
Alt Table
StatusErrorProgram
0.0b
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
0.0b
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))
1.0b
(+.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) 918938533204673/1000000000000000)
Compiler

Compiled 5025 to 3718 computations (26% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x))
0.0b
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))

series10.0ms (0.3%)

Counts
2 → 48
Calls

2 calls:

5.0ms
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))
5.0ms
(-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x))

rewrite12.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
19×*-un-lft-identity_binary64
19×add-sqr-sqrt_binary64
18×prod-diff_binary64
17×add-cube-cbrt_binary64
13×associate-+r+_binary64
Counts
2 → 60
Calls

2 calls:

6.0ms
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))
3.0ms
(-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x))

simplify99.0ms (3%)

Algorithm
egg-herbie
Rules
950×fma-neg_binary64
447×distribute-rgt-in_binary64
443×fma-def_binary64
437×associate-*l*_binary64
427×distribute-lft-in_binary64
Counts
108 → 102
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01221300
12561213
27951144
336041142
443171142
548161142

prune84.0ms (2.5%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1020102
Fresh011
Picked011
Done011
Total1023105
Error
0b
Counts
105 → 3
Alt Table
StatusErrorProgram
0.0b
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
0.0b
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))
1.0b
(+.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) 918938533204673/1000000000000000)
Compiler

Compiled 2249 to 1431 computations (36.4% saved)

localize15.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 y (-.f64 x 1/2))
0.3b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
0.5b
(*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
0.6b
(cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))

series156.0ms (4.7%)

Counts
4 → 96
Calls

4 calls:

110.0ms
(*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
35.0ms
(cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))
6.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
5.0ms
(*.f64 y (-.f64 x 1/2))

rewrite64.0ms (1.9%)

Algorithm
rewrite-expression-head
Rules
68×cbrt-div_binary64
45×add-sqr-sqrt_binary64
35×flip--_binary64
35×flip3--_binary64
33×*-un-lft-identity_binary64
Counts
4 → 179
Calls

4 calls:

19.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
12.0ms
(*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)))
5.0ms
(*.f64 y (-.f64 x 1/2))
5.0ms
(cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))

simplify284.0ms (8.5%)

Algorithm
egg-herbie
Rules
724×times-frac_binary64
597×fma-def_binary64
285×*-commutative_binary64
128×+-commutative_binary64
125×sub-neg_binary64
Counts
275 → 326
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
079512199
1241311205
2492711005
3500011005
4493411005

prune708.0ms (21.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New5720572
Fresh000
Picked011
Done022
Total5723575
Error
0b
Counts
575 → 3
Alt Table
StatusErrorProgram
0.0b
(+.f64 (-.f64 (*.f64 x (-.f64 y 1)) (*.f64 y 1/2)) 918938533204673/1000000000000000)
0.0b
(+.f64 (*.f64 y x) (-.f64 918938533204673/1000000000000000 (fma.f64 y 1/2 x)))
1.0b
(+.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x)) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) (cbrt.f64 (-.f64 (*.f64 y (-.f64 x 1/2)) x))) 918938533204673/1000000000000000)
Compiler

Compiled 31811 to 22946 computations (27.9% saved)

regimes367.0ms (11%)

Accuracy

Total -0.0b remaining (-125%)

Threshold costs -0.0b (-125%)

Counts
85 → 1
Compiler

Compiled 5872 to 4402 computations (25% 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
0812
11012
21512
31712
41812
51812

end57.0ms (1.7%)

Compiler

Compiled 77 to 53 computations (31.2% saved)

Profiling

Loading profile data...