Details

Time bar (total: 2.7m)

sample168.0ms

Algorithm
intervals
Results
50.0ms28×body1280valid
36.0ms209×body80valid
29.0ms28×body2560valid
16.0ms99×body80nan
9.0ms13×body640valid
2.0msbody320valid
1.0msbody5120valid
0.0msbody160valid

simplify138.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
138.0ms
(/ (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))

prune21.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 27.1b

localize42.0ms

Local error

Found 4 expressions with local error:

20.2b
(sqrt (fma c (* -4 a) (* b b)))
0.2b
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)
0.2b
(- (sqrt (fma c (* -4 a) (* b b))) b)
0.1b
(/ (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2) a)

rewrite69.0ms

Algorithm
rewrite-expression-head
Rules
162×add-sqr-sqrt
156×times-frac
127×*-un-lft-identity
93×add-cube-cbrt
34×difference-of-squares
32×sqrt-prod
28×associate-/l*
18×prod-diff
17×distribute-lft-out--
11×add-cbrt-cube add-exp-log
associate-/r* fma-neg div-inv add-log-exp
pow1
expm1-log1p-u cbrt-undiv div-exp insert-posit16 log1p-expm1-u
div-sub associate-/l/
clear-num frac-2neg flip3-- flip--
rem-sqrt-square sub-neg sqrt-pow1 pow1/2 diff-log
Counts
4 → 213
Calls
4 calls:
Slowest
33.0ms
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)
19.0ms
(/ (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2) a)
8.0ms
(- (sqrt (fma c (* -4 a) (* b b))) b)
3.0ms
(sqrt (fma c (* -4 a) (* b b)))

series452.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
117.0ms
(/ (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2) a)
114.0ms
(sqrt (fma c (* -4 a) (* b b)))
110.0ms
(- (sqrt (fma c (* -4 a) (* b b))) b)
110.0ms
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)

simplify17.8s

Counts
272 → 225
Calls
272 calls:
Slowest
622.0ms
(- (* (sqrt (fma c (* -4 a) (* b b))) (sqrt (fma c (* -4 a) (* b b)))) (* b b))
400.0ms
(/ (/ (* (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b)) (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b))) (* (cbrt 2) (cbrt 2))) (* (cbrt a) (cbrt a)))
280.0ms
(- (pow (sqrt (fma c (* -4 a) (* b b))) 3) (pow b 3))
244.0ms
(/ (* (* (- (sqrt (fma c (* -4 a) (* b b))) b) (- (sqrt (fma c (* -4 a) (* b b))) b)) (- (sqrt (fma c (* -4 a) (* b b))) b)) (* (* 2 2) 2))
225.0ms
(/ (/ (* (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b)) (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b))) (sqrt 2)) (* (cbrt a) (cbrt a)))

prune2.9s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 22.7b

localize48.0ms

Local error

Found 4 expressions with local error:

20.2b
(sqrt (fma c (* -4 a) (* b b)))
0.2b
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)
0.2b
(/ 1 (/ a (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)))
0.2b
(- (sqrt (fma c (* -4 a) (* b b))) b)

rewrite92.0ms

Algorithm
rewrite-expression-head
Rules
711×times-frac
479×add-sqr-sqrt
396×*-un-lft-identity
314×add-cube-cbrt
82×difference-of-squares
74×associate-/r*
56×sqrt-prod
41×distribute-lft-out--
27×add-exp-log
18×prod-diff div-inv
16×div-exp
15×add-cbrt-cube
associate-/l*
cbrt-undiv
pow1 fma-neg add-log-exp
associate-/r/
expm1-log1p-u insert-posit16 log1p-expm1-u
rec-exp 1-exp
clear-num frac-2neg flip3-- flip-- associate-/l/
rem-sqrt-square sub-neg sqrt-pow1 pow1/2 diff-log div-sub pow-flip inv-pow
Counts
4 → 418
Calls
4 calls:
Slowest
33.0ms
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)
17.0ms
(/ 1 (/ a (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)))
12.0ms
(- (sqrt (fma c (* -4 a) (* b b))) b)
3.0ms
(sqrt (fma c (* -4 a) (* b b)))

series554.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
192.0ms
(/ 1 (/ a (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)))
134.0ms
(/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2)
119.0ms
(- (sqrt (fma c (* -4 a) (* b b))) b)
108.0ms
(sqrt (fma c (* -4 a) (* b b)))

simplify1.9m

Counts
620 → 430
Calls
620 calls:
Slowest
978.0ms
(- (* (sqrt (fma c (* -4 a) (* b b))) (sqrt (fma c (* -4 a) (* b b)))) (* b b))
770.0ms
(/ (cbrt 1) (/ a (/ (- (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt b)) 2)))
755.0ms
(/ (sqrt 1) (/ 1 (/ (* (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b)) (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b))) (* (cbrt 2) (cbrt 2)))))
679.0ms
(/ 1 (/ a (/ (- (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt b)) (sqrt 2))))
635.0ms
(/ (sqrt 1) (/ (* (cbrt a) (cbrt a)) (/ (* (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b)) (cbrt (- (sqrt (fma c (* -4 a) (* b b))) b))) (sqrt 2))))

prune5.8s

Pruning

16 alts after pruning (15 fresh and 1 done)

Merged error: 22.7b

localize22.0ms

Local error

