SylabUZ
Course name | Theoretical Foundations of Computer Science |
Course ID | 11.3-WI-INFP-TPI |
Faculty | Faculty of Computer Science, Electrical Engineering and Automatics |
Field of study | Computer Science / Industrial Information Systems |
Education profile | academic |
Level of studies | First-cycle studies leading to Engineer's degree |
Beginning semester | winter term 2016/2017 |
Semester | 3 |
ECTS credits to win | 6 |
Course type | obligatory |
Teaching language | polish |
Author of syllabus |
|
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 |
Class | 30 | 2 | 18 | 1,2 | Credit with grade |
Lecture | 30 | 2 | 18 | 1,2 | Exam |
Algorytmy i struktury danych, Logika dla informatyków, Podstawy systemów dyskretnych, Analiza matematyczna.
Wiadomości wstępne: algorytm i jego własności, notacja asymptotyczna. Poprawność algorytmów: algorytm poprawny, poprawność częściowa, własność określoności obliczeń, własność stopu; dowodzenie poprawności częściowej, dowodzenie własności stopu.
Podstawy teorii automatów i języków: automaty skończone i wyrażenia regularne, gramatyki bezkontekstowe, automaty ze stosem i języki bezkontekstowe, własności języków bezkontekstowych.
Prymitywne modele algorytmiczne. Teza Churcha--Turinga. Maszyna Turinga i jej warianty. Maszyna o dostępie swobodnym. Programy licznikowe.
Sprawność algorytmów. Miary efektywności algorytmów. Złożoność przestrzenna i czasowa. Złożoność pesymistyczna i średnia. Dolne i górne ograniczenie złożoności. Złożoność naturalna. Problemy algorytmicznie zamknięte i otwarte, luka algorytmiczna.
Klasyfikacja problemów algorytmicznych. Problemy łatwo-rozwiązywalne i trudno-rozwiązywalne. Klasy problemów algorytmicznych: logarytmiczne, wielomianowe, NP, NP-zupełne i wykładnicze. Otwarte problemy związane z klasyfikacją problemów algorytmicznych. Dowodzenie NP-zupełności. Nierozwiązywalność i nierozstrzygalność.
Algorytmy współbieżne i probabilistyczne. Stała i rozszerzająca się współbieżność. Złożoność iloczynowa. Sieci - współbieżność o stałych połączeniach. Teza o obliczeniach równoległych. Klasa Nicka. Algorytmy RNC. Współbieżność rozproszona. Bezpieczeństwo i żywotność systemów współbieżnych.
Algorytmy probabilistyczne niektórych konwencjonalnych problemów algorytmicznych. Probabilistyczne klasy złożoności.
Wykład: wykład konwencjonalny/tradycyjny.
Ćwiczenia: ćwiczenia rachunkowe.
Outcome description | Outcome symbols | Methods of verification | The class form |
Wykład - warunkiem zaliczenia jest uzyskanie pozytywnej oceny z egzaminu przeprowadzonego w formie pisemnej.
Ćwiczenia - warunkiem zaliczenia jest uzyskanie pozytywnych ocen z kolokwiów pisemnych lub ustnych przeprowadzonych co najmniej raz w semestrze.
Składowe oceny końcowej = wykład: 50% + ćwiczenia: 50%
Modified by dr hab. inż. Marek Sawerwain, prof. UZ (last modification: 06-09-2016 10:05)