Department of Mathematics and Statistics

Dan Yasaki

MAT 253-01 (Discrete Mathematical Structures) Summer 2017

A rigorous introduction to discrete mathematical structures, proof techniques, and programming. Topics include sets, functions, sequences, relations, induction, propositional and predicate logic, modular arithmetic, and mathematical programming.

  • Pr. grade of at least C in MAT 151 or MAT 191.

The class meets MWTR 9:00 - 11:00 pm in Petty 217. The final exam is Friday, July 28, 2017 at 9:00 am.

All announcements and handouts will be posted on Canvas. Be sure to check your UNCG email regularly.

Documents (pdf)


The exercise list in the course notes on Canvas will be updated as the semester progresses.

Make sure the assignments you turn in are in compliance with the Homework Guidelines for Mathematics.

Additional resources

  • A Guide to Writing Mathematics, by Kevin P. Lee
  • How large is 52 factorial? See this Youtube video by Vsauce for a visualization using a description by Scott Czepiel. Skip to around the 14:30 mark if you don't have time to watch the 20 minute video.
  • Book of Proof by Richard Hammock is an introduction to the standard methods of proving mathematical theorems. It has been approved by the American Institute of Mathematics' Open Textbook Initiative.
  • The Art of Proof by Matthias Beck and Ross Geoghegan is an excellent introduction to writing good proofs. Go to the UNCG Library Catalog to find this book. You can download a free copy by entering your UNCG information.
  • Math Help Center: Tutoring is provided on a walk-in first come first serve basis. No appointment is necessary. See the webpage for the schedule.
  • Textbook website has tips, advice, additional exercises, and other supplemental information.
Python is a great object-oriented, interpreted, and interactive programming language.
  • The official home of the Python Programming Language: Downloads, documentation, and more.
  • Learn Python the Hard Way: This book instructs you in Python by slowly building and establishing skills through techniques like practice and memorization, then applying them to increasingly difficult problems. By the end of the book you will have the tools needed to begin learning more complex programming topics.
  • Non-Programmer's Tutorial for Python 3: The Non-Programmers' Tutorial For Python 3 is a tutorial designed to be an introduction to the Python programming language. This guide is for someone with no programming experience.
  • Python 3 Tutorial: This tutorial does not attempt to be comprehensive and cover every single feature, or even every commonly used feature. Instead, it introduces many of Python’s most noteworthy features, and will give you a good idea of the language’s flavor and style. After reading it, you will be able to read and write Python modules and programs, and you will be ready to learn more about the various Python library modules described in The Python Standard Library.
  • Python for Non-Programmers: If you've never programmed before, the tutorials on this page are recommended for you; they don't assume that you have previous experience.
  • Python for Programmers: The tutorials on this page are aimed at people who have previous experience with other programming languages (C, Perl, Lisp, Visual Basic, etc.).
  • The Python Wiki: This Wiki is a community place to gather and organize all things about Python. Feel free to exercise your editorial skills and expertise to make it a useful knowledge base and up-to-date reference on all Python-related topics.
  • Codecademy: Online coursework to learn Python. (Note: This is Python 2.7.)