preload

Summaries

On this site you can find summaries I have been writing during my studies at the ETH in Zurich. They are all licensed as follows:

Creative Commons - Attribution-Share Alike 3.0 Unported

Master Programme

Cryptographic Protocols

Taught by professor Ueli Maurer and Dr. Martin Hirt, FS2011. Written in English.

This summary covers most topics of this course; in particular zero-knowledge protocols, bit commitments, multiparty computation protocols, broadcast and consensus, and voting. Not heavily proof-read.

Algorithmic Game Theory

Taught by professor P. Widmayer and Dr. Matúš Mihalák, HS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Concepts of Object-Oriented Programming

Taught by professor P. Müller, HS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Computational Intelligence Lab

Taught by professor J. M. Buhmann, FS2011. Written in English.

Summary of the interfocus course Computational Intelligence Lab: Dimension reduction, principle component analysis (PCA), singular value decomposition (SVD), clustering, k-means, sampling, role mining and role-based access control, sparse coding, and image inpainting. Not heavily proof-read.

Concepts of Concurrent Computation

Taught by professor B. Meyer and Dr. S. Nanz, FS2011. Written in English.

Summary of the elective course Concepts of Concurrent Computation: Basic concurrency definitions, linear temporal logic, synchronization algorithms, semaphores, monitors, SCOOP, concurrent languages, lock-free approaches, and calculus of communicating systems (CCS). Not heavily proof-read.

Compulsory Major Courses (Bachelor Programme)

Algorithms, Probability and Computing

Taught by professors E. Welzl, T. Holenstein, U. Maurer, A. Steger, and P. Widmayer, HS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Changelog

  • • 2011-02-08: Minor errors and typos.

Information Security

Taught by professor U. Maurer and professor D. Basin, FS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Changelog

  • • 2010-08-20: Small improvements, corrected definition of safety properties, typos.

Software Architecture

Taught by professor B. Meyer, FS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Changelog

  • • 2011-06-30: Typos.
  • • 2010-06-01: Typos.
  • • 2010-05-31: Added several small sections (difference between strategy pattern and bridge pattern, difference between builder and abstract factory, specification coverage, and mutation testing) and fixed a few typos.

Compulsory Courses 4. Semester

Operating Systems and Networks

Taught by professor T. Roscoe and Professor G. Alonso, FS2010. Written in English.

This summary covers most topics of this course. Not heavily proof-read.

Changelog

  • • 2011-06-30: Typos.
  • • 2010-06-09: Typos and other small fixes.

Data Modelling and Databases

Taught by professor D. Kossmann, FS2010. Written in German.

This summary covers most topics of this course, such as data modelling with ER, relational model, relational algebra, normal forms, SQL, data integrity, transaction management and security. Not heavily proof-read.

Changelog

  • • 2010-08-05: Added a chapter on data storage and query processing.

Compulsory Courses 3. Semester

Theory of Computing

Taught by professor J. Hromkovic and professor E. Welzl, HS2009. Written in German.

Summary of the introduction to the theory of computing: Formal languages, Kolmogorov complexity, formal grammars, nondeterministic pushdown automata, turing machines and computability.

Numerical Methods

Taught by professor R. Hiptmair, HS2009. Written in English.

This summary covers all topics of this course, including all definitions, lemmas and theorems. Also, there are alot of explanations and remarks.

Probability and Statistics

Taught by professor P. L. Bühlmann, HS2009. Written in German.

Summary for the final exam (print two pages onto one side to meet the number of sites restriction). Contains all important definitions, formulas, approaches and an appendix.

Computer Architecture and Systems Programming

Taught by professor T. Gross and professor S. Freudenberger, HS2009. Written in English.

This summary covers all topics of this course. Not heavily proof-read.

Changelog

  • • 2011-02-01: Fix invalid definition of
    TAddw
    on page 7, section 1.2.4.

First Year

Analysis I & II

Taught by professor M. Struwe, HS2008 and FS2009. Written in German.

Besides all topics of the course, this summary also contains an appendix with integral and differentialtables, as well as other useful formulas. The summary has been carefully proof-read, and therefore should contain only very few mistakes.

Changelog

  • • 2010-10-15: Fix typos and minor errors.

Data Structures and Algorithms

Taught by professor P. Widmayer, FS2009. Written in German.

Selected topics have been summarized in individual PDF files, whereby a big part of the course material should be covered. Topics include: Trees (B-, interval-, segment-, splay- and rangetrees), Fibonacci heaps, graph algorithms, hashing and sorting. I tried to summarize the topics understandable while revealing relationships with related issues. The summaries have been hardly proof-read, and therefore mistakes are possible.

Changelog

  • • 2010-10-15: Invalid runtime for some algorihms (affected files: sorting.pdf).
  • • 2010-06-22: Quadratic probing is defined as s(k,j)=floor(j/2)·(-1)j rather then s(k,j)=floor(j/2)·(-1)n (affected files: hashing.pdf).
  • • 2010-05-26: In a min-heap, the smallest element is always at the root (affected files: fibonacci-heaps.pdf).

Introduction to Programming

Taught by professor B. Meyer, HS2008. Written in English.

This summary covers all topics of this course. Not heavily proof-read.

Changelog

  • • 2010-10-15: Fix typos and minor errors.

Parallel Programming

Taught by professor T. Gross, FS2009. Written in English.

This summary covers all topics of this course. Not heavily proof-read.

Changelog

  • • 2010-10-15: Fix typos and minor errors.
  • • 2010-07-03: Minor improvements (differentiate between try-statement's and try-block's)
  • • 2010-02-08: More typos.
  • • 2010-01-30: Small typos.

Design of Digital Circuits

Taught by professor D. Kröning, FS2009. Written in German.

This summary is intended as exam aid, thus covering topics that are relevant to the exam. Most parts are written as cheet sheets, containing only the most important information.