Details

Time bar (total: 25.7s)

analyze1.3s (5%)

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
25%74.9%0.1%6
25%74.9%0.1%7
37.4%62.4%0.1%8
37.4%62.4%0.1%9
37.4%62.4%0.1%10
43.7%56.2%0.1%11
43.7%56.2%0.1%12
43.7%56.2%0.1%13
61.7%38.2%0.1%14
Compiler

Compiled 41 to 30 computations (26.8% saved)

sample97.0ms (0.4%)

Algorithm
intervals
Results
28.0ms256×body128valid
Compiler

Compiled 84 to 62 computations (26.2% saved)

simplify49.0ms (0.2%)

Algorithm
egg-herbie
Rules
753×associate-+l+_binary64
706×distribute-rgt-in_binary64
700×distribute-lft-in_binary64
667×associate-+r+_binary64
226×fma-def_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03041
16441
215441
335741
4115741
5487641
6497641
7499241

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
26.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
26.0b
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
26.0b
(/.f64 (*.f64 (-.f64 x 2) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x 104109730557/25000000000) 393497462077/5000000000) x) 4297481763/31250000) x) y) x) z)) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 x 216700011257/5000000000) x) 263505074721/1000000000) x) 156699607947/500000000) x) 23533438303/500000000))
Compiler

Compiled 216 to 150 computations (30.6% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000)
0.1b
(fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)
0.3b
(fma.f64 x 104109730557/25000000000 393497462077/5000000000)
25.2b
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))

series449.0ms (1.7%)

Counts
4 → 84
Calls

4 calls:

434.0ms
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
11.0ms
(fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)
2.0ms
(fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000)
2.0ms
(fma.f64 x 104109730557/25000000000 393497462077/5000000000)

rewrite9.0ms (0%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
Counts
4 → 55
Calls

4 calls:

5.0ms
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
0.0ms
(fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)
0.0ms
(fma.f64 x 104109730557/25000000000 393497462077/5000000000)
0.0ms
(fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000)

simplify201.0ms (0.8%)

Algorithm
egg-herbie
Rules
899×fma-def_binary64
565×distribute-rgt-in_binary64
296×times-frac_binary64
211×fma-neg_binary64
146×cancel-sign-sub-inv_binary64
Counts
139 → 125
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02368000
16137637
220097248
349907248
450327248

prune216.0ms (0.8%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1169125
Fresh101
Picked101
Done000
Total1189127
Error
0.2b
Counts
127 → 9
Alt Table
StatusErrorProgram
38.0b
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (cbrt.f64 (*.f64 (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y))) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
34.8b
(-.f64 (+.f64 (fma.f64 x 104109730557/25000000000 (/.f64 2284450290879775841688574159837293/625000000000000000000000000000 x)) (/.f64 y (*.f64 x x))) (+.f64 13764240537310136880149/125000000000000000000 (/.f64 409304707811198655637810418659684985388407301/3125000000000000000000000000000000000000 (*.f64 x x))))
34.6b
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 x 393497462077/5000000000 4297481763/31250000)) (fma.f64 104109730557/25000000000 (pow.f64 x 4) z)) (-.f64 x 2)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
25.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z))) (cbrt.f64 (*.f64 (/.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)))) (cbrt.f64 (*.f64 (/.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z))))
45.5b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) 3))
27.0b
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 2 2)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000) (+.f64 x 2)))
26.2b
(*.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 1 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
25.8b
(-.f64 (fma.f64 1759267849271/25000000000 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 104109730557/25000000000 (/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 (*.f64 x (*.f64 x y)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))) (fma.f64 2 (fma.f64 (/.f64 y (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))) (fma.f64 4297481763/15625000 (/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (*.f64 49698921037/2500000000 (/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))))
Compiler

Compiled 6045 to 4078 computations (32.5% saved)

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
8.0b
(sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
14.6b
(/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
14.7b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
21.0b
(/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))

series794.0ms (3.1%)

Counts
4 → 96
Calls

4 calls:

456.0ms
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
325.0ms
(/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
7.0ms
(/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
5.0ms
(sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))

rewrite61.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
126×add-sqr-sqrt_binary64
108×times-frac_binary64
95×*-un-lft-identity_binary64
69×add-cube-cbrt_binary64
63×sqrt-prod_binary64
Counts
4 → 201
Calls

4 calls:

20.0ms
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
5.0ms
(/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
3.0ms
(/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
1.0ms
(sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))

simplify390.0ms (1.5%)

Algorithm
egg-herbie
Rules
342×fma-def_binary64
223×associate-/l*_binary64
206×associate-*r/_binary64
201×associate-*l/_binary64
198×fma-neg_binary64
Counts
297 → 319
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
049722462
1143420376
2480220372
3494020372

prune696.0ms (2.7%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New3473350
Fresh268
Picked011
Done000
Total34910359
Error
0.2b
Counts
359 → 10
Alt Table
StatusErrorProgram
38.0b
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (cbrt.f64 (*.f64 (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y))) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
34.8b
(-.f64 (+.f64 (fma.f64 x 104109730557/25000000000 (/.f64 2284450290879775841688574159837293/625000000000000000000000000000 x)) (/.f64 y (*.f64 x x))) (+.f64 13764240537310136880149/125000000000000000000 (/.f64 409304707811198655637810418659684985388407301/3125000000000000000000000000000000000000 (*.f64 x x))))
27.0b
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 2 2)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000) (+.f64 x 2)))
41.4b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (*.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))))
34.6b
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 x 393497462077/5000000000 4297481763/31250000)) (fma.f64 104109730557/25000000000 (pow.f64 x 4) z)) (-.f64 x 2)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
57.9b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (-.f64 (+.f64 (fma.f64 (*.f64 x x) 104109730557/25000000000 4083796082204816104901602479511879/5000000000000000000000000000000) (/.f64 y x)) (fma.f64 x 2885706679815136880149/250000000000000000000 (/.f64 288398698881886821422860609529768900388407301/10000000000000000000000000000000000000000 x))))
26.2b
(*.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 1 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
25.8b
(-.f64 (fma.f64 1759267849271/25000000000 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 104109730557/25000000000 (/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 (*.f64 x (*.f64 x y)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))) (fma.f64 2 (fma.f64 (/.f64 y (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))) (fma.f64 4297481763/15625000 (/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (*.f64 49698921037/2500000000 (/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))))
Compiler

Compiled 23022 to 15989 computations (30.5% saved)

localize47.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
14.7b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
15.2b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))
20.1b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))
21.4b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))

