|
ABSTRACT
Abstract interpretation of PROLOG programs has attracted many researchers in recent years, partly because of the potential for optimization in PROLOG compilers and partly because of the declarative nature of logic programming languages that make them more amenable to optimization than procedural languages. Most of the work, however, has remained at the theoretical level, focusing on the developments of frameworks and the definition of abstract domains.
This paper reports our effort to verify experimentally the practical value of this area of research. It describes the design and implementation of the generic abstract interpretation algorithm GAIA that we originally proposed in Le Charlier et al. [1991], its instantiation to a sophisticated abstract domain (derived from Bruynooghe and Janssens [1988]) containing modes, types, sharing, and aliasing, and its evaluation both in terms of performance and accuracy. The overall implementation (over 5000 lines of Pascal) has been systematically analyzed on a variety of programs and compared with the complexity analysis of Le Charlie et al. [1991] and the specific analysis systems of Hickey and Mudambi [1989], Taylor [1989; 1990], Van Roy and Despain [1990], and Warren et al. [1988].
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
~BRUYNOOGHE, M., AND JANSSENS, G. 1988. An instance of abstract interpretation: Integrating ~type and mode inferencing. In Proceedings of the 5th International Conference on Logic ~Programming. MIT Press, Cambridge, Mass., 669-683.
|
| |
4
|
~BRUYNOOGHE, M., JANSSENS, G., CALLEBAUT, A., AND DEMOEN, B. 1987. Abstract interpretation: ~Towards the global optimization of Prolog programs. In Proceedings of the 1987 Symposium on ~Logic Programming. IEEE, New York, 192-204.
|
| |
5
|
|
| |
6
|
|
| |
7
|
~CORSINI, A., AND FILth, G. 1989. A complete framework for the abstract interpretation of logic ~programs: Theory and applications. Res. Rep., Univ. of Padova, Italy.
|
 |
8
|
|
| |
9
|
|
| |
10
|
|
| |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
~ENGLEBERT, V., AND ROLAND, D. 1992. Abstract interpretation of PROLOG programs: Opti- ~mizations of an implementation. M~moire de licence et maltrise en Informatique, Dept. of ~Computer Science, Univ. of Namur, Belgium.
|
| |
15
|
|
| |
16
|
G. Gambosi , J. Nešetřil , M. Talamo, Posets, Boolean representations and quick path searching, 14th International Colloquium on Automata, languages and programming, p.404-424, July 1987, Karlsruhe, Germany
|
| |
17
|
|
| |
18
|
|
| |
19
|
~JACOBS, D., AND LANGEN, A. 1989. Accurate and efficient approximation of variable aliasing in ~logic programs. In Proceedings of the North American Conference on Logic Programming ~(NACLP-89). MIT Press, Cambridge, Mass.
|
| |
20
|
~JANSSENS, G. 1990. Deriving run time propergiee of logic program8 by meane of abstract ~interpretation. Ph.D. thesis, Dept. Computerwetenschappen, Katholieke Universiteit Leuven, ~Leuven, Belgium.
|
 |
