CSC 165 2009F → Mathematical Expression and Reasoning for Computer Science

Welcome!

Welcome to the web site for the Fall 2009 term of CSC 165, Mathematical Expression and Reasoning for Computer Science.

Prerequisites

The Arts and Science Calendar lists the Prerequisites, Exclusions and Recommendations shown below.

But the prerequisite of CSC 108 and the recommendations (first term of Calculus, taking 148/150 at the same time) have turned out too strong. Most students report that CSC 165 helps them with MAT 137/157, rather than the other way around. And a lack of programming background might not be much of a problem, depending on your reasons for wanting to take CSC 165 in the fall.

So I am officially waiving the prerequisites this term. Contact me if you are interested but concerned about your preparedness. (Note that Instructors can waive preprequisite courses, but exclusion rules are mandatory and the Faculty of Arts and Science will eventually unenrol students from excluded courses without any refund.)


Exclusion: CSC236H1, 238H1, CSC240H1; MAT102H5 (University of Toronto Mississauga); You may not take this course after taking more than two CSC courses at the 200-level or higher.

Prerequisite: CSC108H1/(CSC148H1/CSC150H1 taken concurrently); MHF4U(advanced functions)/MCV4U(calculus and vectors). Recommended preparation: first term of MAT135Y1/MAT137Y1/MAT157Y1.

NOTE: It is recommended that CSC148H1/CSC150H1 and CSC165H1/CSC240H1 be taken at the same time, since each course relies on material from the other. If you take one before the other, it is preferable to take CSC148H1/CSC150H1 first. In any case, you will be at a modest disadvantage in the first of the two courses, and will be expected to pick up the relevant material from the other course on your own.

Choosing CSC 165 as Your First Theory Course for Computer Science

The Arts and Science Calendar summarizes the course:


Introduction to abstraction and rigour. Informal introduction to logical notation and reasoning. Understanding, using and developing precise expressions of mathematical ideas, including definitions and theorems. Structuring proofs to improve presentation and comprehension. General problem-solving techniques. Unified approaches to programming and theoretical problems. Representation of floating point numbers and introduction to numerical computation.


The most immediate and intense use of reasoning, logic and proof in CS courses is then in CSC 236 or 240 (but courses in math, philosophy, and many other areas rely on much of CSC 165 material, often implicitly). So assuming you are considering continuing with Computer Science, you have a choice to make:

  1. CSC 165, then CSC 236 (Introduction to the Theory of Computation)

    Most students take this option.
    But after CSC 165 some develop a serious interest in general precise reasoning and abstraction, so switch to option #2.

  2. CSC 165, then CSC 240 (Enriched Introduction to the Theory of Computation)

    Some students are very interested in the theory of computation, but want some more preparation and confidence in using the tools of all precise general discussion (reasoning, logic, proof) before applying them to reasoning about computation.

  3. CSC 240 only, Winter term (but CSC 236 cannot be taken without having CSC 165).

    Some students are ready and interested without CSC 165, e.g. students who can do proofs and are (or would be) comfortable in MAT 157.

    CSC 240 is deeper and more difficult than CSC 236: do not take it to avoid taking two reasoning and abstraction courses — you will then end up spending more time on CSC 240 than on CSC 165 and 236 combined.

Your options here are based on interest and ability not (just) background. This is different than the relationship between, and options for, CSC 108, 148 and 150.

Enrolment

The Faculty of Arts and Science, through ROSI (Repository of Student Information) and your College Registrar, handle all enrolment scheduling and procedures (and override anything I as an Instructor might say about it). According to them:

Last day to add this course: September 15 Tuesday.
Last day to drop this course: November 3 Tuesday.

Marking Scheme

Tutorial Participation: 9%.
Best 9 of 11 tutorials worth 1% each, OR
combined midterm average x 12% (to a maximum of 9%) — in other words, 75% or more on the midterms can replace the tutorial mark completely.
Exercises: 6 x 3% = 18%.
Fri Sep 18, Thu Sep 24, postponed to and combined with Thu Oct 22 Exercise, Thu Nov 19, Thu Nov 26 @ Noon.
Assignments: 3 x 6% = 18%.
postponed to Tue Oct 6, Thu Oct 29, Thu Dec 3 @ Noon.
May be done with a partner in the course.
Midterm Tests: 2 x 9% = 18% ; Also, to pass this course you must achieve a combined average of at least 35% on the tests.
Fri Oct 9 and Nov 6, 12:10–1:00.
Possibly in a special room, to be announced.
Final Exam: 37% ; Also, to pass the course you must achieve a mark of at least 35% on the exam.
In Exam period Dec 9–18, at specific time and location arranged and announced by the Faculty of Arts and Science; 3 hours.

Related UofT Sites

Computer Science Undergraduate Office (UGO):

The Undergraduate Office in the Department of Computer Science is your first stop for all matters relating to Computer Science at UofT. Our Student Counsellors are knowledgeable and enjoy helping students. You don't need an appointment — just drop in.

Computer Science Student Union (CSSU): get involved with your fellow CS Undergraduate students.

Writing Help: writing is an important component of Computer Science.
A good program, proof or specification is a complete and precise essay in an extended language.