Details

Time bar (total: 11.0s)

sample55.0ms

Algorithm
intervals
Results
15.0ms64×body1280valid
12.0ms73×body10240exit
10.0ms57×body640valid
3.0ms98×body80valid
3.0ms25×body320valid
1.0ms12×body160valid

simplify17.0ms

Counts
1 → 1
Iterations
IterNodes
done8
28
17
05

prune3.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 39.4b

localize8.0ms

Local error

Found 2 expressions with local error:

0.3b
(/ (exp x) (- (exp x) 1.0))
3.6b
(- (exp x) 1.0)

rewrite45.0ms

Algorithm
rewrite-expression-head
Rules
29×add-sqr-sqrt *-un-lft-identity
19×add-cube-cbrt
15×times-frac
prod-diff
associate-/r* distribute-lft-out-- difference-of-squares
add-cbrt-cube add-log-exp
fma-neg add-exp-log associate-/l*
expm1-log1p-u pow1 flip3-- associate-/r/ log1p-expm1-u flip--
cbrt-undiv clear-num sub-neg frac-2neg diff-log div-exp div-inv
Counts
2 → 67
Calls
2 calls:
25.0ms
(/ (exp x) (- (exp x) 1.0))
17.0ms
(- (exp x) 1.0)

series74.0ms

Counts
2 → 6
Calls
2 calls:
48.0ms
(/ (exp x) (- (exp x) 1.0))
26.0ms
(- (exp x) 1.0)

simplify822.0ms

Counts
73 → 73
Iterations
IterNodes
done5000
2897
1253
0117

prune228.0ms

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.2b

localize21.0ms

Local error

Found 4 expressions with local error:

0.0b
(fma (* x x) 1/2 x)
0.0b
(/ (exp x) (fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x)))
0.1b
(* x (* x x))
10.3b
(fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
18×pow1
14×add-sqr-sqrt
13×*-un-lft-identity add-cube-cbrt
11×add-cbrt-cube
10×add-exp-log
times-frac
pow-prod-up
expm1-log1p-u log1p-expm1-u add-log-exp
associate-/r* associate-*l* pow-prod-down prod-exp cbrt-unprod associate-/l*
fma-udef
pow2 cbrt-undiv clear-num frac-2neg pow-plus cube-unmult div-exp associate-*r* pow-sqr *-commutative div-inv unswap-sqr
Counts
4 → 75
Calls
4 calls:
0.0ms
(fma (* x x) 1/2 x)
6.0ms
(/ (exp x) (fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x)))
16.0ms
(* x (* x x))
1.0ms
(fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x))

series199.0ms

Counts
4 → 12
Calls
4 calls:
59.0ms
(fma (* x x) 1/2 x)
56.0ms
(/ (exp x) (fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x)))
46.0ms
(* x (* x x))
37.0ms
(fma (* x (* x x)) 1/6 (fma (* x x) 1/2 x))

simplify1.3s

Counts
87 → 87
Iterations
IterNodes
done5001
21544
1281
0128

prune475.0ms

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.2b

localize16.0ms

Local error

Found 2 expressions with local error:

0.0b
(+ (/ 1 x) 1/2)
0.1b
(fma 1/12 x (+ (/ 1 x) 1/2))

rewrite19.0ms

Algorithm
rewrite-expression-head
Rules
13×fma-def
12×*-un-lft-identity
add-sqr-sqrt times-frac add-cube-cbrt
add-log-exp
expm1-log1p-u pow1 add-cbrt-cube add-exp-log log1p-expm1-u div-inv distribute-lft-out
+-commutative sum-log flip3-+ flip-+ fma-udef
Counts
2 → 38
Calls
2 calls:
18.0ms
(+ (/ 1 x) 1/2)
1.0ms
(fma 1/12 x (+ (/ 1 x) 1/2))

series34.0ms

Counts
2 → 6
Calls
2 calls:
17.0ms
(+ (/ 1 x) 1/2)
17.0ms
(fma 1/12 x (+ (/ 1 x) 1/2))

simplify1.9s

Counts
44 → 44
Iterations
IterNodes
done5000
32833
2398
1106
041

prune185.0ms

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0.2b

localize32.0ms

Local error

Found 4 expressions with local error:

0.0b
(* (exp x) (exp x))
0.2b
(/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x))))
0.3b
(/ (exp x) (/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x)))))
3.6b
(- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0))

rewrite87.0ms

Algorithm
rewrite-expression-head
Rules
84×times-frac
68×add-sqr-sqrt
66×*-un-lft-identity add-cube-cbrt
18×exp-prod
16×associate-/r*
13×add-cbrt-cube
11×pow1
add-exp-log
div-inv associate-/l* add-log-exp
expm1-log1p-u cbrt-undiv fma-neg div-exp prod-diff pow-prod-down pow-sqr pow-prod-up log1p-expm1-u
swap-sqr associate-*r* associate-*l*
clear-num frac-2neg flip3-- exp-sum fma-udef flip-- associate-/l/
pow2 sub-neg pow-plus diff-log div-sub prod-exp associate-/r/ *-commutative cbrt-unprod unswap-sqr
Counts
4 → 162
Calls
4 calls:
28.0ms
(* (exp x) (exp x))
26.0ms
(/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x))))
17.0ms
(/ (exp x) (/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x)))))
10.0ms
(- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0))

series341.0ms

Counts
4 → 12
Calls
4 calls:
24.0ms
(* (exp x) (exp x))
134.0ms
(/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x))))
155.0ms
(/ (exp x) (/ (- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0)) (fma 1.0 (+ 1.0 (exp x)) (* (exp x) (exp x)))))
28.0ms
(- (exp (fma 2 x x)) (* (* 1.0 1.0) 1.0))

simplify1.1s

Counts
174 → 174
Iterations
IterNodes
done5000
1713
0268

prune1.2s

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0.2b

regimes58.0ms

Accuracy

98.4% (0.2b remaining)

Error of 0.6b against oracle of 0.4b and baseline of 11.3b

bsearch55.0ms

Steps
ItersRangePoint
10
-14746478108.679678
-0.00028809610572707044
-0.001088340742756658

simplify5.0ms

Iterations
IterNodes
done32
132
026

end0.0ms

sample2.7s

Algorithm
intervals
Results
1.0s2532×body10240exit
713.0ms2220×body1280valid
381.0ms1665×body640valid
144.0ms820×body320valid
98.0ms2870×body80valid
33.0ms428×body160valid