Incremental and Modular Context-sensitive Analysis
Autor: | Manuel V. Hermenegildo, José F. Morales, Isabel Garcia-Contreras |
---|---|
Rok vydání: | 2021 |
Předmět: |
FOS: Computer and information sciences
Computer science Context (language use) 0102 computer and information sciences 02 engineering and technology Reuse 01 natural sciences Theoretical Computer Science Program analysis Artificial Intelligence 0202 electrical engineering electronic engineering information engineering Code (cryptography) I.2.2 Informática I.2.3 D.2.4 F.3.1 Computer Science - Programming Languages business.industry Software development 020207 software engineering Modular design Abstract interpretation Computational Theory and Mathematics Computer engineering 010201 computation theory & mathematics Hardware and Architecture Granularity business Software Programming Languages (cs.PL) |
Zdroj: | Theory and Practice of Logic Programming, ISSN 1475-3081, 2021, Vol. 21, No. 2 HCVS 2021 : Horn Clauses for Verification and Synthesis | 8th Workshop on Horn Clauses for Verification and Synthesis (HCVS) | 28 Mar 2021 | Luxemburgo Archivo Digital UPM Universidad Politécnica de Madrid instname |
ISSN: | 1475-3081 1471-0684 |
DOI: | 10.1017/s1471068420000496 |
Popis: | Context-sensitive global analysis of large code bases can be expensive, which can make its use impractical during software development. However, there are many situations in which modifications are small and isolated within a few components, and it is desirable to reuse as much as possible previous analysis results. This has been achieved to date through incremental global analysis fixpoint algorithms that achieve cost reductions at fine levels of granularity, such as changes in program lines. However, these fine-grained techniques are not directly applicable to modular programs, nor are they designed to take advantage of modular structures. This paper describes, implements, and evaluates an algorithm that performs efficient context-sensitive analysis incrementally on modular partitions of programs. The experimental results show that the proposed modular algorithm shows significant improvements, in both time and memory consumption, when compared to existing non-modular, fine-grain incremental analysis techniques. Furthermore, thanks to the proposed inter-modular propagation of analysis information, our algorithm also outperforms traditional modular analysis even when analyzing from scratch. Comment: 56 pages, 27 figures. To be published in Theory and Practice of Logic Programming. v3 corresponds to the extended version of the ICLP2018 Technical Communication. v4 is the revised version submitted to Theory and Practice of Logic Programming. v5 (this one) is the final author version to be published in TPLP |
Databáze: | OpenAIRE |
Externí odkaz: |