comp.lang.ada
 help / color / mirror / Atom feed
From: Manuel Carro <boris@lml.ls.fi.upm.es>
Subject: Re: ANNOUNCE: New white paper available on www.sparkada.com
Date: 24 Sep 2001 15:24:54 +0200
Date: 2001-09-24T13:24:54+00:00	[thread overview]
Message-ID: <7sn13ksoux.fsf@salmon.ls.fi.upm.es> (raw)
In-Reply-To: fb75c450.0109240045.472dc22f@posting.google.com


> Do you have any links to description of what Abstract Interpretation
> is - i.e. what is it based on?

    Basically it is a general means to analyze programs by mapping
them into an abstract value space.  As a simple example, all numbers
can be mapped to either 0, positive, or negative, and the builtin
operations be redefined accordingly, i.e., 

x * y = y * x,
(0) * _ = (0)
(+) * (+) = (+)
(+) * (-) = (-)
(-) * (-) = (-)
....

    The program is then run in the abstract domain, possibly several
times, until the information concerning the program does not change.
Then one might be able to infer that a variable is, e.g., always
positive at some point.  The good point is that having a finite
abtract domain (with some mathematical properties) ensures termination
of the analysis.  The bad point is that, of course, information is
lost both with respect to the actual program (I know that something is
positive, but that does not help me to get rid of a "X > 3" test), and
with respect to the abstract domain itself (i.e., I might end up with
a variable which has "any value").

    The abstract domain should be carefully chosen to reflect the
properties one wants to study.  The nice thing is that the analysis
algorithm can be made (in principle) generic and be used with any
abstract domain.

    There has been a lot of work in abstract interpretation in logic
and declarative languages.


-- 
          ||            Manuel Carro -- DLSIIS            ||
          ||           e-mail: mcarro@fi.upm.es           ||
          ||      http://lml.ls.fi.upm.es/~boris          ||
          ||    http://clip.dia.fi.upm.es/Software/Ciao   ||
          || Phone: +34 91 336-7455  FAX: +34 91 336-7412 ||




  parent reply	other threads:[~2001-09-24 13:24 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-21 13:56 ANNOUNCE: New white paper available on www.sparkada.com Rod Chapman
2001-09-24  8:45 ` Hambut
2001-09-24  8:55   ` Martin Dowie
2001-09-24 13:24   ` Manuel Carro [this message]
2001-09-25 17:42     ` Ken Garlington
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox