2017
DOI: 10.1007/978-3-319-66845-1_7
|View full text |Cite
|
Sign up to set email alerts
|

The VerCors Tool Set: Verification of Parallel and Concurrent Software

Abstract: This paper reports on the VerCors tool set for verifying parallel and concurrent software. Its main characteristics are (i) that it can verify programs under different concurrency models, written in highlevel programming languages, such as for example in Java, OpenCL and OpenMP; and (ii) that it can reason not only about race freedom and memory safety, but also about functional correctness. VerCors builds on top of existing verification technology, notably the Viper framework, by transforming the verification … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
59
0

Year Published

2018
2018
2019
2019

Publication Types

Select...
6
1
1

Relationship

4
4

Authors

Journals

citations
Cited by 80 publications
(73 citation statements)
references
References 19 publications
0
59
0
Order By: Relevance
“…This prototype tool is very much effective and competitive with current tools on standard benchmarks that are used before. [12] reported about VerCors tool which supports the feature of concurrency such as kernel using barriers, heterogenicity, atomic operations, and compiler directives. VerCor tool has a characteristic feature that it can generalize the concurrent program verifications to a language-independent setting where a front end can be added easily.…”
Section: Literature Review Of Different Verification Tools For Concurmentioning
confidence: 99%
See 1 more Smart Citation
“…This prototype tool is very much effective and competitive with current tools on standard benchmarks that are used before. [12] reported about VerCors tool which supports the feature of concurrency such as kernel using barriers, heterogenicity, atomic operations, and compiler directives. VerCor tool has a characteristic feature that it can generalize the concurrent program verifications to a language-independent setting where a front end can be added easily.…”
Section: Literature Review Of Different Verification Tools For Concurmentioning
confidence: 99%
“…Lazy sequentialization for TSO and PSO is not applicable for the weak memory models [11]. There was a loss in scalability during the verification of concurrent C-programs by VerCors tool and also it was inferred with low detection of bugs by this tool [12]. Atomchase a tool proposed by [13], can recognize about 89% of the real atomicity violations, but it is unable to find and filter the benign atomicity violations.…”
Section: Research Findingsmentioning
confidence: 99%
“…VerCors is a toolset that specialises in verifying programs written in high-level languages with parallelism and concurrency features [6]. Notably, VerCors is able to reason about locks and fork/join concurrency in Java, but can also handle advanced language features such as GPU kernels with barriers and atomic operations in OpenCL, and compiler directives for automated parallelism in a subset of OpenMP for C. VerCors allows to verify race freedom, memory safety and functional correctness of these languages and uses separation logic with permission accounting as its logical foundation.…”
Section: The Vercors Toolsetmentioning
confidence: 99%
“…In another line of work, the focus is on developing practical techniques to reason about commonly used programs, using various synchronisation methods, support for dynamic thread creation, reentrant locks etc. This has been the focus of our work on the VerCors tool set [3][4][5]14], where we developed techniques (with tool support) to reason about multi-threaded Java and OpenCL programs. This is also the aim of the VeriFast tool, for verification of single-and multithreaded C and Java programs [39,65] and the Viper framework, which provides support for separation logic-based reasoning for a low-level intermediate language [43,51].…”
Section: Verification Of Concurrent Softwarementioning
confidence: 99%