Course syllabus

Welcome to COMPSCI 120 

COMPSCI 120 introduces the basic mathematical tools and methods needed for computer science. In this course, we will develop the elementary mathematical skills needed to define, analyze and reason with the sorts of abstract concepts used in programming and computer science. Topics covered in this class include integer arithmetic, strings and languages, methods of proof (including induction), algorithmic analysis, graph theory, trees, counting, and probability.


Quick useful information:

Course book : Course book

Study Guide: cs120_studyguide_2019.pdf

Tutorial Guide: cs120_tutorialguide.pdf


We have set up Piazza for this course. The main purpose of Piazza is for you to interact with other students in the course; while lecturers will monitor Piazza and help if necessary, we believe that the best way for Piazza to work in this class is if you are all collectively responding to each other's problems! 

In general: mathematics is something that is best learned by doing and then having others critique your working, so that you can get better.  As lecturers, students often ask us for extra practice problems, or for the best way to revise material: I claim that Piazza is this!  Try to ask 1-3 questions a week and try to comment on 1-3 posts a week, and I guarantee your skills will improve.

To encourage student responses, we as lecturers will follow a "2 hour" rule: during the first two hours of any post about the material in CS120, we will not respond.  (Note: this does not mean that we will respond immediately after two hours!  Depending on when your question goes up, we may be in meetings, or it may be after work hours and we're trying to take care of our families, etc.  In general, we'll get responses up as soon as is reasonable.  If you haven't seen a response in two working days, please repost or email us.)

Teaching staff


Tanya Gvozdeva, room 303-467,

Office hours:  MTWTHF 11am-1pm

You can always write me an email to meet outside the office hours.


Padraic Bartlett, room 303e.232,

Office hours: 3-4pm MTWF, or by appointment at other times if these hours do not suit!


Jonny Stephenson, room 303e.234,

Office hours: 

Mon 10-11
Tues 1-2
Weds 11-12
Thurs 4-5


I'm also available and happy to talk most of the time if you drop by without warning (or you can make an appointment at a time that suits you, if you want a guarantee that I'll actually be in my office when you visit).

Course coordinator:

Tanya Gvozdeva



Ka Ho Lam

Jose Manuel Aguero Trejo

Alec Henderson

Felix Woolford

Julia Gasston

Songbao Mo



Class representatives:

You can share with them any suggestions/complains/remarks about the lectures. Please note, the class reps are not a part of the teaching team. They only help us to keep in touch with our students. They cannot answer questions about the course.

The first stream class reps (9 am lectures):
Zac Miller-Waugh
Hao Chen Li

The second stream class reps (10/11am lectures):
Cissy (Linda) Lin
Molina Lim
Kabilan Kathiravel
Hazel Woodward



Lectures times and locations

Stream 1:

All lectures are in MLT1/303-G23.

Monday 9am-10am 


Friday 9am-10am 


Stream 2:

All lectures are in LgeChem/301-G050.

Wednesday 11am-12pm 


Friday 11am-12pm 


Tutorials times: TBA


Please check SSO for locations, as they have likely changed since the start of the semester!

Information regarding university policies and technical support:

Academic Integrity

Aegrotats and compassionate passes

Canvas help



Attempt all of the assessments, even if what you submit is incomplete!

  • 5 Assignments, worth 20% of the final grade (4% each)
  • 10 tutorials, worth 10% of the final grade (8 best tutorial's grades are chosen, every tutorial worth 3 marks)  
  • Mid-semester test, worth 20% of the final grade
  • Exam, worth 50%



Assignments will be due on the following Fridays, at 4pm:

  • Assignment 1 is due on Friday, March 15th. 
  • Assignment 2 is due on Friday, April 5th. 
  • Assignment 3 is due on Friday, May 10th.
  • Assignment 4 is due on Friday, May 24th.
  • Assignment 5 is due on Friday, June 7th.

Assignment hand-in boxes are located in the Faculty of Science Student Resource Centre on the ground floor of Building 301 - room G402. All assignments should be handed in to the correct hand-in box before 4pm on the due date. Late assignments and those in the wrong box will not be marked.

The most important part when submitting an assignment is the coversheet. Coversheets must be generated on Canvas. Each coversheet contains a personalised QR-Code with your information, unique that that particular assignment.

Please make sure that your QR-Code is complete, machine readable, not resized and not corrupted. The Student Resource Centre need this QR-code to scan, track and process assignments in a timely manner. Furthermore, each coversheet has a declaration on it which you must date and sign.

Assignments without a coversheet cannot and will not be recorded. Assignments with an outdated, non-Canvas coversheet also cannot be recorded. In addition, you may be penalised for failing to sign and date the declaration.


Coversheet help video:  students to download cover sheet.mp4


Tutorials are weekly.  There is one two-hour tutorial each week that you are responsible for attending. Tutorials start in week 2 of the semester. There will be no tutorial in week 7 (the first week after the break).


You must attend the tutorial that you signed up for on Student Services Online.   If you are unable to do so due to illness/family emergencies/other extenuating circumstances, email your course coordinator as soon as you can. 


Mid-Semester Test:

The Mid-Semester Test is one hour long plus a five minute reading period and covers all of the material from the first six weeks of class.  Check the assignment page and/or your Canvas announcements for locations, times, and more information


The Exam is two hours long and covers material from the whole course; it will contain 12 multi-choice questions and 4 free-response questions. The exact date of the exam is not available until around the middle of the semester.

No calculators are permitted on the exam or test. Please note that the test and exam are designed so that a calculator is unnecessary; if you can add and multiply single-digit numbers, you will be capable of performing any of the calculations present.

Course summary:

Date Details