Details

Time bar (total: 9.5s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%0%50%2
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample1.3s (13.7%)

Results
588.0ms2206×body1024valid
379.0ms4427×body128valid
208.0ms1039×body512valid
86.0ms584×body256valid
Compiler

Compiled 38 to 32 computations (15.8% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
14×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
11417
22017
32817
43617
55417
67917
79617
811317
912317
1012717
1112917
1211517

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
22.7b
Counts
3 → 1
Alt Table
StatusErrorProgram
22.7b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 47 to 38 computations (19.1% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 x 1))
0.2b
(/.f64 1 (sqrt.f64 (+.f64 x 1)))
0.3b
(/.f64 1 (sqrt.f64 x))
4.3b
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))

series48.0ms (0.5%)

Counts
4 → 8
Calls

4 calls:

15.0ms
(/.f64 1 (sqrt.f64 x))
15.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
9.0ms
(/.f64 1 (sqrt.f64 (+.f64 x 1)))
8.0ms
(sqrt.f64 (+.f64 x 1))

rewrite231.0ms (2.4%)

Algorithm
rewrite-expression-head
Rules
1084×times-frac_binary64
922×*-un-lft-identity_binary64
802×add-sqr-sqrt_binary64
728×add-cube-cbrt_binary64
594×prod-diff_binary64
Counts
4 → 815
Calls

4 calls:

45.0ms
(-.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
5.0ms
(/.f64 1 (sqrt.f64 (+.f64 x 1)))
3.0ms
(/.f64 1 (sqrt.f64 x))
3.0ms
(sqrt.f64 (+.f64 x 1))

simplify834.0ms (8.8%)

Algorithm
egg-herbie
Rules
814×fma-neg_binary64
623×fma-def_binary64
489×cancel-sign-sub-inv_binary64
358×associate-*r*_binary64
241×times-frac_binary64
Counts
823 → 641
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
024236505
150125671
2121018755
3341217853
4442317803
5488417803
6473017803

prune1.6s (17.2%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New61922641
Fresh000
Picked101
Done000
Total62022642
Error
21.9b
Counts
642 → 22
Alt Table
StatusErrorProgram
22.7b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x)))))
31.2b
(+.f64 (fma.f64 1 (/.f64 1 (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3))))))) (fma.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1))))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))))))
31.2b
(+.f64 (fma.f64 (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))) (/.f64 1 (sqrt.f64 (cbrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))
31.8b
(+.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (cbrt.f64 (/.f64 1 (sqrt.f64 x)))) (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3))))))) (fma.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1))))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))))))
30.5b
(+.f64 (fma.f64 1 (/.f64 1 (sqrt.f64 x)) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))))))) (fma.f64 (neg.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1))))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))) (*.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))))))
30.7b
(+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 (+.f64 x 1)))) (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 x 1))) (cbrt.f64 (sqrt.f64 (+.f64 x 1)))))))) (fma.f64 (neg.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 (+.f64 x 1))))) (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 x 1))) (cbrt.f64 (sqrt.f64 (+.f64 x 1))))) (*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 (+.f64 x 1)))) (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 x 1))) (cbrt.f64 (sqrt.f64 (+.f64 x 1))))))))
31.3b
(+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3))))))) (fma.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1))))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))) (*.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 1 1) (*.f64 x 1)))) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 1 3)))))))
30.5b
(+.f64 (fma.f64 1 (/.f64 1 (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))
31.2b
(+.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (cbrt.f64 (/.f64 1 (sqrt.f64 x)))) (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (*.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (sqrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))
31.1b
(fma.f64 (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))) (/.f64 1 (sqrt.f64 (cbrt.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
30.5b
(+.f64 (fma.f64 1 (/.f64 1 (sqrt.f64 x)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))) (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1)))) (cbrt.f64 (/.f64 1 (sqrt.f64 (+.f64 x 1))))))))
30.7b
(+.f64 (fma.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 x))) (/.f64 1 (sqrt.f64 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))))))) (fma.f64 (neg.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1))))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))) (*.f64 (/.f64 1 (sqrt.f64 (cbrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))))))
33.5b
(/.f64 (+.f64 (/.f64 1 (pow.f64 x 3/2)) (/.f64 -1 (pow.f64 (sqrt.f64 (+.f64 1 x)) 3))) (+.f64 (/.f64 1 x) (+.f64 (/.f64 1 (+.f64 1 x)) (/.f64 1 (*.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 1 x)))))))
31.3b
(+.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (cbrt.f64 (/.f64 1 (sqrt.f64 x)))) (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1))))))) (fma.f64 (neg.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1))))) (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1)))) (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1)))) (/.f64 1 (sqrt.f64 (sqrt.f64 (+.f64 x 1)))))))
25.2b
(-.f64 (/.f64 1 (sqrt.f64 x)) (pow.f64 (+.f64 x 1) -1/2))
25.1b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
31.4b
(fma.f64 (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 (sqrt.f64 x)))) (/.f64 1 (cbrt.f64 (sqrt.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
31.3b
(fma.f64 (*.f64 (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (cbrt.f64 (/.f64 1 (sqrt.f64 x)))) (cbrt.f64 (/.f64 1 (sqrt.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
61.6b
(+.f64 (fma.f64 (/.f64 1 (sqrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))) (/.f64 1 (sqrt.f64 (cbrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 x 1))) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))) (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))))))
61.5b
(+.f64 (fma.f64 1 (/.f64 1 (sqrt.f64 x)) (neg.f64 (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 x 1))) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))) (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))))))
61.4b
(+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (neg.f64 (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1))))))) (fma.f64 (neg.f64 (sqrt.f64 (-.f64 x 1))) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))) (*.f64 (sqrt.f64 (-.f64 x 1)) (/.f64 1 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 1 1)))))))
30.8b
(fma.f64 (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (sqrt.f64 (/.f64 1 (sqrt.f64 x))) (/.f64 -1 (sqrt.f64 (+.f64 1 x))))
Compiler

Compiled 32353 to 26171 computations (19.1% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (sqrt.f64 (+.f64 1 x)))
0.3b
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x)))))
0.3b
(/.f64 1 (sqrt.f64 x))
4.2b
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))

