Loopster adopts a divide-and-conquer approach: (1) we extract individual paths from a target multi-path loop and analyze the termination of each path, (2) analyze the dependencies between each two paths, and then (3) determine the overall termination of the target loop based on the relations among paths. In this paper, we present a novel approach, named Loopster, which performs an efficient static analysis to decide the termination for loops based on path termination analysis and path dependency reasoning. Existing loop termination analysis techniques mainly depend on the synthesis of ranking functions, which is often expensive. N2 - Loop termination is an important problem for proving the correctness of a system and ensuring that the system always reacts. © 2017 Association for Computing Machinery. This research is supported by the National Research Foundation, Singapore under its National Cybersecurity R&D Program (Award No. T2 - 11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017 The results show that Loopster is effective in a majority of loops with better accuracy and 20×+ performance improvement compared to the state-of-the-art tools.", We evaluate Loopster by applying it on the loop termination competition benchmark and three real-world projects. The results show that Loopster is effective in a majority of loops with better accuracy and 20×+ performance improvement compared to the state-of-the-art tools.Ībstract = "Loop termination is an important problem for proving the correctness of a system and ensuring that the system always reacts. Loop termination is an important problem for proving the correctness of a system and ensuring that the system always reacts.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |