Přístupnostní navigace
E-application
Search Search Close
Publication result detail
ŠILLING, P.; MALÍK, V.; VOJNAR, T.
Original Title
Applying Custom Patterns in Semantic Equality Analysis
English Title
Type
Paper in proceedings (conference paper)
Original Abstract
This paper develops a novel approach to using code change patterns in static analysis of semantic equivalence of large-scale software. In particular, we propose a way to define custom code change patterns, describing changes that do change the semantics but in a safe way, and a graph-based algorithm to efficiently detect occurrences of such patterns between two versions of software. The proposed method allows one to reduce the number of false positive results generated by static code-pattern-based analysis of semantic equivalence by specifying which patterns of changes should be considered semantically equivalent. Our experiments with the Linux kernel show that it is possible to eliminate a substantial number of detected differences with just a small number of patterns, while maintaining a very high scalability of the overall analysis. Furthermore, the proposed concept allows for a possible future combination with automatic inference of patterns, which promises significant improvements in the area of static analysis of semantic equivalence.
English abstract
Keywords
static analysis, program analysis, semantic difference, semantic equivalence, semantic change patterns, pattern matching, parametrized control-flow graphs
Key words in English
Authors
RIV year
2023
Released
04.10.2022
Publisher
Springer Nature Switzerland AG
Location
Cham
ISBN
978-3-031-17436-0
Book
Networked Systems
Edition
Lecture Notes in Computer Science
Volume
13464
Pages from
265
Pages to
282
Pages count
18
URL
https://link.springer.com/chapter/10.1007/978-3-031-17436-0_18
BibTex
@inproceedings{BUT181497, author="Petr {Šilling} and Viktor {Malík} and Tomáš {Vojnar}", title="Applying Custom Patterns in Semantic Equality Analysis", booktitle="Networked Systems", year="2022", series="Lecture Notes in Computer Science", volume="13464", pages="265--282", publisher="Springer Nature Switzerland AG", address="Cham", doi="10.1007/978-3-031-17436-0\{_}18", isbn="978-3-031-17436-0", url="https://link.springer.com/chapter/10.1007/978-3-031-17436-0_18" }