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 条
  • [41] ON THE POWER OF ABSTRACT INTERPRETATION
    REDDY, US
    KAMIN, SN
    [J]. COMPUTER LANGUAGES, 1993, 19 (02): : 79 - 89
  • [42] A BIBLIOGRAPHY ON ABSTRACT INTERPRETATION
    NIELSON, F
    [J]. SIGPLAN NOTICES, 1986, 21 (05): : 31 - 38
  • [43] Sweeping in Abstract Interpretation
    Jakubczyk, Krzysztof
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2012, 288 : 25 - 36
  • [44] Quantum Abstract Interpretation
    Yu, Nengkun
    Palsberg, Jens
    [J]. PROCEEDINGS OF THE 42ND ACM SIGPLAN INTERNATIONAL CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '21), 2021, : 542 - 558
  • [45] Automating Abstract Interpretation
    Reps, Thomas
    Thakur, Aditya
    [J]. VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2016, 2016, 9583 : 3 - 40
  • [46] Principles of Abstract Interpretation
    Wilhelm, Reinhard
    [J]. FORMAL ASPECTS OF COMPUTING, 2022, 34 (02)
  • [47] FRAMEWORKS FOR ABSTRACT INTERPRETATION
    MARRIOTT, K
    [J]. ACTA INFORMATICA, 1993, 30 (02) : 103 - 129
  • [48] Abstract Interpretation with Unfoldings
    Sousa, Marcelo
    Rodriguez, Cesar
    D'Silva, Vijay
    Kroening, Daniel
    [J]. COMPUTER AIDED VERIFICATION (CAV 2017), PT II, 2017, 10427 : 197 - 216
  • [49] Verification by abstract interpretation
    Cousot, P
    [J]. VERIFICATION: THEORY AND PRACTICE: ESSAYS DEDICATED TO ZHOAR MANNA ON THE OCCASION OF HIS 64TH BIRTHDAY, 2003, 2772 : 243 - 268
  • [50] Abstract Interpretation Repair
    Bruni, Roberto
    Giacobazzi, Roberto
    Gori, Roberta
    Ranzato, Francesco
    [J]. PROCEEDINGS OF THE 43RD ACM SIGPLAN INTERNATIONAL CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '22), 2022, : 426 - 441