Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Countable nondeterminism and random assignment
Journal of the ACM (JACM)
Galois connections and computer science applications
Proceedings of a tutorial and workshop on Category theory and computer programming
Crafting a compiler
Computer algebra: systems and algorithms for algebraic computation
Computer algebra: systems and algorithms for algebraic computation
Finite constants: characterizations of a new decidable set of constants
MFCS '89 Selected papers of the symposium on Mathematical foundations of computer science
Algorithms for computer algebra
Algorithms for computer algebra
Algorithmic algebra
Hilbert's tenth problem
Information Processing Letters - Special issue on the calculational method
Precise interprocedural dataflow analysis with applications to constant propagation
TAPSOFT '95 Selected papers from the 6th international joint conference on Theory and practice of software development
Advanced compiler design and implementation
Advanced compiler design and implementation
Symbolic evaluation and the global value graph
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Flow Analysis of Computer Programs
Flow Analysis of Computer Programs
Polynomial Algorithms in Computer Algebra
Polynomial Algorithms in Computer Algebra
A Discipline of Programming
On the Complexity of Constant Propagation
ESOP '01 Proceedings of the 10th European Symposium on Programming Languages and Systems
Non-linear loop invariant generation using Gröbner bases
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Precise interprocedural analysis through linear algebra
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Computing polynomial program invariants
Information Processing Letters
Constructing invariants for hybrid systems
Formal Methods in System Design
Analysing All Polynomial Equations in ${\mathbb Z_{2^w}}$
SAS '08 Proceedings of the 15th international symposium on Static Analysis
Endomorphisms for Non-trivial Non-linear Loop Invariant Generation
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
Reasoning algebraically about P-solvable loops
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
Generating polynomial invariants with DISCOVERER and QEPCAD
Formal methods and hybrid real-time systems
Noetherian spaces in verification
ICALP'10 Proceedings of the 37th international colloquium conference on Automata, languages and programming: Part II
Interprocedurally analyzing polynomial identities
STACS'06 Proceedings of the 23rd Annual conference on Theoretical Aspects of Computer Science
Checking herbrand equalities and beyond
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Inference of polynomial invariants for imperative programs: a farewell to gröbner bases
SAS'12 Proceedings of the 19th international conference on Static Analysis
Hi-index | 0.00 |
Constant propagation aims at identifying expressions that always yield a unique constant value at run-time. It is well-known that constant propagation is undecidable for programs working on integers even if guards are ignored as in non-deterministic flow graphs. We show that polynomial constants are decidable in non-deterministic flow graphs. In polynomial constant propagation, assignment statements that use the operators +,-,* are interpreted exactly but all assignments that use other operators are conservatively interpreted as non-deterministic assignments.We present a generic algorithm for constant propagation via a symbolic weakest precondition computation and show how this generic algorithm can be instantiated for polynomial constant propagation by exploiting techniques from computable ring theory.