(self)
_undo the changes of the most recent decision level.

        Examples
        ========

        >>> from sympy.logic.algorithms.dpll2 import SATSolver
        >>> l = SATSolver([set([2, -3]), set([1]), set([3, -3]), set([2, -2]),
        ... set([3, -2])], set([1, 2, 3]), set([]))
        >>> l._find_model()
        True

        >>> level = l._current_level
        >>> level.decision, level.var_settings, level.flipped
        (-3, set([-3, -2]), False)

        >>> l._undo()

        >>> level = l._current_level
        >>> level.decision, level.var_settings, level.flipped
        (0, set([1]), False)
_undo the changes of the most recent decision level.
_undo the changes of the most recent decision level .
def _undo(self):
        """
        _undo the changes of the most recent decision level.

        Examples
        ========

        >>> from sympy.logic.algorithms.dpll2 import SATSolver
        >>> l = SATSolver([set([2, -3]), set([1]), set([3, -3]), set([2, -2]),
        ... set([3, -2])], set([1, 2, 3]), set([]))
        >>> l._find_model()
        True

        >>> level = l._current_level
        >>> level.decision, level.var_settings, level.flipped
        (-3, set([-3, -2]), False)

        >>> l._undo()

        >>> level = l._current_level
        >>> level.decision, level.var_settings, level.flipped
        (0, set([1]), False)
        """
        # Undo the variable settings
        for lit in self._current_level.var_settings:
            self.var_settings.remove(lit)
            self.heur_lit_unset(lit)
            self.variable_set[abs(lit)] = False

        # Pop the level off the stack
        self.levels.pop()
def _undo ( self ) : # Undo the variable settings for lit in self . _current_level . var_settings : self . var_settings . remove ( lit ) self . heur_lit_unset ( lit ) self . variable_set [ abs ( lit ) ] = False # Pop the level off the stack self . levels . pop ( )