REEXECUTION IN ABSTRACT INTERPRETATION OF PROLOG

被引:4
|
作者
LECHARLIER, B [1 ]
VANHENTENRYCK, P [1 ]
机构
[1] BROWN UNIV,PROVIDENCE,RI 02912
关键词
D O I
10.1007/s002360050013
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Logic programming, because of referential transparency, enjoys the property that a literal may be reexecuted finitely often without affecting the meaning of the program. This property, although not interesting computationally in general, can be exploited in abstract interpretation to improve the accuracy of the analysis, as noted by Bruynooghe in [6]. We study reexecution from its theoretical foundations to its experimental evaluation. We define a new abstract semantics for Prolog, which incorporates the notion of reexecution, and we study its correctness and precision properties. A fixpoint algorithm to compute the abstract semantics is then presented. The accuracy and efficiency of the algorithm is evaluated experimentally on two abstract domains, a simple and an elaborate one, and compared with conventional approaches. The experimental results indicate that (1) reexecution can provide significant gains in accuracy at a very reasonable computation cost and that (2) reexecution on a simple domain is a versatile alternative to the standard approach on a more sophisticated domain.
引用
收藏
页码:209 / 253
页数:45
相关论文
共 50 条
  • [1] Abstract interpretation of Prolog programs
    Spoto, F
    Levi, G
    ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY, 1999, 1548 : 455 - 470
  • [2] ABSTRACT INTERPRETATION OF PROLOG PROGRAMS
    MELLISH, CS
    LECTURE NOTES IN COMPUTER SCIENCE, 1986, 225 : 463 - 474
  • [3] Sequence-based abstract interpretation of Prolog
    Le Charlier, B
    Rossi, S
    Van Hentenryck, P
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2002, 2 : 25 - 84
  • [4] POLYMORPHIC TYPE INFERENCE IN PROLOG BY ABSTRACT INTERPRETATION
    HORIUCHI, K
    KANAMORI, T
    LECTURE NOTES IN COMPUTER SCIENCE, 1988, 315 : 195 - 214
  • [5] Sequence-based abstract interpretation of Prolog
    Le, Charlier, Baudouin
    Rossi, Sabina
    Van, Hentenryck, Pascal
    Theory and Practice of Logic Programming, 2002, 2 (01) : 25 - 84
  • [6] Meta-circular abstract interpretation in prolog
    Codish, Michael
    Søndergaard, Harald
    Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2002, 2566 LNCS : 109 - 134
  • [7] Meta-circular abstract interpretation in prolog
    Codish, M
    Sondergaard, H
    ESSENCE OF COMPUTATION: COMPLEXITY ANALYSIS, TRANSFORMATION, 2002, 2566 : 109 - 134
  • [8] SPECIALIZATION OF PROLOG AND FCP PROGRAMS USING ABSTRACT INTERPRETATION
    GALLAGHER, J
    CODISH, M
    SHAPIRO, E
    NEW GENERATION COMPUTING, 1988, 6 (2-3) : 159 - 186
  • [9] EXPERIMENTAL EVALUATION OF A GENERIC ABSTRACT INTERPRETATION ALGORITHM FOR PROLOG
    LECHARLIER, B
    VANHENTENRYCK, P
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1994, 16 (01): : 35 - 101
  • [10] Abstract compilation of λProlog
    Malesieux, F
    Ridoux, O
    Boizumault, P
    LOGIC PROGRAMMING - PROCEEDINGS OF THE 1998 JOINT INTERNATIONAL CONFERENCE AND SYMPOSIUM ON LOGIC PROGRAMMING, 1998, : 130 - 144