series2.0s (7.7%)

Counts
4 → 72
Calls

4 calls:

2.0s
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
7.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))
7.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))
7.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))

rewrite245.0ms (1%)

Algorithm
rewrite-expression-head
Rules
162×add-sqr-sqrt_binary64
127×*-un-lft-identity_binary64
112×sqrt-prod_binary64
106×associate-*l*_binary64
99×times-frac_binary64
Counts
4 → 264
Calls

4 calls:

85.0ms
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
23.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))
22.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))
21.0ms
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))

simplify715.0ms (2.8%)

Algorithm
egg-herbie
Rules
665×fma-def_binary64
563×distribute-rgt-in_binary64
268×*-commutative_binary64
142×fma-neg_binary64
132×cancel-sign-sub-inv_binary64
Counts
336 → 438
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064242906
1224834490
2486634387
3493534387

prune2.4s (9.5%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New4380438
Fresh088
Picked011
Done011
Total43810448
Error
0.2b
Counts
448 → 10
Alt Table
StatusErrorProgram
38.0b
(/.f64 (*.f64 (-.f64 x 2) (fma.f64 x (cbrt.f64 (*.f64 (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y)) (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y))) z)) (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
34.8b
(-.f64 (+.f64 (fma.f64 x 104109730557/25000000000 (/.f64 2284450290879775841688574159837293/625000000000000000000000000000 x)) (/.f64 y (*.f64 x x))) (+.f64 13764240537310136880149/125000000000000000000 (/.f64 409304707811198655637810418659684985388407301/3125000000000000000000000000000000000000 (*.f64 x x))))
27.0b
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 2 2)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000) (+.f64 x 2)))
41.4b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (*.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))))
34.6b
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 x 393497462077/5000000000 4297481763/31250000)) (fma.f64 104109730557/25000000000 (pow.f64 x 4) z)) (-.f64 x 2)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
57.9b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (-.f64 (+.f64 (fma.f64 (*.f64 x x) 104109730557/25000000000 4083796082204816104901602479511879/5000000000000000000000000000000) (/.f64 y x)) (fma.f64 x 2885706679815136880149/250000000000000000000 (/.f64 288398698881886821422860609529768900388407301/10000000000000000000000000000000000000000 x))))
26.2b
(*.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 1 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
25.8b
(-.f64 (fma.f64 1759267849271/25000000000 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 104109730557/25000000000 (/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 (*.f64 x (*.f64 x y)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))) (fma.f64 2 (fma.f64 (/.f64 y (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))) (fma.f64 4297481763/15625000 (/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (*.f64 49698921037/2500000000 (/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))))
Compiler

Compiled 93247 to 74045 computations (20.6% saved)

localize40.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
23.4b
(/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
23.4b
(/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
23.7b
(/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
24.9b
(/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))

series14.0ms (0.1%)

Counts
4 → 48
Calls

4 calls:

4.0ms
(/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
4.0ms
(/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
3.0ms
(/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
3.0ms
(/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))

rewrite63.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
232×*-un-lft-identity_binary64
135×times-frac_binary64
93×distribute-lft-out_binary64
77×add-sqr-sqrt_binary64
77×add-cube-cbrt_binary64
Counts
4 → 254
Calls

4 calls:

11.0ms
(/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
8.0ms
(/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
8.0ms
(/.f64 (*.f64 x x) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
7.0ms
(/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))

simplify577.0ms (2.2%)

Algorithm
egg-herbie
Rules
604×fma-neg_binary64
517×unswap-sqr_binary64
278×log-prod_binary64
236×associate-/l*_binary64
154×associate-*r*_binary64
Counts
302 → 357
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
035912877
175711251
2284211128
3459911128
4517411128

prune2.2s (8.5%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New3561357
Fresh167
Picked101
Done022
Total3589367
Error
0.2b
Counts
367 → 9
Alt Table
StatusErrorProgram
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (/.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))))
25.8b
(-.f64 (fma.f64 1759267849271/25000000000 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 104109730557/25000000000 (/.f64 (pow.f64 x 5) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) (fma.f64 (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 (*.f64 x (*.f64 x y)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))) (fma.f64 2 (fma.f64 (/.f64 y (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x))))))) x (/.f64 z (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))) (fma.f64 4297481763/15625000 (/.f64 x (/.f64 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (*.f64 x (+.f64 156699607947/500000000 (*.f64 x (fma.f64 x 216700011257/5000000000 263505074721/1000000000)))))) x)) (*.f64 49698921037/2500000000 (/.f64 (pow.f64 x 3) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))))))
34.8b
(-.f64 (+.f64 (fma.f64 x 104109730557/25000000000 (/.f64 2284450290879775841688574159837293/625000000000000000000000000000 x)) (/.f64 y (*.f64 x x))) (+.f64 13764240537310136880149/125000000000000000000 (/.f64 409304707811198655637810418659684985388407301/3125000000000000000000000000000000000000 (*.f64 x x))))
27.0b
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 2 2)) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000) (+.f64 x 2)))
41.4b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (*.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))))
34.6b
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 x 393497462077/5000000000 4297481763/31250000)) (fma.f64 104109730557/25000000000 (pow.f64 x 4) z)) (-.f64 x 2)) (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (fma.f64 x 156699607947/500000000 (*.f64 (*.f64 x x) (+.f64 263505074721/1000000000 (*.f64 216700011257/5000000000 x)))))))
25.1b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (+.f64 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 z (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x)))))))) (+.f64 (*.f64 393497462077/5000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 3))) (+.f64 (*.f64 4297481763/31250000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 2))) (*.f64 104109730557/25000000000 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 4) (+.f64 23533438303/500000000 (+.f64 (*.f64 263505074721/1000000000 (pow.f64 x 2)) (+.f64 (*.f64 216700011257/5000000000 (pow.f64 x 3)) (*.f64 156699607947/500000000 x))))))) (pow.f64 x 4))))))))
57.9b
(*.f64 (/.f64 (-.f64 x 2) (sqrt.f64 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000))) (-.f64 (+.f64 (fma.f64 (*.f64 x x) 104109730557/25000000000 4083796082204816104901602479511879/5000000000000000000000000000000) (/.f64 y x)) (fma.f64 x 2885706679815136880149/250000000000000000000 (/.f64 288398698881886821422860609529768900388407301/10000000000000000000000000000000000000000 x))))
26.2b
(*.f64 (*.f64 (-.f64 x 2) (fma.f64 x (fma.f64 x (fma.f64 x (fma.f64 x 104109730557/25000000000 393497462077/5000000000) 4297481763/31250000) y) z)) (/.f64 1 (fma.f64 x (fma.f64 x (fma.f64 x (+.f64 x 216700011257/5000000000) 263505074721/1000000000) 156699607947/500000000) 23533438303/500000000)))
Compiler

Compiled 72358 to 48256 computations (33.3% saved)

regimes11.6s (45.2%)

Accuracy

Total 0.8b remaining (75.7%)

Threshold costs 0.8b (75.7%)

Counts
377 → 3
Compiler

Compiled 136336 to 99424 computations (27.1% saved)

bsearch84.0ms (0.3%)

Steps
ItersRangePoint
8
7.197147841774278e+28
1.2383321790484476e+32
1.221362224894815e+32
2
-1.659261859578525e+77
-5.141732260381411e+70
-2.2175661204628907e+72
Compiler

Compiled 4 to 3 computations (25% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
04184
15384
26484
37284
47584
57684
67384

end1.0ms (0%)

Compiler

Compiled 62 to 41 computations (33.9% saved)

sample1.4s (5.6%)

Algorithm
intervals
Results
808.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 753 to 541 computations (28.2% saved)

Profiling

Loading profile data...