Found 4 expressions with local error:

20.2b
(sqrt (fma (* c -4) a (* b b)))
0.4b
(/ (- (sqrt (fma (* c -4) a (* b b))) b) a)
0.2b
(- (sqrt (fma (* c -4) a (* b b))) b)
0.0b
(fma (* c -4) a (* b b))

rewrite48.0ms

Algorithm
rewrite-expression-head
Rules
51×add-sqr-sqrt
40×*-un-lft-identity
30×add-cube-cbrt
20×sqrt-prod
18×times-frac prod-diff
10×difference-of-squares
add-cbrt-cube fma-neg add-exp-log associate-/l* add-log-exp
pow1 distribute-lft-out--
expm1-log1p-u insert-posit16 log1p-expm1-u
associate-/r*
flip3-- flip-- associate-/l/
cbrt-undiv rem-sqrt-square clear-num sub-neg frac-2neg sqrt-pow1 pow1/2 diff-log div-sub div-exp fma-udef div-inv
Counts
4 → 114
Calls
4 calls:
Slowest
29.0ms
(/ (- (sqrt (fma (* c -4) a (* b b))) b) a)
13.0ms
(- (sqrt (fma (* c -4) a (* b b))) b)
2.0ms
(sqrt (fma (* c -4) a (* b b)))
0.0ms
(fma (* c -4) a (* b b))

series435.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
129.0ms
(- (sqrt (fma (* c -4) a (* b b))) b)
117.0ms
(sqrt (fma (* c -4) a (* b b)))
96.0ms
(/ (- (sqrt (fma (* c -4) a (* b b))) b) a)
92.0ms
(fma (* c -4) a (* b b))

simplify6.0s

Counts
111 → 126
Calls
111 calls:
Slowest
635.0ms
(- (* (sqrt (fma (* c -4) a (* b b))) (sqrt (fma (* c -4) a (* b b)))) (* b b))
392.0ms
(- (pow (sqrt (fma (* c -4) a (* b b))) 3) (pow b 3))
308.0ms
(/ (* (* (- (sqrt (fma (* c -4) a (* b b))) b) (- (sqrt (fma (* c -4) a (* b b))) b)) (- (sqrt (fma (* c -4) a (* b b))) b)) (* (* a a) a))
110.0ms
(fma (* (cbrt (sqrt (fma (* c -4) a (* b b)))) (cbrt (sqrt (fma (* c -4) a (* b b))))) (cbrt (sqrt (fma (* c -4) a (* b b)))) (- (* b 1)))
109.0ms
(fma (* (cbrt (sqrt (fma (* c -4) a (* b b)))) (cbrt (sqrt (fma (* c -4) a (* b b))))) (cbrt (sqrt (fma (* c -4) a (* b b)))) (- (* (cbrt b) (* (cbrt b) (cbrt b)))))

prune1.4s

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 18.5b

localize27.0ms

Local error

Found 4 expressions with local error:

20.2b
(sqrt (fma (* c -4) a (* b b)))
20.2b
(sqrt (fma (* c -4) a (* b b)))
0.3b
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))
0.3b
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))

rewrite29.0ms

Algorithm
rewrite-expression-head
Rules
20×add-sqr-sqrt sqrt-prod
12×*-un-lft-identity
pow1 add-cube-cbrt
expm1-log1p-u rem-sqrt-square sqrt-pow1 add-cbrt-cube pow1/2 sqrt-div add-exp-log insert-posit16 log1p-expm1-u add-log-exp difference-of-squares
flip3-- flip-- distribute-lft-out--
Counts
4 → 74
Calls
4 calls:
Slowest
16.0ms
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))
9.0ms
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))
2.0ms
(sqrt (fma (* c -4) a (* b b)))
1.0ms
(sqrt (fma (* c -4) a (* b b)))

series537.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
158.0ms
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))
146.0ms
(sqrt (- (sqrt (fma (* c -4) a (* b b))) b))
133.0ms
(sqrt (fma (* c -4) a (* b b)))
100.0ms
(sqrt (fma (* c -4) a (* b b)))

simplify3.9s

Counts
42 → 86
Calls
42 calls:
Slowest
1.1s
(sqrt (- (* (sqrt (fma (* c -4) a (* b b))) (sqrt (fma (* c -4) a (* b b)))) (* b b)))
1.1s
(sqrt (- (* (sqrt (fma (* c -4) a (* b b))) (sqrt (fma (* c -4) a (* b b)))) (* b b)))
403.0ms
(sqrt (- (pow (sqrt (fma (* c -4) a (* b b))) 3) (pow b 3)))
353.0ms
(sqrt (- (pow (sqrt (fma (* c -4) a (* b b))) 3) (pow b 3)))
70.0ms
(sqrt (+ (sqrt (sqrt (fma (* c -4) a (* b b)))) (sqrt b)))

prune1.3s

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 18.5b

regimes370.0ms

Accuracy

93.4% (0.8b remaining)

Error of 22.1b against oracle of 21.3b and baseline of 32.9b

bsearch144.0ms

end0.0ms

sample4.7s

Algorithm
intervals
Results
1.5s1074×body2560valid
1.1s881×body1280valid
893.0ms5900×body80valid
401.0ms2889×body80nan
314.0ms467×body640valid
114.0ms221×body320valid
90.0ms95×body5120valid
28.0ms113×body160valid