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
CS-251: Theory of computationThis course constitutes an introduction to theory of computation. It discusses the basic theoretical models of computing (finite automata, Turing machine), as well as, provides a solid and mathematica
CS-459: Foundations of probabilistic proofsProbabilistic proof systems (eg PCPs and IPs) have had a tremendous impact on theoretical computer science, as well as on real-world secure systems. They underlie delegation of computation protocols a
CS-524: Computational complexityIn computational complexity we study the computational resources needed to solve problems and understand the relation between different types of computation.
This course advances the students knowle
CS-433: Machine learningMachine learning methods are becoming increasingly central in many sciences and applications. In this course, fundamental principles and methods of machine learning will be introduced, analyzed and pr
CS-448: Sublinear algorithms for big data analysisIn this course we will define rigorous mathematical models for computing on large datasets, cover main algorithmic techniques that have been developed for sublinear (e.g. faster than linear time) data
CS-630: Fault-tolerant quantum computingThe course explains how to execute scalable algorithms on fault-tolerant quantum computers. It describes error correction used to build reliable logical operations from noisy physical operations, and
PHYS-541: Quantum computingThis course introduces quantum computing, starting with quantum mechanics and information theory. It covers the quantum circuit model, universal gates, foundational quantum algorithms, noise, quantum
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 pr
DH-406: Machine learning for DHThis course aims to introduce the basic principles of machine learning in the context of the digital humanities. We will cover both supervised and unsupervised learning techniques, and study and imple
PHYS-641: Quantum ComputingAfter introducing the foundations of classical and quantum information theory, and quantum measurement, the course will address the theory and practice of digital quantum computing, covering fundament
MATH-644: Quantum AlgorithmsThe course is given by Prof. Johannes Buchmann and covers fundamental quantum algorithms and the theory behind them. It is rigorous from a mathematics, physics, and computer science perspective and re
CS-602: Foundation of probabilistic proofsProbabilistic proof system (eg PCPs and IPs) have had a tremendous impact on the theoretical computer science, and have also found practical uses. They underlie delegation of computation protocols and