A method and system for solving satisfiability problems is disclosed. In
one embodiment, clauses in a satisfiability problem are organized as a
chronologically ordered stack. In another embodiment, the activity of
each variable in the satisfiability problem is monitored. An activity
counter is maintained for each variable and is incremented each time the
variable appears in a clause used in generating a conflict clause. In an
embodiment, a branching variable is selected from among the variables in
the top clause of the stack when the top clause is a conflict clause. In
a further embodiment, one or more conflict clauses in the stack are
removed when the search tree is abandoned. In a still further embodiment,
the value assigned to a branching variable is selected for purposes of
having a uniform distribution of positive and negative literals.