The idea of a truth maintenance system ( TMS) grew out of
dependency-directed backtracking.

Given a set of boolean variables (or assumptions) &Sigma and a
set of boolean constraints &Gamma , the general problem is to find a
set of assignments to the variables that satisfies all the constraints.