Exact and approximate probabilistic symbolic execution for nondeterministic programs

Kasper Søe Luckow, Corina S. Păsăreanu, Matthew B. Dwyer, Antonio Filieri, Willem Visser

Research output: Contribution to book/anthology/report/conference proceedingArticle in proceedingResearchpeer-review

36 Citations (Scopus)

Abstract

Probabilistic software analysis seeks to quantify the likelihood of reaching a target event under uncertain environments. Recent approaches compute probabilities of execution paths using symbolic execution, but do not support nondeterminism. Nondeterminism arises naturally when no suitable probabilistic model can capture a program behavior, e.g., for multithreading or distributed systems.

In this work, we propose a technique, based on symbolic execution, to synthesize schedulers that resolve nondeterminism to maximize the probability of reaching a target event. To scale to large systems, we also introduce approximate algorithms to search for good schedulers, speeding up established random sampling and reinforcement learning results through the quantification of path probabilities based on symbolic execution.

We implemented the techniques in Symbolic PathFinder and evaluated them on nondeterministic Java programs. We show that our algorithms significantly improve upon a state-of-the-art statistical model checking algorithm, originally developed for Markov Decision Processes.
Original languageEnglish
Title of host publicationProceedings of the 29th ACM/IEEE international conference on Automated software engineering
PublisherAssociation for Computing Machinery
Publication date2014
Pages575-586
ISBN (Print)978-1-4503-3013-8
DOIs
Publication statusPublished - 2014
EventThe 29th ACM/IEEE International Conference on Automated Software Engineering - Aros Congress Center, Västerås, Sweden
Duration: 15 Sept 201419 Sept 2014
Conference number: 29

Conference

ConferenceThe 29th ACM/IEEE International Conference on Automated Software Engineering
Number29
LocationAros Congress Center
Country/TerritorySweden
CityVästerås
Period15/09/201419/09/2014
SeriesAutomated Software Engineering
ISSN0928-8910

Cite this