Skip to content

Instantly share code, notes, and snippets.

What would you like to do?

MTH 325 course banner

About this course and the syllabus

Welcome to MTH 325, Discrete Structures for Computer Science 2. This document contains all the information you need to know about the course. Your job is to read this document carefully in the first week of class and familiarize yourself with how the course works and maintain that familiarity throughout the semester. Almost all questions about the course that you might ask can be answered by referencing the syllabus.

Course catalog description: Properties of relations, equivalence relations, partial orderings, fundamental concepts of graphs, trees, digraphs, networks, and associated algorithms; computer science applications. Offered fall and winter semesters. Prerequisite: MTH 225.

Course information

  • Meetings: Both sections meet on MWF in MAK A-2-167. Section 02 meets from 10:00---10:50; Section 03 meets 9:00---9:50.
  • Instructor: Robert Talbert, Ph.D., Associate Professor of Mathematics.
  • Instructor office: MAK A-2-168, across the hall from the classroom.
  • Instructor email and phone:, (616)331-8968.
  • Office hours: To be determined by student vote during the first week of classes.
  • Appointments: You don't need an appointment for office hours; just drop in. If you need a face-to-face meeting outside of office hours, there will be special times set up for appointments during the week; those will be announced once office hours are set.
  • Contacting the instructor: There are three main ways to reach me outside of office hours or appointments: through email, through voice, and through the messaging app known as Slack that we will use in the course. Slack is preferred. (Use a direct message if you wish the message to be private.)
  • Instructor availability: Please note that I do not typically check email or Slack messages during the hours of 6pm and 6am on weekdays, and I do not check these at all on the weekends in order to devote time to family, rest, and religious observances. Messages received during these times will receive attention once I am back online. Otherwise you can expect to receive a response to your message within 6 hours, often much sooner. If you post questions to Slack, you are likely to receive responses faster.

Textbook: Some content in the course will use the textbook Discrete Mathematics: An Open Introduction by Oscar Levin, which is available for free online at the link. If you prefer a paper copy, here are instructions on how to purchase a printed copy. The book is not sold in the GVSU bookstore. Content not found in the textbook will use homemade notes.

Technology: The course will use the following technology to promote learning:

  • The Python programming language and the Jupyter notebook computing environment for computational work in the course. Both of these are available by installing the Anaconda scientific programming platform, freely available for Windows, macOS, and Linux from this page.
  • The Slack group collaboration app for discussion and questions between classes. We will also use Slack for all course announcements and communication. Slack is free and can be downloaded as a native app for Windows and macOS as well as on mobile platforms; it can be downloaded from the appropriate app store, or used online at

Some class time will be spent during week 1 for installation and troubleshooting of all course software. Various class assignments during weeks 1---3 will guide you through learning how to use the technology. From week 1 onward, you will be expected to have fluency with the course technology and use it regularly.

In addition to the above, the course has a Blackboard site where you will be submitting work on Challenge Problems, and it also hosts the course calendar, this syllabus, and other documentation.

What will I learn?

MTH 325 is the second half of a year-long study of the mathematical tools and foundations for a university-level study of computer science. In the first half, MTH 225, you learned the basics: sets, functions, counting, logic, and proof. In MTH 325, we apply these basics to three important structures that are used extensively in computer science:

  • Graphs. Graphs are data structures consisting of nodes connected by edges that model many different scenarios such as social networks, computer network connections, In MTH 325, you'll learn how to use graphs to model real-life networks of all sorts and use mathematical reasoning to determine information about those networks.
  • Relations. Relations are sets that model relationships between different kinds of objects, like a database. In fact the concept of the "relational database" comes from the concept of relations. In MTH 325, you'll learn how to use relations to model relationships between sets and use mathematics to do things like write a simple "recommendation engine" like you'd find on Amazon or Pandora.
  • Trees. Trees are a very common data structure used in many computer science applications like searching and sorting algorithms. It turns out trees are a special kind of graph (see above) and in MTH 325, we'll use mathematics to determine information about trees and model applications like data compression and search trees.

Additionally, proof -- especially proof using mathematical induction -- plays an important role in MTH 325, and we will spend time during the first part of the semester reviewing how to outline, analyze, and construct mathematical proofs.

In addition to content, you'll also be learning processes that are valuable to professional computer scientists such as effective communication in written and oral forms and the ability to self-assess your work and learn independently.

