Details

Time bar (total: 2.5m)

sample116.0ms

Algorithm
intervals
Results
39.0ms41×body2560valid
22.0ms179×body80valid
17.0ms27×body1280valid
11.0ms95×body80nan
6.0ms12×body640valid
4.0msbody5120valid
2.0msbody320valid
1.0msbody160valid

simplify132.0ms

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

prune12.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 35.4b

localize27.0ms

Local error

Found 4 expressions with local error:

25.6b
(sqrt (fma b b (* (* a c) -4)))
2.3b
(fma b b (* (* a c) -4))
1.0b
(- (sqrt (fma b b (* (* a c) -4))) b)
0.1b
(/ (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2) a)

rewrite51.0ms

Algorithm
rewrite-expression-head
Rules
141×add-sqr-sqrt
138×times-frac
112×*-un-lft-identity
84×add-cube-cbrt
29×sqrt-prod
28×associate-/l* difference-of-squares
18×prod-diff
16×associate-/l/
14×distribute-lft-out--
add-cbrt-cube add-exp-log
associate-/r* fma-neg add-log-exp
pow1 div-inv
expm1-log1p-u insert-posit16 log1p-expm1-u
cbrt-undiv div-exp
clear-num frac-2neg flip3-- div-sub flip--
rem-sqrt-square sub-neg sqrt-pow1 pow1/2 diff-log fma-udef
Calls
4 calls:
Slowest
26.0ms
(/ (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2) a)
15.0ms
(- (sqrt (fma b b (* (* a c) -4))) b)
2.0ms
(sqrt (fma b b (* (* a c) -4)))
1.0ms
(fma b b (* (* a c) -4))

series465.0ms

Calls
4 calls:
Slowest
144.0ms
(/ (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2) a)
119.0ms
(- (sqrt (fma b b (* (* a c) -4))) b)
115.0ms
(sqrt (fma b b (* (* a c) -4)))
88.0ms
(fma b b (* (* a c) -4))

simplify16.3s

Calls
235 calls:
Slowest
506.0ms
(- (* (sqrt (fma b b (* (* a c) -4))) (sqrt (fma b b (* (* a c) -4)))) (* b b))
440.0ms
(/ (/ (* (cbrt (- (sqrt (fma b b (* (* a c) -4))) b)) (cbrt (- (sqrt (fma b b (* (* a c) -4))) b))) (* (cbrt 2) (cbrt 2))) (* (cbrt a) (cbrt a)))
343.0ms
(- (pow (sqrt (fma b b (* (* a c) -4))) 3) (pow b 3))
219.0ms
(- b (* 2 (/ (* a c) b)))
215.0ms
(/ (* (* (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2) (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2)) (/ (- (sqrt (fma b b (* (* a c) -4))) b) 2)) (* (* a a) a))

prune2.5s

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 5.4b

localize41.0ms

Local error

Found 3 expressions with local error:

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

rewrite44.0ms

Algorithm
rewrite-expression-head
Rules
46×add-sqr-sqrt
37×*-un-lft-identity
32×add-cube-cbrt
18×frac-times prod-diff
17×sqrt-prod
13×associate-*r*
11×flip3-- flip--
10×times-frac associate-/l*
associate-/r* associate-*r/
add-cbrt-cube add-exp-log
pow1 fma-neg associate-*l*
add-log-exp
clear-num difference-of-squares
expm1-log1p-u frac-2neg insert-posit16 log1p-expm1-u
associate-*l/ prod-exp un-div-inv cbrt-unprod distribute-lft-out-- unswap-sqr
cbrt-undiv rem-sqrt-square sub-neg sqrt-pow1 pow1/2 diff-log div-exp pow-prod-down *-commutative div-inv
Calls
3 calls:
Slowest
32.0ms
(* (- (sqrt (fma (* -4 c) a (* b b))) b) (/ 1/2 a))
8.0ms
(- (sqrt (fma (* -4 c) a (* b b))) b)
1.0ms
(sqrt (fma (* -4 c) a (* b b)))

series385.0ms

Calls
3 calls:
Slowest
139.0ms
(sqrt (fma (* -4 c) a (* b b)))
125.0ms
(* (- (sqrt (fma (* -4 c) a (* b b))) b) (/ 1/2 a))
122.0ms
(- (sqrt (fma (* -4 c) a (* b b))) b)

simplify13.1s

Calls
134 calls:
Slowest
630.0ms
(* (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)) 1/2)
618.0ms
(* (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)) (/ 1/2 1))
611.0ms
(* (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)) (sqrt 1/2))
542.0ms
(* (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)) (- 1/2))
423.0ms
(fma (* (cbrt (sqrt (fma (* -4 c) a (* b b)))) (cbrt (sqrt (fma (* -4 c) a (* b b))))) (cbrt (sqrt (fma (* -4 c) a (* b b)))) (- (* (sqrt b) (sqrt b))))

prune1.6s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 5.3b

localize27.0ms

Local error

Found 3 expressions with local error:

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

rewrite41.0ms

