Model checking of concurrent software systems via heuristic-guided SAT solving

Show simple item record

dc.contributor.author Timm, Nils
dc.contributor.author Gruner, Stefan
dc.contributor.author Sibanda, Prince
dc.date.accessioned 2018-01-10T08:31:37Z
dc.date.issued 2017-10
dc.description.abstract An established approach to software verification is SAT-based bounded model checking where a state space model is encoded as a Boolean formula and the exploration is performed via SAT solving. Most existing approaches in SAT-based model checking rely on general-purpose solvers that do not exploit the structural features of the encoding. Aiming at a significantly better runtime performance in such settings, we show in this paper that SAT algorithms can be specifically tailored w.r.t. the structure of the Boolean encoding of the model checking problem to be solved. We define a state space encoding of concurrent software systems that preserves control flow information. This allows to modify the solver such that the number of SAT decision levels can be significantly reduced by assigning a set of atoms at each level. Such set assignment always characterises a location in the control flow of the encoded system. Moreover, we introduce heuristics that guide the SAT search into directions where a violation of the property of interest may be most likely detected. The heuristic approach enables to quickly discover errors while keeping the actually explored part of the state space small. en_ZA
dc.description.department Computer Science en_ZA
dc.description.embargo 2018-10-11
dc.description.librarian hj2018 en_ZA
dc.description.uri http://link.springer.combookseries/558 en_ZA
dc.identifier.citation Timm N., Gruner S., Sibanda P. (2017) Model Checking of Concurrent Software Systems via Heuristic-Guided SAT Solving. In: Dastani M., Sirjani M. (eds) Fundamentals of Software Engineering. FSEN 2017. Lecture Notes in Computer Science, vol 10522. Springer, Cham. en_ZA
dc.identifier.issn 0302-9743 (print)
dc.identifier.issn 1611-3349 (online)
dc.identifier.other 10.1007/978-3-319-68972-2_16
dc.identifier.uri http://hdl.handle.net/2263/63468
dc.language.iso en en_ZA
dc.publisher Springer en_ZA
dc.rights © Springer International Publishing AG 2017. The original publication is available at : http://link.springer.combookseries/558. en_ZA
dc.subject Boolean algebra en_ZA
dc.subject Computer software en_ZA
dc.subject Concurrency control en_ZA
dc.subject Encoding (symbols) en_ZA
dc.subject Heuristic methods en_ZA
dc.subject Signal encoding en_ZA
dc.subject Software engineering en_ZA
dc.subject State space methods en_ZA
dc.subject Verification en_ZA
dc.subject Bounded model checking en_ZA
dc.subject Concurrent software systems en_ZA
dc.subject General-purpose solvers en_ZA
dc.subject Model checking problem en_ZA
dc.subject Run-time performance en_ZA
dc.subject SAT-based model checking en_ZA
dc.subject Software verification en_ZA
dc.subject Model checking en_ZA
dc.title Model checking of concurrent software systems via heuristic-guided SAT solving en_ZA
dc.type Postprint Article en_ZA


Files in this item

This item appears in the following Collection(s)

Show simple item record