Amortized Resource Analysis
Martin Hofmann
Ludwig-Maximilians-Universit¨ at M¨ unchen
EWSCS Winter School 2011, Palmse, Estonia
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 1 / 72
Amortized Resource Analysis Martin Hofmann - - PowerPoint PPT Presentation
Amortized Resource Analysis Martin Hofmann Ludwig-Maximilians-Universit at M unchen EWSCS Winter School 2011, Palmse, Estonia mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 1 / 72 Why resource analysis Computing under
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 1 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 2 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 3 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 4 / 72
◮ recursive data structures (lists, trees) ◮ recursive functions ◮ composition of helper functions via intermediate data structures
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 5 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 6 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 7 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 8 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 9 / 72
5 times
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 10 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 11 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 12 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 13 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 14 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 15 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 16 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 17 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 18 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 19 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 20 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 21 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 22 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 23 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 24 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 25 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 26 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 27 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 28 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 29 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 30 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 31 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 32 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 33 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 34 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 35 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 36 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 37 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 38 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 39 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 40 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 41 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 42 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 43 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 44 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 45 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 46 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 47 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 48 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 49 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 50 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 51 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 52 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 53 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 54 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 55 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 56 / 72
c/c L(p)(int)
c/c L(p2)(int)
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 57 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 58 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 59 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 60 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 61 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 62 / 72
Amortized Resource Analysis 28.02.-04.03.2011 63 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 64 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 65 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 66 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 67 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 68 / 72
Function Computed Evaluation-Step Bound Simplified Computed Bound Act. Behav. Run Time isortlist:L(L(int))→L(L(int))
n
2
8n2m+8n2−8nm+4n+3 O(n2m) 0.91 s nub:L(L(int))→L(L(int))
n
2
6n2m+9n2−6nm+3n+3 O(n2m) 0.97 s transpose:L(L(int))→L(L(int))
32nm+2n+13 O(nm) 0.04 s mmult:(L(L(int)))2→L(L(int)) (
1≤i≤x yi )(32 + 28n)+14n+2x+21
28xyn+32xy+2x+14n+21 O(nxy) 1.96 s dyade:(L(int), L(int))→L(L(int)) 10nx+14n+3 10nx+14n+3 O(nx) 0.03 s lcs:(L(int), L(int))→int 39nx + 6x + 21n + 19 39nx + 6x + 21n + 19 O(nx) 0.36 s subtrees:T(int)→L(T(int)) 8 n
2
4n2 + 19n + 3 O(n2) 0.06 s eratos:L(int)→L(int) 16 n
2
8n2+4n+3 O(n2) 0.02 s mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 69 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 70 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 71 / 72
mh (lmumun) Amortized Resource Analysis 28.02.-04.03.2011 72 / 72