Details

Time bar (total: 12.6s)

sample32.0ms

Algorithm
intervals
Results
12.0ms86×body1280valid
4.0ms47×body640valid
3.0ms169×body80valid
1.0ms24×body320valid
0.0ms10×body160valid

simplify2.3s

Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066
1116
2186
3276
4516
51166
62736
78076
829546
done50006

prune2.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 30.5b

localize5.0ms

Local error

Found 1 expressions with local error:

2.4b
(- (exp (* a x)) 1.0)

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt *-un-lft-identity
prod-diff
add-cube-cbrt
fma-neg add-log-exp
pow1 add-exp-log expm1-log1p-u sub-neg flip3-- diff-log add-cbrt-cube flip-- log1p-expm1-u distribute-lft-out-- difference-of-squares
Counts
1 → 28
Calls
1 calls:
14.0ms
(- (exp (* a x)) 1.0)

series40.0ms

Counts
1 → 3
Calls
1 calls:
40.0ms
(- (exp (* a x)) 1.0)

simplify2.8s

Counts
31 → 31
Iterations

Useful iterations: 4 (1.5s)

IterNodesCost
072472
1164384
2369313
31232255
44654245
done5000245

prune65.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 6.4b

localize17.0ms

Local error

Found 4 expressions with local error:

0.0b
(* 1/2 (pow a 2))
0.3b
(* 1/6 (pow a 3))
8.8b
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
14.2b
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

rewrite28.0ms

Algorithm
rewrite-expression-head
Rules
24×add-sqr-sqrt
20×associate-*r*
14×add-exp-log
11×add-cube-cbrt *-un-lft-identity
unpow-prod-down add-cbrt-cube unswap-sqr
associate-*l* prod-exp
pow1 expm1-log1p-u cube-prod log1p-expm1-u add-log-exp sqr-pow
pow-to-exp pow-exp *-commutative cbrt-unprod fma-udef unpow2
cube-mult unpow3
Counts
4 → 82
Calls
4 calls:
12.0ms
(* 1/2 (pow a 2))
13.0ms
(* 1/6 (pow a 3))
0.0ms
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
0.0ms
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

series218.0ms

Counts
4 → 12
Calls
4 calls:
27.0ms
(* 1/2 (pow a 2))
36.0ms
(* 1/6 (pow a 3))
92.0ms
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
63.0ms
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

simplify2.2s

Counts
94 → 94
Iterations

Useful iterations: done (2.2s)

IterNodesCost
01371036
1282962
2737846
33838827
done5001814

prune262.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 3.2b

localize7.0ms

Local error

Found 3 expressions with local error:

0.0b
(fma 1/2 (* x (pow a 2)) a)
1.7b
(* x (fma 1/2 (* x (pow a 2)) a))
7.1b
(* x (pow a 2))

rewrite21.0ms

Algorithm
rewrite-expression-head
Rules
16×add-sqr-sqrt
11×associate-*r*
10×add-exp-log
add-cube-cbrt *-un-lft-identity
add-cbrt-cube
associate-*l*
pow1 unswap-sqr
unpow-prod-down prod-exp
expm1-log1p-u fma-udef log1p-expm1-u add-log-exp
*-commutative cbrt-unprod unpow2 sqr-pow
distribute-rgt-in pow-to-exp distribute-lft-in pow-prod-down pow-exp
Counts
3 → 61
Calls
3 calls:
0.0ms
(fma 1/2 (* x (pow a 2)) a)
7.0ms
(* x (fma 1/2 (* x (pow a 2)) a))
12.0ms
(* x (pow a 2))

series147.0ms

Counts
3 → 9
Calls
3 calls:
57.0ms
(fma 1/2 (* x (pow a 2)) a)
63.0ms
(* x (fma 1/2 (* x (pow a 2)) a))
27.0ms
(* x (pow a 2))

simplify1.1s

Counts
70 → 70
Iterations

Useful iterations: done (1.1s)

IterNodesCost
092716
1186685
2462592
31604592
done5001589

prune148.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 0.1b

localize10.0ms

Local error

Found 3 expressions with local error:

0.0b
(fma 1/2 (* (* a x) (pow a (/ 2 2))) a)
0.1b
(* (* a x) (pow a (/ 2 2)))
1.7b
(* x (fma 1/2 (* (* a x) (pow a (/ 2 2))) a))

rewrite33.0ms

Algorithm
rewrite-expression-head
Rules
18×add-exp-log
10×associate-*r* prod-exp add-cbrt-cube
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1
associate-*l* cbrt-unprod
expm1-log1p-u unpow-prod-down fma-udef log1p-expm1-u add-log-exp
pow-to-exp pow-exp *-commutative
distribute-rgt-in distribute-lft-in pow-prod-down unswap-sqr sqr-pow
Counts
3 → 58
Calls
3 calls:
0.0ms
(fma 1/2 (* (* a x) (pow a (/ 2 2))) a)
24.0ms
(* (* a x) (pow a (/ 2 2)))
7.0ms
(* x (fma 1/2 (* (* a x) (pow a (/ 2 2))) a))

series124.0ms

Counts
3 → 9
Calls
3 calls:
41.0ms
(fma 1/2 (* (* a x) (pow a (/ 2 2))) a)
21.0ms
(* (* a x) (pow a (/ 2 2)))
61.0ms
(* x (fma 1/2 (* (* a x) (pow a (/ 2 2))) a))

simplify1.9s

Counts
67 → 67
Iterations

Useful iterations: 3 (829.0ms)

IterNodesCost
0100976
1230798
2668576
32620573
done5000573

prune123.0ms

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0.1b

regimes213.0ms

Accuracy

98.6% (0.3b remaining)

Error of 0.4b against oracle of 0.1b and baseline of 21.9b

bsearch1.0ms

simplify2.0ms

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01929
12229
done2229

end0.0ms

sample915.0ms

Algorithm
intervals
Results
395.0ms2660×body1280valid
128.0ms1342×body640valid
96.0ms5388×body80valid
47.0ms746×body320valid
17.0ms425×body160valid