Details

Time bar (total: 3.7s)

analyze58.0ms (1.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%50%50%2
0%50%50%3
25%25%50%4
25%25%50%5
31.2%18.7%50%6
34.3%15.6%50%7
39%10.9%50%8
40.6%8.6%50.8%9
42.9%5.9%51.2%10
43.7%4.5%51.8%11
44.9%3%52.1%12
45.3%2.3%52.4%13
45.9%1.5%52.6%14
Compiler

Compiled 17 to 14 computations (17.6% saved)

sample1.2s (32.6%)

Results
930.0ms8256×body128valid
9.0ms87×body128invalid
Compiler

Compiled 50 to 41 computations (18% saved)

simplify34.0ms (0.9%)

Algorithm
egg-herbie
Rules
474×fma-neg_binary64
309×fma-def_binary64
228×cancel-sign-sub-inv_binary64
83×associate-/l*_binary64
72×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01321
12718
25618
311218
420116
533916
660816
785616
889216
990716
1093016
1183716

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(fma.f64 y (/.f64 -1/3 (sqrt.f64 x)) (-.f64 1 (/.f64 1/9 x)))
Compiler

Compiled 85 to 66 computations (22.4% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 1 (/.f64 1 (*.f64 x 9)))
0.2b
(/.f64 y (*.f64 3 (sqrt.f64 x)))
0.3b
(/.f64 1 (*.f64 x 9))
0.3b
(*.f64 3 (sqrt.f64 x))

series35.0ms (1%)

Counts
4 → 36
Calls

4 calls:

24.0ms
(/.f64 y (*.f64 3 (sqrt.f64 x)))
6.0ms
(*.f64 3 (sqrt.f64 x))
4.0ms
(/.f64 1 (*.f64 x 9))
2.0ms
(-.f64 1 (/.f64 1 (*.f64 x 9)))

rewrite23.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
34×add-sqr-sqrt_binary64
31×*-un-lft-identity_binary64
27×add-cube-cbrt_binary64
22×add-exp-log_binary64
21×prod-diff_binary64
Counts
4 → 125
Calls

4 calls:

8.0ms
(-.f64 1 (/.f64 1 (*.f64 x 9)))
4.0ms
(/.f64 y (*.f64 3 (sqrt.f64 x)))
3.0ms
(*.f64 3 (sqrt.f64 x))
3.0ms
(/.f64 1 (*.f64 x 9))

simplify74.0ms (2%)

Algorithm
egg-herbie
Rules
612×associate-/l*_binary64
514×fma-def_binary64
439×associate-*l/_binary64
356×associate-/r*_binary64
323×associate-/l/_binary64
Counts
161 → 158
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01721803
13281417
210161288
345911288
448731288

prune199.0ms (5.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1517158
Fresh011
Picked101
Done000
Total1528160
Error
0.0b
Counts
160 → 8
Alt Table
StatusErrorProgram
0.2b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y)))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 1/3 (*.f64 y (sqrt.f64 (/.f64 1 x)))))
0.2b
(-.f64 (-.f64 1 (/.f64 (/.f64 1 x) 9)) (/.f64 y (*.f64 3 (sqrt.f64 x))))
11.9b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 y (cbrt.f64 (pow.f64 (*.f64 3 (sqrt.f64 x)) 3))))
0.3b
(-.f64 (+.f64 (fma.f64 1 1 (neg.f64 (*.f64 (/.f64 1 9) (/.f64 1 x)))) (fma.f64 (neg.f64 (/.f64 1 9)) (/.f64 1 x) (*.f64 (/.f64 1 9) (/.f64 1 x)))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x)))))
0.3b
(fma.f64 y (/.f64 -1/3 (sqrt.f64 x)) (-.f64 1 (/.f64 1/9 x)))
0.6b
(-.f64 (*.f64 (*.f64 (cbrt.f64 (+.f64 1 (/.f64 -1/9 x))) (cbrt.f64 (+.f64 1 (/.f64 -1/9 x)))) (cbrt.f64 (+.f64 1 (/.f64 -1/9 x)))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
Compiler

Compiled 3800 to 2918 computations (23.2% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 1 (/.f64 (/.f64 1 x) 9))
0.2b
(/.f64 y (*.f64 3 (sqrt.f64 x)))
0.3b
(/.f64 (/.f64 1 x) 9)
0.3b
(*.f64 3 (sqrt.f64 x))

series3.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

2.0ms
(/.f64 (/.f64 1 x) 9)
1.0ms
(-.f64 1 (/.f64 (/.f64 1 x) 9))

rewrite51.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
349×times-frac_binary64
248×add-sqr-sqrt_binary64
236×*-un-lft-identity_binary64
228×add-cube-cbrt_binary64
129×prod-diff_binary64
Counts
2 → 271
Calls

2 calls:

16.0ms
(-.f64 1 (/.f64 (/.f64 1 x) 9))
4.0ms
(/.f64 (/.f64 1 x) 9)

simplify168.0ms (4.6%)

Algorithm
egg-herbie
Rules
619×associate-/l*_binary64
528×times-frac_binary64
393×fma-def_binary64
379×associate-/l/_binary64
204×distribute-neg-frac_binary64
Counts
295 → 317
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02477339
16294850
216493779
348203779
446903779

prune553.0ms (15.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New3721373
Fresh167
Picked011
Done000
Total3738381
Error
0.0b
Counts
381 → 8
Alt Table
StatusErrorProgram
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x)))))
0.4b
(-.f64 (-.f64 1 (*.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (sqrt.f64 (/.f64 1 x)) 9))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.2b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y)))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 1/3 (*.f64 y (sqrt.f64 (/.f64 1 x)))))
0.2b
(-.f64 (-.f64 1 (/.f64 (/.f64 1 x) 9)) (/.f64 y (*.f64 3 (sqrt.f64 x))))
11.9b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 y (cbrt.f64 (pow.f64 (*.f64 3 (sqrt.f64 x)) 3))))
0.3b
(-.f64 (+.f64 (fma.f64 1 1 (neg.f64 (*.f64 (/.f64 1 9) (/.f64 1 x)))) (fma.f64 (neg.f64 (/.f64 1 9)) (/.f64 1 x) (*.f64 (/.f64 1 9) (/.f64 1 x)))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(fma.f64 y (/.f64 -1/3 (sqrt.f64 x)) (-.f64 1 (/.f64 1/9 x)))
Compiler

Compiled 13657 to 10592 computations (22.4% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (*.f64 3 (sqrt.f64 x)) y)
0.3b
(/.f64 1 (*.f64 x 9))
0.3b
(*.f64 3 (sqrt.f64 x))
0.6b
(/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y))

series36.0ms (1%)

Counts
2 → 24
Calls

2 calls:

24.0ms
(/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y))
12.0ms
(/.f64 (*.f64 3 (sqrt.f64 x)) y)

