King, Andy, Lu, Lunjin (2002) A Backward Analysis for Constraint Logic Programs. Theory and Practice of Logic Programming, 2 (4-5). pp. 517-547. ISSN 1471-0684. (doi:10.1017/S1471068402001436) (KAR id:37580)
PDF
Pre-print
Language: English |
|
Download this file (PDF/35MB) |
|
Request a format suitable for use with assistive technology e.g. a screenreader | |
Official URL: http://dx.doi.org/10.1017/S1471068402001436 |
Abstract
One recurring problem in program development is that of understanding how to re-use code developed by a third party. In the context of (constraint) logic programming, part of this problem reduces to figuring out how to query a program. If the logic program does not come with any documentation, then the programmer is forced to either experiment with queries in an ad hoc fashion or trace the control-flow of the program (backward) to infer the modes in which a predicate must be called so as to avoid an instantiation error. This paper presents an abstract interpretation scheme that automates the latter technique. The analysis presented in this paper can infer moding properties which if satisfied by the initial query, come with the guarantee that the program and query can never generate any moding or instantiation errors. Other applications of the analysis are discussed. The paper explains how abstract domains with certain computational properties (they condense) can be used to trace control-flow backward (right-to-left) to infer useful properties of initial queries. A correctness argument is presented and an implementation is reported.
Item Type: | Article |
---|---|
DOI/Identification number: | 10.1017/S1471068402001436 |
Uncontrolled keywords: | Abstract interpretation; Constraint Logic Programs; backward analysis; condensing; groundness analysis. |
Subjects: | A General Works |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Andy King |
Date Deposited: | 12 Dec 2013 19:57 UTC |
Last Modified: | 05 Nov 2024 10:21 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/37580 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):