2004/2005 Calendar
Calendar Home Calendar Contents Contact Us Arts and Science Home

Computer Science


On this page: Introduction | Programs |
See also: Faculty Members | Course Descriptions | Course Winter Timetable | More on Department

Introduction

What is Computer Science?

Despite the name, Computer Science is not really a "science of computers" at all. Computers are quite remarkable electronic devices, but even more remarkable is what they can be made to do: simulate the flow of air over a wing, manage communication over the Internet, control the actions of a robot, synthesize realistic images, play grandmaster-level chess, and on and on. Indeed the application of computers in activities like these has affected most areas of modern life. What these tasks have in common has little to do with the physics or electronics of computers; what matters is that they can be formulated as some sort of computation. This is the real subject matter of Computer Science: computation, and what can or cannot be done computatively.
In trying to make sense of what we can get a computer to do, a wide variety of topics come up. There are, however, two recurring themes. The first is the issue of scale: how big a system can we specify without getting lost in the design, or how big a task can a computer handle within reasonable bounds of time, memory and accuracy. A large part of Computer Science deals with these questions in one form or another. In the area of programming languages and methodology, for example, we look for notations for describing computations, and programming methodologies that facilitate the production of manageable and efficient software. In the theory of computation area, we study resource requirements in time and memory of many basic computational tasks.
The second theme concerns the scope of computation. Computers were originally conceived as purely numerical calculators, but today, we tend to view them much more broadly. Part of Computer Science is concerned with understanding just how far computational ideas can be applied. In the area of artificial intelligence, for example, we ask how much of the intelligent behaviour of people can be expressed in computational terms. In the area of human/computer interaction, we ask what sorts of normal day-to-day activities of people might be supported and augmented using computers.

Many of our programs combine another field with computer science, such as Information Systems, Economics, Mathematics, Physics or Statistics. The programs in Software Engineering and Human-Computer Interaction focus on developing areas of computing.

The equipment and software available to students are up-to-date and accessible. On the St. George campus, networks of PC and Unix workstations support the computing needs of all our courses. In addition, some higher-level courses are based on laboratories.

Some Computer Science courses are offered in the evening, to allow part-time students to pursue our programs. Introductory courses and some higher-level courses are offered in the summer.

The Professional Experience Year Program (PEY) offers students the opportunity to gain valuable work experience in industry, over a twelve to sixteen-month period. It, and the Co-Op Japan Program, are available to eligible, full time students pursuing their first degree. Please refer to Page 17 for more information.

Associate Chair - Undergraduate Studies: D. Horton

Undergraduate Office: Bahen Building, 40 St. George Street, Room 4252/4254, M5S 2E4 (416-978-6360)

Student Counsellor: Bahen Building, St. George Street, Room 4252/4254 (416-978-6360)
Web site: www.cs.utoronto.ca

Computer Science Programs

Enrolment is restricted in all CSC programs. You may request a CSC subject POSt in April-June or July-August depending on when you have completed the required 100-level courses listed below. Consult the 2004-2005 Registration Handbook & Timetable for details of how to apply. Admission to restricted programs depends on performance in the required 100-level courses (listed in program descriptions) and on cumulative GPA.

Tuition fees for students enrolled in Computer Science Major or Specialist programs are higher than for other Arts and Science programs.

Computer Science

Consult Student Counsellor, Department of Computer Science.

Computer Science: Comprehensive Option (Science program):

Specialist program
(13.5 full courses or their equivalent, including at least one 400-series course)

Enrolment in the Specialist Program is limited. Admission requires (1) 65% in CSC148H1/CSC150H1, (2) either 60% in MAT137Y1/MAT157Y1 or 65% in CSC165H1/CSC240H1, and (3) a minimum CGPA of 2.0.

First Year:
CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program)

First or Second Year:
CSC207H1, CSC236H1/CSC240H1, CSC258H1; (MAT223H1,MAT224H1)/MAT240H1; writing requirement (See Note 2 to Comprehensive program)

Second Year:
CSC209H1, CSC263H1/CSC265H1; STA247H1/STA257H1; MAT237Y1/MAT257Y1

Second or Third Year:
CSC324H1

