Discrete Mathematics by Kevin Ryan, Lawrence E. Spence & R.C. Penner