These lecture notes are copyrighted material. Use of these pages for the class CMSC412 at the University of Maryland is permitted. Personal use of these notes by individuals at other locations is also permitted. Any other use requires permission of the author (Jeffrey K. Hollingsworth, hollings@cs.umd.edu)