Publication detail
From Low-Level Pointers to High-Level Containers
DUDKA, K. HOLÍK, L. PERINGER, P. TRTÍK, M. VOJNAR, T.
Original Title
From Low-Level Pointers to High-Level Containers
Type
conference paper
Language
English
Original Abstract
We propose a method that transforms a C program manipulating containers using low-level pointer statements into an equivalent program where the containers are manipulated via calls of standard high-level container operations like push_back or pop_front. The input of our method is a C program annotated by a special form of shape invariants which can be obtained from current automatic shape analysers after a slight modification. The resulting program where the low-level pointer statements are summarized into high-level container operations is more understandable and (among other possible benefits) better suitable for program analysis. We have implemented our approach and successfully tested it through a number of experiments with list-based containers, including experiments with simplification of program analysis by separating shape analysis from analysing data-related properties.
Keywords
program analysis, static analysis, shape analysis, heap abstraction, symbolic memory graphs, program transformation, pointer programs, container programs
Authors
DUDKA, K.; HOLÍK, L.; PERINGER, P.; TRTÍK, M.; VOJNAR, T.
Released
17. 1. 2016
Publisher
Springer Verlag
Location
Berlin Heidelberg
ISBN
978-3-662-49121-8
Book
Verification, Model Checking, and Abstract Interpretation (VMCAI)
Edition
Lecture Notes in Computer Science
Pages from
431
Pages to
452
Pages count
22
URL
BibTex
@inproceedings{BUT130929,
author="Kamil {Dudka} and Lukáš {Holík} and Petr {Peringer} and Marek {Trtík} and Tomáš {Vojnar}",
title="From Low-Level Pointers to High-Level Containers",
booktitle="Verification, Model Checking, and Abstract Interpretation (VMCAI)",
year="2016",
series="Lecture Notes in Computer Science",
volume="9583",
pages="431--452",
publisher="Springer Verlag",
address="Berlin Heidelberg",
doi="10.1007/978-3-662-49122-5\{_}21",
isbn="978-3-662-49121-8",
url="http://www.springer.com/la/book/9783662491218"
}