ANALIZA MATEMATYCZNA
-
Ciągłość funkcji i najważniejsze własności funkcji ciągłych.
-
Pochodna funkcji jednej zmiennej, interpretacja geometryczna i mechaniczna.
-
Twierdzenie Lagrange’a o wartości średniej, jego interpretacja geometryczna i niektóre konsekwencje (monotoniczność, wklęsłość, wypukłość, szacowanie przyrostów).
-
Wzór Taylora dla funkcji jednej zmiennej, zastosowania do obliczeń przybliżonych, rozwijanie funkcji w szeregi potęgowe.
-
Pojęcie zbieżności ciągów liczbowych i funkcyjnych, twierdzenia o przejściu do granicy pod znakiem pochodnej i całki.
-
Ekstrema funkcji jednej i kilku zmiennych rzeczywistych: warunki konieczne i dostateczne.
-
Funkcja pierwotna, całka oznaczona. Zastosowania geometryczne całki (przykłady).
-
Całka Riemanna.
GEOMETRIA Z ALGEBRĄ LINIOWĄ
-
Definicja grupy i grupy przemiennej.
-
Ciała liczb rzeczywistych i zespolonych.
-
Przestrzenie liniowe, liniowa niezależność wektorów, baza i wymiar przestrzeni liniowej.
-
Macierze i przekształcenia liniowe, wyznaczniki.
-
Wektory i wartości własne macierzy i przekształceń liniowych.
-
Istnienie i jednoznaczność rozwiązań układów równań liniowych, eliminacja Gaussa.
-
Przestrzenie z iloczynem skalarnym.
PODSTAWY MATEMATYKI
-
Działania na zbiorach.
-
Funkcje i ich własności.
-
Relacje równoważności i ich własności.
-
Moce zbiorów.
-
Porządki częściowe i ich własności.
-
Dobre ufundowanie i indukcja.
-
Rachunek zdań - semantyka i naturalna dedukcja.
-
Przykłady opisu własności struktur matematycznych w logice pierwszego rzędu.
MATEMATYKA DYSKRETNA
-
Metody obliczania sum skończonych.
-
Współczynniki dwumianowe i inne liczby specjalne występujące w kombinatoryce.
-
Równania rekurencyjne i funkcje tworzące.
-
Metody zliczania: zasada włączania-wyłączania, enumeratory.
-
Grafy: podstawowe pojęcia, cykle Eulera i Hamiltona.
-
Grafy dwudzielne: skojarzenia i tw. Halla.
-
Planarność i kolorowanie grafów.
-
Elementarna teoria liczb: podzielność, liczby pierwsze, rozkład na czynniki.
-
NWD i algorytm Euklidesa.
-
Arytmetyka modularna: małe tw. Fermata i tw. Eulera, chińskie tw. o resztach.
-
Asymptotyka: notacja asymptotyczna, twierdzenie o rekurencji uniwersalnej.
-
Asymptotyka: szacowanie sum.
WSTĘP DO PROGRAMOWANIA
-
Analiza złożoności programów komputerowych – złożoność asymptotyczna, koszt czasowy i pamięciowy, analiza kosztu zamortyzowanego.
-
Sposoby formalnego opisu składni języka programowania.
-
Metody abstrakcji – procedury, funkcje; metody enkapsulacji.
-
Rekurencja – pojęcie rekurencji, sposób realizacji; analiza złożoności programów rekurencyjnych.
-
Reprezentacja podstawowych typów danych w pamięci.
-
Metoda dziel i zwyciężaj – przykłady.
-
Sortowanie, metody i zastosowanie.
-
Przeszukiwanie z nawrotami (back-tracking).
-
Programowanie dynamiczne i spamiętywanie.
-
Programowanie zachłanne.
-
Kolejki i stosy.
-
Przeszukiwanie grafów. Obiegi drzew.
ALGORYTMY I STRUKTURY DANYCH
-
Kryteria oceny efektywności algorytmów.
-
Koszt zamortyzowany.
-
Podstawowe algorytmy sortowania.
-
Słowniki i metody ich realizacji.
-
Kolejki priorytetowe i metody ich realizacji.
METODY NUMERYCZNE
-
Uwarunkowanie i numeryczna poprawność.
-
Algorytmy rozkładu macierzy i ich zastosowania.
-
Interpolacja wielomianowa.
-
Aproksymacja w przestrzeniach unitarnych oraz jednostajna.
-
Metody numeryczne całkowania.
-
Metody iteracyjne rozwiązywania układów równań liniowych i nieliniowych.
SEMANTYKA I WERYFIKACJA PROGRAMÓW
-
Metoda operacyjna definiowania semantyki języków programowania.
-
Metoda denotacyjna definiowania semantyki języków programowania.
-
Przekazywanie parametrów w procedurach i reguły widoczności identyfikatorów.
-
Weryfikacja poprawności programów. Metoda niezmienników. Logika Hoare'a.
JĘZYKI, AUTOMATY I OBLICZENIA
-
Języki regularne, wyrażenia regularne i automaty skończone.
-
Języki bezkontekstowe, gramatyki bezkontekstowe i automaty ze stosem.
-
Lematy o pompowaniu dla języków regularnych i bezkontekstowych.
-
Języki obliczalne oraz języki częściowo obliczalne. Problem stopu oraz metoda przekątniowa.
-
Klasy P, NP oraz NP-zupełność.
PROGRAMOWANIE OBIEKTOWE
-
Pojęcia klasy i obiektu.
-
Konstruktory w Javie i ich zastosowanie.
-
Kapsułkowanie danych i zakresy widoczności w Javie.
-
Dziedziczenie i hierarchie klas. Klasy abstrakcyjne i interfejsy.
-
Podmienianie metod jako realizacja polimorfizmu.
-
Obsługa wyjątków. Hierarchie wyjątków.
-
Standardowe kolekcje w Javie.
BAZY DANYCH
-
Relacyjny model danych.
-
Podstawowe konstrukcje języka SQL i sposoby ich realizacji.
-
Rodzaje metadanych i ich rola.
-
Redundancja a postacie normalne.
-
Przejście od modelu pojęciowego do modelu logicznego.
-
Fizyczna reprezentacja danych.
PROGRAMOWANIE WSPÓŁBIEŻNE
-
Poprawność programów współbieżnych.
-
Mechanizmy synchronizacji programów współbieżnych w systemach scentralizowanych i rozproszonych.
-
Klasyczne problemy współbieżności (problem wzajemnego wykluczania, problem producenta-konsumenta, czytelników i pisarzy, 5 filozofów) i przykłady ich rozwiązania.
-
Algorytmy rozproszone: wzajemne wykluczanie, synchronizacja zegarów logicznych uzgadnianie.
-
Wsparcie dla współbieżności w językach programowania Java, C++ oraz w systemie operacyjnym Unix.
SYSTEMY OPERACYJNE
-
Mechanizmy sprzętowe potrzebne do realizacji wielodostępnych, wieloprocesowych systemów operacyjnych.
-
Podstawy programowania niskopoziomowego, asembler.
-
Algorytmy szeregowania procesów.
-
Pamięć wirtualna. Cechy charakterystyczne różnych technik realizacji pamięci wirtualnej.
-
Funkcje systemowe do obsługi plików z poziomu użytkownika (czynności wykonywane przez system operacyjny, struktury danych).
SIECI KOMPUTEROWE
-
Warstwy sieci.
-
Protokoły TCP, UDP, IP, ICMP, Ethernet.
-
Adresy internetowe, tablice tras, zasady trasowania, NAT.
-
System nazw domenowych.
-
Sieciowy interfejs gniazd.
INŻYNIERIA OPROGRAMOWANIA
-
Procesy wytwarzania oprogramowania.
-
Zwinne wytwarzanie oprogramowania.
-
Inżynieria wymagań.
-
Metody i języki modelowania w inżynierii oprogramowania.
-
Architektura oprogramowania.
-
Zapewnianie jakości oprogramowania.
-
Ewolucja i pielęgnacja oprogramowania.
JĘZYKI I PARADYGMATY PROGRAMOWANIA
-
Modele obliczeń i paradygmaty programowania.
-
Programowanie funkcyjne.
-
Programowanie imperatywne.
-
Typy, kontrola typów.
-
Programowanie obiektowe.
-
Programowanie w logice.
-
Maszyna wirtualna.
-
Podstawy translacji programów.
-
Deklaracje i typy danych.
-
Odśmiecanie.
-
Mechanizmy abstrakcji w językach programowania.
-
Parsowanie.
IPP i BLOK JNP
-
Znajomość konstrukcji programistycznych języków C i C++.
-
Znajomość metod zarządzania konfiguracjami i wersjami oprogramowania.
-
Znajomość technik i narzędzi tworzenia oprogramowania (linkowanie, debugowanie, profilowanie itd.)
APLIKACJE WWW
-
Rodzina protokołów HTTP.
-
Mechanizmy tworzenia stron internetowych: HTML, CSS.
-
Język JavaScript oraz jego unikalne cechy.
-
Języki kompilowane na JavaScript.
-
Mechanizmy budowania aplikacji internetowych: ciasteczka, żądania, routing, widoki, mapowanie obiektowo-relacyjne.
-
Bezpieczeństwo aplikacji webowych.
RACHUNEK PRAWDOPODOBIEŃSTWA I STATYSTYKA
-
Prawdopodobieństwo warunkowe: prawdopodobieństwo całkowite, wzór Bayesa, niezależność zdarzeń.
-
Dyskretne zmienne losowe i ich rozkłady: rozkład dwumianowy, geometryczny, Poissona.
-
Parametry rozkładu: wartość oczekiwana, wariancja, funkcje tworzące prawdopodobieństwa.
-
Nierówności probabilistyczne: Markowa, Czebyszewa, Chernoffa.
-
Ciągłe zmienne losowe: definicja, własności, rozkład wykładniczy oraz normalny, centralne twierdzenie graniczne.
-
Łańcuchy Markowa: prawdopodobieństwa oraz średnie czasy dotarcia, twierdzenie ergodyczne.
-
Wnioskowanie statystyczne: estymatory nieobciążone, estymatory największej wiarygodności.
BEZPIECZEŃSTWO SYSTEMÓW KOMPUTEROWYCH
-
Podstawy kryptografii.
-
Infrastruktura klucza publicznego.
-
Modele i klasy bezpieczeństwa systemów informatycznych.
-
Modele uwierzytelniania, strategie kontroli dostępu.
-
Bezpieczeństwo protokołów komunikacyjnych i aplikacji.
-
Praktyczna ochrona systemów operacyjnych i usług aplikacyjnych z wykorzystaniem izolacji, ścian ogniowych, VPN, TLS, PGP.
-
Problematyka bezpiecznego programowania.
-
Zagrożenia związane z przestępczością elektroniczną.
PROBLEMY SPOŁECZNE I ZAWODOWE INFORMATYKI
-
Prawne i społeczne aspekty informatyki.
-
Odpowiedzialność zawodowa i etyczna informatyków.
-
Zasady współżycia w społecznościach cyfrowych.
-
Podstawowe zasady bezpieczeństwa i higieny pracy w zawodzie informatyka.
-
Ogólne zasady tworzenia i rozwoju indywidualnej przedsiębiorczości, wykorzystującej wiedzę z zakresu informatyki.
-
Fundamentalne dylematy współczesnej cywilizacji.
KIERUNEK BIOINFORMATYKA i BIOLOGIA SYSTEMÓW
-
Budowa i sposoby funkcjonowania komórek prokariotycznych i eukariotycznych.
-
Sposoby rozmnażanie u prokariota i eukariota.
-
Podstawowe procesy zachodzące w komórce.
-
Sposoby funkcjonowania komórek różnych typów.
-
Budowa i funkcjonowanie wirusów.
-
Relacje między organizmami (na poziomie osobników i populacji).
-
Relacje między organizmami i ich środowiskiem (na poziomie biocenoz i ekosystemów).
-
Budowa i właściwości podstawowych typów makrocząsteczek biologicznych i ich elementów składowych.
-
Podstawowe zasady przemian chemicznych w żywej komórce (podział metabolizmu, szlaki metaboliczne, regulacja metabolizmu).
-
Rola poszczególnych przedziałów komórkowych w jej metabolizmie (cytosol, mitochondrium, chloroplast, retikulum endoplazmatyczne i jądro komórkowe).
-
Enzymy i mechanizm ich działania (kataliza enzymatyczna i hamowanie reakcji enzymatycznych).
-
Dokładne i przybliżone algorytmy porównywania sekwencji nukleotydowych i białkowych.
-
Metody modelowania molekularnego (przewidywania struktury) białek.
-
Rozpoznawanie białko-białko: termodynamika, kinetyka, przewidywanie struktur.
-
Podstawowe metody analizy sieci oddziaływań w komórce, -omiki.
-
Metody analizy szlaków metabolicznych w komórce.
-
Podstawowe strategie badawcze w genetyce (analiza fenotypu mutacji, inżynieria genetyczna, odwrotna genetyka, biologia syntetyczna).
-
Podstawy genetyki klasycznej i chromosomowej teorii dziedziczenia.
-
Od genetyki do biologii systemów - plejotropia, interakcje genetyczne i interaktomika.
-
Podstawy biologii molekularnej genów prokariotycznych i eukariotycznych (replikacja, mutageneza i naprawa uszkodzeń DNA, rekombinacja, translacja i kod genetyczny, ekspresja genu i jej regulacja).
-
Przełączniki genetyczne i podstawy genetyki rozwoju i różnicowania.
-
Genetyka człowieka - cechy jednogenowe, oligogenowe i wieloczynnikowe. Struktura ludzkiego genomu.
-
Genetyczne podstawy nowotworzenia.
-
Zwierzę w środowisku – (przykłady do omówienia, do wyboru: odżywianie, wymiana gazowa, osmoregulacja, układ nerwowy i zmysły, stres).
-
Roślina w środowisku - (przykłady do omówienia, do wyboru: fotosynteza, fotooddychanie, oddychanie tlenowe, stres, komunikacja międzykomórkowa i systemiczna).
-
Utrzymanie homeostazy u zwierząt i roślin.
-
Zegary biologiczne roślin i zwierząt.
-
Choroby metaboliczne jako przykład dyskoordynacji na poziomie biochemicznym.
-
Charakterystyka badań z zakresu genomiki, metagenomiki, transkryptomiki i proteomiki.
-
Znajomość typowych technik całogenomowych nowej generacji (mikromacierze DNA, metody sekwencjonowania wysokoprzepustowego w badaniach DNA, RNA i struktury chromatyny, genomika trójwymiarowa oraz proteomika).
-
Genetyczne podstawy ewolucji, powstanie i ewolucja informacji genetycznej.
-
Zasada doboru naturalnego. Pojęcie dostosowania, współczynnik selekcji, dobór pozytywny i negatywny (oczyszczający).
-
Dryf genetyczny i ewolucja neutralna. Modele substytucji DNA.
-
Metody największej parsymonii, największej wiarygodności i bayesowskie w rekonstrukcji filogenezy na podstawie danych molekularnych. .
-
Podstawowe konstrukcje sterowania w programowaniu.
-
Wyrażenia regularne i wyszukiwanie wzorców w tekstach.
-
Arytmetyka komputerowa i związane z nią błędy obliczeń.
-
Komputerowa reprezentacja obrazów, sposoby reprezentacji barw.
-
Przetwarzanie sygnałów i konstrukcja filtrów jedno- i dwuwymiarowych.
-
Zagadnienie kompresji danych.
-
Problemy aproksymacji i interpolacji funkcji.
-
Pojęcia klasy i obiektu, dziedziczenie w programowaniu obiektowym.
-
Wyjątki i ich obsługa w nowoczesnych językach programowania.
-
Zasady analizy algorytmów: kryteria, aparat matematyczny.
-
Programowanie dynamiczne.
-
Sortowanie: problem, podstawowe algorytmy.
-
Drzewa i struktury danych oparte na drzewach.
-
Grafy i algorytmy grafowe.
-
Zastosowania rachunku macierzowego do rozwiązywania układów równań liniowych i liniowych równań różniczkowych zwyczajnych.
-
Przestrzenie euklidesowe: struktura przestrzeni liniowej (baza, wymiar), prostopadłość wektorów, rzuty, metoda najmniejszych kwadratów.
-
Wektory własne i wartości własne macierzy - definicja, metody obliczania, związek z wyznacznikiem macierzy. Macierze dodatnio określone i półokreślone - zastosowania.
-
Granica ciągu i suma szeregu. Definicje, przykłady, podstawowe własności. Przykłady kryteriów zbieżności szeregu.
-
Granica funkcji w punkcie i ciągłość funkcji. Podstawowe własności funkcji ciągłych (własność Darboux, twierdzenie Weierstrassa).
-
Pochodna funkcji jednej zmiennej i pochodne wyższych rzędów. Zastosowanie pochodnych do badania przebiegu zmienności funkcji. Wzór Taylora.
-
Funkcja pierwotna i całka oznaczona. Interpretacja całki jako pola pod wykresem. Podstawowe metody całkowania. Całkowanie funkcji wielu zmiennych: całki iterowane, podstawienie egunowe.
-
Pochodne cząstkowe funkcji wielu zmiennych: definicje, zastosowanie do wyznaczania ekstremów funkcji wielu zmiennych.
-
Liniowe równania różniczkowe zwyczajne I i II rzędu: przykłady i podstawowe metody rozwiązywania. Trajektorie ruchu. Zastosowania w modelach wzrostu bakterii.
-
Nieliniowe równania różniczkowe zwyczajne, pojęcie punktu stałego i jego stabilność. Bistabilność w układach dynamicznych - zastosowanie do modelu aktywności białka.
-
Podstawowe równania fizyki matematycznej i metody ich rozwiązywania: równanie dyfuzji i ciepła, równanie falowe.
-
Prawdopodobieństwo klasyczne i metody kombinatoryczne obliczania mocy zbiorów zdarzeń elementarnych (permutacje, wariacje, kombinacje z i bez powtórzeń).
-
Prawdopodobieństwo warunkowe. Wzór na prawdopodobieństwo całkowite i wzór Bayesa.
-
Zmienne losowe dyskretne i ciągłe oraz podstawowe definicje z nimi związane (dystrybuanta, gęstość, wartość oczekiwana, wariancja). Przykłady ważniejszych rozkładów dyskretnych np. Bernoulliego, Poissona) i ciągłych (np. wykładniczy, gaussowski).
-
Niezależność zdarzeń i zmiennych losowych. Podstawowe własności niezależnych zmiennych losowych. Schemat Bernoulliego.
-
Twierdzenia graniczne: prawa wielkich liczb oraz prawo de Moivre'a-Laplace'a.
-
Łańcuchy Markowa: reprezentacja za pomocą grafu i macierzy przejścia, rozkłady stacjonarne, twierdzenie ergodyczne.
-
Pojęcie estymatora, metody estymacji parametrów.
-
Testowanie hipotez, metody testowania hipotez, testy istotności, testy zgodnosci, testy parametrycznie i nieparametryczne.
-
Problem regresji liniowej, estymator parametrów, ich interpretacja.
-
Metody regularyzacji modeli liniowych.
-
Kompromis pomiędzy wariancją a obciążeniem modelu, problem przeuczenia, walidacja krzyżowa.
-
Problemy regresji, klasyfikacji i klastrowania, podać przykłady algorytmów uczenia maszynowego.
-
Indukcja i rekurencja, rozwiązywanie dyskretnych równań rekurencyjnych.
-
Relacje na zbiorach: relacje porządku i równoważności, klasy abstrakcji.
-
Zadania optymalizacji z ograniczeniami i bez ograniczeń: warunki konieczne i dostateczne (mnożniki Lagrange’a, warunki KKT).
-
Pojęcie gry i rodzaje gier. Pojęcie strategii, równowaga Nasha.
-
Rodzaje strategii w grach, strategie czyste i mieszane. Minimaks.