Details

Time bar (total: 51.1s)

sample106.0ms

Algorithm
intervals
Results
25.0ms195×body80valid
24.0ms32×body2560valid
14.0ms25×body1280valid
10.0ms92×body80nan
10.0msbody640valid
4.0msbody5120valid
2.0msbody320valid
1.0msbody160valid

simplify169.0ms

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

prune19.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.4b

localize43.0ms

Local error

Found 4 expressions with local error:

21.3b
(sqrt (fma (* a c) -4 (* b b)))
1.1b
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
0.4b
(fma (* a c) -4 (* b b))
0.1b
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)

rewrite68.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/
Calls
4 calls:
Slowest
35.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
25.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
2.0ms
(sqrt (fma (* a c) -4 (* b b)))
0.0ms
(fma (* a c) -4 (* b b))

series398.0ms

Calls
4 calls:
Slowest
124.0ms
(/ (/ (- (- b) (sqrt (fma (* a c) -4 (* b b)))) 2) a)
109.0ms
(- (- b) (sqrt (fma (* a c) -4 (* b b))))
91.0ms
(sqrt (fma (* a c) -4 (* b b)))
73.0ms
(fma (* a c) -4 (* b b))

simplify29.5s

Calls
334 calls:
Slowest
486.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)))
276.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))))))))
273.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))
255.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))))))))
248.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.4s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 5.4b

localize47.0ms

Local error

Found 3 expressions with local error:

21.3b
(sqrt (fma a (* c -4) (* b b)))
1.1b
(+ b (sqrt (fma a (* c -4) (* b b))))
0.2b
(* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (/ 1/2 a))

rewrite71.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
Calls
3 calls:
Slowest
58.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)))

series324.0ms

Calls
3 calls:
Slowest
118.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
114.0ms
(* (- (+ b (sqrt (fma a (* c -4) (* b b))))) (/ 1/2 a))
91.0ms
(sqrt (fma a (* c -4) (* b b)))

simplify3.9s

Calls
55 calls:
Slowest
352.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)
300.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)))
290.0ms
(* (- (+ (pow b 3) (pow (sqrt (fma a (* c -4) (* b b))) 3))) (/ 1/2 a))
287.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)))
277.0ms
(* (- (+ (pow b 3) (pow (sqrt (fma a (* c -4) (* b b))) 3))) 1/2)

prune1.4s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 5.3b

localize28.0ms

Local error

Found 3 expressions with local error:

21.3b
(sqrt (fma a (* c -4) (* b b)))
1.1b
(+ b (sqrt (fma a (* c -4) (* b b))))
0.1b
(/ (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2) a)

rewrite26.0ms

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity
add-sqr-sqrt add-cbrt-cube add-exp-log
add-cube-cbrt
add-log-exp
pow1
expm1-log1p-u associate-/r* fma-def times-frac sqrt-prod insert-posit16 log1p-expm1-u
cbrt-undiv flip3-+ div-exp associate-*l/ flip-+ distribute-neg-frac associate-/l/
distribute-lft-neg-out +-commutative rem-sqrt-square clear-num sum-log frac-2neg sqrt-pow1 pow1/2 prod-exp distribute-frac-neg cbrt-unprod div-inv distribute-lft-out associate-/l*
Calls
3 calls:
Slowest
13.0ms
(/ (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2) a)
9.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
3.0ms
(sqrt (fma a (* c -4) (* b b)))

series364.0ms

Calls
3 calls:
Slowest
152.0ms
(/ (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2) a)
113.0ms
(sqrt (fma a (* c -4) (* b b)))
99.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))

simplify2.5s

Calls
34 calls:
Slowest
422.0ms
(/ (* (* (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2) (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2)) (* (- (+ b (sqrt (fma a (* c -4) (* b b))))) 1/2)) (* (* a a) a))
328.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))
282.0ms
(* (- (+ (pow b 3) (pow (sqrt (fma a (* c -4) (* b b))) 3))) 1/2)
229.0ms
(- (* 2 b) (* 2 (/ (* a c) b)))
216.0ms
(* (- (- (* b b) (* (sqrt (fma a (* c -4) (* b b))) (sqrt (fma a (* c -4) (* b b)))))) 1/2)

prune829.0ms

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 5.3b

localize32.0ms

Local error

Found 4 expressions with local error:

21.3b
(sqrt (fma a (* c -4) (* b b)))
21.3b
(sqrt (fma a (* c -4) (* b b)))
1.1b
(+ b (sqrt (fma a (* c -4) (* b b))))
1.1b
(+ b (sqrt (fma a (* c -4) (* b b))))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity
10×add-sqr-sqrt
add-cube-cbrt add-log-exp
pow1 fma-def sqrt-prod
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u
+-commutative rem-sqrt-square sum-log sqrt-pow1 flip3-+ pow1/2 flip-+ distribute-lft-out
Calls
4 calls:
Slowest
9.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
9.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
2.0ms
(sqrt (fma a (* c -4) (* b b)))
2.0ms
(sqrt (fma a (* c -4) (* b b)))

series460.0ms

Calls
4 calls:
Slowest
135.0ms
(sqrt (fma a (* c -4) (* b b)))
115.0ms
(sqrt (fma a (* c -4) (* b b)))
105.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))
105.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))

simplify990.0ms

Calls
30 calls:
Slowest
276.0ms
(- (* 2 b) (* 2 (/ (* a c) b)))
195.0ms
(- (* 2 b) (* 2 (/ (* a c) b)))
99.0ms
(* 2 (/ (* a c) b))
82.0ms
(* 2 (/ (* a c) b))
42.0ms
(+ b (sqrt (fma a (* c -4) (* b b))))

prune1.1s

Pruning

10 alts after pruning (7 fresh and 3 done)

Merged error: 5.3b

regimes401.0ms

Accuracy

81.3% (5.2b remaining)

Error of 10.9b against oracle of 5.6b and baseline of 33.7b

bsearch261.0ms

end0.0ms

sample4.6s

Algorithm
intervals
Results
1.5s1086×body2560valid
1.0s5821×body80valid
727.0ms913×body1280valid
468.0ms2866×body80nan
314.0ms462×body640valid
184.0ms109×body5120valid
136.0ms213×body320valid
32.0ms117×body160valid