In particular, in MTH 325 we stress computational thinking as a framework for our work. Computational thinking is a problem-solving process that focuses on formulating problems in a way that enables us, or others, to use a computer and other tools to help solve them. Computational thinking about a problem involves four steps:

  1. Decomposing a problem down into manageable parts;
  2. Pattern-finding to look for connections between the parts;
  3. Abstraction to explain the observations of our patterns; and
  4. Algorithm/solution development to come up with a workable solution to the problem and explain why it works.

If you've made it this far in math and CS, you have all the skills in place for computational thinking. By the time you finish MTH 325, you will be an expert in computational thinking.

What does success look like in this course?

I want you to be successful in this course. I will do my utmost to help you do this, by creating and maintaining a learning environment based on challenge and support and giving my highest professional commitment to your success and well-being. But, but I cannot do success for you. This comes from cooperation with me, interaction with your classmates, and diligent effort throughout the course.

To be successful in the course, you need to make sure you are always giving an effort to do the following:

  • Prepare for class through the Guided Practice exercises you will receive (described below).
  • Attend all class meetings and participate actively in class activities.
  • Be proactive in completing course work and avoid procrastination in all things.
  • Maintain awareness of course announcements and calendar events at all times, by checking email, Slack, and the course calendar on a several-times-a-day basis.
  • Take initiative to seek out help when you are stuck or have a question using office visits, Slack posts, study groups, and whatever else works for you.
  • Maintain a positive attitude about the class and what you are learning.

By enrolling in this section of MTH 325, you are agreeing to all of these expectations. During the first week of the course, you will be asked to sign an agreement that states this.

At the end of the course, you will receive a grade based on concrete evidence that you will provide that you have met the course goals outlined above. Here is what each of those grades means:

Grade Characteristics
A "A" students have not only understood but mastered the concepts, applications, and theory in the course, shown by a wide range of evidence. They are consistently actively engaged with the course by preparing for and being a leader in class activities and in participating on Slack and in office hours. They are ready to move on to further coursework without reservations.
B "B" students have shown evidence of strong understanding of the basic skills and applications of the course, with some evidence of mastery on some topics. They are consistently ready to work in class and are actively engaged in class activities. They are ready to move on to further coursework.
C "C" students have attained the baseline level of competency required by the course, but do not have consistent evidence of mastery or strong understanding. They may take further coursework but with some caution.
D "D" students have not attained the baseline level of competency required by the course, although there is some evidence of understanding. They are not yet ready to move on to further coursework in this area.
F A student with an "F" has not shown evidence of minimal understanding of the course concepts.

The grading system explained later gives specific form to these descriptions.

What will I do to learn?

Learning happens by doing, not just by listening. So to learn the concepts in this course, you'll be doing a wide variety of active learning tasks both in and outside of class.

  • Outside of class, you'll work actively to get your first contact with new concepts through structured pre-class activities called Guided Practice. Then, following class meetings, you'll be working on activities that ask you to extend the basics by solving both theoretical and applied problems called Challenge Problems involving what you learn in class.
  • In class, you'll be working with you classmates to make sense of concepts and work on creative applications of those basics through group problem-solving sessions, presentations of solutions to the class, discussions driven by interactive polling activities, and more.

All of the work you do in class is carefully designed to promote learning of the concepts of the course. Some of this work will be collected and graded and so it will directly contribute to your course grade. That subset of work can be divided into three basic types: work on basic skills, work on problem solving that extends the basic skills, and work focused on staying engaged in the course. Here are the details on those.

Basic skills: Learning Targets and the Final Exam

The basic skills you will learn in the course are given in a list of 20 Learning Targets. The list is appended to the end of the syllabus. During the course, you'll be expected to provide evidence that you can perform the tasks that are given in the Learning Targets By completing Learning Target Assessments. These are short quizzes, each of which addresses a single Learning Target. For example the Learning Target assessment for Learning Target G.3 ("I can represent a graph in different ways and change representations from one to another") may consist of 3---4 questions that will ask you to take a graph and change its representation.

Learning Target Assessments are graded either Satisfactory or Unsatisfactory. See the section below titled "Revision Process" for information on re-taking Learning Target assessment that are marked Unsatisfactory. What constitutes Satisfactory or Unsatisfactory work will be spelled out specifically for each Learning Target and made known to you in advance.

