Details

Time bar (total: 1.6m)

sample163.0ms

Algorithm
intervals
Results
47.0ms172×body80valid
40.0ms41×body2560valid
30.0ms38×body1280valid
13.0ms98×body80nan
9.0ms14×body640valid
2.0msbody160valid
1.0msbody320valid
1.0msbody5120valid

simplify251.0ms

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

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 34.3b

localize22.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (fma (* a c) -4 (* b b)))
1.0b
(- (- 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)

rewrite55.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
39.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
10.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
1.0ms
(sqrt (fma (* a c) -4 (* b b)))
0.0ms
(fma (* a c) -4 (* b b))

series793.0ms

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

simplify29.6s

Counts
334 → 252
Calls
334 calls:
Slowest
397.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)))
247.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))))))))
244.0ms
(fma (- (* (cbrt b) (cbrt b))) (cbrt 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))))))))
234.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))))))))
227.0ms
(fma (* (cbrt b) (cbrt b)) (- (cbrt 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))))))))

prune3.2s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 5.1b

localize25.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (fma (* a c) -4 (* b b)))
1.0b
(- (- 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)

rewrite40.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
24.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
10.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
1.0ms
(sqrt (fma (* a c) -4 (* b b)))
0.0ms
(fma (* a c) -4 (* b b))

series442.0ms

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

simplify30.6s

Counts
334 → 252
Calls
334 calls:
Slowest
571.0ms
(/ (* (* (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2)) (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2)) (* (* a a) a))
453.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)))
294.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))))))))
282.0ms
(fma (* (cbrt (- b)) (cbrt (- b))) (cbrt (- 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))))))))
252.0ms
(fma (- (* (cbrt b) (cbrt b))) (cbrt 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))))))))

prune3.3s

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 5.1b

localize53.0ms

Local error

Found 3 expressions with local error:

21.6b
(sqrt (fma a (* c -4) (* b b)))
1.0b
(+ b (sqrt (fma a (* c -4) (* b b))))
0.2b
(* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (/ 1/2 a))

rewrite48.0ms

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt *-un-lft-identity
15×add-cube-cbrt
13×associate-*r*
12×associate-*l*
10×times-frac
add-cbrt-cube add-exp-log
pow1
add-log-exp
distribute-lft-neg-in distribute-rgt-neg-in distribute-neg-frac
expm1-log1p-u fma-def flip3-+ sqrt-prod flip-+ insert-posit16 log1p-expm1-u distribute-lft-out
frac-times associate-*l/ prod-exp cbrt-unprod unswap-sqr
distribute-lft-neg-out cbrt-undiv +-commutative rem-sqrt-square neg-mul-1 sum-log sqrt-pow1 pow1/2 div-exp pow-prod-down associate-*r/ *-commutative div-inv
Counts
3 → 83
Calls
3 calls:
Slowest
36.0ms
(* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (/ 1/2 a))
9.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
2.0ms
(sqrt (fma a (* c -4) (* b b)))

series364.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
135.0ms
(* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (/ 1/2 a))
122.0ms
(sqrt (fma a (* c -4) (* b b)))
107.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))

simplify3.9s

Counts
55 → 92
Calls
55 calls:
Slowest
396.0ms
(* (* (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (- (+ b (sqrt (fma a (* c -4) (* b b)))))) (- (+ b (sqrt (fma a (* c -4) (* b b)))))) (/ (* (* 1/2 1/2) 1/2) (* (* a a) a)))
325.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)))))) a)
317.0ms
(* (* (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (- (+ b (sqrt (fma a (* c -4) (* b b)))))) (- (+ b (sqrt (fma a (* c -4) (* b b)))))) (* (* (/ 1/2 a) (/ 1/2 a)) (/ 1/2 a)))
293.0ms
(- (* 2 b) (* 2 (/ (* a c) b)))
285.0ms
(* (- (+ (pow b 3) (pow (sqrt (fma a (* c -4) (* b b))) 3))) (/ 1/2 a))

prune1.1s

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 5.0b

localize60.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (fma (* a c) -4 (* b b)))
21.6b
(sqrt (fma (* a c) -4 (* b b)))
21.6b
(sqrt (fma (* a c) -4 (* b b)))
1.0b
(- (- b) (sqrt (fma (* a c) -4 (* b b))))

rewrite16.0ms

Algorithm
rewrite-expression-head
Rules
60×prod-diff
55×add-sqr-sqrt
52×*-un-lft-identity
48×add-cube-cbrt
40×sqrt-prod
22×distribute-rgt-neg-in
21×distribute-lft-neg-in
10×fma-neg
add-log-exp
pow1 neg-mul-1
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u
rem-sqrt-square sqrt-pow1 pow1/2
diff-log distribute-lft-out-- difference-of-squares
associate--l- neg-sub0 sub-neg flip3-- neg-log flip--
Counts
4 → 139
Calls
4 calls:
Slowest
10.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
2.0ms
(sqrt (fma (* a c) -4 (* b b)))
1.0ms
(sqrt (fma (* a c) -4 (* b b)))
1.0ms
(sqrt (fma (* a c) -4 (* b b)))

series447.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
118.0ms
(sqrt (fma (* a c) -4 (* b b)))
117.0ms
(sqrt (fma (* a c) -4 (* b b)))
116.0ms
(sqrt (fma (* a c) -4 (* b b)))
95.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))

simplify13.7s

Counts
162 → 151
Calls
162 calls:
Slowest
288.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))))))))
251.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))))))))
249.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))))))))
244.0ms
(fma (- (* (cbrt b) (cbrt b))) (cbrt 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))))))))
239.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.8s

Pruning

12 alts after pruning (9 fresh and 3 done)

Merged error: 5.0b

regimes513.0ms

Accuracy

84.1% (4.5b remaining)

Error of 9.6b against oracle of 5.2b and baseline of 33.3b

bsearch206.0ms

end0.0ms

sample4.6s

Algorithm
intervals
Results
1.3s5834×body80valid
1.1s1133×body2560valid
715.0ms851×body1280valid
451.0ms2901×body80nan
362.0ms441×body640valid
152.0ms119×body5120valid
131.0ms248×body320valid
38.0ms127×body160valid