Artificial Intelligence Review

, Volume 48, Issue 1, pp 83–112

Parallelizing simplex within SMT solvers

Article

DOI: 10.1007/s10462-016-9495-5

Cite this article as:
Banković, M. Artif Intell Rev (2017) 48: 83. doi:10.1007/s10462-016-9495-5

Abstract

The usual approach in parallelizing SAT and SMT solvers is either to explore different parts of the search space in parallel (divide-and-conquer approach) or to run multiple instances of the same solver with suitably altered parameters in parallel, possibly exchanging some information during the solving process (parallel portfolio approach). Quite a different approach is to parallelize the execution of time-consuming algorithms that check for satisfiability and propagations during the search space exploration. Since most of the execution time is spent in these procedures, their efficient parallelization might be a promising research direction. In this paper we present our experience in parallelizing the simplex algorithm which is typically used in the SMT context to check the satisfiability of linear arithmetic constraints. We provide a detailed description of this approach and present experimental results that evaluate the potential of the approach compared to the parallel portfolio approach. We also consider the combination of the two approaches.

Keywords

SMT solving Simplex parallelization within SMT Parallel SMT portfolio 

Copyright information

© Springer Science+Business Media Dordrecht 2016

Authors and Affiliations

  1. 1.Faculty of MathematicsUniversity of BelgradeBelgradeSerbia

Personalised recommendations