• 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