An examination of core topics in cognitive science building on introductions in COG250Y1. Typical topics include: computational models of cognition and learning, natural language processing, computer intelligence.
An examination of core topics in cognitive science building on introductions in COG250Y1. Typical topics include: computational models of cognition and learning, natural language processing, computer intelligence.
An examination of core topics in cognitive science building on introductions in COG250Y1. Typical topics include: language and cognition; language acquisition; theories of meaning; pragmatics.
Advanced treatment of cognitive science topics, including language processes and language representation, productions and comprehension, language acquisition, and language and theory of mind, pragmatics, reference and context.
A workshop course (with a literature component) in writing fiction and poetry. Designed for those with a serious ambition to be writers as evinced in work they are already doing. Does not offer instruction for beginning writers. Presupposes perfect and sophisticated written language skills. The Literature component emphasizes multicultural dimensions of contemporary writing in English. Admission by application.
A workshop course in writing poetry. Designed for those with a serious ambition to be writers as evinced in work they are already doing. Does not offer instruction for beginning writers. Presupposes perfect and sophisticated written language skills. Admission by application.
Programming in a language such as Python. Elementary data types, lists, maps. Program structure: control flow, functions, classes, objects, methods. Algorithms and problem solving. Searching, sorting, and complexity. Unit testing. Floating-point numbers and numerical computation. No prior programming experience required.
NOTE: You may take CSC148H1 after CSC108H1. You may not take CSC108H1 in the same term as, or after taking, any of CSC110Y1/ CSC111H1/ CSC120H1/ CSC148H1.
An introduction to the field of computer science combining the tools and techniques of programming (using the Python programming language) with rigorous mathematical analysis and reasoning. Topics include: data representations; program control flow (conditionals, loops, exceptions, functions); mathematical logic and formal proof; representation of floating-point numbers and numerical computation; algorithms and running time analysis; software engineering principles (formal specification and design, testing and verification). Prior programming experience is not required to succeed in this course.
This course is restricted to students in the first year Computer Science admission stream, and is only offered in the Fall term. Other students planning to pursue studies in computer science should enrol in CSC108H1, CSC148H1, and CSC165H1/ CSC240H1.
An introduction to software design and development concepts, methods, and tools using a statically-typed object-oriented programming language such as Java. Topics from: version control, unit testing, refactoring, object-oriented design and development, design patterns, advanced IDE usage, regular expressions, and reflection.
Software techniques in a Unix-style environment, using scripting languages and a machine-oriented programming language (typically C). What goes on in the operating system when programs are executed. Core topics: creating and using software tools, pipes and filters, file processing, shell programming, processes, system calls, signals, basic network programming.
The application of logic and proof techniques to Computer Science. Mathematical induction; correctness proofs for iterative and recursive algorithms; recurrence equations and their solutions; introduction to automata and formal languages. This course assumes university-level experience with proof techniques and algorithmic complexity as provided by CSC165H1. Very strong students who already have this experience (e.g. successful completion of MAT157Y1) may consult the undergraduate office about proceeding directly into CSC236H1 or CSC240H1.
The rigorous application of logic and proof techniques to Computer Science. Propositional and predicate logic; mathematical induction and other basic proof techniques; correctness proofs for iterative and recursive algorithms; recurrence equations and their solutions (including the Master Theorem); introduction to automata and formal languages. This course covers the same topics as CSC236H1, together with selected material from CSC165H1, but at a faster pace, in greater depth and with more rigour, and with more challenging assignments. Greater emphasis will be placed on proofs and theoretical analysis. Certain topics briefly mentioned in CSC165H1 or CSC236H1 may be covered in more detail in this course, and some additional topics may also be covered.
Computer structures, machine languages, instruction execution, addressing techniques, and digital representation of data. Computer system organization, memory storage devices, and microprogramming. Block diagram circuit realizations of memory, control and arithmetic functions. There are a number of laboratory periods in which students conduct experiments with digital logic circuits.
Programming principles common in modern languages; details of commonly used paradigms. The structure and meaning of code. Scope, control flow, datatypes, and parameter passing. Two non-procedural, non-object-oriented programming paradigms: functional programming (illustrated by languages such as Lisp/Scheme, ML or Haskell) and logic programming (typically illustrated in Prolog).
Introduction to database management systems. The relational data model. Relational algebra. Querying and updating databases: the query language SQL. Application programming with SQL. Integrity constraints, normal forms, and database design. Elements of database system technology: query processing, transaction management.
Introduction to techniques involving natural language processing and speech in applications such as information retrieval, speech recognition and synthesis, machine translation, summarization, and dialogue. N-grams, corpus analysis, neural methods, and information theory. Python and other software.
Regular, deterministic, context free, context sensitive, and recursively enumerable languages via generative grammars and corresponding automata (finite state machines, push down machines, and Turing machines). Topics include complexity bounds for recognition, language decision problems and operations on languages. Ordinarily offered in years alternating with CSC438H1.
Computational linguistics and the processing of language by computer. Topics include: context-free grammars; chart parsing, statistical parsing; semantics and semantic interpretation; ambiguity resolution techniques; reference resolution. Emphasis on statistical learning methods for lexical, syntactic, and semantic knowledge.
The structure of compilers, Programming language processing. Scanning based on regular expressions, Parsing using context free grammars, Semantic analysis (type and usage checking), Compiler dictionaries and tables. Runtime organization and storage allocation, code generation, optimization. Use of modern compiler building tools. Course project involves building a complete compiler.
Effective communication is a pivotal skill when public speaking, persuasive discourse, and personal presence are key to success. In this introductory course, students will strengthen and develop confidence in a supportive, playful, highly participatory and collaborative environment. This course is suited to students in professional programs or for those who would like to learn a full range of communication skills. Exploration of language structure, argumentation, grounding, alignment, vocal resonance, clarity and effective listening will be part of each class with an emphasis on enhancing individual potential.
Intended for students with no background in Mandarin or any Chinese dialect, this course provides an introduction to modern standard Chinese as a foreign/second language. The course consists of mandatory lectures and tutorials. Students study a minimum of 450 Chinese characters. Students must go through screening process conducted by the Department. See www.eas.utoronto.ca/languages/chinese for details.
This course is designed for students who understand elementary Mandarin or any Chinese dialect. The course consists of mandatory lectures and tutorials. Students will learn 600 characters. Students must go through placement process conducted by the Department. See www.eas.utoronto.ca/languages/chinese for details.
This course is designed to help students build communication skills in the Korean language. Through an integration of listening, speaking, reading and writing, it aims to provide a solid foundation in beginning-level Korean. This course assumes that students do not have any prior knowledge of Korean. Students must go through screening process conducted by the Department. See https://www.eas.utoronto.ca/languages/korean for details. Not eligible for CR/NCR option.
This course is for students with no or a very limited background in Japanese. Students must go through screening process conducted by the Department. See www.eas.utoronto.ca/languages/japanese/ for details. Not eligible for CR/NCR option.
This course is equivalent to the second half of EAS120Y1 for students with some background in the Japanese language. Students must go through placement process conducted by the Department. See www.eas.utoronto.ca/languages/japanese/ for details. Not eligible for CR/NCR option.
This course explores the roles that consumption and taste play in personal and public lives in East Asia. Course focus may include the cultural histories of food, fashion, tourism, sports, or forms of audio and visual media. (No prior knowledge of East Asian languages or cultures is necessary.) Restricted to first-year students. Not eligible for CR/NCR option.
The term "world-making” is often used nowadays to refer to transmedia storytelling, or the creation of story-worlds across serial narratives in a range of entertainment media, such as novels, games, film series/franchises, television shows, comics, and webtoons. This course looks at the ways that media producers and fans, alike, engage with media worlds. More importantly, the course situates these media worlds within a broader conception of "world-making," namely, the geopolitical and economic configuration of modern East Asia. (No prior knowledge of East Asian languages or cultures is necessary.) Restricted to first-year students. Not eligible for CR/NCR option.
What can we learn about East Asian history and culture through its rich tradition of narratives featuring the martial arts? This course introduces short stories and novels dealing with combat and warfare from nearly two thousand years of East Asian literature, exploring issues such as self and society, gender, power, the body, and identity. All texts will be provided in translation, and no prior knowledge of any East Asian language or culture is necessary. The texts explored will vary year to year, depending on the instructor. Restricted to first-year students. Not eligible for CR/NCR option.
This seminar explores different visions and methods of art (textual and visual) as a way of thinking about living, knowing, and willing in Chinese culture. Examination of various theoretical texts on arts and literature, as well as works of art themselves, will provide students with knowledge and research skills on arts in Chinese culture, and an expanded sense of Chinese intellectual history. Questions explored in the course will include: How should we understand the concept of Chinese art beyond representation? How did Chinese literati pursue a sense of beauty through their poetry and painting? How is beauty apprehended in natural and constructed landscapes? What are the political and social functions of art education in Chinese culture? How do Chinese artists fit into a global cultural context? (No prior knowledge of East Asian languages or cultures is necessary.) Restricted to first-year students. Not eligible for CR/NCR option.
This course is a continuation of EAS100Y1. Students learn major grammatical structures which are not introduced in the first year and expand their vocabulary. Students who do not meet the prerequisite must go through a placement process conducted by the Department. See www.eas.utoronto.ca/languages/chinese for details.
This course is a continuation of EAS101Y1. It focuses on development of students’ listening, speaking, reading, and writing skills at an intermediate low level. Students who do not meet the prerequisite must go through placement process conducted by the Department. See www.eas.utoronto.ca/languages/chinese for details.