Details

Time bar (total: 29.7s)

sample75.0ms

Algorithm
intervals
Results
18.0ms201×body80valid
16.0ms31×body2560valid
10.0ms23×body1280valid
9.0ms108×body80nan
4.0ms11×body640valid
2.0msbody320valid
1.0msbody5120valid
1.0msbody160valid

simplify160.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
159.0ms
(/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a))

prune29.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 30.2b

localize42.0ms

Local error

Found 4 expressions with local error:

17.4b
(sqrt (- (* b b) (* (* 3 a) c)))
1.0b
(+ (- b) (sqrt (- (* b b) (* (* 3 a) c))))
0.2b
(* (* 3 a) c)
0.2b
(/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a))

rewrite110.0ms

Algorithm
rewrite-expression-head
Rules
23×*-un-lft-identity
14×add-cbrt-cube add-exp-log
12×add-sqr-sqrt
11×add-cube-cbrt
10×pow1 fma-def
add-log-exp
distribute-rgt-neg-in distribute-lft-out
times-frac associate-/l*
expm1-log1p-u prod-exp cbrt-unprod insert-posit16 log1p-expm1-u
distribute-lft-neg-in associate-*r* pow-prod-down sqrt-prod
neg-sub0 cbrt-undiv sum-log flip3-+ sqrt-div div-exp associate-+l- flip-+ associate-/l/
+-commutative rem-sqrt-square clear-num associate-/r* neg-mul-1 frac-2neg sqrt-pow1 flip3-- pow1/2 div-sub associate-*l* neg-log *-commutative div-inv flip--
Counts
4 → 98
Calls
4 calls:
Slowest
48.0ms
(/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a))
25.0ms
(* (* 3 a) c)
19.0ms
(sqrt (- (* b b) (* (* 3 a) c)))
17.0ms
(+ (- b) (sqrt (- (* b b) (* (* 3 a) c))))

series389.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
148.0ms
(/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a))
127.0ms
(+ (- b) (sqrt (- (* b b) (* (* 3 a) c))))
91.0ms
(sqrt (- (* b b) (* (* 3 a) c)))
22.0ms
(* (* 3 a) c)

simplify5.4s