rewrite12.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
36×times-frac_binary64
28×add-exp-log_binary64
20×*-un-lft-identity_binary64
20×add-sqr-sqrt_binary64
20×add-cube-cbrt_binary64
Counts
2 → 81
Calls

2 calls:

5.0ms
(/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y))
4.0ms
(/.f64 (*.f64 3 (sqrt.f64 x)) y)

simplify143.0ms (3.9%)

Algorithm
egg-herbie
Rules
744×div-sub_binary64
432×*-commutative_binary64
368×associate-/l*_binary64
281×sub-neg_binary64
275×associate-/r*_binary64
Counts
105 → 120
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01011477
11981284
26221265
322871265
427021265
530411265
639541265
742311265
849361265
948331265

prune253.0ms (6.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1860186
Fresh066
Picked011
Done011
Total1868194
Error
0.0b
Counts
194 → 8
Alt Table
StatusErrorProgram
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x)))))
0.4b
(-.f64 (-.f64 1 (*.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (sqrt.f64 (/.f64 1 x)) 9))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.2b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y)))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 1/3 (*.f64 y (sqrt.f64 (/.f64 1 x)))))
0.2b
(-.f64 (-.f64 1 (/.f64 (/.f64 1 x) 9)) (/.f64 y (*.f64 3 (sqrt.f64 x))))
11.9b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 y (cbrt.f64 (pow.f64 (*.f64 3 (sqrt.f64 x)) 3))))
0.3b
(-.f64 (+.f64 (fma.f64 1 1 (neg.f64 (*.f64 (/.f64 1 9) (/.f64 1 x)))) (fma.f64 (neg.f64 (/.f64 1 9)) (/.f64 1 x) (*.f64 (/.f64 1 9) (/.f64 1 x)))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(fma.f64 y (/.f64 -1/3 (sqrt.f64 x)) (-.f64 1 (/.f64 1/9 x)))
Compiler

Compiled 4216 to 3095 computations (26.6% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (*.f64 3 (sqrt.f64 x)))
0.2b
(*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x))))
0.3b
(/.f64 1 (*.f64 x 9))
0.3b
(*.f64 3 (sqrt.f64 x))

