Details

Time bar (total: 3.8s)

analyze182.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
12.5%87.4%0.1%5
31.2%68.7%0.1%6
46.8%53.1%0.1%7
60.9%39%0.1%8
67.9%31.2%0.9%9
74.5%22.2%3.2%10
77.9%17.2%5%11
81.1%11.8%7.1%12
82.7%9%8.3%13
84.3%6.1%9.7%14
Compiler

Compiled 14 to 10 computations (28.6% saved)

sample1.1s (28.5%)

Results
932.0ms8256×body128valid
24.0ms250×body128invalid
Compiler

Compiled 41 to 29 computations (29.3% saved)

simplify88.0ms (2.3%)

Algorithm
egg-herbie
Rules
1151×distribute-rgt-in_binary64
1143×distribute-lft-in_binary64
971×fma-def_binary64
653×associate-/l*_binary64
535×associate-/l/_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0916
12214
23014
37514
411214
522214
640614
741914
878314
993714
10125914
11161114
12177814
13201514
14293914
15324514
16507514

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
9.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
9.8b
(/.f64 (fma.f64 x (/.f64 x y) x) (+.f64 x 1))
Compiler

Compiled 47 to 27 computations (42.6% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (/.f64 x y) x)
9.2b
(/.f64 (fma.f64 x (/.f64 x y) x) (+.f64 x 1))

series22.0ms (0.6%)

Counts
2 → 48
Calls

2 calls:

12.0ms
(/.f64 (fma.f64 x (/.f64 x y) x) (+.f64 x 1))
9.0ms
(fma.f64 x (/.f64 x y) x)

rewrite6.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
19×*-un-lft-identity_binary64
12×times-frac_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
associate-/r*_binary64
Counts
2 → 45
Calls

2 calls:

4.0ms
(/.f64 (fma.f64 x (/.f64 x y) x) (+.f64 x 1))
0.0ms
(fma.f64 x (/.f64 x y) x)

simplify86.0ms (2.3%)

Algorithm
egg-herbie
Rules
1032×fma-neg_binary64
526×cancel-sign-sub-inv_binary64
338×sub-neg_binary64
265×distribute-rgt-in_binary64
240×associate-/l/_binary64
Counts
93 → 74
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081641
12451554
27141484
324091453
444391453
550611453

prune51.0ms (1.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New71374
Fresh000
Picked101
Done000
Total72375
Error
0.0b
Counts
75 → 3
Alt Table
StatusErrorProgram
34.5b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
29.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
9.9b
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
Compiler

Compiled 1353 to 608 computations (55.1% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 x 1))
0.1b
(fma.f64 x (/.f64 x y) x)
9.3b
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))

series16.0ms (0.4%)

Counts
2 → 36
Calls

2 calls:

14.0ms
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
2.0ms
(/.f64 1 (+.f64 x 1))

rewrite16.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
35×*-un-lft-identity_binary64
27×add-sqr-sqrt_binary64
26×times-frac_binary64
20×add-cube-cbrt_binary64
18×associate-*r*_binary64
Counts
2 → 82
Calls

2 calls:

8.0ms
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
4.0ms
(/.f64 1 (+.f64 x 1))

simplify124.0ms (3.3%)

Algorithm
egg-herbie
Rules
892×fma-neg_binary64
598×cancel-sign-sub-inv_binary64
402×sub-neg_binary64
234×associate--l+_binary64
202×associate-+l+_binary64
Counts
118 → 133
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01301920
13151752
29531660
331411647
441911647
549991647
649861647

prune100.0ms (2.7%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1490149
Fresh022
Picked011
Done000
Total1493152
Error
0.0b
Counts
152 → 3
Alt Table
StatusErrorProgram
34.5b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
29.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
9.9b
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
Compiler

Compiled 2805 to 1466 computations (47.7% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.3b
(/.f64 (pow.f64 x 3) y)
6.7b
(+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2))
8.4b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
8.8b
(/.f64 (pow.f64 x 2) y)

series89.0ms (2.4%)

Counts
4 → 28
Calls

4 calls:

38.0ms
(+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2))
21.0ms
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
16.0ms
(/.f64 (pow.f64 x 3) y)
14.0ms
(/.f64 (pow.f64 x 2) y)

