Program transformations in a denotational setting
ACM Transactions on Programming Languages and Systems (TOPLAS)
Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Galois connections and computer science applications
Proceedings of a tutorial and workshop on Category theory and computer programming
4th Annual Symposium on Theoretical Aspects of Computer Sciences on STACS 87
Abstract interpretation of declarative languages
Abstract interpretation of declarative languages
Control flow analysis in scheme
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Communication and concurrency
A collecting interpretation of expressions
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Two-level semantics and abstract interpretation
Theoretical Computer Science
Replacing function parameters by global variables
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Compile-time garbage collection by sharing analysis
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Control-flow analysis of higher-order languages of taming lambda
Control-flow analysis of higher-order languages of taming lambda
Co-induction in relational semantics
Theoretical Computer Science
Semantics with applications: a formal introduction
Semantics with applications: a formal introduction
Semantics of programming languages: structures and techniques
Semantics of programming languages: structures and techniques
Inductive definitions, semantics and abstract interpretations
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Handbook of logic in computer science (vol. 2)
From operational definitions to abstract semantics
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Generating data flow analysis algorithms from modal specifications
TACS'91 Selected papers of the conference on Theoretical aspects of computer software
Parameterized partial evaluation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Higher-order concurrent programs with finite communication topology (extended abstract)
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Soft typing with conditional types
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Selective and lightweight closure conversion
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Set-based analysis of ML programs
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Total correctness by local improvement in program transformation
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A unified treatment of flow analysis in higher-order languages
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Closure analysis in constraint form
ACM Transactions on Programming Languages and Systems (TOPLAS)
Analyzing the communication topology of concurrent programs
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Abstract interpretation: a semantics-based tool for program analysis
Handbook of logic in computer science (vol. 4)
From CML to its process algebra
Theoretical Computer Science
Infinitary control flow analysis: a collecting semantics for closure analysis
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Data flow analysis is model checking of abstract interpretations
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Global Data Flow Analysis and Iterative Algorithms
Journal of the ACM (JACM)
Initial Algebra Semantics and Continuous Algebras
Journal of the ACM (JACM)
Data flow analysis of applicative programs using minimal function graphs
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Symbolic Model Checking
Algebraic Semantics
Flow Analysis of Computer Programs
Flow Analysis of Computer Programs
Flow analysis and optimization of LISP-like structures
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Systematic design of program analysis frameworks
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Local Model Checking for Context-Free Processes
ICALP '93 Proceedings of the 20th International Colloquium on Automata, Languages and Programming
DFA&OPT-METAFrame: A Tool Kit for Program Analysis and Optimazation
TACAs '96 Proceedings of the Second International Workshop on Tools and Algorithms for Construction and Analysis of Systems
Gate Splitting in LOTOS Specifications Using Abstract Interpretation
TAPSOFT '93 Proceedings of the International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Model Checking for Context-Free Processes
CONCUR '92 Proceedings of the Third International Conference on Concurrency Theory
A Practical Technique for Process Abstraction
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
CONCUR '95 Proceedings of the 6th International Conference on Concurrency Theory
Abstract Interpretation of the pi-Calculus
Selected papers from the 5th LOMAPS Workshop on Analysis and Verification of Multiple-Agent Languages
Abstract Interpretation of Small-Step Semantics
Selected papers from the 5th LOMAPS Workshop on Analysis and Verification of Multiple-Agent Languages
Natural-Semantics-Based Abstract Interpretation (Preliminary Version)
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Effective Flow Analysis for Avoiding Run-Time Checks
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Optimality in Abstractions of Model Checking
SAS '95 Proceedings of the Second International Symposium on Static Analysis
SAS '96 Proceedings of the Third International Symposium on Static Analysis
Concurrency and Automata on Infinite Sequences
Proceedings of the 5th GI-Conference on Theoretical Computer Science
Verification Tools for Finite-State Concurrent Systems
A Decade of Concurrency, Reflections and Perspectives, REX School/Symposium
Flobal Program Analysis in Constraint Form
CAAP '94 Proceedings of the 19th International Colloquium on Trees in Algebra and Programming
Abstract interpretation and program modelling
ACM SIGSOFT Software Engineering Notes
Incompleteness, Counterexamples, and Refinements in Abstract Model-Checking
SAS '01 Proceedings of the 8th International Symposium on Static Analysis
Watchpoint Semantics: A Tool for Compositional and Focussed Static Analyses
SAS '01 Proceedings of the 8th International Symposium on Static Analysis
Class analyses as abstract interpretations of trace semantics
ACM Transactions on Programming Languages and Systems (TOPLAS)
Types and trace effects of higher order programs
Journal of Functional Programming
Types and trace effects for object orientation
Higher-Order and Symbolic Computation
Coinductive big-step operational semantics
Information and Computation
Magic-sets for localised analysis of Java bytecode
Higher-Order and Symbolic Computation
Control-flow analysis of functional programs
ACM Computing Surveys (CSUR)
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
Tracing compilation by abstract interpretation
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
We present trace-based abstract interpretation, a unification of severallines of research on applying Cousot-Cousot-style abstract interpretation a.i. tooperational semantics definitions (such as flowchart, big-step, and small-step semantics)that express a program‘s semantics as a concrete computation tree of trace paths. Aprogram‘s trace-based a.i. is also a computation tree whose nodes contain abstractions ofstate and whose paths simulate the paths in the program‘s concrete computation tree.Using such computation trees, we provide a simple explanation of the central concept of collecting semantics, and we distinguish concrete from abstract collectingsemantics and state-based from path-based collecting semantics. We also expose therelationship between collecting semantics extraction and results garnered from flow-analytic and model-checking-based analysis techniques. We adapt concepts fromconcurrency theory to formalize “safe” and “live” a.i.‘s for computation trees; in particular, coinduction techniques help extend fundamental results to infinite computation trees.Problems specific to the various operational semantics methodologies are discussed: Big-step semantics cannot express divergence, so we employ a mixture of induction andcoinduction in response; small-step semantics generate sequences of programconfigurations unbounded in size, so we abstractly interpret source language syntax.Applications of trace-based a.i. to data-flow analysis, model checking, closure analysis,and concurrency theory are demonstrated.