Details

Time bar (total: 12.3s)

sample113.0ms

Algorithm
intervals
Results
64.0ms63×body10240exit
25.0ms270×body80valid
4.0msbody640valid
2.0msbody320valid
1.0msbody1280valid
0.0msbody160valid

simplify46.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
45.0ms
(- (log (+ 1 (exp x))) (* x y))

prune8.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.5b

localize11.0ms

Local error

Found 2 expressions with local error:

0.5b
(log1p (exp x))
0.0b
(- (log1p (exp x)) (* y x))

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
add-log-exp
add-sqr-sqrt *-un-lft-identity add-cube-cbrt
expm1-log1p-u fma-neg prod-diff
pow1 log1p-udef add-cbrt-cube diff-log add-exp-log insert-posit16 log1p-expm1-u
sub-neg flip3-- log1p-expm1 flip--
Counts
2 → 34
Calls
2 calls:
Slowest
5.0ms
(- (log1p (exp x)) (* y x))
0.0ms
(log1p (exp x))

series160.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
82.0ms
(- (log1p (exp x)) (* y x))
78.0ms
(log1p (exp x))

simplify605.0ms

Counts
17 → 40
Calls
17 calls:
Slowest
99.0ms
(+ (log 2) (+ (* 1/2 x) (* 1/8 (pow x 2))))
92.0ms
(+ (log 2) (+ (* 1/2 x) (* 1/8 (pow x 2))))
70.0ms
(/ (exp (log1p (exp x))) (exp (* y x)))
69.0ms
(fma (* (cbrt (log1p (exp x))) (cbrt (log1p (exp x)))) (cbrt (log1p (exp x))) (- (* x y)))
60.0ms
(/ (+ 1 (exp x)) (exp (* y x)))

prune325.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.2b

localize18.0ms

Local error

Found 2 expressions with local error:

0.0b
(- (fma (fma 1/8 x 1/2) x (log 2)) (* y x))
0.0b
(fma (fma 1/8 x 1/2) x (log 2))

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt *-un-lft-identity add-cube-cbrt add-log-exp
fma-neg prod-diff
expm1-log1p-u pow1 add-cbrt-cube add-exp-log fma-udef insert-posit16 log1p-expm1-u
sub-neg flip3-- diff-log associate--l+ flip--
Counts
2 → 33
Calls
2 calls:
Slowest
5.0ms
(- (fma (fma 1/8 x 1/2) x (log 2)) (* y x))
0.0ms
(fma (fma 1/8 x 1/2) x (log 2))

series112.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
58.0ms
(- (fma (fma 1/8 x 1/2) x (log 2)) (* y x))
54.0ms
(fma (fma 1/8 x 1/2) x (log 2))

simplify1.8s

Counts
16 → 39
Calls
16 calls:
Slowest
272.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
249.0ms
(/ (exp (fma (fma 1/8 x 1/2) x (log 2))) (exp (* y x)))
223.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
165.0ms
(fma 1 (fma (fma 1/8 x 1/2) x (log 2)) (- (* x y)))
161.0ms
(fma (* (cbrt (fma (fma 1/8 x 1/2) x (log 2))) (cbrt (fma (fma 1/8 x 1/2) x (log 2)))) (cbrt (fma (fma 1/8 x 1/2) x (log 2))) (- (* x y)))

prune415.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.2b

localize20.0ms

Local error

Found 1 expressions with local error:

0.0b
(fma x (- (fma x 1/8 1/2) y) (log 2))

rewrite0.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt expm1-log1p-u pow1 *-un-lft-identity add-cbrt-cube add-exp-log add-cube-cbrt fma-udef insert-posit16 log1p-expm1-u add-log-exp
Counts
1 → 11
Calls
1 calls:
Slowest
0.0ms
(fma x (- (fma x 1/8 1/2) y) (log 2))

series67.0ms

Counts
1 → 3
Calls
1 calls:
Slowest
67.0ms
(fma x (- (fma x 1/8 1/2) y) (log 2))

simplify621.0ms

Counts
3 → 14
Calls
3 calls:
Slowest
244.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
237.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
138.0ms
(+ (log 2) (+ (* 1/2 x) (* 1/8 (pow x 2))))

prune195.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.2b

localize43.0ms

Local error

Found 3 expressions with local error:

38.5b
(posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))
0.0b
(- (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2)))) (* y x))
0.0b
(fma (fma 1/8 x 1/2) x (log 2))

rewrite7.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt *-un-lft-identity add-cube-cbrt add-log-exp
expm1-log1p-u pow1 add-cbrt-cube fma-neg prod-diff add-exp-log insert-posit16 log1p-expm1-u
sub-neg flip3-- diff-log fma-udef remove-posit16 flip--
Counts
3 → 43
Calls
3 calls:
Slowest
6.0ms
(- (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2)))) (* y x))
0.0ms
(posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))
0.0ms
(fma (fma 1/8 x 1/2) x (log 2))

series126.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
51.0ms
(- (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2)))) (* y x))
40.0ms
(posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))
34.0ms
(fma (fma 1/8 x 1/2) x (log 2))

simplify2.3s

Counts
19 → 52
Calls
19 calls:
Slowest
264.0ms
(/ (exp (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))) (exp (* y x)))
233.0ms
(fma (sqrt (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))) (sqrt (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2))))) (- (* x y)))
227.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
204.0ms
(- (+ (* 1/2 x) (* 1/8 (pow x 2))) (* x y))
194.0ms
(fma 1 (posit16->real (real->posit16 (fma (fma 1/8 x 1/2) x (log 2)))) (- (* x y)))

prune1.0s

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.2b

regimes76.0ms

Accuracy

0% (0.3b remaining)

Error of 0.4b against oracle of 0.2b and baseline of 0.4b

bsearch1.0ms

end0.0ms

sample4.3s

Algorithm
intervals
Results
2.4s2387×body10240exit
1.2s8405×body80valid
148.0ms270×body640valid
128.0ms129×body1280valid
101.0ms181×body320valid
21.0ms83×body160valid