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 they work and sketch how they can be implemented. ...
COM-501: Advanced cryptographyThis course reviews some failure cases in public-key cryptography. It introduces some cryptanalysis techniques. It also presents fundamentals in cryptography such as interactive proofs. Finally, it presents some techniques to validate the security of crypt ...
CS-438: Decentralized systems engineeringA decentralized system is one that works when no single party is in charge or fully trusted. This course teaches decentralized systems principles while guiding students through the engineering of their own decentralized system featuring messaging, file sha ...
MATH-261: Discrete optimizationThis course is an introduction to linear and discrete optimization.
Warning: This is a mathematics course! While much of the course will be algorithmic in nature, you will still need to be able to prove theorems. ...
COM-301: Computer security and privacyThis is an introductory course to computer security and privacy. Its goal is to provide students with means to reason about security and privacy problems, and provide them with tools to confront them. ...
CS-523: Advanced topics on privacy enhancing technologiesThis advanced course will provide students with the knowledge to tackle the design of privacy-preserving ICT systems. Students will learn about existing technologies to prect privacy, and how to evaluate the protection they provide. ...
EE-552: Media securityThis course provides attendees with theoretical and practical issues in media security. In addition to lectures by the professor, the course includes laboratory sessions, a mini-project, and a mid-term exam. ...
ENV-471: Environmental economicsIntroduction to economic analysis applied to environmental issues: all the necessary basic concepts, including cost-benefit analysis, for environmental policy making and its instruments (examples: climate, waste, mobility). Introduction to financial calcul ...
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. ...
CS-119(c): Information, calcul, communicationL'objectif de ce cours est d'introduire les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'Informatique et de développer une première compétence en programmation (langage C++). ...
CS-101: Advanced information, computation, communication IDiscrete mathematics is a discipline with applications to almost all areas of study. It provides a set of indispensable tools to computer science in particular. This course reviews (familiar) topics as diverse as mathematical reasoning, combinatorics, disc ...
COM-490: Large-scale data science for real-world dataThis hands-on course covers tools and methods used by data scientists, from researching solutions to scaling prototypes on Spark clusters. Students engage with the full data engineering and data science pipeline, from data acquisition to extracting insight ...
EE-570: Power system restructuring and deregulationThis course presents different types and mechanisms of electricity markets. It addresses in particular their impacts on power/distribution systems operation and consequently the appropriate strategies capable to ensure a secure and reliable functioning. ...
ENG-410: Energy supply, economics and transitionThis course examines energy systems from various angles: available resources, how they can be combined or substituted, their private and social costs, whether they can meet the energy demand, and how the transition to a renewable energy system can be foste ...
EE-611: Linear system theoryThe course covers control theory and design for linear time-invariant systems : (i) Mathematical descriptions of systems (ii) Multivariables realizations; (iii) Stability ; (iv) Controllability and Observability; (v) Minimal realizations and coprime fracti ...
CS-470: Advanced computer architectureThis course explores techniques for exploiting instruction-level parallelism both statically and dynamically. It also addresses the generation of hardware accelerators from programming languages and investigates security issues related to microarchitectura ...
COM-402: Information security and privacyThis course provides an overview of information security and privacy topics. It introduces students to the knowledge and tools they will need to deal with the security/privacy challenges they are likely to encounter in today's world. The tools are illustra ...
BIO-455: Introduction to law and ethicsThe aim of this course is to introduce students to the basic legal and ethical concepts relevant to research in the life sciences and its translational application, and to provide them with the essential tools to identify legal and ethical issues in their ...