Details

Time bar (total: 1.4m)

sample112.0ms

Algorithm
intervals
Results
64.0ms273×body80valid
20.0ms98×body80nan

simplify259.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
259.0ms
(if (>= b 0) (/ (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c))))))

prune31.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 17.9b

localize131.0ms

Local error

Found 4 expressions with local error:

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

rewrite34.0ms

Algorithm
rewrite-expression-head
Rules
78×prod-diff
71×add-sqr-sqrt
67×*-un-lft-identity
61×add-cube-cbrt
50×sqrt-prod
22×distribute-rgt-neg-in
21×distribute-lft-neg-in
16×fma-neg
10×add-log-exp
neg-mul-1
pow1
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u difference-of-squares
diff-log distribute-lft-out--
rem-sqrt-square sub-neg sqrt-pow1 flip3-- pow1/2 flip--
associate--l- neg-sub0 neg-log
Counts
4 → 165
Calls
4 calls:
Slowest
15.0ms
(- (sqrt (fma (* -4 a) c (* b b))) b)
12.0ms
(- (- b) (sqrt (fma (* -4 a) c (* b b))))
3.0ms
(sqrt (fma (* -4 a) c (* b b)))
2.0ms
(sqrt (fma (* -4 a) c (* b b)))

series356.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
93.0ms
(- (- b) (sqrt (fma (* -4 a) c (* b b))))
93.0ms
(- (sqrt (fma (* -4 a) c (* b b))) b)
89.0ms
(sqrt (fma (* -4 a) c (* b b)))
81.0ms
(sqrt (fma (* -4 a) c (* b b)))

simplify15.4s

Counts
204 → 177
Calls
204 calls:
Slowest
234.0ms
(fma (sqrt b) (- (sqrt b)) (- (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (cbrt (sqrt (fma (* -4 a) c (* b b))))))))
233.0ms
(fma (* (cbrt (- b)) (cbrt (- b))) (cbrt (- b)) (- (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (cbrt (sqrt (fma (* -4 a) c (* b b))))))))
227.0ms
(fma (* (cbrt b) (cbrt b)) (- (cbrt b)) (- (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (cbrt (sqrt (fma (* -4 a) c (* b b))))))))
214.0ms
(fma 1 (- b) (- (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (cbrt (sqrt (fma (* -4 a) c (* b b))))))))
207.0ms
(fma (sqrt (- b)) (sqrt (- b)) (- (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (* (cbrt (sqrt (fma (* -4 a) c (* b b)))) (cbrt (sqrt (fma (* -4 a) c (* b b))))))))

prune2.8s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 11.4b

localize159.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (- (* b b) (* (* 4 a) c)))
21.6b
(sqrt (- (* b b) (* (* 4 a) c)))
1.3b
(+ (- b) (sqrt (- (* b b) (* (* 4 a) c))))
1.0b
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))

rewrite74.0ms

Algorithm
rewrite-expression-head
Rules
60×prod-diff
58×*-un-lft-identity
56×add-sqr-sqrt
50×add-cube-cbrt
37×sqrt-prod
26×distribute-rgt-neg-in
24×distribute-lft-neg-in
12×add-log-exp
10×fma-def fma-neg
neg-mul-1
pow1
expm1-log1p-u add-cbrt-cube sqrt-div add-exp-log insert-posit16 log1p-expm1-u
flip3-- flip--
neg-sub0 rem-sqrt-square sum-log sqrt-pow1 pow1/2 diff-log neg-log distribute-lft-out distribute-lft-out-- difference-of-squares
associate--l- +-commutative sub-neg flip3-+ associate-+l- flip-+
Counts
4 → 155
Calls
4 calls:
Slowest
34.0ms
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))
14.0ms
(+ (- b) (sqrt (- (* b b) (* (* 4 a) c))))
12.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
9.0ms
(sqrt (- (* b b) (* (* 4 a) c)))

series372.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
114.0ms
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))
92.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
90.0ms
(+ (- b) (sqrt (- (* b b) (* (* 4 a) c))))
77.0ms
(sqrt (- (* b b) (* (* 4 a) c)))

simplify19.7s

Counts
172 → 167
Calls
172 calls:
Slowest
453.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* 4 a) c) (* (* 4 a) c))))
420.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* 4 a) c) (* (* 4 a) c))))
394.0ms
(fma (- (sqrt (- (* b b) (* (* 4 a) c)))) 1 (* (sqrt (- (* b b) (* (* 4 a) c))) 1))
302.0ms
(fma (sqrt b) (- (sqrt b)) (- (* (cbrt (sqrt (- (* b b) (* (* 4 a) c)))) (* (cbrt (sqrt (- (* b b) (* (* 4 a) c)))) (cbrt (sqrt (- (* b b) (* (* 4 a) c))))))))
298.0ms
(fma (sqrt (- b)) (sqrt (- b)) (- (* (cbrt (sqrt (- (* b b) (* (* 4 a) c)))) (* (cbrt (sqrt (- (* b b) (* (* 4 a) c)))) (cbrt (sqrt (- (* b b) (* (* 4 a) c))))))))

prune2.5s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 5.0b

localize215.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (- (* b b) (* (* 4 a) c)))
6.3b
(* (/ c b) a)
4.3b
(/ (* 2 c) (* (- (* (/ c b) a) b) 2))
1.0b
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))

