Date:Saturday, October 2nd, 2021
Commit:d3249e97 on master
Hostname:warfa with Racket 8.1
Seed:2021275
Parameters:256 points for 4 iterations
Flags:
precision:fallbackreduce:regimesreduce:avg-errorreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplify
default

Details

Time bar (total: 32.5s)

sample11.5s (35.5%)

Algorithm
18×intervals
Results
6.0s70152×body128valid
1.0s4152×body2048valid
216.0ms1328×body128nan
191.0ms2011×body128invalid
Compiler

Compiled 1752 to 1173 computations (33% saved)

prune6.1s (18.7%)

Counts
4356 → 134
Alt Table
StatusErrorProgram
0b
(-.f64 1 (/.f64 (fabs.f64 x) x))
0b
(-.f64 1 (/.f64 (fabs.f64 x) x))
0.0b
(pow.f64 (E.f64) (fma.f64 x x -1))
0.0b
(exp.f64 (fma.f64 x x -1))
0.0b
(pow.f64 (E.f64) (fma.f64 x x -1))
0.0b
(exp.f64 (fma.f64 x x -1))
0.0b
(exp.f64 (fma.f64 x x -1))
4.3b
(fabs.f64 (*.f64 1 (-.f64 (/.f64 x y) (/.f64 (fma.f64 x z -4) y))))
2.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
3.6b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 x (/.f64 z y))))
4.3b
(fabs.f64 (*.f64 1 (-.f64 (/.f64 x y) (/.f64 (fma.f64 x z -4) y))))
2.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
3.6b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 x (/.f64 z y))))
2.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (/.f64 (*.f64 z x) y)))
4.3b
(fabs.f64 (/.f64 (fma.f64 x (-.f64 1 z) 4) y))
3.6b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 x (/.f64 z y))))
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
2.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (/.f64 (*.f64 z x) y)))
3.6b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 x (/.f64 z y))))
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
2.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
0b
(/.f64 (fabs.f64 (-.f64 a b)) 2)
0b
(/.f64 (fabs.f64 (-.f64 a b)) 2)
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
29.4b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 a 2) (-.f64 (neg.f64 b) (hypot.f64 b (*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -4))))))) (*.f64 -1 (/.f64 c b)))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 (*.f64 4 (*.f64 a c)) (/.f64 1/2 a)) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
22.3b
(if (>=.f64 b 0) (/.f64 1 (neg.f64 (/.f64 a b))) (*.f64 -1 (/.f64 c b)))
20.1b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 a 2) (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))) (*.f64 -1 (/.f64 c b)))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 (*.f64 4 (*.f64 a c)) (/.f64 1/2 a)) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
20.1b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 a 2) (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))) (*.f64 -1 (/.f64 c b)))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
22.3b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 2 a) (*.f64 b -2))) (*.f64 -1 (/.f64 c b)))
18.6b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 -1 (/.f64 c b)))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
18.6b
(if (>=.f64 b 0) (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (/.f64 1/2 a)) (*.f64 -1 (/.f64 c b)))
22.2b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
21.0b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
34.0b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)) (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
24.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) b) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
18.5b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 -1 (/.f64 c b)))
21.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.8b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
17.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
18.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
21.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
19.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b))) (*.f64 2 a)))
17.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (exp.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a)))
27.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a)))
19.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.2b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (cbrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (cbrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) b) (/.f64 1/2 a)))
18.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a)))
19.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
21.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
19.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b))) (*.f64 2 a)))
17.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
27.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a)))
22.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a)))
19.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
21.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
19.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b))) (*.f64 2 a)))
17.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
27.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a)))
22.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a)))
19.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
21.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
19.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b))) (*.f64 2 a)))
17.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
27.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a)))
22.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
17.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a)))
0.0b
(neg.f64 (+.f64 (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1))) (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1)))))
0.0b
(neg.f64 (log.f64 (+.f64 -1 (/.f64 1 x))))
0.0b
(neg.f64 (+.f64 (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1))) (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1)))))
0.0b
(neg.f64 (log.f64 (+.f64 -1 (/.f64 1 x))))
0.0b
(neg.f64 (+.f64 (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1))) (log.f64 (sqrt.f64 (-.f64 (/.f64 1 x) 1)))))
0.0b
(neg.f64 (log.f64 (+.f64 -1 (/.f64 1 x))))
0.0b
(neg.f64 (log.f64 (-.f64 (/.f64 1 x) 1)))
0.4b
(-.f64 x 1/2)
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.4b
(-.f64 x 1/2)
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.4b
(-.f64 x 1/2)
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
33.4b
(/.f64 (/.f64 (+.f64 f n) (sqrt.f64 (-.f64 n f))) (sqrt.f64 (-.f64 n f)))
30.1b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
33.4b
(fma.f64 2 (/.f64 f n) 1)
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
33.4b
(/.f64 (/.f64 (+.f64 f n) (sqrt.f64 (-.f64 n f))) (sqrt.f64 (-.f64 n f)))
30.1b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
33.4b
(fma.f64 2 (/.f64 f n) 1)
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
33.4b
(/.f64 (/.f64 (+.f64 f n) (sqrt.f64 (-.f64 n f))) (sqrt.f64 (-.f64 n f)))
30.1b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
33.4b
(fma.f64 2 (/.f64 f n) 1)
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
33.4b
(/.f64 (/.f64 (+.f64 f n) (sqrt.f64 (-.f64 n f))) (sqrt.f64 (-.f64 n f)))
30.1b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
33.4b
(fma.f64 2 (/.f64 f n) 1)
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
Compiler