Algorithm
rewrite-expression-head
Rules
70×add-sqr-sqrt
60×*-un-lft-identity
56×add-cube-cbrt
54×prod-diff
35×sqrt-prod
20×distribute-rgt-in distribute-lft-in
18×frac-times
13×associate-*l*
11×flip3-- flip--
10×times-frac
associate-/r* associate-*l/ associate-/l*
add-cbrt-cube add-exp-log
pow1 fma-neg associate-*r*
add-log-exp
difference-of-squares
expm1-log1p-u clear-num sub-neg frac-2neg insert-posit16 log1p-expm1-u
prod-exp associate-*r/ cbrt-unprod distribute-lft-out-- unswap-sqr
cbrt-undiv rem-sqrt-square sqrt-pow1 pow1/2 diff-log div-exp pow-prod-down *-commutative div-inv
Calls
3 calls:
Slowest
26.0ms
(* (/ 1/2 a) (- (sqrt (fma (* -4 c) a (* b b))) b))
11.0ms
(- (sqrt (fma (* -4 c) a (* b b))) b)
1.0ms
(sqrt (fma (* -4 c) a (* b b)))

series371.0ms

Calls
3 calls:
Slowest
180.0ms
(* (/ 1/2 a) (- (sqrt (fma (* -4 c) a (* b b))) b))
104.0ms
(- (sqrt (fma (* -4 c) a (* b b))) b)
87.0ms
(sqrt (fma (* -4 c) a (* b b)))

simplify19.6s

Calls
174 calls:
Slowest
641.0ms
(* 1/2 (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)))
613.0ms
(* (/ 1/2 1) (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)))
564.0ms
(* (sqrt 1/2) (- (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (* b b)))
440.0ms
(* (- a) (+ (* (sqrt (fma (* -4 c) a (* b b))) (sqrt (fma (* -4 c) a (* b b)))) (+ (* b b) (* (sqrt (fma (* -4 c) a (* b b))) b))))
429.0ms
(* 1 (- (sqrt (fma (* -4 c) a (* b b))) b))

prune1.9s

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 5.3b

localize44.0ms

Local error

Found 4 expressions with local error:

25.6b
(sqrt (fma (* -4 c) a (* b b)))
15.9b
(/ (* (* a c) -2) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)))
1.7b
(+ (sqrt (fma (* -4 c) a (* b b))) b)
0.0b
(* a (+ (sqrt (fma (* -4 c) a (* b b))) b))

rewrite147.0ms

Algorithm
rewrite-expression-head
Rules
295×add-sqr-sqrt
286×times-frac
282×associate-*l*
198×*-un-lft-identity
180×associate-*r*
148×add-cube-cbrt
80×unswap-sqr
52×*-commutative
27×add-cbrt-cube add-exp-log
25×distribute-lft-out
22×associate-/l*
13×associate-/r*
10×prod-exp cbrt-unprod
pow1
cbrt-undiv fma-def div-exp sqrt-prod add-log-exp
expm1-log1p-u associate-*r/ insert-posit16 log1p-expm1-u
+-commutative flip3-+ flip-+
distribute-rgt-in distribute-lft-in associate-/r/
rem-sqrt-square clear-num sum-log frac-2neg sqrt-pow1 pow1/2 pow-prod-down div-inv
Calls
4 calls:
Slowest
100.0ms
(/ (* (* a c) -2) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)))
25.0ms
(* a (+ (sqrt (fma (* -4 c) a (* b b))) b))
6.0ms
(+ (sqrt (fma (* -4 c) a (* b b))) b)
1.0ms
(sqrt (fma (* -4 c) a (* b b)))

series697.0ms

Calls
4 calls:
Slowest
215.0ms
(* a (+ (sqrt (fma (* -4 c) a (* b b))) b))
207.0ms
(/ (* (* a c) -2) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)))
139.0ms
(sqrt (fma (* -4 c) a (* b b)))
136.0ms
(+ (sqrt (fma (* -4 c) a (* b b))) b)

simplify1.4m

Calls
655 calls:
Slowest
2.0s
(/ (* (* (* (* a c) (* a c)) (* a c)) (* (* -2 -2) -2)) (* (* (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))))
2.0s
(/ (* (* (* (* a c) -2) (* (* a c) -2)) (* (* a c) -2)) (* (* (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))))
1.6s
(/ (* (* (* (* a a) a) (* (* c c) c)) (* (* -2 -2) -2)) (* (* (* a (+ (sqrt (fma (* -4 c) a (* b b))) b)) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))) (* a (+ (sqrt (fma (* -4 c) a (* b b))) b))))
1.6s
(/ (* (* (* (* a c) -2) (* (* a c) -2)) (* (* a c) -2)) (* (* (* a a) a) (* (* (+ (sqrt (fma (* -4 c) a (* b b))) b) (+ (sqrt (fma (* -4 c) a (* b b))) b)) (+ (sqrt (fma (* -4 c) a (* b b))) b))))
1.5s
(/ (* (* (* (* a c) (* a c)) (* a c)) (* (* -2 -2) -2)) (* (* (* a a) a) (* (* (+ (sqrt (fma (* -4 c) a (* b b))) b) (+ (sqrt (fma (* -4 c) a (* b b))) b)) (+ (sqrt (fma (* -4 c) a (* b b))) b))))

prune4.8s

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 5.3b

regimes309.0ms

Accuracy

94.4% (1.4b remaining)

Error of 7.1b against oracle of 5.8b and baseline of 30.1b

bsearch358.0ms

end0.0ms

sample4.9s

Algorithm
intervals
Results
1.1s889×body1280valid
1.1s5855×body80valid
1.1s1070×body2560valid
552.0ms101×body5120valid
464.0ms3022×body80nan
261.0ms452×body640valid
101.0ms245×body320valid
27.0ms106×body160valid