Third Year:
CSC343H1, CSC363H1/CSC365H1, CSC373H1/CSC375H1; MAT301H1/MAT302H1/MAT315H1/MAT334H1/MAT344H1

Third or Fourth Year:
1. CSC438H1/CSC448H1/CSC465H1/MAT443H1
2. CSC350H1, CSC351H1
3. One half-course from Group A, and one half-course from either Group A or Group B:

Group A:
CSC401H1, CSC407H1, CSC408H1, CSC411H1, CSC418H1, CSC420H1, CSC428H1, CSC443H1, CSC458H1, CSC469H1, CSC485H1, CSC486H1, CSC487H1, CSC488H1/ECE489H1

Group B:
CSC309H1, CSC318H1, CSC320H1, CSC321H1, CSC330H1, CSC340H1, CSC354H1, CSC369H1, CSC372H1, CSC384H1, CSC446H1, CSC454H1, CSC456H1; ECE385H1

Notes:
1. Students with a strong background in Java or C++ may omit CSC107H1/CSC108H1. CSC150H1 is an accelerated alternative to CSC107H1/CSC108H1 and CSC148H1, intended for students with previous programming experience in a procedural language. In a similar way, CSC240H1 is an accelerated alternative to CSC165H1 and CSC236H1, intended for students with a strong mathematical background. Consult the Computer Science Undergraduate Office for further advice.
2. Writing requirement: Students in any Specialist program sponsored by the Department of Computer Science (including Combined Specialist programs) must complete one credit requiring substantial written work in English. The courses accepted for this purpose are listed below. Courses not on this list do not satisfy the requirement without departmental approval. Students in the Major program in Computer Science must take one-half credit from the same list. Departments offering these courses have agreed to accept our students, but will not give you special preference in admission. You must satisfy the prerequisite and other requirements listed in this Calendar. Make sure to check that the course you want to take is offered in the year you want it, and to follow the enrolment requirements stated in the Arts and Science Registration Handbook and Timetable. A Transfer credit, whether it is for a specific course on the list below (eg "RLG100Y1") or is a generic credit (eg "RLG 1**Y1"), must be approved by the department in order to count towards the writing requirement. Please contact the department for approval. In order to accept such a course, we must assess the role of written work in the course, and determine that it was taught in English, at an English-speaking university.

ANT204Y1; CLA160Y1, any 200- or 300-level except CLA201H1; CSC300H1; EAS102Y1; ENG - any 100- or 200-level except EAS269Y1; GER 235Y1, 251Y1; HIS - any 100- or 200-level; HPS - all courses; HUM101Y1, HUM199Y1; INI115Y1, 202Y1, INI203Y1, INI204Y1, INI224Y1, INI225Y1, INI235Y1; ITA240Y1, ITA245Y1, ITA340Y1; JAL328H1; JEF100Y1; JUP250Y1; NEW150Y1, NEW160Y1, higher-level courses in the "Humanism" grouping; NMC101Y1, NMC185Y1, higher-level courses in the "History" grouping; PHL100Y1, 101Y1, PHL102Y1, any 200- or 300-level except PHL245H1, PHL246H1, PHL247H1, PHL344H1, PHL345H1, PHL346H1, PHL347H1, PHL349H1, PHL356H1; POL 100Y1, POL102Y1, POL103Y1, 104Y1, POL108Y1, any 200-level except POL242Y1; RLG100Y1, RLG101Y1, any 200-level; UNI 130Y1, UNI201H1, UNI202H1, 310Y1; VIC 110Y1, VIC120Y1, 140Y1Courses not accepted to satisfy the writing requirement include SCI199Y1, SSC199Y1, and the "Research Opportunity Program" courses numbered 299Y1 in any department.

3. Students are strongly encouraged to include a sequence of courses in a subject area in which computers can be usefully applied, and are advised to arrange their program so as to complete the requirements of the Major Program by the end of Third Year.
4. It is recommended that students take PHY140Y1.

Major program:
(8 full courses or their equivalent)

Enrolment in the Major Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science.

First Year:
CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program)

First or Second Year:
CSC207H1, CSC236H1/CSC240H1, CSC258H1; STA247H1/STA257H1; MAT223H1/MAT240H1; writing requirement (See Note 2 to Comprehensive program)

