Computer Science

Computer Science: Introduction

​​​​​​​​​​​​​​​​Faculty Affiliation

Arts and Science

Degree Programs

Applied Computing

​​MS​cAC​​
Concentration:
Data Science

Computer Science

​MSc
PhD

Collaborative Specializations

The following collaborative specializations are available to students in participating degree programs as listed below:

  1. Genome Biology and Bioinformatics
    • Computer Science, PhD
  2. Knowledge Media Design
    • Computer Science, MSc, PhD
  3. Neuroscience
    • Computer Science, MSc, PhD​

Overview

Graduate faculty in the Department of Computer Science are interested in a wide range of subjects related to computing, including programming languages and methodology, software engineering, operating systems, compilers, distributed computation, networks, numerical analysis and scientific computing, financial computation, data structures, algorithm design and analysis, computational complexity, cryptography, combinatorics, graph theory, artificial intelligence, neural networks, knowledge representation, computational linguistics, computer vision, robotics, database systems, graphics, animation, interactive computing, and human-computer interaction.

For further details, consult the graduate student handbook prepared by the department and available online.

Contact and Address

Web: www.cs.toronto.edu
Email: gradadmissions@cs.toronto.edu
Telephone: (416) 978-8762
Fax: (416) 946-1932

Department of Computer Science Graduate Office
University of Toronto
Room 4242, Bahen Centre for Information Technology
40 St. George Street
Toronto, Ontario M5S 2E4
Canada

Computer Science: Graduate Faculty

Full Members

Abdelrahman, Tarek - BSc, MSc, PhD
Amza, Cristiana - BS, MS, PhD
Bacchus, Fahiem - BS, SM, PhD
Bader, Gary - BSc, PhD
Balakrishnan, Ravin - BS, SM, PhD (Chair and Graduate Chair)
Beck, J. Christopher - BSc, MSc, PhD
Bonner, Anthony - BSc, MSc, PhD
Borodin, Allan - BS, SM, PhD, FAAAS
Brudno, Michael (Mikhail) - AB, SM, PhD
Chechik, Marsha - BS, SM, PhD
Christara, Christina - BS, SM, PhD
De Lara, Eyal - BS, MS, PhD
Demke Brown, Angela - BS, SM, PhD (Coordinator, Graduate Studies)
Dickinson, Sven Josef - BASc, MS, PhD
Duvenaud, David - PhD
Easterbrook, Stephen Michael - BSc, PhD
Ellen, Faith - BM, MMath, PhD
Fairgrieve, Thomas - BMath, MSc, PhD
Farzan, Azadeh - BS, PhD
Fidler, Sanja - PhD
Fiume, Eugene - BM, MSc, PhD
Fleet, David James - BS, MS, PhD
Ganjali, Yashar - BSc, MSc, PhD
Goel, Ashvin - BTech, MS, PhD
Goldenberg, Anna - PhD
Grosse, Roger - PhD
Hadzilacos, Vassos - BSE, PhD
Hertzmann, Aaron - BA, MS, PhD
Hirst, Graeme - BA, BSc, MSc, PhD
Jackson, Kenneth - BSc, MSc, PhD
Jacobson, Alec - PhD
Jepson, Allan - BSc, PhD
Johnson, F. Ryan - BSc, MSEE, PhD
Kim, Philip - BS, PhD
Koudas, Nick - BS, MS, PhD
Kutulakos, Kiriakos - BS, MSc, PhD
Levin, David - PhD
Marbach, Peter Josef - DipIng, MS, PhD
McIlraith, Sheila - BSc, MSc, PhD
Mihailidis, Alex - BASc, MASc, PhD
Miller, Renee - BS, BM, MS, PhD
Molloy, Michael - BMath, MMath, PhD
Morris, Quaid - BS, PhD
Moses, Alan - BA, PhD
Nikolov, Aleksandar - PhD
Penn, Gerald - BS, MSc, PhD
Penny, David - PhD
Pitassi, Toniann - BS, SM, PhD
Roth, Frederick - PhD
Schroeder, Bianca - MSc, PhD
Singh, Karan - BS, MS, PhD
Stevenson, Suzanne Ava - MS, PhD
Stumm, Michael - MS, PhD
Toueg, Sam - BS, MA, MSEE, PhD
Truong, Khai Nhut - BSc, PhD
Tsotsos, John - BASc, MSc, PhD, CRC
Urtasun, Raquel - PhD
Wigdor, Daniel - PhD
Yu, Eric - BSc, MMath, PhD
Zemel, Richard - BA, SM, PhD
Zhang, Zhaolei - BS, PhD

