Date:Tuesday, August 3rd, 2021
Commit:3ce4b536 on secret-rr
Hostname:warfa with Racket 8.1
Seed:2021215
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: 37.6s)

sample10.7s (28.5%)

Algorithm
18×intervals
Results
5.8s70240×body128valid
973.0ms4064×body2048valid
183.0ms1335×body128nan
174.0ms2141×body128invalid
Compiler

Compiled 2259 to 1495 computations (33.8% saved)

prune7.4s (19.8%)

Counts
10178 → 143
Alt Table
StatusErrorProgram
0b
(-.f64 1 (/.f64 (fabs.f64 x) x))
0b
(-.f64 1 (/.f64 (fabs.f64 x) x))
0.0b
(exp.f64 (fma.f64 x x -1))
0.0b
(pow.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (fma.f64 x x -1)))) 2) 2)
0.0b
(exp.f64 (fma.f64 x x -1))
0.0b
(pow.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (fma.f64 x x -1)))) 2) 2)
0.0b
(exp.f64 (fma.f64 x x -1))
0.0b
(pow.f64 (sqrt.f64 (exp.f64 (fma.f64 x x -1))) 2)
2.0b
(pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x x -1))) 3)
0.0b
(exp.f64 (fma.f64 x x -1))
29.0b
(fabs.f64 (*.f64 (-.f64 (/.f64 1 y) (/.f64 z y)) x))
4.4b
(fabs.f64 (-.f64 (/.f64 x y) (pow.f64 (/.f64 y (fma.f64 x z -4)) -1)))
3.5b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 x (/.f64 y z))))
4.3b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (*.f64 x z) (/.f64 1 y))))
1.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
29.0b
(fabs.f64 (*.f64 (-.f64 (/.f64 1 y) (/.f64 z y)) x))
3.5b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 x (/.f64 y z))))
4.3b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (*.f64 x z) (/.f64 1 y))))
4.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 1 (/.f64 y (*.f64 x z)))))
1.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (-.f64 (/.f64 x y) (/.f64 (fma.f64 x z -4) y)))
29.0b
(fabs.f64 (*.f64 (-.f64 (/.f64 1 y) (/.f64 z y)) x))
4.3b
(fabs.f64 (-.f64 (+.f64 (/.f64 4 y) (/.f64 x y)) (/.f64 (*.f64 z x) y)))
3.5b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 x (/.f64 y z))))
4.3b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (*.f64 x z) (/.f64 1 y))))
4.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 1 (/.f64 y (*.f64 x z)))))
1.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
29.0b
(fabs.f64 (*.f64 (-.f64 (/.f64 1 y) (/.f64 z y)) x))
4.4b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (/.f64 (*.f64 z x) y)))
3.5b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 x (/.f64 y z))))
4.3b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (*.f64 x z) (/.f64 1 y))))
4.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 1 (/.f64 y (*.f64 x z)))))
1.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.4b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
0b
(/.f64 (fabs.f64 (-.f64 a b)) 2)
0b
(/.f64 (fabs.f64 (-.f64 a b)) 2)
20.7b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 (*.f64 2 b) (/.f64 1 a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (pow.f64 (/.f64 a (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) -1)) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) 2)) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
30.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (/.f64 (-.f64 (*.f64 b b) (fma.f64 a (*.f64 c -4) (*.f64 b b))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.7b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 2 (-.f64 (/.f64 b a) (/.f64 c b)))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
33.2b
(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 (+.f64 (*.f64 a (*.f64 c -4)) 0) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))))
20.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (pow.f64 (sqrt.f64 b) 2)) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
19.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) (pow.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)) 2)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (/.f64 1 a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
20.7b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 (*.f64 2 b) (/.f64 1 a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (pow.f64 (/.f64 a (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) -1)) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) 2)) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
30.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (/.f64 (-.f64 (*.f64 b b) (fma.f64 a (*.f64 c -4) (*.f64 b b))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.7b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 2 (-.f64 (/.f64 b a) (/.f64 c b)))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
33.2b
(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 (+.f64 (*.f64 a (*.f64 c -4)) 0) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (/.f64 1 a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.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) (pow.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)) 2)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) 2)) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
30.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (/.f64 (-.f64 (*.f64 b b) (fma.f64 a (*.f64 c -4) (*.f64 b b))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.7b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 2 (-.f64 (/.f64 b a) (/.f64 c b)))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
33.2b
(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 (+.f64 (*.f64 a (*.f64 c -4)) 0) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (pow.f64 (/.f64 a (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) -1)) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (/.f64 1 a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
20.6b
(if (>=.f64 b 0) (*.f64 -1/2 (*.f64 2 (/.f64 b a))) (/.f64 (*.f64 c 2) (*.f64 -2 b)))
19.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) (pow.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)) 2)))
19.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) 2)) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
30.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (/.f64 (-.f64 (*.f64 b b) (fma.f64 a (*.f64 c -4) (*.f64 b b))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.6b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b b) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
19.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) (pow.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)) 2)))
18.9b
(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 -2 b)))
33.2b
(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 (+.f64 (*.f64 a (*.f64 c -4)) 0) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4))))))))
18.9b
(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)))
23.0b
(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) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.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 (pow.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) 3) (*.f64 2 a)))
20.2b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.4b
(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 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
23.6b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (*.f64 -2 b) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.5b
(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 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))))) (*.f64 2 a)))
23.9b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 b) (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
21.9b
(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 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.4b
(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)))
35.7b
(if (>=.f64 b 0) (cbrt.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 c) (*.f64 2 c)) (*.f64 2 c)) (*.f64 (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.0b
(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) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.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 (pow.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) 3) (*.f64 2 a)))
20.2b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.4b
(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 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
23.6b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (*.f64 -2 b) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.5b
(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 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))))) (*.f64 2 a)))
23.9b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 b) (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
21.9b
(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 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.4b
(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)))
35.7b
(if (>=.f64 b 0) (cbrt.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 c) (*.f64 2 c)) (*.f64 2 c)) (*.f64 (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.0b
(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) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.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 (pow.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) 3) (*.f64 2 a)))
20.2b
(if (>=.f64 b 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) c)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.4b
(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 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
21.9b
(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 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.5b
(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 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))))) (*.f64 2 a)))
20.4b
(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)))
35.7b
(if (>=.f64 b 0) (cbrt.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 c) (*.f64 2 c)) (*.f64 2 c)) (*.f64 (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (/.f64 (*.f64 2 c) (*.f64 (cbrt.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))) (cbrt.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 (*.f64 -2 b) (*.f64 2 a)))
23.0b
(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) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
20.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 (pow.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) 3) (*.f64 2 a)))
21.9b
(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 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)))) (*.f64 2 a)))
23.7b
(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)))
20.4b
(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 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4))) (*.f64 2 a)))
20.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
20.5b
(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 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))))) (*.f64 2 a)))
20.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4))))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
20.4b
(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)))
20.0b
(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 -2 b) (*.f64 2 a)))
20.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) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
20.4b
(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.5b
(neg.f64 (neg.f64 (+.f64 (log.f64 x) x)))
0.0b
(neg.f64 (log.f64 (-.f64 (/.f64 1 x) 1)))
0.5b
(neg.f64 (neg.f64 (+.f64 (log.f64 x) x)))
0.0b
(neg.f64 (log.f64 (-.f64 (/.f64 1 x) 1)))
0.0b
(neg.f64 (log.f64 (-.f64 (/.f64 1 x) 1)))
0.4b
(-.f64 x (+.f64 1/2 (+.f64 (/.f64 1/8 x) (/.f64 1/16 (*.f64 x x)))))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
0.4b
(-.f64 x (+.f64 1/2 (+.f64 (/.f64 1/8 x) (/.f64 1/16 (*.f64 x x)))))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
0.4b
(-.f64 x (+.f64 1/2 (+.f64 (/.f64 1/8 x) (/.f64 1/16 (*.f64 x x)))))
30.6b
(sqrt.f64 (*.f64 (-.f64 x 1) x))
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
0.5b
(*.f64 (sqrt.f64 (-.f64 x 1)) (sqrt.f64 x))
0.0b
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 f n) (-.f64 n f)) 2)) (cbrt.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
29.9b
(fma.f64 -2 (+.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) (pow.f64 (/.f64 n f) 3)) -1)
0.0b
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 f n) (-.f64 n f)) 2)) (cbrt.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
29.9b
(fma.f64 -2 (+.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) (pow.f64 (/.f64 n f) 3)) -1)
0.0b
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 f n) (-.f64 n f)) 2)) (cbrt.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
29.9b
(fma.f64 -2 (+.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) (pow.f64 (/.f64 n f) 3)) -1)
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
Compiler