Second Year:
CSC263H1/CSC265H1

Higher Years:
Four half-courses from the following groups, of which at least three half-courses must be from Group F:

Group E:
CSC300H1, CSC318H1

Group F:
CSC209H1, CSC309H1, CSC320H1/CSC321H1/CSC330H1/CSC384H1, CSC324H1, CSC336H1, CSC340H1, CSC343H1, CSC350H1, CSC351H1, CSC354H1, CSC363H1/CSC365H1, CSC369H1, CSC372H1, CSC373H1/CSC375H1, CSC401H1, CSC407H1, CSC408H1, CSC411H1, CSC418H1, CSC428H1, CSC438H1, CSC443H1, CSC446H1, CSC448H1, CSC454H1, CSC456H1, CSC458H1, CSC465H1, CSC469H1, CSC420H1/CSC485H1/CSC486H1/CSC487H1, CSC488H1/ECE489H1; ECE385H1; MAT443H1; (you may not take both of CSC336H1 and CSC350H1,CSC351H1)

Computer Science & Economics (Science program)

Consult the Undergraduate Secretary, Department of Economics or Student Counsellor, Department of Computer Science.

Enrolment in this Program is limited. Admission requires: (1) 70% in ECO100Y1, (2) 65% in CSC148H1/CSC150H1, (3) either 60% in MAT137Y1/MAT157Y1 or 65% in CSC165H1/CSC240H1, and (4) a minimum CGPA of 2.0. The requirements of the two departments, Computer Science and Economics, must both be met.

Specialist program:
(17 full courses or their equivalent, including at least one 400-series course)

First Year:
CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1; ECO100Y1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program in Computer Science)

Higher Years:
1 Writing requirement (See Note 2 to Comprehensive program in Computer Science)
2. CSC207H1, CSC236H1/CSC240H1, CSC258H1, CSC263H1/CSC265H1, CSC324H1, CSC336H1/CSC350H1
3. ECO206Y1, ECO208Y1, ECO325H1, ECO326H1/ECO432H1, ECO327Y1, ECO416H1/ECO418H1
4 APM236H1, (MAT223H1, MAT224H1)/MAT240H1, MAT235Y1/MAT237Y1/MAT257Y1
5. ECO227Y1/(STA257H1, STA261H1)
6. One and a half courses from the following groups, of which at least one half-course must be from each of Groups A and B:

Group A:
CSC343H1, CSC369H1, CSC458H1

Group B:
ECO310Y1, ECO314H1, ECO328Y1, ECO333Y1, ECO334Y1, ECO336Y1

Group C:
APM362H1; CSC340H1, CSC351H1, CSC354H1, CSC363H1/CSC365H1, CSC373H1/CSC375H1, CSC401H1, CSC407H1, CSC408H1, CSC454H1; ECE385H1; STA302H1, STA322H1, STA347H1, STA437H1, STA457H1

Computer Science: Information Systems Option (Science program)

Consult Student Counsellor, Department of Computer Science.
Enrolment in this Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science.

Specialist program:
(14.5 full courses or their equivalent, including at least one 400-series course)

First Year:
CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program in Computer Science)

First or Second Year:
1 CSC207H1, CSC236H1/CSC240H1, CSC258H1; MGT 120H1
2. Writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second or Third Year:
1. CSC209H1, CSC263H1/CSC265H1, CSC324H1, CSC336H1/CSC350H1, CSC340H1
2. MAT223H1/MAT240H1
3. STA247H1/STA257H1

Third Year:
CSC343H1, CSC363H1/CSC365H1, CSC373H1/CSC375H1
Third or

Fourth Year:
CSC318H1, CSC369H1; MGT 262H1/363H1/WDW260H1

Fourth Year:
1 CSC407H1/CSC408H1, CSC443H1, CSC454H1/MGT 374H1
2. Two of CSC309H1, CSC354H1, CSC372H1, CSC320H1/CSC321H1/CSC330H1/CSC384H1; ECE385H1; CSC401H1, CSC407H1/CSC408H1 not taken in Group 1; CSC418H1, CSC458H1, CSC465H1, CSC420H1/CSC485H1/CSC486H1/CSC487H1, CSC428H1, CSC469H1,CSC488H1/ECE489H1