Members Emeriti

Baecker, Ronald - BS, SM, PhD
Cook, Stephen - BS, SM, PhD
Corneil, Derek - BSc, MA, PhD
Enright, Wayne - BSc, MSc, PhD
Gotlieb, Calvin Carl - BA, MA, PhD
Hinton, Geoffrey - BA, PhD
Levesque, Hector - BSc, MSc, PhD
Mylopoulos, John - BE, MSc, PhD
Rackoff, Charles - SB, SM, PhD
Wortman, David - BE, MS, PhD

Associate Members

Baumgartner, Gary - BSc, MS
Borgida, Alex - MSc, PhD
Campbell, Jennifer - BSc, MMath
Craig, Michelle - BSc, MSc
Engels, Steven - BASc, MMath
Fazly, Afsaneh - PhD
Forlines, Clifton - PhD
Gries, Paul - BA, MSc
Heap, Daniel - BS, MSc
Hoffman, Michael - PhD
Horton, Diane - BS, MSc
Lesperance, Yves - BSc, MSc, PhD
Lilien, Ryan - BS, MD, PhD
Medland, Matthew - MSc
Moffatt, Karyn - BSc, MSc, PhD
Pitt, Francois - BSc, MSc, PhD
Pu, Ken - PhD
Reid, Karen - BS, MB, MS
Rudzicz, Frank - PhD
Salakhutdinov, Ruslan - BS, MS, PhD
Stam, Jos - PhD
Taati, Babak - PhD
Topaloglou, Thodoros - BSc, MSc, PhD

Computer Science: Applied Computing MScAC

​Master of Science in Applied Computing​

The MScAC program is offered as a general program (no concentration) or as a Data Science concentration. The Data Science concentration is offered jointly by the Department of Computer Science and the Department of Statistical Sciences. 

 

MScAC General Program (No Concentration)

Minimum Admission Requirements

  • Applicants are admitted under the General Regulations of the School of Graduate Studies. Applicants must also satisfy the Department of Computer Science's additional admission requirements stated below.

  • An appropriate bachelor's degree in computer science.

  • A minimum average grade of B+ over the final two years of undergraduate studies.

  • Applicants whose primary language is not English and who have graduated from a university where the primary language of instruction is not English must achieve a Test of English as a Foreign Language (TOEFL) score of at least 580 on the paper-based test and 4 on the Test of Written English (TWE); 93/120 on the Internet-based test and 22/30 on the writing and speaking sections.

  • Three letters of support from faculty and/or employers.

  • A statement of purpose.

Program Requirements

  • Coursework. Completion of 3.0 full-course equivalents (FCEs) including:

    • 1.0 FCE in required courses: technical communications (CSC 2701H) and technical entrepreneurship (CSC 2702H).

  • An eight-month industrial internship, CSC 2703H (3.5 FCEs). The internship is coordinated by the department, and evaluated on a pass/fail basis.

  • There is no thesis requirement.

Program Length

4 sessions full-time (typical registration sequence: F/W/S/F)

Time Limit

3 years full-time

 

MScAC Program (Data Science Concentration)

