A Uniform Approach to Constraint Satisfaction and Constraint Satisfiability in Deductive Databases

Integrity maintenance methods have been defined for preventing updates from violating integrity constraints. Depending on the update, the full check for constraint satisfaction is reduced to checking certain instances of some relevant constraints only. In the first part of the paper new ideas are proposed for enhancing the efficiency of such a method. The second part is devoted to checking constraint satisfiability, i.e., whether a database exists in which all constraints are simultaneously satisfied. A satisfiability checking method is presented that employs integrity maintenance techniques. Simple Prolog programs are given that serve both as specifications as well as a basis for an efficient implementation.