SylabUZ

Generate PDF for this page

Advanced programming techniques - course description

General information
Course name Advanced programming techniques
Course ID 11.3-WE-INFD-ZTP
Faculty Faculty of Computer Science, Electrical Engineering and Automatics
Field of study Computer Science
Education profile academic
Level of studies Second-cycle studies leading to MSc degree
Beginning semester winter term 2019/2020
Course information
Semester 2
ECTS credits to win 5
Course type obligatory
Teaching language polish
Author of syllabus
  • dr hab. inż. Marek Sawerwain, prof. UZ
Classes forms
The class form Hours per semester (full-time) Hours per week (full-time) Hours per semester (part-time) Hours per week (part-time) Form of assignment
Lecture 15 1 9 0,6 Credit with grade
Laboratory 30 2 18 1,2 Credit with grade
Project 15 1 9 0,6 Credit with grade

Aim of the course

    • zapoznanie studentów z wybranymi technikami zaawansowanego programowania wieloparadygmatowego, w modelu klasycznym oraz zaprezentowanie podstaw modelu kwantowego,
    • omówienie wybranych technik jak np. prezentacja typów uogólnionych, programowanie reaktywne, model aktorów, mechanizm hot-swapping,
    • zaprezentowanie kwantowego modelu obliczeniowego, definicji qubitów, superpozycji i splątania magnetomechanicznego jako nowych zasobów przetwarzania informacji,
    • prezentacja wybranych algorytmów kwantowych i protokołów, w tym kwantowych protokołów kryptograficznych.

Prerequisites

Metody programowania, Algorytmy i struktury danych, Teoretyczne Podstawy Informatyki, Programowanie obiektowe

Scope

Prezentacja i przypomnienie obecnie stosowanych paradygmatów programowania.
Podkreślenie roli paradygmatu funkcyjnego i logicznego (deklaratywnego).
Typy uogólnione, programowanie reaktywne, programowanie w logiczne za pomocą języka programowania Erlang. Prezentacja modelu aktorów.
Nowe modele obliczeniowe jako odpowiedź na złożoność wykładniczą.
Prezentacja pojęć kwantowego modelu obliczeniowego, qubitu, rejestru kwantowego, superpozycji oraz splątania. Operacje unitarne oraz pomiaru realizowane na rejestrze kwantowym.
Omówienie wybranych algorytmów kwantowych oraz ich implementacja w postaci obwodów kwantowych oraz programów w języku Q# (w środowisku Visual Studio).
Symulacje obliczeń kwantowych oraz realizacja wybranych obwodów (protokołów) na dostępnych obecnie eksperymentalnych instalacjach obliczeń kwantowych.

Teaching methods

Wykład: wykład konwencjonalny/tradycyjny.
Laboratorium: ćwiczenia laboratoryjne, wg listy zadań.
Projekt: praca w grupach, metoda projektu.

Learning outcomes and methods of theirs verification

Outcome description Outcome symbols Methods of verification The class form

Assignment conditions

Wykład - warunkiem zaliczenia jest uzyskanie pozytywnej oceny ze sprawdzianu przeprowadzonego w formie pisemnej.
Laboratorium - warunkiem zaliczenia jest uzyskanie pozytywnych ocen ze wszystkich sprawdzianów pisemnych z ćwiczeń laboratoryjnych, przewidzianych do realizacji w
ramach programu laboratorium.
Projekt - warunkiem zaliczenia jest wykonanie wszystkich zadań projektowych, przewidzianych do realizacji w ramach zajęć projektowych oraz przygotowanie pisemnego
raportu ze zrealizowanego projektu.
Składowe oceny końcowej = wykład: 20% + laboratorium: 40% + projekt: 40%
 

Recommended reading

  1. John Watrous, The Theory of Quantum Information, Cambridge University Press, 2018.
  2. Simon St. Laurent: Introducing Erlang. Getting Started in Functional Programming. 2nd Edition, O'Reilly Media, 2017.
  3. Francesco Cesarini, Simon Thompson: Erlang Programming, O'Reilly Media, 2009.
  4. Mika Hirvensalo: Algorytmy kwantowe,Wydawnictwa Szkolne i Pedagogiczne, Warszawa 2004.
  5. Krzysztof Giaro, Marcin Kamiński: Wprowadzenie do algorytmów kwantowych, Akademicka Oficyna Wydwnicza EXIT, Warszawa 2003.
  6. Michael A. Nielsen, Isaac L. Chuang: Quantum Computation and Quantum Information: 10th Anniversary Edition,  Cambridge University Press, 2010.
  7. Marek Sawerwain, Joanna Wiśniewska: Informatyka kwantowa. Wybrane obwody i algorytmy, PWN, Warszawa 2015.

Further reading

  1. Jacek Jurkowski: Korelacje Nieklasyczne. Kwantowe splątanie i dyskord, Wydawnictwo Naukowe Uniwersytetu Mikołaja Kopernika, Toruń 2014.
  2. Akira Furusawa, Peter van Loock: Quantum Teleportation and Entanglement: A Hybrid Approach to Optical Quantum Information Processing, Wiley, 2011.
  3. Ingemar Bengtsson, Karol Życzkowski: Geometry of Quantum States: An Introduction to Quantum Entanglement, 2nd Edition, Cambridge University Press, 2017.

Notes


Modified by dr hab. inż. Marek Sawerwain, prof. UZ (last modification: 23-04-2019 23:52)