Electrical Engineering
      and Computer Sciences

Electrical Engineering and Computer Sciences

COLLEGE OF ENGINEERING

UC Berkeley

A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols (Full Version)

Sumit Gulwani and George C. Necula

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-03-1241
April 2003

http://www.eecs.berkeley.edu/Pubs/TechRpts/2003/CSD-03-1241.pdf

We present a new randomized algorithm for checking the satisfiability of a conjunction of literals in the combined theory of linear equalities and uninterpreted functions. The key idea of the algorithm is to process the literals incrementally and to maintain at all times a set of random variable assignments that satisfy the literals seen so far. We prove that this algorithm is complete (i.e., it identifies all unsatisfiable conjunctions) and is probabilistically sound (i.e., the probability that it fails to identify satisfiable conjunctions is very small). The algorithm has the ability to retract assumptions incrementally with almost no additional space overhead. The key advantage of the algorithm is its simplicity. We also show experimentally that the randomized algorithm has performance competitive with existing deterministic symbolic algorithms.


BibTeX citation:

@techreport{Gulwani:CSD-03-1241,
    Author = {Gulwani, Sumit and Necula, George C.},
    Title = {A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols (Full Version)},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2003},
    Month = {Apr},
    URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/2003/5670.html},
    Number = {UCB/CSD-03-1241},
    Abstract = {We present a new randomized algorithm for checking the satisfiability of a conjunction of literals in the combined theory of linear equalities and uninterpreted functions. The key idea of the algorithm is to process the literals incrementally and to maintain at all times a set of random variable assignments that satisfy the literals seen so far. We prove that this algorithm is complete (i.e., it identifies all unsatisfiable conjunctions) and is probabilistically sound (i.e., the probability that it fails to identify satisfiable conjunctions is very small). The algorithm has the ability to retract assumptions incrementally with almost no additional space overhead. The key advantage of the algorithm is its simplicity. We also show experimentally that the randomized algorithm has performance competitive with existing deterministic symbolic algorithms.}
}

EndNote citation:

%0 Report
%A Gulwani, Sumit
%A Necula, George C.
%T A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols (Full Version)
%I EECS Department, University of California, Berkeley
%D 2003
%@ UCB/CSD-03-1241
%U http://www.eecs.berkeley.edu/Pubs/TechRpts/2003/5670.html
%F Gulwani:CSD-03-1241