rewrite87.0ms (2.3%)

Algorithm
rewrite-expression-head
Rules
139×*-un-lft-identity_binary64
96×times-frac_binary64
81×add-sqr-sqrt_binary64
79×add-cube-cbrt_binary64
40×fma-def_binary64
Counts
4 → 236
Calls

4 calls:

38.0ms
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
20.0ms
(+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2))
4.0ms
(/.f64 (pow.f64 x 3) y)
3.0ms
(/.f64 (pow.f64 x 2) y)

simplify193.0ms (5.2%)

Algorithm
egg-herbie
Rules
563×fma-neg_binary64
258×associate-*l*_binary64
257×associate-*r*_binary64
239×distribute-rgt-in_binary64
226×distribute-lft-in_binary64
Counts
264 → 290
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03246184
18065182
238835111
349925111
449275111

prune299.0ms (8%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2873290
Fresh011
Picked011
Done011
Total2876293
Error
0b
Counts
293 → 6
Alt Table
StatusErrorProgram
9.9b
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
29.3b
(-.f64 (+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
34.5b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
29.5b
(-.f64 (+.f64 (*.f64 (*.f64 x (cbrt.f64 x)) (/.f64 (pow.f64 (cbrt.f64 x) 2) y)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
29.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
29.4b
(-.f64 (+.f64 (/.f64 (*.f64 (/.f64 x (*.f64 (cbrt.f64 y) (cbrt.f64 y))) x) (cbrt.f64 y)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
Compiler

Compiled 10243 to 6455 computations (37% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.4b
(+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x))
6.3b
(/.f64 (pow.f64 x 3) y)
6.7b
(+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2))
8.4b
(-.f64 (+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))

series37.0ms (1%)

Counts
2 → 48
Calls

2 calls:

25.0ms
(-.f64 (+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
11.0ms
(+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x))

rewrite87.0ms (2.3%)

Algorithm
rewrite-expression-head
Rules
123×*-un-lft-identity_binary64
66×times-frac_binary64
52×add-sqr-sqrt_binary64
50×add-cube-cbrt_binary64
44×fma-def_binary64
Counts
2 → 139
Calls

2 calls:

46.0ms
(-.f64 (+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
23.0ms
(+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x))

simplify144.0ms (3.8%)

Algorithm
egg-herbie
Rules
443×cancel-sign-sub-inv_binary64
438×fma-neg_binary64
244×distribute-rgt-in_binary64
231×distribute-lft-in_binary64
209×times-frac_binary64
Counts
187 → 183
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01935624
16504578
229034186
348634186
450014186

prune331.0ms (8.8%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New3111312
Fresh213
Picked011
Done022
Total3135318
Error
0b
Counts
318 → 5
Alt Table
StatusErrorProgram
9.9b
(*.f64 (fma.f64 x (/.f64 x y) x) (/.f64 1 (+.f64 x 1)))
29.3b
(-.f64 (+.f64 (/.f64 x (/.f64 y x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
34.5b
(-.f64 (+.f64 1 (/.f64 x y)) (/.f64 1 y))
29.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
29.9b
(-.f64 (fma.f64 (/.f64 1 y) (/.f64 x (/.f64 1 x)) (+.f64 (pow.f64 x 3) x)) (+.f64 (/.f64 (pow.f64 x 3) y) (pow.f64 x 2)))
Compiler

Compiled 11188 to 6114 computations (45.4% saved)

regimes548.0ms (14.6%)

Accuracy

Total 0.1b remaining (81.3%)

Threshold costs 0.1b (81.3%)

Counts
100 → 3
Compiler

Compiled 5237 to 3398 computations (35.1% saved)

bsearch40.0ms (1.1%)

Steps
ItersRangePoint
10
335951.5849647527
2.3616874415881426e+24
16483647715.548288
8
-5.384553914211595e+40
-1.1243591615808811e+38
-1.1391710068553142e+38
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
distribute-neg-frac_binary64
*-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01941
12941
23541
33741
43841
53641

end94.0ms (2.5%)

Compiler

Compiled 157 to 104 computations (33.8% saved)

Profiling

Loading profile data...