Strona główna Moje zajęcia

2024/25 (zima): Logika i Struktury Formalne

Wykład przeznaczony jest dla studentów I roku I stopnia Informatyki Algorytmicznej. Odbywa się we wtorki w godz. - oraz piątki w godz. - w sali 23 w budynku C-3.
Wykład ten prowadzę wspólnie z doktorem Dominikiem Bojko.
Na stronie tej znajdziesz informacje o zasadach zaliczenia, literaturze, realizowanym materiale oraz listę zadań.

Koniec strony

Literatura

Zasady zaliczania kursu

Ćwiczenia

Na ćwiczeniach będzie mieli dwa kolokwia (po 20 punktów). Oceniani będziecie również za aktywność na ćwiczeniach: do zdobycia będzie mieli dodatkowe 20 punktów. O reszcie detali zostaniecie poinformowani przez prowadzących ćwiczenia.

Egzamin

Ocena za kurs będzie wystawiana za pomocą wzoru: $$ K = \begin{cases} 2 &: E = 2 \\ \frac{E+C}{2} &: E>2 \end{cases}~, $$ gdzie $E$ = ocena z egzaminu zaś $C$ = ocena z ćwiczeń.

  1. Termin I: 06.02.2025, godz. 13:00-15:00, sala 329/A1
  2. Termin II: 17.02.2025, godz. 13:00-15:00, sala 41/C-4

Zadania z ubiegłych lat

  1. LiSF-2021-22-Egz01.pdf
  2. LiSF-2021-22-Egz02.pdf
  3. LiSF-2023-24-Egz01.pdf
  4. LiSF-2023-24-Egz02.pdf
