Details

Time bar (total: 3.0m)

sample90.0ms

Algorithm
intervals
Results
25.0ms99×body80nan
18.0ms196×body80valid
15.0ms29×body2560valid
11.0ms27×body1280valid
5.0ms14×body640valid
1.0msbody320valid
1.0msbody5120valid
0.0msbody160valid

simplify193.0ms

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

prune23.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 32.0b

localize46.0ms

Local error

Found 4 expressions with local error:

21.7b
(sqrt (fma (* a c) -4 (* b b)))
0.9b
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
0.6b
(fma (* a c) -4 (* b b))
0.1b
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)

rewrite62.0ms

Algorithm
rewrite-expression-head
Rules
169×add-sqr-sqrt
168×*-un-lft-identity
159×times-frac
116×add-cube-cbrt
60×prod-diff
46×sqrt-prod
34×distribute-rgt-neg-in
26×distribute-lft-out-- difference-of-squares
25×associate-/l*
21×distribute-lft-neg-in
10×fma-neg
add-cbrt-cube add-exp-log
add-log-exp
neg-mul-1
pow1 div-inv
expm1-log1p-u insert-posit16 log1p-expm1-u
cbrt-undiv associate-/r* div-exp
diff-log div-sub
associate--l- neg-sub0 rem-sqrt-square clear-num sub-neg frac-2neg sqrt-pow1 flip3-- pow1/2 neg-log fma-udef flip-- associate-/l/
Counts
4 → 240
Calls
4 calls:
Slowest
29.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
21.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
3.0ms
(sqrt (fma (* a c) -4 (* b b)))
0.0ms
(fma (* a c) -4 (* b b))

series436.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
135.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
124.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
98.0ms
(sqrt (fma (* a c) -4 (* b b)))
80.0ms
(fma (* a c) -4 (* b b))

simplify37.9s

Counts
394 → 252
Calls
394 calls:
Slowest
896.0ms
(* (* (/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a) (/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)) (/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a))
481.0ms
(/ (cbrt (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2)) (cbrt a))
412.0ms
(/ (/ (* (cbrt (- (- b) (sqrt (fma (* a c) -4 (* b b))))) (cbrt (- (- b) (sqrt (fma (* a c) -4 (* b b)))))) (* (cbrt 2) (cbrt 2))) (* (cbrt a) (cbrt a)))
318.0ms
(+ (* (- b) (- b)) (+ (* (sqrt (fma (* a c) -4 (* b b))) (sqrt (fma (* a c) -4 (* b b)))) (* (- b) (sqrt (fma (* a c) -4 (* b b))))))
304.0ms
(- (* (- b) (- b)) (* (sqrt (fma (* a c) -4 (* b b))) (sqrt (fma (* a c) -4 (* b b)))))

prune3.3s

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 6.7b

localize34.0ms

Local error

Found 4 expressions with local error:

21.7b
(sqrt (fma a (* c -4) (* b b)))
11.4b
(/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b))
3.4b
(/ (/ (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b)) 2) a)
0.4b
(- (sqrt (fma a (* c -4) (* b b))) b)

rewrite111.0ms

Algorithm
rewrite-expression-head
Rules
342×times-frac
199×add-sqr-sqrt
168×*-un-lft-identity
138×add-cube-cbrt
41×associate-/l*
33×add-cbrt-cube add-exp-log
30×sqrt-prod difference-of-squares
26×associate-/r/
18×prod-diff div-inv
15×cbrt-undiv div-exp distribute-lft-out--
14×flip3-- flip--
associate-/r*
fma-neg prod-exp cbrt-unprod add-log-exp
pow1
expm1-log1p-u insert-posit16 log1p-expm1-u
clear-num frac-2neg
rem-sqrt-square sub-neg sqrt-pow1 pow1/2 diff-log associate-/l/
Counts
4 → 279
Calls
4 calls:
Slowest
64.0ms
(/ (/ (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b)) 2) a)
22.0ms
(/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b))
15.0ms
(- (sqrt (fma a (* c -4) (* b b))) b)
1.0ms
(sqrt (fma a (* c -4) (* b b)))

