2019
DOI: 10.1007/978-3-030-30923-7_5
|View full text |Cite
|
Sign up to set email alerts
|

String Abstraction for Model Checking of C Programs

Abstract: Automatic abstraction is a powerful software verification technique. In this paper, we elaborate an abstract domain for C strings, that is, null-terminated arrays of characters. We describe the abstract semantics of basic string operations and prove their soundness with regards to previously established concrete semantics of those operations. In addition to a selection of string functions from the standard C library, we provide semantics for character access and update, enabling automatic lifting of arbitrary … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
4
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
3
1
1

Relationship

1
4

Authors

Journals

citations
Cited by 5 publications
(4 citation statements)
references
References 26 publications
0
4
0
Order By: Relevance
“…This paper is a revised and extended version of [4,5]. We introduce M-String, a new abstract domain tailored for the analysis of strings in C, whose elements:…”
Section: Paper Contributionmentioning
confidence: 99%
See 3 more Smart Citations
“…This paper is a revised and extended version of [4,5]. We introduce M-String, a new abstract domain tailored for the analysis of strings in C, whose elements:…”
Section: Paper Contributionmentioning
confidence: 99%
“…Consider the split segmentation abstract predicate m = ([0, 0] 'a' [2,5], ∅) where C is the constant propagation domain for characters and B the interval domain. m approximates character arrays certainly containing a string of interest which is actually a sequence of 'a', whose length goes from 2 to 5, followed by a null character, e.g., "aa\0" and "aaaaa\0".…”
Section: Example 10mentioning
confidence: 99%
See 2 more Smart Citations