series52.0ms (0.5%)

Counts
3 → 16
Calls

3 calls:

39.0ms
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x)))))
10.0ms
(/.f64 1 (sqrt.f64 (+.f64 1 x)))
3.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))

rewrite414.0ms (4.4%)

Algorithm
rewrite-expression-head
Rules
1631×*-un-lft-identity_binary64
1558×times-frac_binary64
946×add-sqr-sqrt_binary64
514×add-cube-cbrt_binary64
468×distribute-lft-out_binary64
Counts
3 → 762
Calls

3 calls:

79.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x)))
69.0ms
(/.f64 (-.f64 (/.f64 1 x) (/.f64 1 (+.f64 1 x))) (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x)))))
5.0ms
(/.f64 1 (sqrt.f64 (+.f64 1 x)))

simplify769.0ms (8.1%)

Algorithm
egg-herbie
Rules
789×fma-def_binary64
594×times-frac_binary64
422×div-sub_binary64
388×fma-neg_binary64
296×distribute-rgt-in_binary64
Counts
778 → 568
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
030232070
168227791
2193925611
3426925601
4460525601
5481925601

prune962.0ms (10.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New6152617
Fresh20121
Picked101
Done000
Total6363639
Error
5.8b
Counts
639 → 3
Alt Table
StatusErrorProgram
36.8b
(/.f64 (+.f64 (/.f64 1 (pow.f64 x 4)) (fma.f64 (/.f64 1 (*.f64 x x)) (+.f64 (/.f64 -1 x) 1) (/.f64 -1 (pow.f64 x 5)))) (+.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 (+.f64 1 x)))))
22.1b
(/.f64 (-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1)) (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
25.1b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 27842 to 22168 computations (20.4% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1)) (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
0.3b
(/.f64 1 (sqrt.f64 x))
3.6b
(-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1))
5.7b
(*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))

series75.0ms (0.8%)

Counts
3 → 12
Calls

3 calls:

59.0ms
(/.f64 (-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1)) (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
15.0ms
(*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))
1.0ms
(-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1))

rewrite67.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
10×add-cbrt-cube_binary64
10×add-exp-log_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
Counts
3 → 74
Calls

3 calls:

31.0ms
(/.f64 (-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1)) (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
25.0ms
(*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))
6.0ms
(-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1))

simplify57.0ms (0.6%)