Your mastery of basic skills will also be assessed through a comprehensive final exam given during finals week. The final exam will consist of ten (10) randomly selected Learning Target assessments that have already been given in the course. See the section "Grading System" below for details. The exam periods for both sections 02 and 03 are on Tuesday, April 25. The exam for Section 02 is 12:00---1:50pm, and the exam for Section 03 is 8:00---9:50am.

Applications: Challenge Problems

Your ability to extend the basics to solve challenging problems is measured by completing Challenge Problems. Each Challenge Problem is a take-home assignment featuring a single challenging problem to solve. Challenge Problems require not only correct solutions but clear, correct, persuasive, and well-written solutions as well as professional-looking writeups.

Each Challenge Problem is graded using the EMRN rubric, a four-level rubric that marks the work with grades of E ("Excellent" or "Exemplary"), M ("Meets Expectations"), R ("Needs Revision"), or N ("Not assessable"). The visual below shows how these are assigned:

EMRN rubric

At least 12 Challenge Problems will be posted during the semester. Here are three things to know about these:

  1. You do not have to do all of the challenges that are posted. Instead, you will choose from among the ones posted and focus only on the ones you think you would enjoy doing.
  2. There are no fixed deadlines on Challenge Problems. Instead, once you choose a problem, simply work on it at your own pace until you believe it is ready to be assessed, then turn it in (see "Revision Process" below for how to turn in your work).
  3. You can revise any submission of a Challenge Problem if you want to improve your work. Your submissions will be given extensive verbal feedback to draw your attention to issues that can be corrected or improved, and you can resubmit work repeatedly until you are satisfied with the results. See "Revision Process" below for details.

Engagement Credits and Guided Practice

Engagement in the course means preparing well for class and participating productively both in and outside of class. The more engaged you are in the class, the better you will learn the material; conversely, students who disengage and try to complete the course from a distance generally have a hard time succeeding.

Your level of engagement in the course will be measured by earning engagement credits. An engagement credit may be awarded for such accomplishments as participating in a problem presentation or group activity in class, giving a particularly helpful comment in an online discussion in between classes, or even asking an insightful question in office hours. Some engagement credit opportunities may be announced in advance, but many will be unannounced, and you will need to be present in class and present online to earn them.

The primary means of earning engagement credits is through Guided Practice assignments. Guided Practice Assignments provide you with a structured introduction to the basic ideas of new material so that we don't have to spend time in class doing lectures on this material. They provide readings, videos to watch, and computer simulations that will help you acquire the new skills we will work with in class, along with exercises to build your basic skill fluency. The exercises are submitted online so that upcoming class time can be customized based on what students know and do not know.

Guided Practices are graded Satisfactory or Unsatisfactory. Each Guided Practice is graded Satisfactory if it meets the following three criteria:

  1. The assignment is submitted before the deadline, which is usually 11:59pm Eastern time the day before the class meeting. Submissions past this deadline will be automatically marked Unsatisfactory.
  2. Every exercise has a response attached that shows a good-faith effort to be right. Submissions that have exercises left blank will be automatically marked Unsatisfactory. Submissions that have exercises where a good-faith effort to be right is not evident --- for example if the response is "I don't know", "I don't understand", answered with a semantically incorrect statement, or answered with a random guess --- will be automatically marked Unsatisfactory. If you are truly stuck on a Guided Practice question, you are expected to give yourself enough advance time to ask a question about it in office hours, in group work with others, or on the #guidedpractice channel on Slack.

Please note that correctness is not factored into the grade, so you should feel free to give your best effort on each one without fear of being counted off for wrong answers. In fact, misconceptions about the material are part of what Guided Practice assignments are set up to collect so we can work on them.

Aside from Guided Practice, in-class work, and between-class work, you can earn engagement credits by meeting Incentive Checkpoints set up in three places on the course calendar, in February, March and April. These are set up to reward students who are staying on track with finishing course work. Details on what will be required for incentive checkpoints will be given in class.

Grading system

Your course grade is determined by the quality and quantity of the work that you submit in the class that is judged to be of an acceptable level of quality. There is a two-step process for determining your grade at the end of the semester:

  1. Using your Learning Target assessments and Problem Solving Challenges, determine your "base grade", which is A,B,C,D, or F.
  2. Then, using your engagement credits and final exam results, determine if your base grade should have a "plus" or "minus" on it and any other modifications that need to be made to the base grade.

