Details

Time bar (total: 17.6s)

sample88.0ms

Algorithm
intervals
Results
26.0ms85×body1280valid
24.0ms49×body640valid
9.0ms195×body80valid
5.0ms31×body320valid
1.0ms10×body160valid

simplify3.5s

Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066
1116
2186
3276
4516
51166
62736
78076
829546
done50006

prune4.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 30.6b

localize12.0ms

Local error

Found 2 expressions with local error:

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

rewrite29.0ms

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt *-un-lft-identity
add-cube-cbrt prod-diff
add-log-exp
fma-neg
pow1 add-exp-log expm1-log1p-u add-cbrt-cube log1p-expm1-u
sub-neg exp-prod flip3-- exp-to-pow diff-log flip-- rem-exp-log distribute-lft-out-- difference-of-squares
Counts
2 → 40
Calls
2 calls:
9.0ms
(exp (* a x))
18.0ms
(- (exp (* a x)) 1.0)

series73.0ms

Counts
2 → 6
Calls
2 calls:
24.0ms
(exp (* a x))
49.0ms
(- (exp (* a x)) 1.0)

simplify2.1s

Counts
46 → 46
Iterations

Useful iterations: done (2.1s)

IterNodesCost
079557
1175457
2393386
31277346
done5000316

prune166.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 5.5b

localize36.0ms

Local error

Found 4 expressions with local error:

0.0b
(* 1/2 (pow a 2))
0.1b
(* 1/6 (pow a 3))
9.6b
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
12.6b
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

rewrite56.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:
17.0ms
(* 1/2 (pow a 2))
35.0ms
(* 1/6 (pow a 3))
1.0ms
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
1.0ms
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

series322.0ms

Counts
4 → 12
Calls
4 calls:
28.0ms
(* 1/2 (pow a 2))
65.0ms
(* 1/6 (pow a 3))
152.0ms
(fma (pow x 2) (fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2))) (* a x))
77.0ms
(fma (* 1/6 (pow a 3)) x (* 1/2 (pow a 2)))

simplify3.6s

Counts
94 → 94
Iterations

Useful iterations: done (3.6s)

IterNodesCost
01371036
1282962
2737846
33838827
done5001814

prune457.0ms

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 3.0b

localize12.0ms

Local error

Found 3 expressions with local error:

0.0b
(fma 1/2 (* x (pow a 2)) a)
2.2b
(* x (fma 1/2 (* x (pow a 2)) a))
8.3b
(* x (pow a 2))

rewrite25.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:
1.0ms
(fma 1/2 (* x (pow a 2)) a)
9.0ms
(* x (fma 1/2 (* x (pow a 2)) a))
12.0ms
(* x (pow a 2))

series224.0ms

Counts
3 → 9
Calls
3 calls:
68.0ms
(fma 1/2 (* x (pow a 2)) a)
108.0ms
(* x (fma 1/2 (* x (pow a 2)) a))
47.0ms
(* x (pow a 2))

simplify1.8s

Counts
70 → 70
Iterations

Useful iterations: done (1.8s)

IterNodesCost
092716
1186685
2462592
31604592
done5001589

prune204.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 0.1b

localize8.0ms

Local error

Found 3 expressions with local error:

0.0b
(fma 1/2 (* (* a x) a) a)
0.2b
(* (* a x) a)
2.2b
(* x (fma 1/2 (* (* a x) a) a))

rewrite31.0ms

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

series198.0ms

Counts
3 → 9
Calls
3 calls:
77.0ms
(fma 1/2 (* (* a x) a) a)
35.0ms
(* (* a x) a)
86.0ms
(* x (fma 1/2 (* (* a x) a) a))

simplify1.8s

Counts
61 → 61
Iterations

Useful iterations: 2 (182.0ms)

IterNodesCost
079641
1173631
2549538
31661538
done5001538

prune177.0ms

Pruning

6 alts after pruning (4 fresh and 2 done)

Merged error: 0.1b

regimes740.0ms

Accuracy

97.7% (0.5b remaining)

Error of 0.6b against oracle of 0.1b and baseline of 22.1b

bsearch1.0ms

simplify2.0ms

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01524
11824
done1824

end0.0ms

sample1.9s

Algorithm
intervals
Results
857.0ms2594×body1280valid
305.0ms1341×body640valid
245.0ms5585×body80valid
91.0ms782×body320valid
35.0ms421×body160valid