rewrite103.0ms

Algorithm
rewrite-expression-head
Rules
64×add-sqr-sqrt
60×prod-diff
58×*-un-lft-identity
54×add-cube-cbrt
34×sqrt-prod
22×distribute-rgt-neg-in
21×distribute-lft-neg-in add-cbrt-cube add-exp-log
13×associate-*l*
11×times-frac
10×fma-neg
add-log-exp
pow1 neg-mul-1
prod-exp cbrt-unprod
cbrt-undiv div-exp
expm1-log1p-u insert-posit16 log1p-expm1-u
flip3-- associate-*r* associate-*l/ flip--
sqrt-div diff-log associate-/r/ div-inv distribute-lft-out-- difference-of-squares unswap-sqr
associate--l- neg-sub0 rem-sqrt-square clear-num associate-/r* sub-neg frac-2neg sqrt-pow1 pow1/2 pow-prod-down neg-log *-commutative associate-/l*
Counts
4 → 170
Calls
4 calls:
Slowest
36.0ms
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))
26.0ms
(/ (* 2 c) (* (- (* (/ c b) a) b) 2))
18.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
17.0ms
(* (/ c b) a)

series469.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
209.0ms
(/ (* 2 c) (* (- (* (/ c b) a) b) 2))
123.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
116.0ms
(- (- b) (sqrt (- (* b b) (* (* 4 a) c))))
21.0ms
(* (/ c b) a)

simplify26.9s

Counts
189 → 182
Calls
189 calls:
Slowest
2.3s
(/ (* (* (* 2 2) 2) (* (* c c) c)) (* (* (* (- (* (/ c b) a) b) 2) (* (- (* (/ c b) a) b) 2)) (* (- (* (/ c b) a) b) 2)))
895.0ms
(/ (* (* (* 2 c) (* 2 c)) (* 2 c)) (* (* (* (- (* (/ c b) a) b) (- (* (/ c b) a) b)) (- (* (/ c b) a) b)) (* (* 2 2) 2)))
865.0ms
(/ (* (* (* 2 2) 2) (* (* c c) c)) (* (* (* (- (* (/ c b) a) b) (- (* (/ c b) a) b)) (- (* (/ c b) a) b)) (* (* 2 2) 2)))
839.0ms
(/ (* (* (* 2 c) (* 2 c)) (* 2 c)) (* (* (* (- (* (/ c b) a) b) 2) (* (- (* (/ c b) a) b) 2)) (* (- (* (/ c b) a) b) 2)))
654.0ms
(- (+ (log 2) (log c)) (+ (log (- (* (/ c b) a) b)) (log 2)))

prune3.2s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 5.0b

localize149.0ms

Local error

Found 4 expressions with local error:

21.6b
(sqrt (- (* b b) (* (* 4 a) c)))
21.6b
(sqrt (- (* b b) (* (* 4 a) c)))
12.5b
(- (- b) (* (sqrt (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (sqrt (- (* b b) (* (* 4 a) c))))))
6.3b
(* (/ c b) a)

rewrite85.0ms

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt
20×*-un-lft-identity add-cube-cbrt
13×associate-*l*
10×times-frac fma-neg prod-diff
add-cbrt-cube add-exp-log
pow1 add-log-exp
distribute-lft-neg-in distribute-rgt-neg-in sqrt-prod
expm1-log1p-u sqrt-div insert-posit16 log1p-expm1-u
flip3-- associate-*r* flip--
rem-sqrt-square neg-mul-1 sqrt-pow1 pow1/2 diff-log prod-exp cbrt-unprod unswap-sqr
associate--l- neg-sub0 cbrt-undiv sub-neg div-exp pow-prod-down neg-log associate-*l/ *-commutative div-inv difference-of-squares
Counts
4 → 109
Calls
4 calls:
Slowest
25.0ms
(* (/ c b) a)
19.0ms
(- (- b) (* (sqrt (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (sqrt (- (* b b) (* (* 4 a) c))))))
19.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
19.0ms
(sqrt (- (* b b) (* (* 4 a) c)))

series400.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
136.0ms
(- (- b) (* (sqrt (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (sqrt (- (* b b) (* (* 4 a) c))))))
122.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
106.0ms
(sqrt (- (* b b) (* (* 4 a) c)))
35.0ms
(* (/ c b) a)

simplify7.0s

Counts
80 → 121
Calls
80 calls:
Slowest
467.0ms
(/ (/ 1 (exp b)) (exp (* (sqrt (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (sqrt (- (* b b) (* (* 4 a) c)))))))
451.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* 4 a) c) (* (* 4 a) c))))
380.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* 4 a) c) (* (* 4 a) c))))
375.0ms
(/ (exp (- b)) (exp (* (sqrt (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (sqrt (- (* b b) (* (* 4 a) c)))))))
257.0ms
(- b (* 2 (/ (* a c) b)))

prune2.4s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 5.0b

regimes418.0ms

Accuracy

91.1% (1.4b remaining)

Error of 6.6b against oracle of 5.2b and baseline of 20.7b

bsearch328.0ms

end0.0ms

sample3.2s

Algorithm
intervals
Results
1.9s8753×body80valid
909.0ms2901×body80nan