Fast and Incremental Computation of Weak Control Closure
2022 (English)In: Lecture Notes in Computer Science, vol 13790, Springer Science and Business Media Deutschland GmbH , 2022, p. 325-349Conference paper, Published paper (Refereed)
Abstract [en]
Control dependence is a fundamental concept used in many program analysis techniques such as program slicing, program debugging, program parallelization, and detecting security leaks. Since the introduction of this concept in the late eighties, numerous definitions of control dependencies and their computation methods have been developed. The later definitions are progressively more generalized covering a wide spectrum of modern programming language constructs. The most generalized concepts are the weak and strong control closure (WCC and SCC) that capture the nontermination (in)sensitive control dependencies of a given program. In this paper, we have developed a novel method to compute WCC incrementally. Any client application of WCC such as program slicing requires computing the WCC repeatedly in a fixpoint computation. An incremental algorithm to compute WCC will improve the performance of the client application significantly. We have provided the proof of correctness and the theoretical worst-case complexity of our algorithm. We have performed an experimental evaluation on well-known benchmarks, and our experiments reveal that we have significantly improved the practical efficiency in computing WCC incrementally. We have obtained an average speedup of 31.03 in all benchmarks and a maximum speedup of 35.29 than the best state-of-the-art algorithm computing WCC.
Place, publisher, year, edition, pages
Springer Science and Business Media Deutschland GmbH , 2022. p. 325-349
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 13790 LNCS
Keywords [en]
Control dependence, Nontermination insensitive, Nontermination sensitive, Program slicing, Strong control closure, Weak control closure, Application programs, Computational complexity, Petroleum reservoir evaluation, Client applications, Fast computation, Non terminations, Program debugging
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:mdh:diva-61426DOI: 10.1007/978-3-031-22308-2_15ISI: 000916500200015Scopus ID: 2-s2.0-85144829204ISBN: 9783031223075 (print)OAI: oai:DiVA.org:mdh-61426DiVA, id: diva2:1723867
Conference
29th International Static Analysis Symposium, SAS 2022, Auckland 5 December 2022 through 7 December 2022
2023-01-042023-01-042023-02-22Bibliographically approved