Details

Time bar (total: 33.9s)

sample87.0ms

Algorithm
intervals
Results
47.0ms275×body80valid
16.0ms104×body80nan

simplify230.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
230.0ms
(if (>= b 0) (/ (* 2 c) (- (- b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)))

prune18.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 18.3b

localize162.0ms

Local error

Found 4 expressions with local error:

20.6b
(sqrt (fma -4 (* c a) (* b b)))
20.6b
(sqrt (fma -4 (* c a) (* b b)))
1.4b
(fma -4 (* c a) (* b b))
1.4b
(fma -4 (* c a) (* b b))

rewrite11.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 *-un-lft-identity add-cube-cbrt sqrt-prod
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u add-log-exp
rem-sqrt-square sqrt-pow1 pow1/2 fma-udef
Counts
4 → 54
Calls
4 calls:
Slowest
6.0ms
(sqrt (fma -4 (* c a) (* b b)))
3.0ms
(sqrt (fma -4 (* c a) (* b b)))
0.0ms
(fma -4 (* c a) (* b b))
0.0ms
(fma -4 (* c a) (* b b))

series344.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
129.0ms
(sqrt (fma -4 (* c a) (* b b)))
82.0ms
(sqrt (fma -4 (* c a) (* b b)))
77.0ms
(fma -4 (* c a) (* b b))
55.0ms
(fma -4 (* c a) (* b b))

simplify826.0ms

Counts
22 → 66
Calls
22 calls:
Slowest
108.0ms
(- (pow b 2) (* 4 (* a c)))
96.0ms
(- (pow b 2) (* 4 (* a c)))
95.0ms
(- (pow b 2) (* 4 (* a c)))
90.0ms
(- (pow b 2) (* 4 (* a c)))
87.0ms
(- (pow b 2) (* 4 (* a c)))

prune1.1s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 13.4b

localize156.0ms

Local error

Found 4 expressions with local error:

20.6b
(sqrt (fma -4 (* c a) (* b b)))
20.6b
(sqrt (fma -4 (* c a) (* b b)))
20.6b
(sqrt (fma -4 (* c a) (* b b)))
8.8b
(- (* (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt (sqrt (fma -4 (* c a) (* b b))))) b)

rewrite35.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
sqrt-prod
*-un-lft-identity add-cube-cbrt
pow1
add-log-exp
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u
rem-sqrt-square sqrt-pow1 pow1/2 prod-diff
sub-neg flip3-- fma-neg diff-log flip-- difference-of-squares
Counts
4 → 68
Calls
4 calls:
Slowest
27.0ms
(- (* (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt (sqrt (fma -4 (* c a) (* b b))))) b)
3.0ms
(sqrt (fma -4 (* c a) (* b b)))
2.0ms
(sqrt (fma -4 (* c a) (* b b)))
2.0ms
(sqrt (fma -4 (* c a) (* b b)))

series467.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
133.0ms
(sqrt (fma -4 (* c a) (* b b)))
115.0ms
(sqrt (fma -4 (* c a) (* b b)))
110.0ms
(sqrt (fma -4 (* c a) (* b b)))
108.0ms
(- (* (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt (sqrt (fma -4 (* c a) (* b b))))) b)

simplify940.0ms

Counts
37 → 80
Calls
37 calls:
Slowest
240.0ms
(/ (exp (* (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt (sqrt (fma -4 (* c a) (* b b)))))) (exp b))
71.0ms
(fma (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt (sqrt (fma -4 (* c a) (* b b)))) (- (* (cbrt b) (* (cbrt b) (cbrt b)))))
46.0ms
(+ (sqrt (sqrt (fma -4 (* c a) (* b b)))) (sqrt b))
46.0ms
(sqrt (* (cbrt (fma -4 (* c a) (* b b))) (cbrt (fma -4 (* c a) (* b b)))))
45.0ms
(sqrt (* (cbrt (fma -4 (* c a) (* b b))) (cbrt (fma -4 (* c a) (* b b)))))

prune1.8s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 13.4b

localize166.0ms

Local error

Found 4 expressions with local error:

21.3b
(cbrt (fma -4 (* c a) (* b b)))
21.3b
(cbrt (fma -4 (* c a) (* b b)))
21.3b
(cbrt (fma -4 (* c a) (* b b)))
20.6b
(sqrt (* (* (cbrt (fma -4 (* c a) (* b b))) (cbrt (fma -4 (* c a) (* b b)))) (cbrt (fma -4 (* c a) (* b b)))))

rewrite17.0ms

Algorithm
rewrite-expression-head
Rules
24×pow1
15×sqrt-pow1
12×pow1/3
cbrt-prod pow-prod-up
add-sqr-sqrt *-un-lft-identity add-cube-cbrt
pow-plus
pow-prod-down
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u add-log-exp
pow-sqr
pow2
pow1/2 pow3 sqrt-prod
Counts
4 → 69
Calls
4 calls:
Slowest
14.0ms
(sqrt (* (* (cbrt (fma -4 (* c a) (* b b))) (cbrt (fma -4 (* c a) (* b b)))) (cbrt (fma -4 (* c a) (* b b)))))
1.0ms
(cbrt (fma -4 (* c a) (* b b)))
1.0ms
(cbrt (fma -4 (* c a) (* b b)))
1.0ms
(cbrt (fma -4 (* c a) (* b b)))

series888.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
269.0ms
(cbrt (fma -4 (* c a) (* b b)))
267.0ms
(cbrt (fma -4 (* c a) (* b b)))
245.0ms
(cbrt (fma -4 (* c a) (* b b)))
106.0ms
(sqrt (* (* (cbrt (fma -4 (* c a) (* b b))) (cbrt (fma -4 (* c a) (* b b)))) (cbrt (fma -4 (* c a) (* b b)))))

simplify3.6s

Counts
37 → 81
Calls
37 calls:
Slowest
349.0ms
(exp (* 1/3 (- (log -4) (+ (log (/ 1 a)) (log (/ 1 c))))))
345.0ms
(- (pow b 2/3) (* 4/3 (* (* a c) (pow (/ 1 (pow b 4)) 1/3))))
328.0ms
(- (pow b 2/3) (* 4/3 (* (* a c) (pow (/ 1 (pow b 4)) 1/3))))
327.0ms
(- (pow b 2/3) (* 4/3 (* (* a c) (pow (/ 1 (pow b 4)) 1/3))))
267.0ms
(exp (* 1/3 (- (log -4) (+ (log (/ 1 a)) (log (/ 1 c))))))

prune1.4s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 13.4b

localize164.0ms

Local error

Found 4 expressions with local error:

20.6b
(pow (fma (* -4 a) c (* b b)) (/ 1 2))
20.6b
(sqrt (fma -4 (* c a) (* b b)))
1.4b
(fma -4 (* c a) (* b b))
0.7b
(- (- b) (sqrt (fma -4 (* c a) (* b b))))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
60×prod-diff
59×add-sqr-sqrt
58×*-un-lft-identity
54×add-cube-cbrt
34×sqrt-prod
22×distribute-rgt-neg-in
21×distribute-lft-neg-in
13×pow-unpow
10×fma-neg
times-frac
add-log-exp
neg-mul-1
pow1
add-exp-log
expm1-log1p-u add-cbrt-cube insert-posit16 log1p-expm1-u
unpow-prod-down
diff-log distribute-lft-out-- difference-of-squares
associate--l- neg-sub0 pow-to-exp rem-sqrt-square sub-neg pow-pow sqrt-pow1 flip3-- pow1/2 neg-log pow-exp fma-udef div-inv flip-- sqr-pow
Counts
4 → 148
Calls
4 calls:
Slowest
15.0ms
(- (- b) (sqrt (fma -4 (* c a) (* b b))))
3.0ms
(pow (fma (* -4 a) c (* b b)) (/ 1 2))
1.0ms
(sqrt (fma -4 (* c a) (* b b)))
0.0ms
(fma -4 (* c a) (* b b))

series535.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
246.0ms
(pow (fma (* -4 a) c (* b b)) (/ 1 2))
115.0ms
(- (- b) (sqrt (fma -4 (* c a) (* b b))))
95.0ms
(sqrt (fma -4 (* c a) (* b b)))
79.0ms
(fma -4 (* c a) (* b b))

simplify14.1s

Counts
170 → 160
Calls
170 calls:
Slowest
275.0ms
(fma (* (cbrt b) (cbrt b)) (- (cbrt b)) (- (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (cbrt (sqrt (fma -4 (* c a) (* b b))))))))
255.0ms
(exp (* 1/2 (- (log -4) (+ (log (/ 1 a)) (log (/ 1 c))))))
255.0ms
(fma (sqrt b) (- (sqrt b)) (- (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (cbrt (sqrt (fma -4 (* c a) (* b b))))))))
244.0ms
(pow (* (cbrt (fma (* -4 a) c (* b b))) (cbrt (fma (* -4 a) c (* b b)))) (/ 1 2))
230.0ms
(fma (- (* (cbrt b) (cbrt b))) (cbrt b) (- (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (* (cbrt (sqrt (fma -4 (* c a) (* b b)))) (cbrt (sqrt (fma -4 (* c a) (* b b))))))))

prune3.0s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 13.0b

regimes434.0ms

Accuracy

87% (1.0b remaining)

Error of 13.0b against oracle of 12.0b and baseline of 19.6b

bsearch163.0ms

end0.0ms

sample3.3s

Algorithm
intervals
Results
1.9s8706×body80valid
999.0ms2958×body80nan