Discrete Mathematical Structures And Practice Problems by Bernard Kolman