Details on each step of the process are below.

Step 1: Determine the base grade. To determine the base grade, look up your accomplishments in the following table:

To earn this grade: Accomplish the following:
A Earn Satisfactory marks on 19 Learning Targets; and complete 10 Challenge Problems with at least an M mark, including at least five "E" marks.
B Earn Satisfactory marks on 17 Learning Targets; and complete 7 Challenge Problems with at least an M mark, including at least three "E" marks.
C Earn Satisfactory marks on 15 Learning Targets; and complete 5 Challenge Problems with at least an M mark. (No "E" marks required.)
D Earn Satisfactory marks on 13 Learning Targets. (No Challenge Problems required.)

Additionally: Students intending to earn an A or B in the course must complete at least one Challenge Problem that is designated as a Theory problem. Failure to complete this requirement will result in the final grade after modifications (see below) being lowered by one half letter (A to A-, B- to C+, etc.). The Theory requirement only applies to base grades of A or B.

Please note that all requirements for a base grade must be met in order to earn that grade. The base grade earned is the lowest grade for which all requirements are met. For example, a student who completes 10 Learning Targets with all E grades, but who earns Satisfactory ratings on only 15 Learning Targets, will receive a base grade of "C". A grade of "F" is awarded if the requirements for a "D" are not met.

Step 2: Determine modifications to the base grade. The base grade can be raised by a plus, lowered by a minus, or lowered by an entire letter as follows:

  • Add a plus to the base grade if you earn at least 60 engagement credits and earn at least an 85% on the final exam.
  • Add a minus to the base grade if you earn between 30 and 39 engagement credits (inclusively) or earn between 50% and 69% (inclusively) on the final exam.
  • Lower the base grade one full letter if you earn fewer than 30 engagement credits or earn lower than 50% on the final exam.

(If you end the course with at least 40 engagement credits and earn at least 70% on the final exam, you will incur no penalty on your base grade.)

Note the "and" in the first item and the "or" in the second two. Also, please note that due to potential changes in the schedule and calendar, the amounts of engagement credits above may change. To be safe, always strive to earn as many engagement credits as possible, and note that since around 20 of the engagement credits from Guided Practice, being consistent about completing Guided Practice assignments is the simplest way to maintain or improve your base grade.

Exceptions to the above rule: GVSU doesn't award grades of A+ or D-. Therefore, the rule for plus grades does not apply to grades of "A", and the rule for minus grades does not apply to grades of "D". However, both A and D grades can be lowered by a minus or a full letter, and D grades can earn a plus.

To help you grasp the grading system, a flowchart for the system will be provided along with a checklist for keeping track of your accomplishments. We will take time during class and on Guided Practice assignments to practice the system, and progress reports will occasionally be released to you to show you how you are faring and how much more you need to accomplish to earn the grade you are targeting.

Revision process

At the heart of the learning process in MTH 325 is a system of submission and revision of your work that will allow you make improvements to your work based on instructor feedback. Most grades on work are not final; you will have the chance on almost every submitted item to revise and resubmit to improve its quality. First let's detail how to submit your work in the first place.

Submission of work

Submission of Learning Target assessments is easy: These are done on paper in class meetings on alternate Fridays listed on the course calendar, so you simply turn in your work when done in class. Similarly easy is submission of Guided Practice: These are done online using Google Forms that are linked to the assignments.

Challenge Problems are a little more involved. Each Challenge Problem is posted to the course Blackboard site in the Challenge Problem area as an "Assignment". At the place where the Challenge Problem is posted, there will be a file to download that contains the tasks to be completed and any special instructions or grading criteria that pertain to it. Your work on the Challenge Problem is to be typed up, saved as a Word or PDF document, and then uploaded to the place at the "Assignment" where you can upload files. Once uploaded, feedback is left on the submission itself in the form of margin and text notes.


You can revise any Learning Target assessment and any Problem Solving Challenge as often as you need (with some restrictions; see below) until you are satisfied with the results. The process for doing these revisions is different for the two kinds of work.

