Constraint Satisfaction (Chapter 5, sections 1-3)