Minimum Admission Requirements

  • Applicants are admitted under the General Regulations of the School of Graduate Studies. Applicants must also satisfy the Department of Computer Science's additional admission requirements stated below.

  • An appropriate bachelor’s degree from a recognized university in a related area such as statistics, computer science, mathematics, or any discipline where there is a significant quantitative component. The completed bachelor’s degree must include significant exposure to statistics, computer science, and mathematics, including coursework in advanced calculus, linear algebra, probability and statistics, programming languages, and computational methods.

  • A minimum average grade of B+ over the final two years of undergraduate studies.

  • Applicants whose primary language is not English and who have graduated from a university where the primary language of instruction is not English must achieve a Test of English as a Foreign Language (TOEFL) score of at least 580 on the paper-based test and 4 on the Test of Written English (TWE); 93/120 on the Internet-based test and 22/30 on the writing and speaking sections.

  • Three letters of support from faculty and/or employers.

  • A statement of purpose.

  • Applicants must indicate a preference for a concentration in Data Science in their application. Admission is competitive, and students who are admitted to the MScAC program are not automatically admitted to this concentration upon request.

Program Requirements

  • Coursework. Completion of 3.0 full-course equivalents (FCEs) including:

    • 1.0 FCE chosen from the STA 2000-level courses or higher. This may include a maximum of 0.5 FCE chosen from the STA 4500-level of six-week modular courses (0.25 FCE each).

    • 1.0 FCE chosen from the Computer Science (CSC course designator) graduate course listings.

    • 1.0 FCE in required courses: Technical Communications (CSC 2701H) and Technical Entrepreneurship (CSC 2702H).

    • Course selections should be made in consultation with the Program Director.

  • An eight-month industrial internship, CSC 2703H (3.5 FCEs). The internship is coordinated by the department, and evaluated on a pass/fail basis.

  • There is no thesis requirement.

Program Length

4 sessions full-time (typical registration sequence: F/W/S/F)

Time Limit

3 years full-time

Computer Science: Computer Science MSc

Master of Science

Program Description

The MSc degree program is designed for students seeking to be trained as a researcher capable of creating original, internationally recognized research in computer science.

Computer Science courses are classified by Methodologies and Research Areas based on their content. Methodologies are core problem-solving approaches and/or techniques and general tools emphasized in the course material, while Research Areas are aligned with the activities of the various research groups in the department.

The MSc program can be taken on a full-time or part-time basis.

 

Minimum Admission Requirements

  • Applicants are admitted under the General Regulations of the School of Graduate Studies. Applicants must also satisfy the Department of Computer Science's additional admission requirements stated below.

  • An appropriate bachelor's degree with a standing equivalent to at least a University of Toronto B+. Preference given to applicants who have studied computer science or a closely related discipline.

  • Applicants whose primary language is not English and who graduated from a university where the language of instruction is not English must achieve a Test of English as a Foreign Language (TOEFL) score of at least 580 on the paper-based test and 4 on the Test of Written English (TWE); 93/120 on the Internet-based test and 22/30 on the writing and speaking sections.

Program Requirements

  • Coursework. Completion of 2.0 graduate full-course equivalents (FCEs) in computer science. The courses must satisfy breadth in three of the four different Methodologies of Computer Science to ensure that MSc graduates have a breadth of skills for research and problem solving throughout their careers.

  • A major research paper (CSC 4000Y [1.0 FCE]) demonstrating the student's ability to do independent work in organizing existing concepts and in suggesting and developing new approaches to solving problems in a research area. The standard for this paper is that it could reasonably be submitted for peer-reviewed publication.

Program Length

4 sessions full-time (typical registration sequence: F/W/S/F);
8 sessions part-time

Time Limit

3 years full-time;
6 years part-time

Computer Science: Computer Science PhD

Doctor of Philosophy​

Program Description

The PhD degree program is designed for students seeking to be trained as a researcher capable of creating original, internationally recognized research in computer science. Research conducted under the supervision of a faculty member will constitute a significant and original contribution to computer science.

Computer Science courses are classified by Methodologies and Research Areas based on their content. Methodologies are core problem-solving approaches and/or techniques and general tools emphasized in the course material, while Research Areas are aligned with the activities of the various research groups in the department.

Applicants may enter the PhD program via one of two routes: 1) following completion of an appropriate master’s degree or 2) direct entry following completion of a bachelor’s degree.

 