Counts
57 → 110
Calls
57 calls:
Slowest
666.0ms
(- (* (- b) (- b)) (* (sqrt (- (* b b) (* (* 3 a) c))) (sqrt (- (* b b) (* (* 3 a) c)))))
483.0ms
(* (* (* (* 3 a) (* 3 a)) (* 3 a)) (* (* c c) c))
434.0ms
(* (* (* (* 3 3) 3) (* (* a a) a)) (* (* c c) c))
334.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* 3 a) c) (* (* 3 a) c))))
322.0ms
(/ (* (* (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (+ (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (+ (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (* (* (* 3 a) (* 3 a)) (* 3 a)))

prune1.3s

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 4.7b

localize45.0ms

Local error

Found 4 expressions with local error:

17.4b
(sqrt (fma -3 (* c a) (* b b)))
1.0b
(- (sqrt (fma -3 (* c a) (* b b))) b)
0.3b
(* 1/3 (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a))
0.1b
(fma -3 (* c a) (* b b))

rewrite55.0ms

Algorithm
rewrite-expression-head
Rules
52×add-sqr-sqrt
38×*-un-lft-identity
30×add-cube-cbrt
22×associate-*r*
19×times-frac sqrt-prod
18×prod-diff
add-cbrt-cube add-exp-log
difference-of-squares
pow1
fma-neg add-log-exp
expm1-log1p-u insert-posit16 log1p-expm1-u distribute-lft-out--
associate-*l*
prod-exp cbrt-unprod unswap-sqr
cbrt-undiv rem-sqrt-square sub-neg sqrt-pow1 flip3-- pow1/2 diff-log div-exp pow-prod-down associate-*r/ *-commutative fma-udef div-inv flip--
Counts
4 → 113
Calls
4 calls:
Slowest
38.0ms
(* 1/3 (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a))
11.0ms
(- (sqrt (fma -3 (* c a) (* b b))) b)
3.0ms
(sqrt (fma -3 (* c a) (* b b)))
0.0ms
(fma -3 (* c a) (* b b))

series412.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
135.0ms
(* 1/3 (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a))
100.0ms
(- (sqrt (fma -3 (* c a) (* b b))) b)
97.0ms
(sqrt (fma -3 (* c a) (* b b)))
80.0ms
(fma -3 (* c a) (* b b))

simplify4.1s

Counts
97 → 125
Calls
97 calls:
Slowest
212.0ms
(* (* (* 1/3 1/3) 1/3) (/ (* (* (- (sqrt (fma -3 (* c a) (* b b))) b) (- (sqrt (fma -3 (* c a) (* b b))) b)) (- (sqrt (fma -3 (* c a) (* b b))) b)) (* (* a a) a)))
154.0ms
(* (* (* 1/3 1/3) 1/3) (* (* (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a) (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a)) (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a)))
142.0ms
(+ (log 1/3) (log (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a)))
142.0ms
(+ (log 1/3) (- (log (- (sqrt (fma -3 (* c a) (* b b))) b)) (log a)))
141.0ms
(* 1/3 (/ (- (sqrt (fma -3 (* c a) (* b b))) b) a))

prune1.3s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 4.6b

localize41.0ms

Local error

Found 4 expressions with local error:

17.4b
(sqrt (- (* b b) (* (* (cbrt (* (* 3 a) c)) (cbrt (* (* 3 a) c))) (cbrt (* (* 3 a) c)))))
13.2b
(cbrt (* (* 3 a) c))
13.2b
(cbrt (* (* 3 a) c))
13.2b
(cbrt (* (* 3 a) c))

rewrite51.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 *-un-lft-identity add-cube-cbrt
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u add-log-exp
cbrt-prod pow1/3 sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-- pow1/2 flip--
Counts
4 → 54
Calls
4 calls:
Slowest
19.0ms
(sqrt (- (* b b) (* (* (cbrt (* (* 3 a) c)) (cbrt (* (* 3 a) c))) (cbrt (* (* 3 a) c)))))
11.0ms
(cbrt (* (* 3 a) c))
10.0ms
(cbrt (* (* 3 a) c))
10.0ms
(cbrt (* (* 3 a) c))

series595.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
177.0ms
(sqrt (- (* b b) (* (* (cbrt (* (* 3 a) c)) (cbrt (* (* 3 a) c))) (cbrt (* (* 3 a) c)))))
150.0ms
(cbrt (* (* 3 a) c))
147.0ms
(cbrt (* (* 3 a) c))
120.0ms
(cbrt (* (* 3 a) c))

simplify4.9s

Counts
22 → 66
Calls
22 calls:
Slowest
602.0ms
(sqrt (- (* (* b b) (* b b)) (* (* (* (cbrt (* (* 3 a) c)) (cbrt (* (* 3 a) c))) (cbrt (* (* 3 a) c))) (* (* (cbrt (* (* 3 a) c)) (cbrt (* (* 3 a) c))) (cbrt (* (* 3 a) c))))))
407.0ms
(* (exp (* -1/3 (+ (log (/ -1 c)) (log (/ -1 a))))) (cbrt 3))
401.0ms
(* (cbrt 3) (exp (* 1/3 (+ (log a) (log c)))))
386.0ms
(* (cbrt 3) (exp (* 1/3 (+ (log a) (log c)))))
381.0ms
(* (exp (* -1/3 (+ (log (/ -1 c)) (log (/ -1 a))))) (cbrt 3))

prune941.0ms

Pruning

13 alts after pruning (11 fresh and 2 done)

Merged error: 4.6b

localize46.0ms

Local error

Found 4 expressions with local error:

17.4b
(sqrt (fma -3 (* c a) (* b b)))
1.0b
(- (sqrt (fma -3 (* c a) (* b b))) b)
0.5b
(cbrt a)
0.5b
(cbrt a)

rewrite17.0ms

Algorithm
rewrite-expression-head
Rules
26×add-sqr-sqrt
23×*-un-lft-identity
21×add-cube-cbrt
18×prod-diff
16×sqrt-prod
cbrt-prod fma-neg add-log-exp
pow1
expm1-log1p-u add-cbrt-cube add-exp-log insert-posit16 log1p-expm1-u
pow1/3 difference-of-squares
rem-sqrt-square sub-neg sqrt-pow1 flip3-- pow1/2 diff-log flip-- distribute-lft-out--
Counts
4 → 86
Calls
4 calls:
Slowest
13.0ms
(- (sqrt (fma -3 (* c a) (* b b))) b)
1.0ms
(sqrt (fma -3 (* c a) (* b b)))
1.0ms
(cbrt a)
1.0ms
(cbrt a)

series818.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
300.0ms
(cbrt a)
296.0ms
(cbrt a)
112.0ms
(sqrt (fma -3 (* c a) (* b b)))
109.0ms
(- (sqrt (fma -3 (* c a) (* b b))) b)

simplify2.1s

Counts
70 → 98
Calls
70 calls:
Slowest
120.0ms
(* (pow (* a -1) 1/3) (cbrt -1))
107.0ms
(fma (* (cbrt (sqrt (fma -3 (* c a) (* b b)))) (cbrt (sqrt (fma -3 (* c a) (* b b))))) (cbrt (sqrt (fma -3 (* c a) (* b b)))) (- (* (cbrt b) (* (cbrt b) (cbrt b)))))
98.0ms
(* (pow (* a -1) 1/3) (cbrt -1))
88.0ms
(fma (* (cbrt (sqrt (fma -3 (* c a) (* b b)))) (cbrt (sqrt (fma -3 (* c a) (* b b))))) (cbrt (sqrt (fma -3 (* c a) (* b b)))) (- (* b 1)))
75.0ms
(fma (* (cbrt (sqrt (fma -3 (* c a) (* b b)))) (cbrt (sqrt (fma -3 (* c a) (* b b))))) (cbrt (sqrt (fma -3 (* c a) (* b b)))) (- (* (sqrt b) (sqrt b))))

prune1.3s

Pruning

13 alts after pruning (10 fresh and 3 done)

Merged error: 4.6b

regimes792.0ms

Accuracy

83.3% (4.7b remaining)

Error of 10.2b against oracle of 5.5b and baseline of 33.4b

bsearch165.0ms

end0.0ms

sample4.6s

Algorithm
intervals
Results
1.1s899×body1280valid
998.0ms1068×body2560valid
895.0ms5900×body80valid
699.0ms446×body640valid
393.0ms2909×body80nan
149.0ms272×body320valid
95.0ms108×body5120valid
24.0ms104×body160valid