series717.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
266.0ms
(/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b))
218.0ms
(/ (/ (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b)) 2) a)
127.0ms
(- (sqrt (fma a (* c -4) (* b b))) b)
106.0ms
(sqrt (fma a (* c -4) (* b b)))

simplify1.4m

Counts
442 → 291
Calls
442 calls:
Slowest
1.6s
(/ (/ (/ (* (* (* (* a a) a) (* (* 4 4) 4)) (* (* c c) c)) (* (* (- (sqrt (fma a (* c -4) (* b b))) b) (- (sqrt (fma a (* c -4) (* b b))) b)) (- (sqrt (fma a (* c -4) (* b b))) b))) (* (* 2 2) 2)) (* (* a a) a))
1.3s
(/ (/ (/ (* (* (* (* a 4) (* a 4)) (* a 4)) (* (* c c) c)) (* (* (- (sqrt (fma a (* c -4) (* b b))) b) (- (sqrt (fma a (* c -4) (* b b))) b)) (- (sqrt (fma a (* c -4) (* b b))) b))) (* (* 2 2) 2)) (* (* a a) a))
1.3s
(/ (/ (/ (* (* (* (* a 4) c) (* (* a 4) c)) (* (* a 4) c)) (* (* (- (sqrt (fma a (* c -4) (* b b))) b) (- (sqrt (fma a (* c -4) (* b b))) b)) (- (sqrt (fma a (* c -4) (* b b))) b))) (* (* 2 2) 2)) (* (* a a) a))
818.0ms
(/ (/ (* (* (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b)) (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b))) (/ (* (* a 4) c) (- (sqrt (fma a (* c -4) (* b b))) b))) (* (* 2 2) 2)) (* (* a a) a))
757.0ms
(/ a (/ (/ c (- (sqrt (sqrt (fma a (* c -4) (* b b)))) (sqrt b))) (cbrt 2)))

prune3.8s

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 6.7b

localize24.0ms

Local error

Found 4 expressions with local error:

21.7b
(sqrt (fma (* c a) -4 (* b b)))
0.6b
(fma (* c a) -4 (* b b))
0.4b
(- (sqrt (fma (* c a) -4 (* b b))) b)
0.1b
(/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2))

rewrite37.0ms

Algorithm
rewrite-expression-head
Rules
138×times-frac
135×add-sqr-sqrt
108×*-un-lft-identity
82×add-cube-cbrt
28×sqrt-prod
26×difference-of-squares
22×associate-/r*
18×prod-diff
13×distribute-lft-out--
add-cbrt-cube add-exp-log
fma-neg add-log-exp
pow1 div-inv
expm1-log1p-u insert-posit16 log1p-expm1-u
cbrt-undiv div-exp associate-/l*
rem-sqrt-square clear-num sub-neg frac-2neg sqrt-pow1 flip3-- pow1/2 diff-log associate-/r/ fma-udef flip--
Counts
4 → 178
Calls
4 calls:
Slowest
19.0ms
(/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2))
14.0ms
(- (sqrt (fma (* c a) -4 (* b b))) b)
1.0ms
(sqrt (fma (* c a) -4 (* b b)))
0.0ms
(fma (* c a) -4 (* b b))

series600.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
286.0ms
(/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2))
133.0ms
(sqrt (fma (* c a) -4 (* b b)))
118.0ms
(- (sqrt (fma (* c a) -4 (* b b))) b)
64.0ms
(fma (* c a) -4 (* b b))

simplify20.7s