PhD Program

Minimum Admission Requirements

  • Applicants are admitted under the General Regulations of the School of Graduate Studies. Applicants must also satisfy the Department of Computer Science's additional admission requirements stated below.

  • Successful completion of an appropriate master's degree with a standing equivalent to at least a University of Toronto B+. Preference is given to applicants who have studied computer science or a closely related discipline.

  • Applicants whose primary language is not English and who graduated from a university where the language of instruction is not English must achieve a Test of English as a Foreign Language (TOEFL) score of at least 580 on the paper-based test and 4 on the Test of Written English (TWE); 93/120 on the Internet-based test and 22/30 on the writing and speaking sections.

Program Requirements

  • Coursework. Students must complete 2.0 full-course equivalents (FCEs) and a thesis.

  • The courses must satisfy breadth in four different Research Areas of Computer Science to ensure a broad and well-balanced knowledge of computer science.

  • Students must meet the department's timeline for satisfactory progress as outlined in the PhD handbook. Visit the departmental website

  • A meeting of the PhD supervisory committee must be held by the 16th month of the PhD program. This is typically the initial meeting with the supervisory committee and is referred to as the qualifying oral examination. After the qualifying oral, the student's PhD supervisory committee must meet at least once annually. The student must have their thesis topic approved at a PhD supervisory committee meeting within the time frame for achieving candidacy. The departmental thesis defense must be passed before the SGS Final Oral Examination can be scheduled.

Program Length

4 years

Time Limit

6 years

 

PhD Program (Direct-Entry)

Minimum Admission Requirements

  • Applicants are admitted under the General Regulations of the School of Graduate Studies. Applicants must also satisfy the Department of Computer Science's additional admission requirements stated below.

  • In exceptional circumstances, applicants may be admitted to this program directly from a bachelor's degree with a standing equivalent to at least a University of Toronto A-. Preference is given to applicants who have studied computer science or a closely related discipline.

  • Applicants whose primary language is not English and who graduated from a university where the language of instruction is not English must achieve a Test of English as a Foreign Language (TOEFL) score of at least 580 on the paper-based test and 4 on the Test of Written English (TWE); 93/120 on the Internet-based test and 22/30 on the writing and speaking sections.

Program Requirements

  • Coursework. Students must complete 4.0 full-course equivalents (FCEs) and a thesis.

  • The courses must satisfy breadth in four different Research Areas of Computer Science to ensure a broad and well-balanced knowledge of computer science.

  • Students must meet the department's timeline for satisfactory progress as outlined in the PhD handbook. Visit the departmental website.

  • A meeting of the PhD supervisory committee must be held by the 16th month of the PhD program. This is typically the initial meeting with the supervisory committee and is referred to as the qualifying oral examination. After the qualifying oral, the student's PhD supervisory committee must meet at least once annually. The student must have their thesis topic approved at a PhD supervisory committee meeting within the time frame for achieving candidacy. The departmental thesis defense must be passed before the SGS Final Oral Examination can be scheduled.

Program Length

5 years

Time Limit

7 years

Computer Science: Computer Science MScAC, MSc, PhD Courses

Not all courses are offered every year. Please consult the department for course offerings.