Compiled 192263 to 112936 computations (41.3% saved)

regimes4.3s (13.3%)

Counts
382 → 14
Compiler

Compiled 50403 to 34109 computations (32.3% saved)

simplify3.5s (10.8%)

Algorithm
40×egg-herbie
Rules
12796×fma-def_binary64
12074×fma-neg_binary64
6442×associate-/l*_binary64
5629×cancel-sign-sub-inv_binary64
5252×times-frac_binary64
Counts
2695 → 2930

analyze3.5s (10.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
11.1%88.8%0.1%1
11.1%83.3%5.6%2
19.4%69.4%11.2%3
31.9%51.3%16.8%4
35.4%45.1%19.5%5
45.1%34%20.9%6
50.7%26.4%23%7
53.3%23.4%23.3%8
57.6%18.3%24.1%9
59.6%15.1%25.4%10
61.3%12.9%25.8%11
63.2%10%26.8%12
64.2%8.2%27.6%13
64.9%6.9%28.2%14
Compiler

Compiled 161 to 110 computations (31.7% saved)

series2.3s (7.1%)

Counts
47 → 996
Calls

43 calls:

417.0ms
(/.f64 (*.f64 a 2) (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))
275.0ms
(/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))
227.0ms
(/.f64 1 (/.f64 (*.f64 a 2) (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))))
157.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
115.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))

rewrite656.0ms (2%)

Algorithm
22×rewrite-expression-head
Rules
757×*-un-lft-identity_binary64
720×add-sqr-sqrt_binary64
585×times-frac_binary64
548×add-cube-cbrt_binary64
361×prod-diff_binary64
Counts
47 → 1690
Calls

43 calls:

93.0ms
(*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f))
69.0ms
(sqrt.f64 (-.f64 x 1))
47.0ms
(/.f64 (+.f64 f n) (-.f64 n f))
36.0ms
(/.f64 (+.f64 f n) (sqrt.f64 (-.f64 n f)))
18.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))

localize320.0ms (1%)

Compiler

Compiled 12240 to 10200 computations (16.7% saved)

bsearch255.0ms (0.8%)

Compiler

Compiled 12 to 9 computations (25% saved)

end30.0ms (0.1%)

Compiler

Compiled 310 to 199 computations (35.8% saved)

Profiling

Loading profile data...