series43.0ms (1.2%)

Counts
2 → 12
Calls

2 calls:

26.0ms
(*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x))))
17.0ms
(/.f64 1 (*.f64 3 (sqrt.f64 x)))

rewrite16.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
32×add-exp-log_binary64
16×add-cbrt-cube_binary64
13×prod-exp_binary64
add-sqr-sqrt_binary64
div-exp_binary64
Counts
2 → 64
Calls

2 calls:

9.0ms
(*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x))))
4.0ms
(/.f64 1 (*.f64 3 (sqrt.f64 x)))

simplify114.0ms (3.1%)

Algorithm
egg-herbie
Rules
910×fma-def_binary64
467×sqr-pow_binary64
460×fabs-mul_binary64
445×associate-/r/_binary64
368×fma-neg_binary64
Counts
76 → 91
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
082808
1166693
2484692
31662692
42027692
52266692
62704692
73328692
83893692
94678692
104935692

prune193.0ms (5.3%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1561157
Fresh145
Picked011
Done022
Total1578165
Error
0.0b
Counts
165 → 8
Alt Table
StatusErrorProgram
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 y (/.f64 1 (*.f64 3 (sqrt.f64 x)))))
0.4b
(-.f64 (-.f64 1 (*.f64 (sqrt.f64 (/.f64 1 x)) (/.f64 (sqrt.f64 (/.f64 1 x)) 9))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.2b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (/.f64 1 (/.f64 (*.f64 3 (sqrt.f64 x)) y)))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 1/3 (*.f64 y (sqrt.f64 (/.f64 1 x)))))
0.3b
(-.f64 (-.f64 1 (/.f64 1 (*.f64 x 9))) (*.f64 (*.f64 1/3 y) (/.f64 1 (sqrt.f64 x))))
0.2b
(-.f64 (-.f64 1 (/.f64 (/.f64 1 x) 9)) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(-.f64 (+.f64 (fma.f64 1 1 (neg.f64 (*.f64 (/.f64 1 9) (/.f64 1 x)))) (fma.f64 (neg.f64 (/.f64 1 9)) (/.f64 1 x) (*.f64 (/.f64 1 9) (/.f64 1 x)))) (/.f64 y (*.f64 3 (sqrt.f64 x))))
0.3b
(fma.f64 y (/.f64 -1/3 (sqrt.f64 x)) (-.f64 1 (/.f64 1/9 x)))
Compiler

Compiled 3345 to 2522 computations (24.6% saved)

regimes282.0ms (7.7%)

Accuracy

Total 0.2b remaining (85.8%)

Threshold costs 0.2b (85.8%)

Counts
88 → 1
Compiler

Compiled 6488 to 5335 computations (17.8% saved)

simplify6.0ms (0.2%)

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
01321
12021
23121
34121
44721
54921
64721

end125.0ms (3.4%)

Compiler

Compiled 191 to 158 computations (17.3% saved)

Profiling

Loading profile data...