Compiled 153772 to 90558 computations (41.1% saved)

regimes7.3s (19.4%)

Compiler

Compiled 59075 to 40120 computations (32.1% saved)

simplify3.7s (9.9%)

Algorithm
43×egg-herbie
Rules
14738×fma-def_binary64
12395×fma-neg_binary64
7276×times-frac_binary64
7116×associate-/l*_binary64
5621×associate-*l*_binary64
Counts
2603 → 4265

series3.7s (9.7%)

Counts
40 → 836
Calls

40 calls:

594.0ms
(pow.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (fma.f64 x x -1)))) 2)
580.0ms
(pow.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (fma.f64 x x -1)))) 2) 2)
490.0ms
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))
426.0ms
(/.f64 2 (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) c))
162.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))

analyze3.4s (9.1%)

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)

rewrite857.0ms (2.3%)

Algorithm
25×rewrite-expression-head
Rules
386×add-cube-cbrt_binary64
196×add-sqr-sqrt_binary64
169×pow1_binary64
163×add-cbrt-cube_binary64
152×add-exp-log_binary64
Counts
40 → 1758
Calls

40 calls:

37.0ms
(-.f64 (neg.f64 b) (*.f64 (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4) (pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)))
33.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
32.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
31.0ms
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))
30.0ms
(pow.f64 (fma.f64 b b (*.f64 (*.f64 c a) -4)) 1/4)

localize388.0ms (1%)

Compiler

Compiled 12240 to 10200 computations (16.7% saved)

bsearch75.0ms (0.2%)

Compiler

Compiled 86 to 55 computations (36% saved)

end21.0ms (0.1%)

Compiler

Compiled 728 to 460 computations (36.8% saved)

Profiling

Loading profile data...