Discrete Structures (Spring 2025)

Info

All course announcements will appear here, with the most recent at the top of the page. Make sure to check these frequently!

Announcements

  • Announcement 18: Exam 2 Practice Problems

    • Exam 2 will take place on Monday, April 7th. I have posted practice problems and solutions for the 5 new questions. You can find them at the following link:
    • Exam 2 Practice Problems
  • Announcement 17: Weekly Quizzes

    • We will have weekly quizzes from now on (not including exam weeks). The goal will be to mainly introduce new problems related to the material we are currently discussing in the course. I will send announcements for the quiz topic each week.
  • Announcement 16: Demos due on Wednesday!

    • From now on, Demos will be due on Wednesdays to give you all a bit of extra time to work on them following the weekly labs, and to overlap better with my office hours (primarily Wednesdays 4-8 pm).
  • Announcement 15: Solutions for Sets Lab Posted

    • You can find the solution to the Lab on Sets posted on the website in a link next to the original link for the lab. I have posted it as both a pdf file and a tex file that generates the pdf. You can also download them here:
    • lab_sets_2-26_soln.pdf
    • lab_sets_2-26_soln.tex
  • Announcement 14: Selected Solutions for Labs Posted

    • There are a number of selected lab solutions that I have posted on the website. I picked an example problem for structural induction and an example problem for mathematical induction, and I also included solutions for all of the natural deduction "labs" from this week.
    • All of those solutions can be found on the website next to their respective labs.
    • You can also find them listed under the exam date: February 21st.
  • Announcement 13: Demo 3 due on Wednesday

    • Demo 3 is now due on Wednesday, and is now up on gradescope.
    • Also, solutions for Monday's "lab" are on the website.
  • Announcement 12: IMPORTANT: Exam Rescheduled!

    • It felt like Natural Deduction was a bit rough for everyone this week, and I think we could use some more time on that topic. Our plan for next week was to cover some advanced topics on induction and deduction, but I think it is more important to make sure you all have a solid grounding on the core logic in natural deduction.

    • We will plan to spend next Monday and Wednesday reviewing natural deduction, and I have a few ideas that might help. There wont be new readings, though I may add a few new lab problems for the week to help prepare you for the exam.

    • The exam will be moved to next Friday, the 21st.

    • Please let me know if you have any questions about this change in the schedule. Remember that I will be available in office hours from 2-3 pm on Monday, from 4-8 pm on Wednesday, and from 3-4 pm on Thursday. And there will be a mentor session on Saturday (tomorrow) from 1-2 pm.

    • And please let me know as soon as possible if you need accomodations for the exam, or if you will be absent for any reason.

  • Announcement 11: Office Hours this week (2/12,2/13)

    • Due to snow, I will be changing the office hours schedule this week. I will hold office hours on Wednesday the 12th from 4-5 pm (in 3821) and on Thursday the 13th from 3-7 pm (in 3813). Next week the schedule will return to normal.
  • Announcement 10: Special 208 Office Hours

    • I have decided to hold special 208-only office hours on Mondays right before our class from 2-3 pm. I will be in my office, 3824, every Monday from 2-3 pm to answer your questions.
  • Announcement 9: Demo 2 Clarifications

    • For problem 1(a), your calculate-grade function is expected to fully capture the course grading process, including minuses. This will end up being a longer function.
    • For problem 1(b), your property does not need to be "the function computes the correct grade in all circumstances," which is what would technically prove correctness. Instead, you should give a provable property of grading in the course. For example, what would be necessary to receive at least a B? Or what would be necessary to pass the course? These properties should hopefully be easier to prove.
    • Remember that you are now allowed to use -->* as you trace the behavior of functions. You should use this when appropriate. The key is to skip the minor and unnecessary steps, but still show the major and important details of the trace.
    • For Problem 2, Part 3, you may correctly answer this question in two ways: (1) if you correct both the code and the proof to arrive at a correct proof, I will count this as correct; (2) if you correct the proof, but leave the code un-fixed (with the bug still present), what happens in the proof? Your proof should end up trying to conclude something nonsensical and obviously false, i.e., you get "stuck." The key thing to note here is that attempting to prove correctness can help identify when there is a bug in the code! The proof wont work even though it should... because the code was incorrect.
    • For Problem 3, it can be important to remember the main technique for formally proving that two statements are equivalent: that they evaluate to the same expression. So far in the course, you have mostly been able to just trace the left-hand-side (LHS) of an expression until it reached the simplified RHS. But, sometimes it is necessary to actually trace both sides until they look like each other. Start with the LHS until you get "stuck," then trace the RHS until you get "stuck." At that point, hopefully your Induction Hypothesis will allow you to re-write one of them and show that they are the same, and therefore equivalent!
  • Announcement 8: Reminder of Important Course Policies

    • Please email me if you are sick or going to miss class for any reason. No explanation is necessary, just let me know you wont be there. I expect you in class, so when you aren't there, I worry about you. Please let me know you wont be there so I don't worry!
    • When working with partners in this class, please remember the rules about collaboration that we follow in this department: both partners are expected to be working together at the same time on all problems. You should treat this work like you would a pair programming assignment. You should not assign specific problems to each partner and complete parts of the assignment seperately. Each of you is expected to contribute to every part of the assignment.
    • If your partner is sick, misses class, or cannot meet to work on the lab for whatever reason, you should feel free to complete the lab individually (citing your partner for the parts they contributed). You may even join another partner to complete the lab (again, citing both partners).
  • Announcement 7: Mentor Sessions

    • Mentor sessions will be held on Saturdays from 1-2 pm in 3815 (our usual classroom).
  • Announcement 6: Remote MathLAN Acces

  • Announcement 5: Mentor Poll

  • Announcement 4: Reading for Friday, Concrete Evaluation

    • You should make sure to work through the reading for Friday and submit your responses to the listed exercises in the related Daily Drill assignment on the course gradescope (https://www.gradescope.com/courses/963114).
  • Announcement 3: Course Gradescope

  • Announcement 2: No Office Hours Week 1

    • I will not be holding office hours this week. If you would like to meet, please email me at autryeri@grinnell.edu to schedule a time. -Eric
  • Announcement 1: Welcome!

    • Welcome to the course! This is CSC-208-02 for Spring 2025.

      I look forward to meeting you all in class! -Eric