Abstract

A theory of semantics-based dataflow analysis using a notion of “insertion” is presented. This notion relaxes the Galois connections used in Cousot and Cousot's theory of abstract interpretation. The aim is to obtain a firm basis for the development of dataflow analyses of normal logic programs. A dataflow analysis is viewed as a nonstandard semantics that approximates the standard semantics by manipulating descriptions of data objects rather than the objects themselves. A Kleene logic-based semantics for normal logic programs is defined, similar to Fitting's ф P semantics. This provides the needed semantic base for “bottom-up” dataflow analyses. Such analyses give information about the success and failure sets of a program. A major application of bottom-up analysis is therefore type inference. We detail a dataflow analysis using descriptions similar to Sato and Tamaki's depth- k abstractions and another using Marriott, Naish, and Lassez's “singleton” abstractions. We show that both are sound with respect to our semantics and outline various uses of the analyses. Finally we justify our choice of semantics by showing that it is the most abstract of a number of possible semantics. This means that every analysis based on our semantics is correct with respect to these other semantics, including Kunen's semantics, SLDNF resolution, and the common (sound) PROLOG semantics.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.