11
- https://doi.org/10.4230/lipics.stacs.2011.45
Local dependency dynamic programming in the presence of memory faults
- Mar 10, 2011
- DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
- Saverio Caminiti +2 more
We investigate the design of dynamic programming algorithms in unreliable memories, i.e., in the presence of faults that may arbitrarily corrupt memory locations during the algorithm execution. As a main result, we devise a general resilient framework that can be applied to all local dependency dynamic programming problems, where updates to entries in the auxiliary table are determined by the contents of neighboring cells. Consider, as an example, the computation of the edit distance between two strings of length n and m. We prove that, for any arbitrarily small constant " 2 (0, 1] and n m, this problem can be solved correctly with high probability in O nm + 1+" worst-case time and O(nm + n ) space, when up to memory faults can be inserted by an adversary with unbounded computational power and is the actual number of faults occurring during the computation. We also show that an optimal edit sequence can be constructed in additional time O n + 1+" . It follows that our resilient algorithms match the running time and space usage of the standard non-resilient implementations while tolerating almost linearly-many faults. 1998 ACM Subject Classification B.8 [Performance and reliability]; F.2 [Analysis of algorithms and problem complexity]; I.2.8 [Dynamic programming].
- # Local Dynamic Programming
- # Unreliable Memories
- # Auxiliary Table
- # Dynamic Programming
- # Strings Of Length
- # Memory Faults
- # Edit Distance
- # Computation Of Edit Distance
- # Local Programming
- # Algorithm Execution