Algorithm
egg-herbie
Rules
811×distribute-rgt-in_binary64
787×distribute-lft-in_binary64
645×times-frac_binary64
345×fma-def_binary64
93×associate-*l*_binary64
Counts
86 → 109
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01282223
13631643
212941637
353181637

prune237.0ms (2.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1517158
Fresh112
Picked101
Done000
Total1538161
Error
5.6b
Counts
161 → 8
Alt Table
StatusErrorProgram
6.0b
(*.f64 (/.f64 1 (fma.f64 x x x)) (/.f64 1 (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
6.1b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))) (sqrt.f64 (/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))))
6.0b
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
24.2b
(*.f64 (/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (pow.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) 3) (pow.f64 (/.f64 1 (sqrt.f64 x)) 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (sqrt.f64 (/.f64 1 (+.f64 1 x)))) (-.f64 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 x))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))))
8.8b
(*.f64 (/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 1 x))))) (*.f64 (sqrt.f64 (+.f64 1 x)) (sqrt.f64 x)))
6.0b
(/.f64 (/.f64 1 (fma.f64 x x x)) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))
25.1b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
22.2b
(/.f64 (-.f64 (*.f64 1 (+.f64 1 x)) (*.f64 x 1)) (*.f64 (*.f64 (fma.f64 x x x) (sqrt.f64 (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))) (sqrt.f64 (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))))
Compiler

Compiled 5868 to 3925 computations (33.1% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 (+.f64 1 x)))
0.3b
(/.f64 1 (sqrt.f64 x))
0.4b
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
5.7b
(*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))

series68.0ms (0.7%)

Counts
2 → 4
Calls

2 calls:

58.0ms
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
9.0ms
(sqrt.f64 (/.f64 1 (+.f64 1 x)))

rewrite35.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
19×*-un-lft-identity_binary64
18×sqrt-prod_binary64
17×times-frac_binary64
16×add-sqr-sqrt_binary64
13×add-exp-log_binary64
Counts
2 → 68
Calls

2 calls:

26.0ms
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
4.0ms
(sqrt.f64 (/.f64 1 (+.f64 1 x)))

simplify94.0ms (1%)

Algorithm
egg-herbie
Rules
575×fma-neg_binary64
463×associate-/l/_binary64
421×associate-*l*_binary64
411×distribute-rgt-in_binary64
401×distribute-lft-in_binary64
Counts
72 → 88
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01181508
12731334
28201321
330661265
447101264
549941264

prune252.0ms (2.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1634167
Fresh527
Picked011
Done000
Total1687175
Error
0.0b
Counts
175 → 7
Alt Table
StatusErrorProgram
6.0b
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x)))))
0.4b
(*.f64 (/.f64 1 (fma.f64 x (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 (+.f64 1 x) (sqrt.f64 x)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (sqrt.f64 (/.f64 1 (+.f64 1 x)))) (-.f64 (*.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 1 (sqrt.f64 x))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))))
0.4b
(/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 (/.f64 1 (+.f64 1 x)))))))
6.0b
(/.f64 1 (*.f64 (fma.f64 x x x) (+.f64 (*.f64 (fabs.f64 (cbrt.f64 (/.f64 1 (+.f64 1 x)))) (sqrt.f64 (cbrt.f64 (/.f64 1 (+.f64 1 x))))) (/.f64 1 (sqrt.f64 x)))))
0.6b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 (/.f64 1 (+.f64 1 x)))))))) (sqrt.f64 (/.f64 1 (*.f64 (+.f64 1 x) (+.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 (/.f64 1 (+.f64 1 x)))))))))
6.0b
(/.f64 (/.f64 1 (fma.f64 x x x)) (+.f64 (sqrt.f64 (/.f64 1 (+.f64 1 x))) (/.f64 1 (sqrt.f64 x))))
25.1b
(-.f64 (pow.f64 x -1/2) (/.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 4485 to 2926 computations (34.8% saved)

regimes2.1s (22.1%)

Accuracy

Total 0.6b remaining (95.4%)

Threshold costs 0.6b (95.4%)

Counts
473 → 1
Compiler

Compiled 35524 to 29108 computations (18.1% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01126
11726
21626

end191.0ms (2%)

Compiler

Compiled 222 to 170 computations (23.4% saved)

Profiling

Loading profile data...