$ \def\RR{\mathbb{R}} \def\QQ{\mathbb{Q}} \def\ZZ{\mathbb{Z}} \def\CC{\mathbb{C}} \def\NN{\mathbb{N}} \def\IFF{\leftrightarrow} \newcommand{\span}[1]{\mathrm{span}(#1)} \newcommand{\IS}[2]{\langle\,#1,#2\rangle} \newcommand{\sgn}[1]{\mathrm{sgn}(#1)} $

Zagadnienia omówione na wykładzie

04.10.2024: Rachunek Zdań - I

  1. Pojęcie zdania rachunku zdań ($\mathcal{L}(\mathcal{P})$)
  2. Pojęcie waluacji i rozszerzenie waluacji $\pi$ na dowolne zdania ($val(\pi,\phi)$)
  3. Pojęcie tautologii: $\phi \in \mathcal{L}(\mathcal{P})$ jest TAUTOLOGIĄ ($\models \phi$), jeśli dla dowolnej waluacji $\pi:\mathcal{P}\to \{0,1\}$ mamy $val(\pi,\phi) = \mathbb{1}$
Zadanie domowe: naucz się całego alfabetu greckiego.

08.10.2024: Rachunek Zdań - II

  1. Przegląd najważniejszych tautologii
  2. Spójniki NAND, NOR, XOR
  3. Synteza formuł
  4. Postać dyzjunkcyjno - normalna (DNF)
  5. Klauzule i postać koniunkcyjno normalna (CNF)

11.10.2024: Rachunek Zdań - III

  1. Pojęcie dowodliwości ($\mathcal{P}\models\phi$)
  2. Podstawowe reguły dowodzenia
  3. Klauzule Horna i zdania Horna
  4. Problem spełnialności.
  5. Spełnialność zdań Horna.

15.10.2024: Metody dowodzenia twierdzeń i Zbiory

  1. Przegląd metod dowodzenia twierdzeń
  2. Aksjomat Ekstensjonalości
  3. Jedyność zbioru pustego
  4. Suma i przekrój zbiorów
  5. Twierdzenie Russel'a: nie istnieje zbiór wszystkich zbiorów.

18.10.2024: Zbiory - I

  1. Podstawowe operacje: $\cup, \cap,\setminus$
  2. Zawieranie zbiorów
  3. Sprowadzenie zagadnień rachunku zbiorów do rachunku zdań
  4. Diagramy Venna

22.10.2024: Zbiory - II

  1. Skladowe rodzin zbiorów
  2. Para uporządkowana: $(x,y) = \{\{x\},\{x,y\}\}$ (definicja Kuratowskiego)
  3. Tw. $(x,y)=(a,b) \IFF (x=a)\land(y=b)$
  4. Iloczyn kartezjański zbiorów.

25.10.2024: Zbiory - III

  1. Tw. $A\times(B\cup C) = (A\times B) \cup $(A\times C)$
  2. Pojęcie funkcji logicznej jednej zmiennej.
  3. Kwantyfikatory $\forall$ i $\exists$
  4. Podstawowe własności kwantyfikatorów.

29.10.2024: Kwantyfikatory

  1. Kwantyfikatory ograniczone
  2. Funkcje zdaniowe wielu zmiennych.
  3. Interpretacja wyrażeń $(\forall x)(\forall y)\phi(x,y)$, $(\forall x)(\exists y)\phi(x,y)$, $(\exists x)(\forall y)\phi(x,y)$ i $(\exists x)(\exists y)\phi(x,y)$
  4. Podstawowe własności.
  5. Determinacja gier skończonych.

05.11.2024: Relacje

  1. Działania uogólnione
  2. Pojęcie relacji, dziedzina, obraz
  3. Tw. $(R\circ S)^{-1} = S^{-1}\circ R^{-1}$
  4. Tw. $(R\circ S)\circ T = R\circ (S\circ T)$.
  5. $R[A] = ...$

08.11.2024: Funkcje

  1. Definicja funkcji.
  2. Tw. Złożnie funkcji jest funkcją.
  3. Definicja injekcji i surjekcji
  4. Tw. Złożenie injekcji jest injekcją.
  5. Tw. Złożenie surjekcji jest surjekcją.
  6. Definicja bijekcji.
  7. Tw. Złożenie bijekcji jest bijekcją.
  8. Tw. Niech $f$ będzie funkcją. Wtedy ($f^{-1}$ jes funkcją) $\IFF$ ($f$ jest injekcją).
  9. Def. $|A|=|B| \IFF ...$
  10. Def. $|A| = n \IFF$

12.11.2024 - 10.01.2025

Seria wykładów prowadzonych przez dra Dominika Bojko.

14.01.2025: Wstęp do Teorii Kategorii

  1. Precyzyjna definicja kategorii SET: obiekty = zbiory; morfizmy wszystkie trójki $(A,f,B)$ takie, że $f:A\to B$.
  2. Pojęcie izomorfizmu obiektow w kategorii.
  3. Tw. Jeśli $f^{-1}$ istnieje, to jest wyznaczone jednoznacznie.
  4. Pojęcie obiektów końcowych i początkowych w kategorii. Twierdzenie o izomorfiżmie obiektów początkowych i końcowych.
  5. Konstrukcja kategorii dualnej.
  6. Własności funkcyjne iloczynu kartezjańskiego w kategorii SET.
  7. Pojęcie produktu obiektów w dowolnej kategorii oraz jednoznaczność tego pojęcia z dokładnością do izomorfizmu.
  8. Pojęcie coproduktu obiektów w dowolnej kategorii oraz jednoznaczność tego pojęcia z dokładnością do izomorfizmu.
  9. Coproduct w kategorii SET: $A \sqcup B = (\{0\}\times A) \cup (\{1\}\times B)$ (suma rozłączna)

17.01.2025: Funktory

  1. Zastosowania sumy rozłącznej typów w językach programowania.
  2. Pojęcie funktora między kategoriami. Pojęcie endofunktora.
  3. Przykłady endofunktorów kategorii SET:
    1. funktor tworzenia list: $L(X) = \{[x_1,\ldots,x_n], n\in\NN \land x_1,\ldots,x_n \in X\}$;
      $L(f)([x_1,\ldots,x_n]) = [f(x_1),\ldots,f(x_n)]$
      funkcja map w języku Python
    2. zbiór potęgowy: $\mathcal{P}(X) = P(X)$; $\mathcal{f}(U) = f[U]$
    3. funktor par: $P_2(X) = X\times X$; $P_2(f) ((x,y)) = (f(x),f(y))$
    4. funktor Reader z parametrem $A$: $R_A(X) = X^A$; $R_A(f)(\phi) = f\circ\phi$
    5. functor Writer z parametrem $M$: $W_M(X) = X\times M$; $W_M(f)((x,m)) = (f(x),m)$
    6. functor Maybe: $MB(X) = X \cup \{\uparrow_X\}$; $MB(f)(x) = \begin{cases} x &: x\in X\\ \uparrow_Y &: x = \uparrow_X\end{cases}$.
  4. Wykorzystanie funktora MayBe do obsługi wyjątków w językach programowania.

21.01.2025: Funktory - II

  1. Tw. Złożenie funktorów jest funktorem.
  2. Przykład. Jeśli $(X,\preceq)$ i $(Y,\leq)$ są częściowymi porządkami i $F:X\to Y$, to następujące zdania są rownoważne
    1. $F$ jest funktorem z $\mathcal{C}(X\preceq)$ do $\mathcal{C}(Y,\leq)$
    2. $(\forall x,y\in X)(x\preceq y \to F(x)\leq F(y))$
  3. Pojęcie funktora kowariantnego i kontrawariantnego
  4. Tw. $F$ jest funktorem z $\mathcal{C}$ do $\mathcal{D}$ wtedy i tylko wtedy, gdy $F$ jest funktorem z $\mathcal{C}^{op}$ do $\mathcal{D}^{op}$.
  5. Wniosek: Ustalmy zbiór $A$. Rozważamy funktor kontrawariantny $F_A(X) = A^{X}$.
    Wtedy złożenie $F_A\circ F_A$ jest funktorem.

24.01.2025: Naturalne transformacje

  1. Pojęcie naturalnej transformacji funktorów.
  2. Przykłady
  3. Funkcje polimorficzne
  4. Lambda wyrażenia.
  5. Zaczęliśmy wyznaczać naturalne transformacje między funktorami $I(X)=X$ oraz $P_2(X) = X\times X$.

28.01.2025: Lemat Yonedy

  1. Kategoria funktorów. Niech $\mathcal{C}$ i $\mathcal{D}$ będą kategoriami. Przez $[\mathcal{C},\mathcal{D}]$ oznaczamy kategorię której obiektami są wszystkie funktory z $\mathcal{C}$ do $\mathcal{D}$ a morfizmami są naturalne transformacje.
  2. Funktor hom: Niech $\mathcal{C}$ będzie dowolną lokalnie małą kategorią. Niech $A$ będzie obiektem $\mathcal{C}$. Określamy:
    (1) $\mathrm{hom}_A(X) = $ zbiór morfizmów kategorii $\mathcal{C}$ z $A$ do $X$;
    (2) $\mathrm{hom}_A(f) = (\lambda \phi \to f\circ \phi)$ dla $f:X\to Y$ w $\mathcal{C}$.
    Wtedy $\mathrm{hom}_A$ jest funktorem z $\mathcal{C}$ w kategorię SET$.
  3. Tw. (Lemat Yonedy) Niech $\mathcal{C}$ będzie dowolną lokalnie małą kategorią. Niech $A$ będzie obiektem $\mathcal{C}$. Niech $F$ będzie funktorem z $\mathcal{C}$ do kategorii SET. Wtedy $$ \mathrm{Nat}(\mathrm{hom}_A,F) \cong F[A] $$
Strona główna Moje zajęcia