ACM Transactions on Computational Logic · 2005 · 22 citations · 18 references
ComputingComputer ScienceLogicProgramming LanguagesTheory Of ComputationAbstract InterpretationAutomated ReasoningFormal SemanticsLogic ProgrammingPropositional LogicAbstract DomainsAbstract SemanticsIndependenceSemantic InformationUnification
In this article, we show that reversible analyses of logic languages by abstract interpretation can be performed without loss of precision by systematically refining abstract domains. This is obtained by adding to the abstract domain the minimal amount of concrete semantic information so that this refined abstract domain becomes rich enough to allow goal-driven and goal-independent analyses agree. These domains are known as condensing abstract domains. Essentially, an abstract domain A is condensing when the goal-driven analysis performed on A for a program P and a given query can be retrieved with no loss of precision from the goal-independent analysis on A of P . We show that condensation is an abstract domain property and that the problem of making an abstract domain condensing boils down to the problem of making the corresponding abstract interpretation complete, in a weakened form, with respect to unification. In the case of abstract domains for logic program analysis approximating computed answer substitutions, we provide a clean logical characterization of condensing domains as fragments of propositional linear logic. We apply our methodology to the systematic design of condensing domains for freeness and independence analysis.
18
Patrick Cousot, Radhia Cousot · 1977 · 6.2K citations
Systematic design of program analysis frameworks
Patrick Cousot, Radhia Cousot · 1979 · 1.6K citations · Full text
Quantales and (noncommutative) linear logic
David N. Yetter · Journal of Symbolic Logic · 1990 · 320 citations
Making abstract interpretations complete
Roberto Giacobazzi, Francesco Ranzato, Francesca Scozzari · Journal of the ACM · 2000 · 253 citations · Full text