CS-214: Software constructionLearn how to design and implement reliable, maintainable, and efficient software using a mix of programming skills (declarative style, higher-order functions, inductive types, parallelism) and
fundam
ChE-403: Heterogeneous reaction engineeringThe theoretical background and practical aspects of heterogeneous reactions including the basic knowledge of heterogeneous catalysis are introduced. The fundamentals are given to allow the design of m
PHYS-325: Introduction to plasma physicsIntroduction à la physique des plasmas destinée à donner une vue globale des propriétés essentielles et uniques d'un plasma et à présenter les approches couramment utilisées pour modéliser son comport
CS-308: Introduction to quantum computationThe course introduces the paradigm of quantum computation in an axiomatic way. We introduce the notion of quantum bit, gates, circuits and we treat the most important quantum algorithms. We also touch
MSE-101(a): Materials:from chemistry to propertiesCe cours permet l'acquisition des notions essentielles relatives à la structure de la matière, aux équilibres et à la réactivité chimique en liaison avec les propriétés mécaniques, thermiques, électri
COM-401: Cryptography and securityThis course introduces the basics of cryptography. We review several types of cryptographic primitives, when it is safe to use them and how to select the appropriate security parameters. We detail how
MATH-467: Probabilistic methods in combinatoricsThe 'probabilistic method' is a fundamental tool in combinatorics. The basic idea is as follows: to prove that an object (for example, graph) with certain properties exists, it suffices to prove that
ENG-209: Data science for engineers with PythonCe cours est divisé en deux partie. La première partie présente le langage Python et les différences notables entre Python et C++ (utilisé dans le cours précédent ICC). La seconde partie est une intro