This page does not represent the most current semester of this course; it is present merely as an archive.

1 Logistics

1.1 Meetings

We will meet Monday, Wednesday, and Friday, 3:30–4:20, in Ruffner G008.

Monday and Wednesday lecture is optional, but strongly encouraged. Friday lecture will often be used for in-class evaluation: some lab-like check-offs of basic understanding with the professor or a TA; some mini exams.

I do not schedule review sessions or the like outside of usual class time.

1.2 Tasks

You will be expected to read instructional material and either understand it or ask questions to clarify what you found confusing. We strongly recommend forming study groups that meet at least weekly all semester long to discuss readings, as even if they appear simple at first they will often contain nuances that will only emerge with conversions.

You will be given take-home assignments, given online and auto-graded.

We will have miniature exams in class every week instead of one or two larger midterms. The first of these will be on Friday 6 September; we have not decided if they will be on Wednesdays or Fridays thereafter.

1.3 Contact

Instructor TAs
Name Luther Tychonievich Alicia Byrne, David Gravelink, Sarah Meng, Conner Steenrod, Anthony Taylor, Eric Wang
Location Rice 208 See the OH page
Office Hours Monday 10:00–11:00
Tuesday 13:00–15:00
Friday 11:00–12:00
See the OH page
Phone 243-3789 (none)
Email tychonievich@virginia.edu use Piazza

For most communication, Piazza is preferred to email. If you email, include either DMT1 or 2102 in the subject line to prevent your email from skipping my inbox and never getting read.

Our TAs are students too, with duties and work outside of their TAing. Please do not ask them to act as your TA except at the scheduled on-the-clock times they have listed as their office hours and lab time. They are also kind people; please don’t put them in the position of having to say no or (worse) being nice to you at the expense of their own schooling.

1.4 Readings

We will primarily use the free online textbook Mathematics for Computer Science by Eric Lehman, Thomson Leighton, and Albert Meyer, available both on our site and on MIT’s site. Readings that begin § refer to sections of that book; for example, §1.7 refers to the section Proof by Cases.

We will also sometimes refer to the free online textbook forall x Calgary Remix by P D Mangus et al, available both on our site and from the Open Logic Project. Readings from forall x will be noted with ∀x and then the section number; for example, ∀x 15.1 refers to the section The idea of a formal proof.

I will use .0 to mean the text before .1; for example, ∀x 1.0 is the content of chapter 1 preceding section 1.1.

From time to time we will also post links to other articles or writeups of our own.

1.5 Proofs

You will both write and read proofs as part of this class. If you have had a proof-heavy math class before, you know what to expect here. If not, think of proof writing as being more similar to code writing than to other forms of mathematics homework in terms of time needed and difficulty of estimating exact time needed for any given problem.

2 Grading

In February 2019 the CS faculty approved a definition of what we believe grades mean. It is my intent to approximate that definition in this course. As a brief summary,

Letter Student demonstrated Recommendation re future courses1
A mastery of all topics likely to do well
B competence in significant topics able to do well with some review
C sufficient competence likely to be challenging
D minimal competence unlikely to succeed
F less than minimal competence retake this course first

These goals do not map perfectly to numeric scores. If you get full or nearly full points on all graded tasks, you should expect an A. If you miss non-trivial numbers of points or deadlines, we may attempt to assess your standing on this subjective scale in lieu of a raw point-based grade.

In re raw points, the intent is to put half weight on supervised assessments (i.e., in class evaluations on Fridays) and the other half on unsupervised (i.e., online homework). If you earn at least 93% of the points, you will earn an A. If you earn less, you will likely be given a lower grade. We expect this will approximate the usual 10%-per-letter breakdown, but will attempt to diagnose particular learning outcomes and mastery levels rather than being constrained to pure mechanical grade computation.

2.1 Submitting late

To facilitate grading and feedback, late submissions will not be allowed in general. If you cannot make the deadlines, please talk to the professor to discuss why and to see what accommodations are needed.

3 Miscellanea

3.1 Professionalism

Behave professionally.

Never abuse anyone, including the emotional abuse of blaming others for your mistakes. Kindness is more important than correctness.

Let our TAs be students when they are not on the clock as TAs.

3.2 Honesty

I always hope everyone will behave honestly. I know we all are tempted to do what we ought not; if you do something you regret, the sooner you tell me the sooner (and more leniently) we can correct it.

3.2.1 No plagiarism (nor anything like it)

You must cite any and every source you consult, other than those explicitly provided by the course itself. Talked to a friend, saw an interesting video, consulted a website, had a tutor? Tell us on your assignment submission!.

3.2.2 Understand what you submit

Working together can help you learn. But make sure you learned! We may ask you to explain aspects of a solution you turn in, and may dock points if it appears you simply copied someone else’s ideas (or just guessed a lot of things until one worked) without understanding them.

3.2.3 Obey collaboration limitations

Some assignments will list how many other people you can work with on it (if no number is listed, the number is 0: work alone). We will understand if you occasionally go a little over that number, but if that becomes a pattern or if you exceed it by a large amount we may divide your points among the collaborators instead of sharing them with all.

3.2.4 Consequences of Dishonesty

If I believe you have acted dishonestly, I will communicate this fact to you and propose a penalty. If you have information I lack, please share that with me; I may thereafter change my belief and/or proposed penalty.

If we are not able to come to an agreement, or if the case is particularly egregious and beyond my comfort level handling in-course, we will instead refer the case to the University Honor System and abide by their findings.

3.3 Personal accommodations

3.3.1 Disability

If you qualify for accommodations from the SDAC, please let me know, preferably in my office where we can discuss how your accommodations will interplay with the quiz- and assignment-based nature of this course.

3.3.2 Religious observances

As a religious person myself, I fully support the university’s stance on accommodating religious observances. If such observances or other religious beliefs impact or are likely to impact your work this semester, please let me know as soon as you are aware of this impact.

3.3.3 Life

Bad things happen. People forget things and make mistakes. Bad days coincide with due dates. Etc.

If you believe that circumstances warrant an change in deadline, a second chance, or some other accommodation in order to more accurately synchronize grade with knowledge, come talk to me and we’ll resolve the situation as best we can.


  1. Most of our courses depend on CS 2102 topics in some way. Theory (CS 3102), Algo (CS 4102), and the pilot’s DSA2 all have strong dependencies, as do many of our electives.↩︎