A new recursion-theoretic characterization of the polytime functions
Computational Complexity
LOGSPACE and PTIME characterized by programming languages
Theoretical Computer Science - Special issue on mathematical foundations of programming semantics
Sequential abstract-state machines capture sequential algorithms
ACM Transactions on Computational Logic (TOCL)
A sound type system for secure flow analysis
Journal of Computer Security
Reference machines require non-linear time to maintain disjoint sets
STOC '77 Proceedings of the ninth annual ACM symposium on Theory of computing
Declassification: Dimensions and principles
Journal of Computer Security - 18th IEEE Computer Security Foundations Symposium (CSF 18)
Pure pointer programs with iteration
ACM Transactions on Computational Logic (TOCL)
A Type System for Complexity Flow Analysis
LICS '11 Proceedings of the 2011 IEEE 26th Annual Symposium on Logic in Computer Science
Hi-index | 0.00 |
Dynamic data-structures are ubiquitous in programming, and they use extensively underlying directed multi-graph structures, such as labeled trees, DAGs, and objects. This paper adapts well-established static analysis methods, namely data ramification and language-based information flow security, to programs over such graph structures. Our programs support the creation, deletion, and updates of both vertices and edges, and are related to pointer machines. The main result states that a function over graph-structures is computable in polynomial time if it is computed by a terminating program whose graph manipulation is ramified, provided all edges that are both created and read in a loop have the same label.