21
|
|
| |
22
|
~JONES, N. D., AND SONDERGAARD, H. 1987. A Semantics-Based Framework for the Abstract ~Interpretatton of Prolog. Ellis Horwood, Chichester, U.K., 123-142.
|
| |
23
|
~LE CHARLIER, B., AND VAN HENTENRYCK, P. 1992a. Experimental evaluation of a generic ~abstract interpretation algorithm for Prolog. In 4th IEEE International Conference on Com- ~puter Languages ( ICCL'92 ). IEEE, New York.
|
| |
24
|
~LE CHARLIER, B., AND VAN HENTENRYCK, P. 1992b. On the design of generic abstract interpre- ~tation frameworks. In Workshop on Statw Analysis ( WSA'92 ).
|
| |
25
|
~LE CHARLIER, B., AND VAN HENTENRYCK, P. 1992c. Reexecution in abstract interpretation of ~Prolog. In Proceedzngs of the International Jotnt Conference and Symposzum on Logzc Pro- ~grammzng ( JICSLP-92 ).
|
| |
26
|
|
| |
27
|
~LE CHARLIER, B., MUSUMBU, K., AND VAN HENTENRYCK, P. 1990. Efficient and accurate algo- ~rithms for the abstract interpretation of Protog programs. Res. Paper RP-90/9, Univ. of ~Namur, Namur, Belgium.
|
| |
28
|
LE CHARLIER, B. MUSUMBU, K., AND VAN HENTENRYCK, P. 1991. A generic abstract interpreta- ~tion algorithm and its complexity analysis (extended abstract). In 8th Internatwnal Conference ~on Logic Programming (ICLP-91). MIT Press, Cambridge, Mass., 64-78.
|
| |
29
|
~MARRIOTT, K., AND SONDERGAARD, H. 1988. Bottom-up abstract interpretation of logic pro- ~grams In Proceedings of the 5th International Conference on Logic Programming. MIT Press, ~Cambridge, Mass., 733-748.
|
| |
30
|
~MARRIOTT, K., AND SONDERGAARD, H. 1989a. Notes for a tutorial on abstract interpretation of ~logic programs. In North American Conference on Logtc Programming.
|
| |
31
|
~MARRIOTT, K., AND SONDERGAARD, H. 1989b. Semantics-based dataflow analysis of logic pro- ~grams. In Information Processzng-89. 601-606.
|
| |
32
|
~MELLISH, C. 1981. The automatic generation of mode declarations for Prolog programs. Tech. ~Rep. DAI 163, Dept. of Artificial Intelligence, Univ. of Edinburgh, Scotland.
|
| |
33
|
~MELLISH, C. 1987. Abstract Interpretatwn of Prolog Programs. Ellis Horwood, Chichester, ~U.K., 181-198.
|
| |
34
|
|
| |
35
|
~MUSUMBU, K. 1990. Interpretation abstraite de programmes Prolog. Ph.D. thesis, Univ. of ~Namur, Belgium.
|
| |
36
|
MUTHUKUMAR, K., AND HERMENEGILDO, M. 1989. Determination of variable dependence infor- ~mation through abstract interpretation. In Proceedtngs of the North American Conference on ~Logic Programming (NACLP-89). MIT Press, Cambridge, Mass., 166-188.
|
| |
37
|
~NILSSON, U. 1989. A systematic approach to abstract interpretation of logic programs, Ph.D. ~thesis, Dept. of Computer and Information Science, Linkoping Univ., Linkoping, Sweden.
|
| |
38
|
|
| |
39
|
|
| |
40
|
~TAMASSIA, R., AND PREPARATA, F. P. 1990. Dynamic maintenance of planar digraphs, with ~applications. Algorithmica 5, 4, 509-527.
|
| |
41
|
~TAYLOR, A. 1989. Removal of dereferencing and trailing in Prolog compilation. In 6th In terna- ~ttonal Conference on Logic Programming. MIT Press, Cambridge, Mass., 48-62.
|
| |
42
|
|
| |
43
|
|
| |
44
|
|
| |
45
|
~WARREN, R., HERMEDEGILDO, M., AND DEBRAY, S. 1988. On the practicality of global flow ~analysis of logic programs. In Proceedings of the 5th International Conference on Logic~ ~Programmzng. MIT Press, Cambridge, Mass., 684-699.
|
| |
46
|
|
| |
47
|
~WINSBOROUGH, W.H. 1987. A minimal function graph semantics for logic programs. Tech. Rep. ~TR-711, Computer Science Dept., Univ. of Wisconsin at Madison.
|
CITED BY 24
|
|
M. Garcia de la Banda , M. Hermenegildo , M. Bruynooghe , V. Dumortier , G. Janssens , W. Simoens, Global analysis of constraint logic programs, ACM Transactions on Programming Languages and Systems (TOPLAS), v.18 n.5, p.564-614, Sept. 1996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C. R. Ramakrishnan , I. V. Ramakrishnan , R. C. Sekar, A symbolic constraint solving framework for analysis of logic programs, Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, p.12-23, June 21-23, 1995, La Jolla, California, United States
|
|
|
|
|
|
|
|
|
Agostino Cortesi , Baudouin Le Charlier , Pascal Van Hentenryck, Combinations of abstract domains for logic programming, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.227-239, January 16-19, 1994, Portland, Oregon, United States
|
|
|
Michael Codish , Harald Søndergaard, Meta-circular abstract interpretation in prolog, The essence of computation: complexity, analysis, transformation, Springer-Verlag New York, Inc., New York, NY, 2002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
David Overton , Zoltan Somogyi , Peter J. Stuckey, Constraint-based mode analysis of mercury, Proceedings of the 4th ACM SIGPLAN international conference on Principles and practice of declarative programming, p.109-120, October 06-08, 2002, Pittsburgh, PA, USA
|
|
|
|
|
|
Manuel V. Hermenegildo , Elvira Albert , Pedro López-García , Germán Puebla, Abstraction carrying code and resource-awareness, Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming, p.1-11, July 11-13, 2005, Lisbon, Portugal
|
|
|
Manuel V. Hermenegildo , Germán Puebla , Francisco Bueno , Pedro López-García, Integrated program debugging, verification, and optimization using abstract interpretation (and the Ciao system preprocessor), Science of Computer Programming, v.58 n.1-2, p.115-140, October 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|