DocumentCode
660613
Title
CSeq: A concurrency pre-processor for sequential C verification tools
Author
Fischer, Bernd ; Inverso, Omar ; Parlato, Gennaro
Author_Institution
Div. of Comput. Sci., Stellenbosch Univ., Stellenbosch, South Africa
fYear
2013
fDate
11-15 Nov. 2013
Firstpage
710
Lastpage
713
Abstract
Sequentialization translates concurrent programs into equivalent nondeterministic sequential programs so that the different concurrent schedules no longer need to be handled explicitly. It can thus be used as a concurrency preprocessing technique for automated sequential program verification tools. Our CSeq tool implements a novel sequentialization for C programs using pthreads, which extends the Lal/Reps sequentialization to support dynamic thread creation. CSeq now works with three different backend tools, CBMC, ESBMC, and LLBMC, and is competitive with state-of-the-art verification tools for concurrent programs.
Keywords
C language; concurrency control; parallel programming; program interpreters; program verification; C program sequentialization; CBMC; CSeq tool; ESBMC; LLBMC; Lal-Reps sequentialization; automated sequential program verification tools; backend tools; concurrency preprocessing technique; concurrency preprocessor; concurrent program translation; dynamic thread creation; equivalent nondeterministic sequential programs; pthreads; sequential C verification tools; Benchmark testing; Concurrent computing; Context; Instruction sets; Programming;
fLanguage
English
Publisher
ieee
Conference_Titel
Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
Conference_Location
Silicon Valley, CA
Type
conf
DOI
10.1109/ASE.2013.6693139
Filename
6693139
Link To Document