2010
DOI: 10.1007/978-3-642-14295-6_42
|View full text |Cite
|
Sign up to set email alerts
|

Local Verification of Global Invariants in Concurrent Programs

Abstract: We describe a practical method for reasoning about realistic concurrent programs. Our method allows global two-state invariants that restrict update of shared state. We provide simple, sufficient conditions for checking those global invariants modularly. The method has been implemented in VCC 1 , an automatic, sound, modular verifier for concurrent C programs. VCC has been used to verify functional correctness of tens of thousands of lines of Microsoft's Hyper-V virtualization platform 2 and of SYSGO's embedde… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
36
0
1

Year Published

2011
2011
2021
2021

Publication Types

Select...
8

Relationship

0
8

Authors

Journals

citations
Cited by 50 publications
(37 citation statements)
references
References 17 publications
0
36
0
1
Order By: Relevance
“…A different approach for modular verification of object invariants in concurrent programs is proposed by Cohen [6], implemented in VCC [5]. Each object is assigned a two-state invariant expressing the required relation between any two consecutive states of execution that has to be respected by every state update in the program.…”
Section: Related Workmentioning
confidence: 99%
“…A different approach for modular verification of object invariants in concurrent programs is proposed by Cohen [6], implemented in VCC [5]. Each object is assigned a two-state invariant expressing the required relation between any two consecutive states of execution that has to be respected by every state update in the program.…”
Section: Related Workmentioning
confidence: 99%
“…For concurrent programs, the inv/own discipline has been generalized by Locally Checked Invariants [24] which is implemented in the VCC tool [23]. In this case, ownership is complemented by non-hierarchical dependencies which are tracked in ghost state called "claims", generalizing the friendship discipline.…”
Section: Related Workmentioning
confidence: 99%
“…The original discipline is a core feature of the Spec# program verifier 1 for sequential C# programs [12] and our adaptations would not be difficult to implement. The original discipline has been adapted to concurrency and implemented as the core discipline for the VCC program verifier for multithreaded C programs [24].…”
Section: Introductionmentioning
confidence: 99%
“…3 Tool Overview: VCC and Isabelle/HOL VCC [6,7,15] is an assertional, first-order deductive code verifier for full C code. To overcome the restrictions of first-order reasoning, ghost state and code are used, e.g., to maintain inductively defined information.…”
Section: Theoremmentioning
confidence: 99%
“…Specifying sums without using recursive functions is, however, a bit intricate. 7 Given a sum i<N expr(i), the usual trick is to define a (finite)…”
Section: Checkermentioning
confidence: 99%