Computer Science Intro

Faculty List
  • R. Abou Assi, M.Sc., Ph.D. (Beirut), CLTA Assistant Professor, Teaching Stream
  • A. Anderson, B.Eng. (McGill), M.Sc., Ph.D. (Stanford), Assistant Professor
  • A. Bretscher, B.Sc., M.Sc. (Queen's), Ph.D. (Toronto), Associate Professor, Teaching Stream
  • N. Cheng, B.Sc. (Toronto), Associate Professor, Teaching Stream
  • W.H. Enright, B.Sc. (U.B.C.), M.Sc., Ph.D. (Toronto), Professor Emeritus
  • F. Estrada, B.Eng. (ITESM, Mex.), M.Sc., Ph.D. (Toronto), Professor, Teaching Stream
  • D.J. Fleet, B.Sc. (Queen's), M.Sc., Ph.D. (Toronto), Professor
  • P. Gawde, B.Sc. (Mumbai), M.Sc., Ph.D. (Kent), CLTA Assistant Professor, Teaching Stream 
  • V. Hadzilacos, B.S.E. (Princeton), Ph.D. (Harvard), Professor
  • B. Harrington, Hon. B.Sc. (Toronto), M.Sc., D.Phil. (Oxford), Professor, Teaching Stream
  • G. Hirst, B.A., B.Sc. (Monash), M.Sc. (A.N.U., U.B.C.), Ph.D. (Brown), Professor Emeritus
  • I. Huang, B.Eng. (Beijing), M.ASc., M.Sc. (Regina), Ph.D. (Waterloo), Assistant Professor, Teaching Stream
  • N. Koudas, B.Sc. (Patras), M.Sc. (Maryland), Ph.D. (Toronto), Professor
  • M. Molloy, B.Math, M.Math (Waterloo), Ph.D. (Carnegie Mellon), Professor
  • R. Pancer, B.Sc., M.Sc., Ph.D. (Toronto), Associate Professor, Teaching Stream
  • G. Pekhimenko, B.Sc. (Taurida), M.Sc., (Toronto), Ph.D. (Carnegie Mellon), Associate Professor
  • M. Ponce, B.Sc., M.Sc. (UdelaR, Uruguay), Ph.D. (RIT), Assistant Professor, Teaching Stream 
  • A. Rosselet, B.Sc. (NCSU), M.Sc., Ph.D. (Toronto), Associate Professor, Teaching Stream Emeritus
  • T. Sans, B.Sc. (Paul Sabatier), M.Sc. (Supaero), Ph.D. (Telecom-Bretagne), Associate Professor, Teaching Stream
  • B. Schroeder, M.Sc. (Saarbrucken), Ph.D. (Carnegie Mellon), Professor
  • A. Tafliovich, Hon. B.Sc., M.Sc., Ph.D. (Toronto), Professor, Teaching Stream
  • R. Tell, B.A. (Tel Aviv), B.Sc. (OpenU), M.Sc., Ph.D. (Weizmann), Assistant Professor
  • N. Vijaykumar, B.E. (PES), M.Sc., Ph.D. (Carnegie Mellon), Assistant Professor
  • Q. Zhang, B.E. (Harbin), Ph.D. (Pennsylvania), Assistant Professor

Associate Chair: A. Tafliovich (416-287-7410)

Computer Science is the study of the use of computers to process information. The form of this information may vary widely, from the business person's records or the scientist's experimental results to the linguist's texts. One of the fundamental concepts in Computer Science is the algorithm - a list of instructions that specify the steps required to solve a problem. Computer Science is concerned with producing correct, efficient, and maintainable algorithms for a wide variety of applications. Closely related is the development of tools to foster these goals: programming languages for expressing algorithms; operating systems to manage the resources of a computer; and various mathematical and statistical techniques to study the correctness and efficiency of algorithms.

Theoretical computer science is concerned with the inherent difficulty of problems that can make them intractable by computers. Numerical analysis, data management systems, computer graphics, and artificial intelligence are concerned with the applications of computers to specific problem areas.

Limited Enrolment

Because of pressures of demand for places, it has been necessary to place enrolment limits on most CSC courses and on admission to the Specialist, Major, and Minor programs. Information on how to apply for admission to a program is given below.

Note: Admission to CSC Courses
CSC courses are open to all students who meet the pre-requisites. Non-CSC program students will be permitted to take CSC courses as required for their programs. Otherwise non-CSC program students who wish to take B-, C-, or D-level courses must meet additional cumulative grade point average (CGPA) requirements:

  • A student who is not in a CSC program and does not have a CGPA of at least 3.5 may not take any B-level CSC course, with the exception of CSCB20H3.
  • A student who is not in a CSC program and does not have a CGPA of at least 3.5 may not take any C- or D-level CSC course.
  • When a B-, C-, or D-level CSC course approaches its capacity, CSC program students will be given preference for further enrollment over non-CSC program students.
  • Students admitted to the Major or Specialist programs in Computer Science at any point after the first year will be subject to retroactive program tuition fees.

Program Combination Restrictions in Computer Science

The Specialist/Specialist Co-op, Major/Major Co-op, and Minor programs in Computer Science cannot be combined.

Experiential Learning and Outreach

For a community-based experiential learning opportunity in your academic field of interest, consider the course CTLB03H3, which can be found in the Teaching and Learning section of the Calendar.