Details

Time bar (total: 1.3m)

sample322.0ms

Algorithm
intervals
Results
106.0ms334×body80valid
79.0ms62×body10240exit
67.0ms57×body1280valid
31.0ms40×body640valid
15.0ms27×body320valid
2.0msbody160valid

simplify1.6s

Counts
1 → 1

prune21.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 31.4b

localize47.0ms

Local error

Found 4 expressions with local error:

1.5b
(+ (- (exp (* x (- -1 eps))) (/ (exp (* x (- -1 eps))) eps)) (+ (/ (exp (* x (+ -1 eps))) eps) (exp (* x (+ -1 eps)))))
0.0b
(* x (- -1 eps))
0.0b
(* x (- -1 eps))
0.0b
(/ (exp (* x (- -1 eps))) eps)

rewrite1.0s

Algorithm
rewrite-expression-head
Rules
4855×prod-diff
3476×exp-sum
2781×*-un-lft-identity
2776×add-sqr-sqrt
2763×add-cube-cbrt
1977×associate-+l+
1951×times-frac
1760×distribute-rgt-in distribute-lft-in
321×sub-neg
26×div-inv
25×associate-/l*
16×add-log-exp
10×add-cbrt-cube associate-*r*
add-exp-log
pow1
sum-log fma-def associate-*l* distribute-lft-out
distribute-lft-out--
expm1-log1p-u flip3-- frac-add associate-*r/ insert-posit16 log1p-expm1-u flip-- difference-of-squares
associate-/r* flip3-+ flip-+
diff-log pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
cbrt-undiv +-commutative associate-+r+ clear-num frac-2neg div-exp associate-+l-
Counts
4 → 2222
Calls
4 calls:
Slowest
311.0ms
(+ (- (exp (* x (- -1 eps))) (/ (exp (* x (- -1 eps))) eps)) (+ (/ (exp (* x (+ -1 eps))) eps) (exp (* x (+ -1 eps)))))
42.0ms
(* x (- -1 eps))
17.0ms
(* x (- -1 eps))
14.0ms
(/ (exp (* x (- -1 eps))) eps)

series302.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
158.0ms
(+ (- (exp (* x (- -1 eps))) (/ (exp (* x (- -1 eps))) eps)) (+ (/ (exp (* x (+ -1 eps))) eps) (exp (* x (+ -1 eps)))))
52.0ms
(* x (- -1 eps))
50.0ms
(* x (- -1 eps))
42.0ms
(/ (exp (* x (- -1 eps))) eps)

simplify2.5s

Counts
2234 → 2234

prune46.8s

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 0.7b

localize21.0ms

Local error

Found 3 expressions with local error:

5.6b
(- (fma 2/3 (* (* x x) x) 2) (* x x))
0.1b
(* (* x x) x)
0.0b
(fma 2/3 (* (* x x) x) 2)

rewrite21.0ms

Algorithm
rewrite-expression-head
Rules
22×pow1
add-sqr-sqrt add-cbrt-cube add-exp-log
*-un-lft-identity pow-plus pow-prod-up add-cube-cbrt
add-log-exp
expm1-log1p-u fma-neg associate-*r* prod-diff pow-prod-down prod-exp cbrt-unprod insert-posit16 log1p-expm1-u
pow2 pow-sqr fma-udef
sub-neg flip3-- diff-log associate-*l* pow3 associate--l+ *-commutative flip-- difference-of-squares unswap-sqr
Counts
3 → 65
Calls
3 calls:
Slowest
14.0ms
(* (* x x) x)
5.0ms
(- (fma 2/3 (* (* x x) x) 2) (* x x))
0.0ms
(fma 2/3 (* (* x x) x) 2)

series291.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
160.0ms
(fma 2/3 (* (* x x) x) 2)
65.0ms
(* (* x x) x)
65.0ms
(- (fma 2/3 (* (* x x) x) 2) (* x x))

simplify773.0ms

Counts
74 → 74

prune722.0ms

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.7b

localize60.0ms

Local error

Found 4 expressions with local error:

11.3b
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
10.2b
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x)))
0.1b
(* (* x x) (* x x))
0.1b
(* (* x x) x)

rewrite442.0ms

Algorithm
rewrite-expression-head
Rules
134×pow1
42×pow-prod-up
26×pow-prod-down
24×pow-plus pow-sqr
23×add-cbrt-cube add-exp-log
15×pow2 add-sqr-sqrt
14×*-un-lft-identity add-cube-cbrt
12×times-frac
11×prod-exp cbrt-unprod
pow3 add-log-exp
difference-cubes cube-unmult
distribute-rgt-in expm1-log1p-u distribute-lft-in associate-*r* associate--l+ fma-udef insert-posit16 log1p-expm1-u associate-/l*
associate-/r*
flip3-- associate-*l* *-commutative flip-- unswap-sqr associate-/l/
cbrt-undiv clear-num sub-neg frac-2neg fma-neg diff-log div-sub swap-sqr div-exp prod-diff div-inv
Counts
4 → 156
Calls
4 calls:
Slowest
285.0ms
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
103.0ms
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x)))
28.0ms
(* (* x x) x)
23.0ms
(* (* x x) (* x x))

series497.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
205.0ms
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
179.0ms
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (* (* x x) (* x x)) (* x x)))
63.0ms
(* (* x x) (* x x))
50.0ms
(* (* x x) x)

simplify3.4s

Counts
168 → 168

prune2.0s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.7b

localize112.0ms

Local error

Found 4 expressions with local error:

11.6b
(posit16->real (real->posit16 (* (* x x) (* x x))))
11.3b
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
10.2b
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x)))
0.1b
(* (* x x) (* x x))

rewrite178.0ms

Algorithm
rewrite-expression-head
Rules
115×pow1
36×pow-prod-up
23×pow-prod-down
22×pow-sqr
18×pow-plus add-cbrt-cube add-exp-log
13×pow2
12×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
times-frac
prod-exp cbrt-unprod
add-log-exp
distribute-rgt-in expm1-log1p-u distribute-lft-in associate--l+ fma-udef insert-posit16 log1p-expm1-u
associate-/r* associate-/l*
flip3-- flip-- associate-/l/
cbrt-undiv clear-num sub-neg frac-2neg fma-neg diff-log div-sub swap-sqr div-exp associate-*r* associate-*l* prod-diff *-commutative div-inv remove-posit16 unswap-sqr
Counts
4 → 131
Calls
4 calls:
Slowest
79.0ms
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
50.0ms
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x)))
45.0ms
(* (* x x) (* x x))
1.0ms
(posit16->real (real->posit16 (* (* x x) (* x x))))

series465.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
177.0ms
(/ (- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x))) (fma (* x x) (+ (fma (* (* x x) x) 2/3 2) (* x x)) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))))
167.0ms
(- (* (fma (* (* x x) x) 2/3 2) (* (fma (* (* x x) x) 2/3 2) (fma (* (* x x) x) 2/3 2))) (* (posit16->real (real->posit16 (* (* x x) (* x x)))) (* x x)))
67.0ms
(posit16->real (real->posit16 (* (* x x) (* x x))))
54.0ms
(* (* x x) (* x x))

simplify3.2s

Counts
143 → 143

prune3.3s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.7b

regimes167.0ms

Accuracy

96.7% (0.6b remaining)

Error of 1.0b against oracle of 0.4b and baseline of 17.0b

bsearch188.0ms

end0.0ms

sample11.2s

Algorithm
intervals
Results
3.4s1981×body10240exit
2.9s1649×body1280valid
2.3s10178×body80valid
1.6s1262×body640valid
426.0ms664×body320valid
107.0ms306×body160valid