Notes:
1. Students are strongly recommended to take both CSC407H1 and CSC408H1; doing so does not increase the number of courses required.
2. STA257H1 and STA261H1 are required as prerequisite for MGT 374H1.

Computer Science & Mathematics (Science program)

Consult Student Counsellor, Department of Computer Science or Professor S.A. Cook, Department of Computer Science.

Enrolment in this Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science. Consult the Timetable and the Department of Computer Science for details.

Specialist program:
(15.5 full courses or their equivalent, including at least one 400-series course)

First Year:
(CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT157Y1, MAT240H1 (See Note 1 to Comprehensive program in Computer Science)

First or Second Year:
CSC240H1, CSC258H1, CSC207H1; writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second Year:
CSC265H1; MAT247H1, MAT257Y1, MAT267H1; STA257H1/STA352Y1

Third Year:
CSC324H1, CSC365H1, CSC375H1

Third or Fourth Years:
1. MAT327H1, MAT347Y1, MAT354H1, MAT357H1
2. One of CSC438H1, CSC448H1, CSC465H1; MAT443H1
3. CSC350H1, CSC351H1
4. One of CSC401H1, CSC407H1, CSC408H1, CSC418H1, CSC420H1, CSC428H1, CSC443H1, CSC456H1, CSC458H1, CSC469H1, CSC485H1, CSC486H1, CSC487H1, CSC488H1; ECE489H1
5. APM351Y1/MAT457Y1
6. One of APM461H1; MAT344H1, MAT464H1, MAT477H1

Notes:
1. It is recommended that PHY140Y1 be taken.

Computer Science & Physics (Science program)

Consult Student Counsellor, Department of Computer Science, or Associate Chair (Undergraduate Studies), Department of Physics.

Enrolment in this Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science. NOTE: Students in this Program should consult one or both Departments during the spring of each year, to ensure that they choose courses appropriate to their intended careers.

Specialist program:
(17.5 full courses or their equivalent, including at least one 400-series course)

First Year:
(CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1, MAT223H1/MAT240H1; PHY140Y1 (See Note 1 to Comprehensive program in Computer Science)

First or Second Year:
CSC240H1, CSC207H1; STA247H1; writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second Year:
CSC263H1/CSC265H1; MAT237Y1/MAT257Y1, MAT244H1/MAT267H1; PHY225H1, PHY251H1, PHY252H1, PHY255H1, PHY256H1

Third Year:
APM346H1; CSC324H1, CSC350H1; MAT334H1; PHY351H1, PHY352H1, PHY355H1

Third or Fourth Years:
1. CSC351H1, CSC363H1/CSC365H1/CSC373H1/CSC375H1
2. PHY457H1/PHY459H1/PHY460H1
3. CSC401H1/CSC407H1/CSC408H1/CSC418H1/CSC420H1/CSC428H1/ CSC443H1/CSC458H1/CSC469H1, CSC485H1/CSC486H1/CSC487H1/CSC488H1/ECE489H1
4. 1.5 courses from the 300-/400-level lab courses as described in the Notes to the Physics Specialist program.

Computer Science: Software Engineering Option (Science program)

Consult Student Counsellor, Department of Computer Science.
Enrolment in this Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science.

Specialist program:
(14 full courses or their equivalent, including at least one 400-series course)

First Year:
CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program in Computer Science)

First or Second Year:
CSC207H1, CSC236H1/CSC240H1, CSC258H1; writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second or Third Year:
CSC209H1, CSC263H1/CSC265H1, CSC318H1, CSC324H1, CSC340H1; MAT223H1/MAT240H1; STA247H1/STA257H1

Third Year:
CSC343H1, CSC363H1/CSC365H1, CSC373H1/CSC375H1

Third or Fourth Year:
1. CSC336H1/CSC350H1, CSC369H1, CSC407H1, CSC408H1
2. Two of CSC354H1, CSC372H1, CSC320H1/CSC321H1/CSC330H1/CSC384H1; ECE385H1; CSC401H1, CSC454H1, CSC465H1
3. Two of CSC309H1, CSC418H1, CSC443H1, CSC458H1, CSC469H1, CSC488H1/ECE489H1

Notes:
1. This Program does not lead to certification as a Professional Engineer.
2. Students in this Program are strongly encouraged to consider participating in the "PEY" program.

Computer Science and Statistics (Science program)

Consult Student Counsellor, Department of Computer Science, or Undergraduate Secretary, Department of Statistics.
Enrolment in this Program is limited. Admission requirements are the same as for the Comprehensive program in Computer Science.

Specialist program:
(14 full courses or their equivalent, including at least one 400-series course)

First Year:
(CSC107H1/CSC108H1,CSC148H1)/CSC150H1; MAT137Y1/MAT157Y1 (See Note 1 to Comprehensive program in Computer Science)

First or Second Year:
1. CSC240H1, CSC258H1, CSC207H1
2. (MAT223H1,MAT224H1)/(MAT240H1,MAT247H1)
3. Writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second Year:
CSC263H1/CSC265H1; STA257H1, STA261H1; MAT237Y1/MAT257Y1

Third Year:
CSC324H1, CSC350H1, CSC351H1, CSC363H1/CSC365H1, CSC373H1/CSC375H1; STA302H1, (STA347H1, STA447H1)/STA352Y1

Third or Fourth Years:
1. One of CSC407H1, CSC408H1, CSC418H1, CSC443H1, CSC456H1, CSC458H1, CSC469H1, CSC487H1; MAT443H1
2. STA437H1/STA442H1/STA457H1
3. Two of CSC310H1, CSC321H1, CSC354H1, CSC401H1, CSC411H1, CSC412H1; STA410H1

Human-Computer Interaction (Science program)

Consult Student Counsellor, Department of Computer Science.

Enrolment in this Program is limited. Admission requires (1) 65% in CSC148H1/CSC150H1, (2) either 60% in MAT135Y1/MAT137Y1/MAT157Y1 or 65% in CSC165H1/CSC240H1, and (3) a minimum CGPA of 2.0 and (4) submission of a résumé. The required GPA may be raised to limit enrolment.

Specialist program:
(15.5 full courses or their equivalent, including at least one 400-series course)

First Year:
1. CSC165H1/CSC240H1, (CSC107H1/CSC108H1,CSC148H1)/CSC150H1 (See Note 1 to Comprehensive program in Computer Science)
2. MAT135Y1/MAT137Y1/MAT157Y1
3. SOC101Y1

First or Second Year:
CSC207H1, CSC236H1/CSC240H1; PSY100Y1; writing requirement (See Note 2 to Comprehensive program in Computer Science)

Second Year:
1. CSC258H1, CSC263H1/CSC265H1; STA247H1
2. MAT223H1/MAT240H1; SOC200Y1

Third Year:
1. CSC300H1, CSC318H1, CSC340H1
2. CSC324H1/CSC343H1
3. STA248H1/(PSY201H1, PSY202H1)/SOC300Y1
4. PSY270H1, PSY280H1

Third or Fourth Year:
1. CSC363H1/CSC365H1/CSC373H1/CSC375H1, CSC428H1
2. Two of CSC407H1/CSC408H1, CSC418H1/CSC487H1/CSC420H1, CSC401H1/CSC485H1/CSC486H1/CSC411H1, CSC443H1/CSC458H1/CSC469H1
3. WDW260H1/MGT 262H1

Notes:
1. Students in this Program should consult the Department of Computer Science at least annually to discuss their choice of courses, especially if they plan on graduate study.
2. Students who may be interested in other Programs sponsored by the Department of Computer Science must take MAT137Y1/MAT157Y1 and not MAT135Y1.
3. It is recommended that you take a physical science course such as PHY138Y1/PHY140Y1.
4. It is strongly recommended that you take at least one half-course in Human Factors or Ergonomics offered by the Department of Mechanical and Industrial Engineering, such as MIE 343H1, 448H1, 449H1.
5. Other recommended courses include:
CSC309H1, CSC369H1, CSC454H1, CSC469H1; SOC387Y1; PSY305H1, PSY370H1, PSY371H1, PSY372H1, 374H1, PSY375H1, PSY312H1

For advice on course choice and assistance in enrolment consult the Department of Computer Science.


Calendar Home ~ Calendar Contents ~ Contact Us ~ Arts & Science Home
Copyright © 2004, University of Toronto