Details

Time bar (total: 2.5min)

analyze171.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
0%100%0%3
50%50%0%4
75%25%0%5
87.5%12.5%0%6
90.6%9.4%0%7
93.7%6.2%0%8
94.5%5.5%0%9
95.3%4.7%0%10
95.7%4.3%0%11
95.8%4.2%0%12
95.8%4.2%0%13
95.8%4.1%0%14
Compiler

Compiled 66 to 53 computations (19.7% saved)

sample1.9s (1.3%)

Results
1.8s8256×body128valid
Compiler

Compiled 131 to 105 computations (19.8% saved)

simplify59.0ms (0%)

Algorithm
egg-herbie
Rules
660×fma-neg_binary64
578×times-frac_binary64
564×cancel-sign-sub-inv_binary64
389×fma-def_binary64
380×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02793
19169
227069
382569
4284069
5483969
6507469

prune6.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
12.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
12.2b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
Compiler

Compiled 241 to 190 computations (21.2% saved)

localize20.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))
0.5b
(*.f64 3275911/10000000 (fabs.f64 x))
0.7b
(+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))
12.1b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))

series464.0ms (0.3%)

Counts
4 → 36
Calls

4 calls:

374.0ms
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
68.0ms
(+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))
20.0ms
(+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))
2.0ms
(*.f64 3275911/10000000 (fabs.f64 x))

rewrite20.0ms (0%)

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
10×add-log-exp_binary64
associate-*r*_binary64
Counts
4 → 80
Calls

4 calls:

7.0ms
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
3.0ms
(*.f64 3275911/10000000 (fabs.f64 x))
3.0ms
(+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))
2.0ms
(+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))

simplify164.0ms (0.1%)

Algorithm
egg-herbie
Rules
654×fma-def_binary64
356×associate-*l/_binary64
300×associate-*r/_binary64
217×cancel-sign-sub-inv_binary64
212×fma-neg_binary64
Counts
116 → 131
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01866399
14864719
216244340
343804340
448524340

prune1.0s (0.7%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2727279
Fresh000
Picked101
Done000
Total2737280
Error
12.1b
Counts
280 → 7
Alt Table
StatusErrorProgram
14.1b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (fma.f64 (*.f64 (cbrt.f64 -1453152027/1000000000) (cbrt.f64 -1453152027/1000000000)) (cbrt.f64 -1453152027/1000000000) (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
12.2b
(/.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))))) (+.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x))))))
12.2b
(/.f64 (-.f64 1 (pow.f64 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x)))) 3)) (fma.f64 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)) (fma.f64 (pow.f64 (exp.f64 (*.f64 x x)) -2) (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)) (exp.f64 (neg.f64 (*.f64 x x)))) 1))
12.2b
(cbrt.f64 (*.f64 (*.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)))))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))))
12.8b
(log.f64 (exp.f64 (-.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x)))))))
13.2b
(log.f64 (/.f64 (exp.f64 1) (exp.f64 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))))
13.4b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (fma.f64 (sqrt.f64 1421413741/1000000000) (sqrt.f64 1421413741/1000000000) (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
Compiler

Compiled 22020 to 16199 computations (26.4% saved)

localize28.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))
0.5b
(*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))
0.7b
(-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000)
12.1b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))))

series12.9s (8.6%)

Counts
4 → 48
Calls

4 calls:

12.6s
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))))
262.0ms
(*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))
72.0ms
(+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))
17.0ms
(-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000)

rewrite79.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
71×*-un-lft-identity_binary64
60×add-sqr-sqrt_binary64
53×add-cube-cbrt_binary64
42×prod-diff_binary64
37×times-frac_binary64
Counts
4 → 155
Calls

4 calls:

39.0ms
(*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))
9.0ms
(+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))
9.0ms
(-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000)
5.0ms
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))))

simplify528.0ms (0.4%)

Algorithm
egg-herbie
Rules
826×fma-def_binary64
532×associate-*r/_binary64
461×associate-/l*_binary64
64×sqr-pow_binary64
42×fma-udef_binary64
Counts
203 → 211
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0277237915
1549237915

prune3.6s (2.4%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New4534457
Fresh426
Picked101
Done000
Total4586464
Error
12.0b
Counts
464 → 6
Alt Table
StatusErrorProgram
14.1b
(-.f64 1 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (fma.f64 (*.f64 (cbrt.f64 -1453152027/1000000000) (cbrt.f64 -1453152027/1000000000)) (cbrt.f64 -1453152027/1000000000) (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))
13.4b
(/.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (*.f64 (*.f64 (cbrt.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))) (cbrt.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) (cbrt.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))))) (+.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x))))))
13.2b
(/.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (*.f64 (cbrt.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))) (cbrt.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) (*.f64 (cbrt.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))))) (+.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x))))))
13.6b
(/.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (+.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) (*.f64 (neg.f64 (*.f64 (cbrt.f64 1453152027/1000000000) (cbrt.f64 1453152027/1000000000))) (cbrt.f64 1453152027/1000000000))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1)))))) (+.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x))))))
13.2b
(log.f64 (/.f64 (exp.f64 1) (exp.f64 (*.f64 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 31853699/125000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -8890523/31250000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 1421413741/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) (+.f64 -1453152027/1000000000 (*.f64 (/.f64 1 (+.f64 1 (*.f64 3275911/10000000 (fabs.f64 x)))) 1061405429/1000000000))))))))) (exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))))))
12.1b
(/.f64 (/.f64 (-.f64 1 (pow.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) 3)) (+.f64 1 (*.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) (+.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) 1)))) (+.f64 1 (/.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (*.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) (exp.f64 (*.f64 x x))))))
Compiler

Compiled 103790 to 77068 computations (25.7% saved)

localize37.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))
0.7b
(pow.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) 3)
0.7b
(-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000)
11.5b
(-.f64 1 (pow.f64 (*.f64 (*.f64 (/.f64 1 (pow.f64 (fma.f64 (fabs.f64 x) 3275911/10000000 1) 2)) (pow.f64 (exp.f64 (*.f64 x x)) -2)) (*.f64 (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (+.f64 31853699/125000000 (/.f64 (+.f64 -8890523/31250000 (/.f64 (+.f64 1421413741/1000000000 (/.f64 (-.f64 (/.f64 1061405429/1000000000 (fma.f64 (fabs.f64 x) 3275911/10000000 1)) 1453152027/1000000000) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))) (fma.f64 (fabs.f64 x) 3275911/10000000 1))))) 3))

series2.1min (86%)

Profiling

Loading profile data...