Revising Learning Target Assessments: All Learning Target assessments must be attempted during a designated assessment period first. Once this has been done, if the grade is Unsatisfactory, you can retake the Learning Target assessment in one of two ways.

  1. You can retake it during a later assessment period in class by filling out an Assessment Request Form on the Blackboard site prior to the assessment period. A new version of the Learning Target assessment will be written up and made available to you at that period.
  2. You can schedule a 15-minute session during office or appointment hours to retake up to two (2) Learning Target assessments orally. Please note the restriction on both the time (15 minutes) and number of assessments (2) that can be done orally. Appointment slots are available on a first-come first-served basis.

Please note that oral assessments are only for retakes. You must first attempt a Learning Target assessment on paper in class and receive Unsatisfactory ratings on it to be eligible for an oral retake.

Revising Challenge Problems: Challenge Problem submissions can be revised and resubmitted by addressing the issues pointed out in the instructor feedback, then writing up a new draft and submitting to the same location on Blackboard as the original submission. The new work will be regraded and given feedback, and you may revise again if needed.

In all retake/revision situations, the highest grade attained so far will be the one recorded in Blackboard.

Definition of a "week": For the purposes of this class, each "week" begins at 12:01am Eastern time on Mondays and ends at 11:59pm Eastern time the following Sunday.

The following restrictions apply to Challenge Problems:

  • No more than two Challenge Problem submissions per week may be made. This can be two new submissions, a new submission and a revision, or two revisions. A third submission may be made if a token is spent (see below). This restriction is in place to ensure that students don't procrastinate until the end of the course to work on these assignments.
  • A token (see below) must be spent to revise any submission of a Challenge Problem that is marked "N" (Not Assessable). This is in place to ensure students do not submit incomplete or significantly flawed work just to get feedback.

The following restrictions apply to Learning Target assessments:

  • Requests for in-class retakes of Learning Target assessments must be made using the Assessment Request Form by the stated deadline in order to allow sufficient time to construct and copy the correct batch of assessments. Requests that come in after the deadline will be declined, and students who attempt an assessment without requesting it will be charged one token per assessment.
  • The oral retake option is only for work that showed a good-faith and complete effort on paper initially but was rated Unsatisfactory. Assessment work that is incomplete or does not show sufficient effort may require a second attempt on paper before an oral retake is allowed. If this is the case, a note will be left on the paper assessment saying so. This is to prevent students from intentionally doing Unsatisfactory work in class because they want to do an oral exam instead.
  • The oral retake option for Learning Target assessments may be used no more than once per week per student and must be scheduled at least 24 hours in advance. Requests for oral retakes with less notice, including drop-in requests, will be declined.
  • Students who schedule appointments for oral retakes but fail to arrive on time must wait until the next week to reschedule. Repeated failures of a student to show up on time for appointments may result in oral retakes not being allowed for that student.

Finally, there are two important dates for your work:

  • No requests for oral retakes of Learning Target assessments will be accepted after 11:59pm Eastern time on Friday, April 14.
  • No further submissions of Challenge Problems, either new submissions or revisions, will be accepted after 11:59pm Eastern time on Friday, April 21.


Tokens are a "currency" in the course that you can use to purchase exceptions to the course rules, especially the rules for revisions. Each student begins the course with five tokens, and tokens can purchase any of the following:

  • One token buys a third Problem Solving Challenge item (new submission or revision) during a given week. Further tokens may not be spent to obtain fourth, fifth, etc. submissions.
  • One token buys a second 15-minute oral retake appointment in a given week. Further tokens may not be spent to obtain third, fourth, etc. appointments, and all the above rules about scheduling still apply.
  • Two tokens will buy one engagement credit.

Opportunities to earn more tokens may be made available during the semester.

Academic integrity and collaboration

Academic integrity refers to the concept that the work that you do for GVSU courses should accurately reflect your own efforts and not come significantly from the work of another. Academic integrity means that your work is "integrated" with your understanding and that you are using personal integrity when doing your work.

If you are encountering so much pressure or stress in your life that you are tempted to break one of these policies, STOP AND GET HELP from me (the professor). I am committed to helping you succeed in the course through your legitimate hard work, and I am available and willing to work with you. And remember that most work in the course can be revised and resubmitted to improve your grade, which means that academic dishonesty really isn't necessary to do well.

The university’s academic integrity policy is described in the GVSU Student Code, Section 3.1 which you can read online here: Additionally, the Computer Science major has additional guidelines for academic integrity here: Every student has the responsibility of reading and understanding these policies, especially the consequences for engaging in academically dishonest activities.

