next_inactive up previous


background="/images/LogAlg_bg.gif" TEXT="000000" FONTSIZE="14pt" FONT="helvetica"




Computational Logic
Abstract Interpretation of Logic Programs

Introduction

[Material partly from Cousot, Nielson, Gallagher, Sondergaard, Bruynooghe, and others]

Program Analysis

What is abstract interpretation?

Comparison to other methods

Example: integer sign arithmetic

Example: integer sign arithmetic (Contd.)

Example: integer sign arithmetic (Contd.)

Important observations

Issues in Abstract Interpretation

Safe Approximations

Approximation of the meaning of a program

Approximation of the meaning of a program (Contd.)

Abstract Domain and Concretization Function

Abstraction Function

Abstract Meaning and Safety

Proving properties in the abstract

Collecting Semantics

Lattice Structure

Example: integer sign arithmetic

Example: integer sign arithmetic (Contd.)

The Galois Insertion Approach

Termination: conditions on $F_\alpha$ and $D_\alpha$

Lattice Structures

\begin{center}\vbox{\input{/home/logalg/public_html/slides/Figs/finiteness_land.latex}
}\end{center}

Termination: Discussion

Origins (General Programming)

Analyzing Logic Programs

Case Study: Fixpoint Semantics

Fixpoint Semantics: Example

``Bottom-up'' Abstract Interpretation

``Bottom-up'' Abstract Interpretation (Contd.)



\begin{center}\vbox{\input{/home/clip/Slides/nmsu_lectures/ai/Figs/relationships.tex}
}\end{center}

Such ``bottom-up'' analyses have been proposed for example by Marriott and Sondergaard, and, more recently, by Codish, Dams, and Yardeni, Debray and Ramakrishnan, Barbuti, Giacobazzi, and Levi, and others.

Example: simple ``type'' inference

Example: simple ``type'' inference (Contd.)

Example: simple ``type'' inference (Contd.)

$T_P$-based Bottom-up Analysis: Discussion

$T_P$-based Bottom-up Analysis: Discussion (II)

``Top-down'' analysis (summarized)

Domains

Domains: Pair Sharing

Domains: Set Sharing

Other domains

Frameworks


Abstract AND-OR Tree

Fixpoint Optimization

``Use current success substitution and iterate until a fixpoint is reached''

Other Improvements

Analysis of Constraint Logic Programs

Analysis of Constraint Logic Programs (Contd.)

Origins (Declarative Paradigms, to CLP)

Conclusions

Conclusions (and Coda!)


next_inactive up previous
Last modification: Wed Nov 22 23:57:35 CET 2006 <webmaster@clip.dia.fi.upm.es>[CLIP] [FIM] [UNM]