Suchergebnis: Katalogdaten im Frühjahrssemester 2017

Informatik Bachelor Information
Bachelor-Studium (Studienreglement 2016)
Basisprüfung
Basisprüfungsblock 1
Die Fächer des Blocks 1 werden im Herbstsemester angeboten.
Basisprüfungsblock 2
NummerTitelTypECTSUmfangDozierende
401-0212-16LAnalysis I Information O7 KP4V + 2UÖ. Imamoglu
KurzbeschreibungFunktionen, Grenzwerte, Folgen, Reihen, Potenzreihen, Differential- und Integralrechnung einer Variablen,
LernzielFunktionen, Grenzwerte, Folgen, Reihen, Potenzreihen, Differential- und Integralrechnung einer Variablen,
InhaltFunktionen, Grenzwerte, Folgen, Reihen, Potenzreihen, Differential- und Integralrechnung einer Variablen,
LiteraturMichael Struwe: Analysis für Informatik
Christian Blatter: Ingenieur-analysis
Tom Apostol: Mathematical Analysis
252-0028-00LDesign of Digital Circuits Information O7 KP4V + 2UO. Mutlu, S. Capkun
KurzbeschreibungDie Vorlesung bietet einen Einstieg in das Gebiet der Digitaltechnik. Zunächst wird auf die technische Realisierung von digitalen Schaltungen eingegangen. Eine Einführung in Hardware-Beschreibungssprachen und deren konkrete Anwendung im Entwurfsprozess schliesst sich an.
LernzielDie Vorlesung bietet einen Einstieg in das Gebiet der Digitaltechnik. Zunächst wird auf die technische Realisierung von digitalen Schaltungen eingegangen. Eine Einführung in Hardware-Beschreibungssprachen und deren konkrete Anwendung im Entwurfsprozess schliesst sich an.
InhaltDie Vorlesung bietet einen Einstieg in das Gebiet der Digitaltechnik. Zunächst wird auf die technische Realisierung von digitalen Schaltungen eingegangen. Die sich daraus ergebenden physikalischen Randbedingungen bestimmen massgeblich die vorgestellten Entwurfsmethoden von kombinatorischer und sequentieller Logik. Eine Einführung in Hardware-Beschreibungssprachen und deren konkrete Anwendung im Entwurfsprozess schliesst sich an.
252-0029-00LParallele Programmierung Information O7 KP4V + 2UT. Hoefler, M. Vechev
KurzbeschreibungEinfuehrung in das parallele Programmieren: nicht-deterministische und deterministische Programme, Modelle fuer parallele Programme, Synchronization, Kommunikation und Fairness.
LernzielEinfuehrung in das parallele Programmieren: nicht-deterministische und deterministische Programme, Modelle fuer parallele Programme, Synchronization, Kommunikation und Fairness. Uebungen beschaeftigen sich mit Threads in moderne Programmiersprachen
(Java, C#) und die Ausfuehrung von parallelen Programmen auf
Multi-Prozessor/Multi-Core basierten Systemen.
252-0030-00LAlgorithmen und Wahrscheinlichkeit Information O7 KP4V + 2UA. Steger, E. Welzl
KurzbeschreibungFortsetzung der Vorlesung Algorithmen und Datenstrukturen des ersten Semesters. Es werden klassische Algorithmen aus verschiedenen Anwendungsbereichen vorgestellt. In die diskrete Wahrscheinlichkeitstheorie wird eingeführt und das Konzept randomisierter Algorithmen an verschiedenen Beispielen vorgestellt.
LernzielVerständnis des Entwurfs und der Analyse von Algorithmen. Grundlagen der diskreten Wahrscheinlichkeitstheorie und ihrer Anwendung in der Algorithmik.
Grundlagenfächer
NummerTitelTypECTSUmfangDozierende
252-0064-00LNetworks
Findet dieses Semester nicht statt.
Diese Lerneinheit wird zum ersten Mal im FS18 (nach Studienreglement 2016 Informatik BSc) angeboten.
O7 KP4V + 2Ukeine Angaben
Kurzbeschreibung
Lernziel
401-0614-00LWahrscheinlichkeit und Statistik
Findet dieses Semester nicht statt.
Diese Lerneinheit wird zum ersten Mal im FS18 (nach Studienreglement 2016 Informatik BSc) angeboten.
O5 KP2V + 2Ukeine Angaben
Kurzbeschreibung
Lernziel
Bachelor-Studium (Studienreglement 2008)
2. Semester
NummerTitelTypECTSUmfangDozierende
252-0002-00LDatenstrukturen & Algorithmen Information O7 KP4V + 2UF. Friedrich Wicker
KurzbeschreibungEs werden grundlegende Entwurfsmuster für Algorithmen (z.B. Induktion, divide-and-conquer, backtracking, dynamische Programmierung), klassische algorithmische Probleme (Suchen, Sortieren) und Datenstrukturen (Listen, Hashverfahren, Suchbäume) behandelt. Ausserdem enthält der Kurs eine Einführung in das parallele Programmieren. Das Programmiermodell von C++ wird vertieft behandelt.
LernzielVerständnis des Entwurfs und der Analyse grundlegender Algorithmen und Datenstrukturen. Wissen um die Chancen, Probleme und Grenzen der parallelen und nebenläufigen Programmierung. Vertiefter Einblick in ein modernes Programmiermodell anhand der Prorgammiersprache C++.
InhaltEs werden grundlegende Algorithmen und Datenstrukturen vorgestellt und analysiert. Dazu gehören auf der einen Seite Entwurfsmuster für Algorithmen, wie Induktion, divide-and-conquer, backtracking und dynamische Optimierung, ebenso wie klassische algorithmische Probleme, wie Suchen und Sortieren. Auf der anderen Seite werden Datenstrukturen für verschiedene Zwecke behandelt, darunter verkettete Listen, Hashtabellen, balancierte Suchbäume, verschiedene heaps und union-find-Strukturen. Das Zusammenspiel von Algorithmen und Datenstrukturen wird anhand von Geometrie- und Graphenproblemen illustriert.

Im Teil über parallele Programmierung werden Konzepte der parallelen Architekturen besprochen (Multicore, Vektorisierung, Pipelining). Konzepte und Grundlagen der Parallelisierung werden behandelt (Gesetze von Amdahl und Gustavson, Task- und Datenparallelität, Scheduling). Probleme der Nebenläufigkeit werden diskutiert (Wettlaufsituationen, Speicherordnung). Prozesssynchronisation und -kommunikation in einem System mit geteiltem Speicher werden erklärt (Gegenseitiger Ausschluss, Semaphoren, Mutexe, Monitore). Fortschrittseigenschaften werden analysiert (Deadlock-Freiheit, Starvation-Freiheit, Lock-/Wait-Freiheit). Die erlernten Konzepte werden mit Beispielen zur nebenläufigen und parallelen Programmierung und mit Parallelen Algorithmen untermauert.

Das Programmiermodell von C++ wird vertieft behandelt. Das RAII Prinzip (Resource Allocation is Initialization) wird erklärt, Exception Handling, Funktoren und Lambda Ausdrücke und die generische Programmierung mit Templates sind weitere Beispiele dieses Kapitels. Die Implementation von parallelen und nebenläufigen Algorithmen mit C++ ist auch Teil der Übungen (Threads, Tasks, Mutexes, Condition Variables, Promises und Futures).
LiteraturTh. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen, Spektrum-Verlag, 5. Auflage, Heidelberg, Berlin, Oxford, 2011

Thomas H. Cormen, Charles E. Leiserson, Ronald Rivest, Clifford Stein: Algorithmen - Eine Einführung, Oldenbourg, 2010

Maurice Herlihy, Nir Shavit, The Art of Multiprocessor Programming, Elsevier, 2012.

B. Stroustrup, The C++ Programming Language (4th Edition) Addison-Wesley, 2013.
Voraussetzungen / BesonderesVoraussetzung:
Vorlesung 252-0835-00L Informatik I 252-0835-00L oder äquivalente Kenntnisse in der Programmierung mit C++.
252-2610-00LGrundlagen der Eiffel-Programmierung Information
Nur geeignet für Repetenten der Basisprüfung nach Studienreglement 2008
Z0 KP2GH. Lehner
Kurzbeschreibung
LernzielDie Studierenden
- kennen Eiffel-spezifische Sprachkonzepte und Terminologie
- verstehen die Grundkonzepte der objektorientierten Programmierung anhand der Sprache Eiffel
- können dieses Wissen anwenden, um selbständig algorithmische Aufgaben zu lösen
- können Software-Spezifikationen schreiben mittels Eiffel-Contracts.
InhaltErgänzungangebot zur Vorlesung "Einführung in die Programmierung" vom Herbstsemester 2015 für Studierende im Bachelor-Reglement 08.

Studierende können diese Veranstaltung besuchen, um sich optimal auf die Prüfung der genannten Vorlesung vorzubereiten.
SkriptDas Material und Informationen zu dieser Veranstaltung sind auf der Website Link verfügbar.
Voraussetzungen / Besonderes- Besuch der Vorlesung "Einführung in die Programmierung" vom Herbstsemester 2015
- Studieren nach Bachelor-Reglement 08
402-0038-00LPhysik
Kurs wird letztmals im FS 2017 angeboten.

Nur für Informatik BSc, Studienreglement 2008
O6 KP3V + 2UC. Grab
KurzbeschreibungEinführung in die Physik mit Schwergewicht auf Mechanik, Relativität, Thermodynamik und Elektromagnetismus. Grundlegende Konzepte werden anhand von Demonstrationen, Beispielen und Übungen vermittelt.
LernzielVermittlung einiger Hauptthemen der klassischen und modernen Physik.
InhaltMechanik:
Bewegung, die Newtonschen Axiome, Arbeit und Energie, Schwingungen und Wellen, spezielle Relativitätstheorie.

Thermodynamik: Temperatur, Gase, Wärmestrahlung, Wärmemaschine

Elektromagnetismus:
Elektrostatik, stationäre Ströme, zeitlich veränderliche Felder, Maxwellsche Gleichungen, elektromagnetische Wellen.
Skript"Physik für Informatiker"
Vorlesung gehalten an der ETH Zürich im FS15
Prof. Dr. A.Rubbia
Literatur"Halliday Physik",
Autoren: Halliday & Resnick & Walker
Wiley-VCH Verlag GmbH & Co. KGaA;
2. Auflage
ISBN 978-3-527-40919-8
Voraussetzungen / BesonderesVoraussetzungen: Mathematische Grundlagen, Vektoren, Differential- und Integralrechnung.
4. Semester
Obligatorische Fächer (4. Sem.)
NummerTitelTypECTSUmfangDozierende
252-0058-00LFormal Methods and Functional Programming Information O7 KP4V + 2UD. Basin, P. Müller
KurzbeschreibungIn this course, participants will learn about new ways of specifying, reasoning about, and developing programs and computer systems. The first half will focus on using functional programs to express and reason about computation. The second half presents methods for developing and verifying programs represented as discrete transition systems.
LernzielIn this course, participants will learn about new ways of specifying,
reasoning about, and developing programs and computer systems. Our objective is to help students raise their level of abstraction in modeling and implementing systems.
InhaltThe first part of the course will focus on designing and reasoning
about functional programs. Functional programs are mathematical
expressions that are evaluated and reasoned about much like ordinary
mathematical functions. As a result, these expressions are simple to
analyze and compose to implement large-scale programs. We will cover the mathematical foundations of functional programming, the lambda calculus, as well as higher-order programming, typing, and proofs of correctness.

The second part of the course will focus on deductive and algorithmic validation of programs modeled as transition systems. As an example of deductive verification, students will learn how to formalize the semantics of imperative programming languages and how to use a formal semantics to prove properties of languages and programs. As an example of algorithmic validation, the course will introduce model checking and apply it to programs and program designs.
252-0062-00LOperating Systems and Networks Information O8 KP4V + 3UT. Hoefler, A. Perrig
KurzbeschreibungThis is an introductory course on computer networks and operating
systems, with a particular focus on networking in the Internet and
monolithic operating systems like Linux and Windows. Network and OS
programming at different levels is an integral part of the course.
LernzielThis course is intended as an introduction to both computer networking
and operating systems for computer scientists. Students will get a
comprehensive overview of the key protocols and the general
architecture of the Internet, as one example of more general principles in
network design, and acquire hands-on experience in programming
different aspects of a computer network. In addition, the course
provides a full introduction to modern operating system design, including
memory management, scheduling, I/O, protection, and so on. The
architecture of Unix-like operating systems (such as Linux) is used as
an example of more general principles in OS design.
SkriptThe slides for each lecture will be made available in the web pages of the course, along with additional reference material.
LiteraturThe networking material will be based on the following text book:

Computer Networks (5th Edition)
Andrew S. Tanenbaum, David J. Wetherall
Prentice Hall; 5 edition (October 7, 2010)

In addition, the following textbook provides useful background for the operating systems material in the course:

Modern Operating Systems (3rd Edition)
Andrew S. Tanenbaum
Prentice-Hall, 2007
252-0063-00LData Modelling and Databases Information O7 KP4V + 2UG. Alonso, C. Zhang
KurzbeschreibungData modelling (Entity Relationship), relational data model, relational design theory (normal forms), SQL, database integrity, transactions and advanced database engines
LernzielIntroduction to relational databases and data management. Basics of SQL programming and transaction management.
InhaltThe course covers the basic aspects of the design and implementation of databases and information systems. The courses focuses on relational databases as a starting point but will also cover data management issues beyond databases such as: transactional consistency, replication, data warehousing, other data models, as well as SQL.
LiteraturKemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 7. Auflage, 2009.

Garcia-Molina, Ullman, Widom: Database Systems: The Complete Book. Pearson, 2. Auflage, 2008.
Kompensationsfächer
Als Kompensationsfächer gelten die obligatorischen Fächer der Vertiefung.
Vertiefung
Obligatorische Fächer der Vertiefung
Vertiefung Computer and Software Engineering
NummerTitelTypECTSUmfangDozierende
252-0210-00LCompiler DesignO8 KP4V + 3UZ. Majó
KurzbeschreibungDiese Vorlesung benutzt Compiler als Beispiel für moderne Software Entwicklung. Dazu werden die Kernthemen des Compilerbaus behandelt: Syntax Analyse, Symboltabellen, Code Erzeugung. Die Vorlesung und Uebungen geben den Studierenden eine gute Gelegenheit, Muster in diversen Kontexten anzuwenden.
LernzielLearn principles of compiler design, gain practical experience designing and implementing a medium-scale software system.
InhaltThis course uses compilers as example to expose modern software development techniques. The course introduces the students to the fundamentals of compiler construction. Students will implement a simple yet complete compiler for an object-oriented programming language for a realistic target machine. Students will learn the use of appropriate tools (parser generators); the implementation language is Java. Throughout the course, students learn to apply their knowledge of theory (automata, grammars, stack machines, program transformation) and well-known programming techniques (module definitions, design patterns, frameworks, software reuse) in a software project.
Specific topics: Compiler organization. Lexical analysis. Top-down parsing via recursive descent, table-driven parsers, bottom-up parsing. Symboltables, semantic checking. Code generation for a simple RISC machine: expression evaluation, straight line code, conditionals, loops, procedure calls, simple register allocation techniques. Storage allocation on the stack, parameter passing, runtime storage management, heaps. Special topics as time permits: introduction to global dataflow and its application to register allocation, instruction scheduling, practical application of the techniques and principles presented in the lecture in the context of the OpenJDK HotSpot Java Virtual Machine.
LiteraturAho/Lam/Sethi/Ullmann, Compilers - Principles, Techniques, and Tools (2nd Edition)

Muchnick, Advanced Compiler Design and Implementation, Morgan Kaufmann Publishers, 1997
Voraussetzungen / BesonderesPrerequisites:
Prior exposure to modern techniques for program construction, knowledge of at least one processor architecture at the assembly language level.
252-0215-00LInformation Systems Information
Diese Lehrveranstaltung wird im FS17 zum letzten Mal in dieser Form angeboten.
O8 KP4V + 2U + 1AM. Norrie
KurzbeschreibungThe course goes beyond relational technologies to examine the range of different database technologies available today. It also introduces the basic concepts of information retrieval and discusses the design decisions behind modern information system architectures.
LernzielThe goal of the course is to introduce students to the wide range of technologies in use today for data storage and retrieval. This will include extensions of relational database technologies, non-relational database systems and information retrieval systems. Through the use of a case study, students will also learn about modern information system architectures and the design decisions behind them.
InhaltThe course follows on from an earlier course on relational database technologies by introducing other database paradigms and extensions to relational systems. Students will gain experience of working with object, NoSQL and XML databases and the course will examine the features of these systems in terms of their approaches to storage, querying and transaction management and how they compare to relational systems and each other. The course will also look at how relational systems have been extended to support specific types of data, for example spatial, temporal and text data. In the second half of the course, the students will be introduced to modern information system architectures that build on one or more database technologies and a case study will be used to examine the design decisions behind such architectures. The case study will also be used to introduce students to the problems and techniques associated with integration, data quality and evolution in systems for large-scale, long-term data management. The last part of the course will introduce the basic concepts of information retrieval systems, web search and web data extraction.
LiteraturDatabase Management Systems, Raghu Ramakrishnan and Johannes Gehrke, 3rd edition, pub McGraw Hill, 2003.
252-0216-00LSoftware Architecture and Engineering Information O8 KP4V + 3UP. Müller, M. Vechev
KurzbeschreibungThis course introduces both theoretical and applied aspects of software engineering and analysis. It covers:

- Software Architecture
- Informal and formal Modeling
- Design Patterns
- Code Refactoring
- Program Testing
- Dynamic Program Analysis
- Static Program Analysis
LernzielThe course has two main objectives:

- Obtain an end-to-end (both, theoretical and practical) understanding of the core techniques used for building quality software.

- Understand how to apply these techniques in practice.
InhaltSome of the core technical topics covered will be:

- modeling and mapping of models to code
- common code design patterns
- functional and structural testing
- dynamic and static analysis
LiteraturWill be announced in the lecture.
Vertiefung Computational Science
NummerTitelTypECTSUmfangDozierende
252-0220-00LLearning and Intelligent Systems Information O8 KP4V + 2U + 1AG. Rätsch, T. Hofmann
KurzbeschreibungThe course introduces the foundations of learning and making predictions based on data.
LernzielThe course will introduce the foundations of learning and making predictions from data. We will study basic concepts such as trading goodness of fit and model complexitiy. We will discuss important machine learning algorithms used in practice, and provide hands-on experience in a course project.
Inhalt- Linear regression (overfitting, cross-validation/bootstrap, model selection, regularization, [stochastic] gradient descent)
- Linear classification: Logistic regression (feature selection, sparsity, multi-class)
- Kernels and the kernel trick (Properties of kernels; applications to linear and logistic regression; k-NN
- The statistical perspective (regularization as prior; loss as likelihood; learning as MAP inference)
- Statistical decision theory (decision making based on statistical models and utility functions)
- Discriminative vs. generative modeling (benefits and challenges in modeling joint vy. conditional distributions)
- Bayes' classifiers (Naive Bayes, Gaussian Bayes; MLE)
- Bayesian networks and exact inference (conditional independence; variable elimination; TANs)
- Approximate inference (sum/max product; Gibbs sampling)
- Latent variable models (Gaussian Misture Models, EM Algorithm)
- Temporal models (Bayesian filtering, Hidden Markov Models)
- Sequential decision making (MDPs, value and policy iteration)
- Reinforcement learning (model-based RL, Q-learning)
LiteraturTextbook: Kevin Murphy: A Probabilistic Perspective, MIT Press
Voraussetzungen / BesonderesDesigned to provide basis for following courses:
- Advanced Machine Learning
- Data Mining: Learning from Large Data Sets
- Probabilistic Artificial Intelligence
- Probabilistic Graphical Models
- Seminar "Advanced Topics in Machine Learning"
401-0674-00LNumerical Methods for Partial Differential Equations
Not meant for BSc/MSc students of mathematics.
O8 KP4V + 2U + 1AS. Mishra
KurzbeschreibungDerivation, properties, and implementation of fundamental numerical methods for a few key partial differential equations: Poisson equation, heat equation, transport equation, conservation laws. Implementation of the algorithms in C++
LernzielMain skills to be acquired in this course:
* Ability to implement advanced numerical methods for the solution of partial differential equations efficiently
* Ability to modify and adapt numerical algorithms guided by awareness of their mathematical foundations
* Ability to select and assess numerical methods in light of the predictions of theory
* Ability to identify features of a PDE (= partial differential equation) based model that are relevant for the selection and performance of a numerical algorithm
* Ability to understand research publications on theoretical and practical aspects of numerical methods for partial differential equations.
* Skills in the efficient implementation of numerical methods for PDEs.

This course is neither a course on the mathematical foundations and numerical analysis of methods nor an course that merely teaches recipes and how to apply software packages.
Inhalt1. General introduction to PDEs and their solutions.

2. 1-D Poisson equation -- Green's function, maximum principles, finite difference schemes.

3. Finite elements for the Poisson equation -- Variational formulation, basic finite element formulation with piecewise linear elements, error analysis, different boundary conditions. Efficient implementation of the finite element method. FEM for general elliptic PDEs, Higher-order finite elements.

4. Parabolic PDEs: exact solution formulas for the heat equation, energy method, maximum principles, Finite difference schemes for the heat equation with explicit, implicit and Crank-Nicolson schemes, error analysis.

5. Linear Transport equations -- method of characteristics, central and upwind finite difference schemes.

6. Scalar conservation laws -- Shocks, rarefactions, solutions to the Riemann problem, weak solutions, entropy conditions, Godunov type schemes, high-resolution schemes.
SkriptHand-written notes and script will be made available.
LiteraturLecture notes and references mentioned in the lecture notes.
Voraussetzungen / BesonderesMastery of basic calculus and linear algebra is taken for granted.
Familiarity with fundamental numerical methods (solution methods for linear systems of equations, interpolation, approximation, numerical quadrature, numerical integration of ODEs) is essential.

Important: Coding skills in MATLAB and C++ are essential.

Homework asssignments involve substantial coding in C++.
151-0116-10LHigh Performance Computing for Science and Engineering (HPCSE) for Engineers II Information W4 KP4GP. Chatzidoukas, K. Papadimitriou
KurzbeschreibungThis course focuses on programming methods and tools for parallel computing on multi and many-core architectures. Emphasis will be placed on practical and computational aspects of Uncertainty Quantification and Propagation including the implementation of relevant algorithms on HPC architectures.
LernzielThe course will teach
- programming models and tools for multi and many-core architectures
- fundamental concepts of Uncertainty Quantification and Propagation (UQ+P) for computational models of systems in Engineering and Life Sciences
InhaltHigh Performance Computing:
- Advanced topics in shared-memory programming
- Advanced topics in MPI
- GPU architectures and CUDA programming

Uncertainty Quantification:
- Uncertainty quantification under parametric and non-parametric modeling uncertainty
- Bayesian inference with model class assessment
- Markov Chain Monte Carlo simulation
SkriptLink
Class notes, handouts
Literatur- Class notes
- Introduction to High Performance Computing for Scientists and Engineers, G. Hager and G. Wellein
- CUDA by example, J. Sanders and E. Kandrot
- Data Analysis: A Bayesian Tutorial, Devinderjit Sivia
Vertiefung Theoretische Informatik
NummerTitelTypECTSUmfangDozierende
252-0211-00LInformation Security Information O8 KP4V + 3UD. Basin, S. Capkun
KurzbeschreibungThis course provides an introduction to Information Security. The focus
is on fundamental concepts and models, basic cryptography, protocols and system security, and privacy and data protection. While the emphasis is on foundations, case studies will be given that examine different realizations of these ideas in practice.
LernzielMaster fundamental concepts in Information Security and their
application to system building. (See objectives listed below for more details).
Inhalt1. Introduction and Motivation (OBJECTIVE: Broad conceptual overview of information security) Motivation: implications of IT on society/economy, Classical security problems, Approaches to
defining security and security goals, Abstractions, assumptions, and trust, Risk management and the human factor, Course verview. 2. Foundations of Cryptography (OBJECTIVE: Understand basic
cryptographic mechanisms and applications) Introduction, Basic concepts in cryptography: Overview, Types of Security, computational hardness, Abstraction of channel security properties, Symmetric
encryption, Hash functions, Message authentication codes, Public-key distribution, Public-key cryptosystems, Digital signatures, Application case studies, Comparison of encryption at different layers, VPN, SSL, Digital payment systems, blind signatures, e-cash, Time stamping 3. Key Management and Public-key Infrastructures (OBJECTIVE: Understand the basic mechanisms relevant in an Internet context) Key management in distributed systems, Exact characterization of requirements, the role of trust, Public-key Certificates, Public-key Infrastructures, Digital evidence and non-repudiation, Application case studies, Kerberos, X.509, PGP. 4. Security Protocols (OBJECTIVE: Understand network-oriented security, i.e.. how to employ building blocks to secure applications in (open) networks) Introduction, Requirements/properties, Establishing shared secrets, Principal and message origin authentication, Environmental assumptions, Dolev-Yao intruder model and
variants, Illustrative examples, Formal models and reasoning, Trace-based interleaving semantics, Inductive verification, or model-checking for falsification, Techniques for protocol design,
Application case study 1: from Needham-Schroeder Shared-Key to Kerberos, Application case study 2: from DH to IKE. 5. Access Control and Security Policies (OBJECTIVES: Study system-oriented security, i.e., policies, models, and mechanisms) Motivation (relationship to CIA, relationship to Crypto) and examples Concepts: policies versus models versus mechanisms, DAC and MAC, Modeling formalism, Access Control Matrix Model, Roll Based Access Control, Bell-LaPadula, Harrison-Ruzzo-Ullmann, Information flow, Chinese Wall, Biba, Clark-Wilson, System mechanisms: Operating Systems, Hardware Security Features, Reference Monitors, File-system protection, Application case studies 6. Anonymity and Privacy (OBJECTIVE: examine protection goals beyond standard CIA and corresponding mechanisms) Motivation and Definitions, Privacy, policies and policy languages, mechanisms, problems, Anonymity: simple mechanisms (pseudonyms, proxies), Application case studies: mix networks and crowds. 7. Larger application case study: GSM, mobility
Wahlfächer der Vertiefung
Zu den Wahlfächern zählen auch die obligatorischen Fächer der Vertiefung. Zudem können auch Lehrveranstaltungen aus dem Master in Informatik gewählt werden. Es liegt in der Verantwortung der Studierenden, sicherzustellen, dass sie die Voraussetzungen für diese Lehrveranstaltungen erfüllen.
NummerTitelTypECTSUmfangDozierende
252-0055-00LInformationstheorie Information W4 KP2V + 1UL. Haug
KurzbeschreibungDie Vorlesung vermittelt die Grundlagen von Shannons Informations- und Codierungstheorie. Die wichtigsten Themen sind: Entropie, Information, Datenkompression, Kanalcodierung, Codes.
LernzielZiel der Vorlesung ist es, sowohl mit den theoretischen Grundlagen der Informationstheorie vertraut zu machen, als auch den praktischen Einsatz der Theorie anhand ausgewählter Beispiele aus der Datenkompression und -codierung zu illustrieren.
InhaltEinführung und Motivation, Grundlagen der Wahrscheinlichkeitstheorie, Entropie und Information, Kraft-Ungleichung, Schranken für die erwartete Länge von Quellcodes, Huffman-Codierung, asympotische Äquipartitionseigenschaft und typische Sequenzen, Shannons Quellcodierungstheorem, Kanalkapazität und Kanalcodierung, Shannons Kanalcodierungstheorem, Beispiele
LiteraturT. Cover, J. Thomas: Elements of Information Theory, John Wiley, 1991.

D. MacKay, Information Theory, Inference and Learning Algorithms, Cambridge University Press, 2003.


C. Shannon, The Mathematical Theory of Communication, 1948.
  •  Seite  1  von  2 Nächste Seite Letzte Seite     Alle