In MTH 325, we will adopt the following specific policies to ensure academic integrity in your work. It is each student's responsibility to understand these policies and abide by them all semester.

  • For work on Guided Practice assignments, you may collaborate with others freely on the assignment but you must complete the assignment on your own, and you may not simply copy from another. Evidence that copying has taken place will be investigated as an academic integrity policy violation.
  • For work on Learning Target assessments, which are done either in class or in the office, and the final exam, no collaboration with another person or resource may take place at all, and any evidence that this has taken place will be investigated as an academic integrity policy violation.
  • For work on Challenge Problems, you may collaborate with one or two other students at the level of sharing of ideas and strategies for solving the problem. But, you may not collaborate at any level with any other person on the final written solutions that you submit for evaluation. This means that once you have discussed a problem with a collaborator, you must write your final solution independently (and joint writeups are not allowed). Solutions to the same problem from different students, even collaborators, should include differences that reflect each student’s individual understanding and writing style. Excessive similarities in submitted solutions will be interpreted as evidence of inappropriate collaboration. Additionally, in your final solution, if you have collaborated in any way with one or two other students, you must disclose the names of those students and give a short description of what you collaborated on. Any evidence that collaboration has gone farther than the extent described above, or any evidence of collaboration with another student who was not disclosed in your writeup, will be investigated as an academic integrity policy violation.

For all work in the class, you may not look up solutions to any problems on the Internet or in other resources without prior instructor permission. Any submitted solution that is substantially similar to one that appears on the internet will be considered evidence of academic dishonesty.

On any assignment that bears your name, if there is doubt that you were solely responsible for the final solution (or significantly responsible for the code in a programming problem), you may be called upon to explain your reasoning on the entire solution to the professor in a one-on-one interview. In such cases, you are individually responsible for understanding and being able to explain the entire submitted solution without the assistance of others, even if collaboration on the assignment is allowed. If, following this interview, I determine that you have overstepped the boundary for collaboration because you cannot explain the work, it will be taken as a sign of academic dishonesty and will be reported.

Finally, please note that GVSU’s academic honesty policy is vigorously enforced. The minimum penalty for academic dishonesty is to receive an “N” or “Unsatisfactory” mark on the assignment (depending on the kind of work) with no opportunity for future revision, and a report is filed with the Mathematics Department head, the Dean of Students, the Dean of the College of Liberal Arts and Sciences, and the Dean of the College of Engineering. More severe infractions of this policy, or if an infraction is not your first, could result in failure of the course or even suspension from the university.

Where to get help

For general help: The best way to get help in the course is to use the resources that are closest to you and which you have already paid for, namely office hours and Slack. Take a "both/and" approach and seek out help whenever you need it through a combination of these and other resources.

For students with special learning needs: Any student who requires accommodation because of a physical or learning disability must contact Disability Support Resources ( at 616-331-2490 as soon as possible. After you have documented your disability, please make an appointment or see me to discuss your specific needs.

For help with prerequisite mathematics: The Math Center, located on the second floor of Mackinac Hall near the Mathematics Department office, provides a workspace for students to work on mathematics course assignments and on-demand help from trained student workers. The student workers in the Math Center are not trained to provide specific help with MTH 325, but they are able to help with any concepts that are in the prerequisites for the course, such as algebra questions. Information on hours of operation will be given during week 1.

For help with technology: If you encounter issues with Blackboard, your email, or any other technology that is "owned" by GVSU, you can contact GVSU's IT help desk at or email or phone 616-331-2101 for technical support. If you are encountering issues with any other class technology, please either use the #tech channel on Slack, or search the Internet for help, or both. Make sure to try to resolve the issue yourself before asking others; and please do not simply email me (the professor) because I am often unable to provide tech support. Instead, a public message to the #tech channel will be seen not only by me but also your classmates, and this will give you more chances for help.

For help with writing: The Fred Meijer Center for Writing, with locations at the Allendale and Pew/ Downtown Grand Rapids campuses, is available to assist you with writing for any of your classes. Writing consultants, who are fellow GVSU students, are trained to help you with all stages of your writing process, from brainstorming to organizing to editing your papers. Simply bring a draft of your paper, the assignment sheet, and your questions/concerns to any of the Center's locations. Also, through your Gmail account, you have access to online consultations through Google Docs. The Center's services are free and you can drop in and work with a consultant or make an appointment, either through our website or by calling the Center (331-2922). For more information about our services and locations, please visit our website: Please note that seeking help from the Writing Center does not violate academic integrity policies.

Course schedule and important dates

All date-related information for the course is housed in the course calendar, which is a Google calendar that you can access on Blackboard under the "Calendar" link in the sidebar. This includes due dates, important university dates, and more. Please subscribe to this calendar and check it at least once per day. To see a list of class activities and due dates, go to the calendar and select the "Agenda" view.


Changes to this syllabus may occur during the semester. In those cases, the changes will be announced in class and online, and if appropriate, students will be given a voice on how the changes will be implemented. Again it is your responsibility to attend class and process all the information passed along in course announcements so that you will be aware of any changes that take place.

About the instructor

I'm Robert Talbert and I am an Associate Professor here in the Mathematics Department at GVSU. I grew up in Dickson County, Tennessee (near Nashville) where I was surrounded by engineers (my dad, my oldest sister, her husband and my other sister's husband) and hundreds of acres of pristine Tennessee forest where I would spend the afternoons hiking after finishing my homework.

