The LSV seminar takes place on Tuesday at 11:00 AM. The usual location is the conference room at Pavillon des Jardins (venue). If you wish to be informed by e-mail about upcoming seminars, please contact Stéphane Le Roux and Matthias Fuegger.
The seminar is open to public and does not require any form of registration.
Pattern-based verification checks the correctness of the program executions that follow a given pattern, a regular expression over the alphabet of program transitions of the form w1* ... wn*. For multithreaded programs, the alphabet of the pattern is given by the synchronization operations between threads. After introducing the model, we study the complexity of pattern-based verification for abstracted multithreaded. While unrestricted verification is undecidable for abstracted multithreaded programs with recursive procedures and PSPACE-complete for abstracted multithreaded while-programs, we show that pattern-based verification is NP-complete for both classes. Using recent results about Parikh images of context-free languages and semilinear sets, we show that pattern-based verification becomes polynomial when the number of threads, the longest acyclic path in the call graph, and the size of the pattern are fixed, but the procedures can still be arbitrarily large.