​CSC 2104H
​Formal Met​hods of Program Design
​CSC 2107H
​Compilers and Interpreters
​​​CSC 2125H
Algorithmic Program Verification​
​CSC 2130H
Empirical Research Methods in Software Engineering​
​CSC 2203H
​Packet Switch and N​etwork Architectures
​CSC 2206H
Computer Systems Modelling​
​CSC 2208H
Advanced Operating Systems​
​CSC 2209H
Computer Networks​
​CSC 2221H
Introduction to Distributed Computing​
​CSC 2226H
Topics in Verification​
​CSC 2227H
Topics in the Design and Implementation of Operating Systems​
​CSC 2228H
Topics in Mobile and Pervasive Computing​
​CSC 2229H
Topics in Computer Networks​
​CSC 2231H
​Topics in Computer Systems
​CSC 2232H
Topics in Computer System Performance and Reliability​
​CSC 2233H
​Topics in Storage Systems​
​CSC 2302H
​Num​erical Solution of Initial Value Problems for Ordinary Differential Equations
​CSC 2305H
Numerical Methods for Optimization Problems​
​CSC 2306H
High Performance Scientific Computing​
​​CSC 2310H
Computational Methods for Partial Differential Equations​
​CSC 2321H
Matrix Calculations​
​CSC 2322H
Boundary Problems for Ordinary Differential Equations​
​CSC 2326H
Topics in Numerical Analysis​
​CSC 2401H
Introduction to Computational Comple​xity​
​CSC 2404H
Computability and Logic​
​CSC 2405H
Automata Theory​
CSC 2410H Intro​duction to Graph Theory​
CSC 2414H Topics in Applied Discrete Mathematics
​CSC 2415H
Advanced Topics in Distributed Computing​
​CSC 2416H
Machine Learning Theory​
​CSC 2417H Algorithms for Genome Sequence Analysis
CSC 2419H Topic​s in Cryptography​
CSC 2420H Algorithm Design, Analysis, and Theory
CSC 2421H Algebraic and Combinatorial Techniques in Complexity Theory
​CSC 2426H
Fundamentals of Cryptography​
CSC 2427H Topics in Graph Theory​
​CSC 2429H
Topics in the Theory of Computation​
​CSC 2431H Topics in Computational Molecular Biology
​CSC 2501H
Computational L​inguistics​
​CSC 2502H
Knowledge Representation and Reasoning​
​CSC 2503H
​Foundations of Computer Vision
CSC 2504H Comput​er Graphics​
​CSC 2506H
​Probabilistic Learning and Reasoning
CSC 2508H Advanced Management Systems
CSC 2510H Topics in Information Systems
​CSC 2511H
​Natural Language Computing
​CSC 2512H
​Constraint Satisfaction Problems
CSC 2514H Human-Computer Interaction
​CSC 2515H
Introduction to Machine Learning​
​​CSC 2518H
​Spoken Language Processing
​CSC 2519H
​Natural Language Semantics
CSC 2521H Topics in Computer Graphics​
​CSC 2522H Advanced Image Synthesis​
​CSC 2523H
Object Modelling and Recognition​
CSC 2524H Topics in Interactive Computing​
CSC 2525H Research Topics in Database Management​
CSC 2526H HCI: Topics in Ubiquitous Computing
CSC 2527H The Business of Software​
​CSC 2528H
​Advanced Computational Linguistics
CSC 2529H Computer Animation
​CSC 2530H
​Computer Vision for Advanced Digital Photography
CSC 2531H Advanced Topics in Data Management Systems​
​CSC 2532H
​Dynamical Systems and Artificial Intelligence
​​CSC 2533H
Foundations of Knowledge Representation​
​CSC 2534H
​Decision Making Under Uncertainty
​CSC 2535H
​Advanced Machine Learning
​CSC 2539H
​Topics in Computer Vision
​​​​CSC 2541H
Topics in Machine Learning​
​CSC 2542H
​Topics in Knowledge Representation and Reasoning​
CSC 2546H Computational Neuroscience
CSC 2547H Current Algorithms and Techniques in Machine Learning
CSC 2548H Machine Learning in Computer Vision
CSC 2600H Topics in Computer Science
CSC 2601H Topics in Analysis and Computation in Discrete Models​
CSC 2602H Topics in Analysis and Computation in Continuous Models​
CSC 2603H Topics in Building Software and Hardware Artifacts​
CSC 2604H Topics in Human-Centred and Interdisciplinary Computing​
CSC 2699H Special Reading Course in Computer Science​
​CSC 2701H​
​Communication for Computer Scientists
​CSC 2702H
Technical Entrepreneurship​
​CSC 2703H
MScAC Internship​
​​​CSC 2720H
Systems Thinking for Global Problems​
CSC 4000Y MSc Re​​search Project in Computer Science​