I was a B/C student in math through high school until I had a teacher for Calculus in my senior year who stopped trying to cram things into my head and let me figure things out on my own instead. After a two-year stint as a Psychology major in college, I changed my major to Mathematics on a dare from my roommate (long story), and it’s been love ever since. I went to Vanderbilt University for a Master’s and Ph.D. in Mathematics, doing my dissertation on an obscure area at the intersection of abstract algebra and geometry. I went on to spend 14 years teaching in small liberal arts colleges before coming to GVSU in 2011. Now I teach computer scientists how to think like mathematicians, and I do research on how to make teaching and learning better with technology and active learning techniques, while trying to improve my Python and Haskell skills, which is easy since I know so little.

I live in Allendale with an amazing wife and three kids ages 8, 11, and 13 along with six animals of various species. I enjoy cooking, reading, bicycling, and Reddit. Feel free to connect with me on Twitter at @RobertTalbert and @rtalbert on Instagram, or at my blog at

MTH 325 Learning Targets


  • P.1: I can set up a framework of assumptions and conclusions for proofs using direct proof, proof by contraposition, and proof by contradiction.
  • P.2: I can identify the predicate being used in a proof by mathematical induction and use it to set up a framework of assumptions and conclusions for an induction proof.
  • P.3: I can identify the parts of a proof, including the technique used and the assumptions being made.
  • P.4: I can perform a critical analysis of a written proof and provide a detailed explanation of the steps used in the proof.


  • G.1: I can create a graph given information or rules about nodes and edges.
  • G.2: I can give examples of graphs having combinations of various properties and examples of graphs of special ("named") types.
  • G.3: I can represent a graph in different ways and change representations from one to another.
  • G.4: I can take any representation of a graph and determine information about the entire graph or parts of the graph.
  • G.5: I can determine whether two graphs are isomorphic.
  • G.6: I can give a valid vertex coloring for a graph and determine a graph's chromatic number.
  • G.7: I can determine whether a graph has an Euler path or cycle, and whether it has a Hamilton path or cycle.
  • G.8: I can construct a spanning tree for a (connected) graph, and I can construct a minimal spanning tree for a weighted graph using Prim's Algorithm and Kruskal's Algorithm.


  • R.1: I can represent a relation in different ways and change representations from one to another.
  • R.2: I can give examples of relations on a set that have combinations of the properties of reflexivity, symmetry, antisymmetry, and transitivity.
  • R.3: I can compute the composition of two relations (and determine when a composition cannot be computed) and raise a relation on a set to a positive integer power.
  • R.4: I can determine whether two points in a set with a relation belong to the transitive closure of that relation, and I can use Warshall’s Algorithm to find the matrix for the transitive closure of a relation.
  • R.5: I can determine when a relation is an equivalence relation, and I can determine the equivalence class for an element and determine whether two elements belong to the same equivalence class.
  • R.6: I can determine when a set with a relation is a partially ordered set, a totally ordered set, and a well-ordered set.


  • T.1: I can give examples of trees with combinations of important properties and determine information about a tree as a whole or about parts of the tree.
  • T.2: I can list the nodes of a tree in the correct order when visited using preorder, postorder, and inorder traversals.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.