CS-308: Introduction to quantum computationThe course introduces the paradigm of quantum computating in an axiomatic way. We introduce the notions of quantum bits, gates, and circuits. We introduce themost important quantum algorithms. We also touch upon error-correcting codes. This course is indep ...
MATH-101(g): Analyse IÉtudier les concepts fondamentaux d'analyse et le calcul différentiel et intégral des fonctions réelles d'une variable. ...
MATH-302: Analyse fonctionnelle IConcepts de base de l'analyse fonctionnelle linéaire: opérateurs bornés, opérateurs compacts, théorie spectrale pour les opérateurs symétriques et compacts, le théorème de Hahn-Banach, les théorèmes de l'application ouverte et du graphe fermé. ...
MATH-101(c): Analyse IÉtudier les concepts fondamentaux d'analyse et le calcul différentiel et intégral des fonctions réelles d'une variable. ...
MATH-410: Riemann surfacesThis course is an introduction to the theory of Riemann surfaces. Riemann surfaces naturally appear is mathematics in many different ways: as a result of analytic continuation, as quotients of complex domains under discontinuous group actions, as algebraic ...
CS-420: Advanced compiler constructionStudents learn several implementation techniques for modern functional and object-oriented programming languages. They put some of them into practice by developing key parts of a compiler and run time system for a simple functional programming language. ...
CS-119(h): Information, calcul, communicationL'objectif de ce cours est d'initier les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'informatique et des communications et de développer une première compétence en programmation avec le langage Python. ...
DH-401: Digital musicologyThis course will introduce students to the central topics in digital musicology and core theoretical approaches and methods. In the practical part, students will carry out a practical project. ...
ChE-201: Introduction to chemical engineeringIntroduction to Chemical Engineering is an introductory course that provides a basic overview of the chemical engineering field. It addresses the formulation and solution of material and energy balances by using the physical/chemical properties of material ...
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
fundamental software construction concepts (reusability, abstr ...
PHYS-423: Plasma IFollowing an introduction of the main plasma properties, the fundamental concepts of the fluid and kinetic theory of plasmas are introduced. Applications concerning laboratory, space, and astrophysical plasmas are discussed throughout the course. ...
ME-372: Méthode des éléments finisL'étudiant acquiert une initiation théorique à la méthode des éléments finis qui constitue la technique la plus courante pour la résolution de problèmes elliptiques en mécanique. Il apprend à appliquer cette méthode à des cas simples et à l'exploiter pour ...
MATH-101(f): Analyse IÉtudier les concepts fondamentaux d'analyse et le calcul différentiel et intégral des fonctions réelles d'une variable. ...
MATH-351: Advanced numerical analysis IIThe student will learn state-of-the-art algorithms for solving differential equations. The analysis and implementation of these algorithms will be discussed in some detail. ...
CS-250: Algorithms IThe students learn the theory and practice of basic concepts and techniques in algorithms. The course covers mathematical induction, techniques for analyzing algorithms, elementary data structures, major algorithmic paradigms such as dynamic programming, s ...
ME-213: Programmation pour ingénieurMettre en pratique les bases de la programmation vues au semestre précédent. Développer un logiciel structuré. Méthode de debug d'un logiciel. Introduction à la programmation scientifique. Introduction à l'instrumentation virtuelle. ...
CS-320: Computer language processingWe teach the fundamental aspects of analyzing and interpreting computer languages, including the techniques to build compilers. You will build a working compiler from an elegant functional language into machine code using a popular backend called LLVM (htt ...