Counts
280 → 190
Calls
280 calls:
Slowest
627.0ms
(- (* (sqrt (fma (* c a) -4 (* b b))) (sqrt (fma (* c a) -4 (* b b)))) (* b b))
377.0ms
(* (* (/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2)) (/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2))) (/ c (/ (- (sqrt (fma (* c a) -4 (* b b))) b) 2)))
351.0ms
(/ (* (cbrt c) (cbrt c)) (/ (* (cbrt (- (sqrt (fma (* c a) -4 (* b b))) b)) (cbrt (- (sqrt (fma (* c a) -4 (* b b))) b))) (* (cbrt 2) (cbrt 2))))
348.0ms
(- (pow (sqrt (fma (* c a) -4 (* b b))) 3) (pow b 3))
320.0ms
(* (* (- (sqrt (fma (* c a) -4 (* b b))) b) (- (sqrt (fma (* c a) -4 (* b b))) b)) (- (sqrt (fma (* c a) -4 (* b b))) b))

prune2.3s

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 6.7b

localize32.0ms

Local error

Found 4 expressions with local error:

21.7b
(sqrt (fma (* a c) -4 (* b b)))
1.0b
(/ 1 (sqrt 2))
0.9b
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
0.6b
(fma (* a c) -4 (* b b))

rewrite48.0ms

Algorithm
rewrite-expression-head
Rules
66×add-sqr-sqrt
65×*-un-lft-identity
61×add-cube-cbrt
60×prod-diff
46×sqrt-prod
22×distribute-rgt-neg-in
21×distribute-lft-neg-in
18×times-frac
10×fma-neg
add-exp-log add-log-exp
pow1 neg-mul-1
associate-/r* add-cbrt-cube
expm1-log1p-u insert-posit16 log1p-expm1-u
pow-flip associate-/l*
sqrt-pow1 pow1/2 diff-log div-exp distribute-lft-out-- difference-of-squares
associate--l- neg-sub0 cbrt-undiv rem-sqrt-square rec-exp clear-num sub-neg frac-2neg flip3-- 1-exp neg-log fma-udef div-inv flip-- inv-pow
Counts
4 → 166
Calls
4 calls:
Slowest
21.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
19.0ms
(/ 1 (sqrt 2))
3.0ms
(sqrt (fma (* a c) -4 (* b b)))
0.0ms
(fma (* a c) -4 (* b b))

series285.0ms

Counts
4 → 10
Calls
4 calls:
Slowest
108.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
107.0ms
(sqrt (fma (* a c) -4 (* b b)))
69.0ms
(fma (* a c) -4 (* b b))
0.0ms
(/ 1 (sqrt 2))

simplify18.6s

Counts
259 → 176
Calls
259 calls:
Slowest
599.0ms
(fma 1 (- b) (- (* (cbrt (sqrt (fma (* a c) -4 (* b b)))) (* (cbrt (sqrt (fma (* a c) -4 (* b b)))) (cbrt (sqrt (fma (* a c) -4 (* b b))))))))
351.0ms
(- (* (- b) (- b)) (* (sqrt (fma (* a c) -4 (* b b))) (sqrt (fma (* a c) -4 (* b b)))))
305.0ms
(* (/ 1 (sqrt 2)) (/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) (sqrt 2)) a))
303.0ms
(+ (* (- b) (- b)) (+ (* (sqrt (fma (* a c) -4 (* b b))) (sqrt (fma (* a c) -4 (* b b)))) (* (- b) (sqrt (fma (* a c) -4 (* b b))))))
275.0ms
(fma (sqrt (- b)) (sqrt (- b)) (- (* (cbrt (sqrt (fma (* a c) -4 (* b b)))) (* (cbrt (sqrt (fma (* a c) -4 (* b b)))) (cbrt (sqrt (fma (* a c) -4 (* b b))))))))

prune2.4s

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 6.7b

regimes218.0ms

Accuracy

96.1% (0.9b remaining)

Error of 6.4b against oracle of 5.5b and baseline of 29.1b

bsearch332.0ms

end0.0ms

sample4.5s

Algorithm
intervals
Results
1.4s1054×body2560valid
929.0ms5901×body80valid
815.0ms884×body1280valid
419.0ms2927×body80nan
245.0ms421×body640valid
149.0ms116×body5120valid
146.0ms229×body320valid
30.0ms118×body160valid