MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI Program wykładów: dr inż. Barbara GŁUT Wstęp do logiki klasycznej: rachunek zdań, rachunek predykatów. Elementy semantyki. Podstawy teorii mnogości rachunek zbiorów, relacje, funkcje. Aspekty kombinatoryki: obiekty kombinatoryczne pojęcie obiektu, reprezentacje, metody przeliczania obiektów kombinatorycznych. Równania rekurencyjne. Zagadnienia istnienia obiektów o zadanych własnościach. Algorytmy kombinatoryczne. Grafy: reprezentacje i własności grafów, grafy eulerowskie i hamiltonowskie, drzewa, grafy planarne, kolorowanie grafów, digrafy, skojarzenia. szersze znaczenie: LOGIKA - nauka podająca prawa i reguły poprawnego myślenia oraz poprawnego wypowiadania myśli. Trzy główne działy: logika formalna, semiotyka, metodologia nauk semiotyka: nauka o języku jako środku formułowania i przekazywania myśli metodologia nauk: nauka o ogólnych metodach naukowych LOGIKA FORMALNA (symboliczna, matematyczna) problematyka rachunku logicznego i języka tych rachunków oraz zagadnienia struktury i własności systemów dedukcyjnych. Logika klasyczna (dwuwartościowa): system logiczny, w którym zdaniom przypisuje się jedną z dwu wartości logicznych - prawdę () lub fałsz (). Barbara Głut
Wszystkie czysto formalne aspekty myślenia mają swoje odpowiedniki w języku. Rozważa się więc sformalizowaną część języka naturalnego. Dla języka ustala się alfabet (symbole). Z symboli alfabetu tworzy się wyrażenia. Interesujące są jedynie wyrażenia poprawnie zbudowane (zbudowane zgodnie z wymogami składni, sensowne). Wyrażenia dzieli się na kategorie składniowe (syntaktyczne). Dwa wyrażenia należą do tej samej kategorii składniowej wtedy i tylko wtedy, gdy po zastąpieniu jednego przez drugie z wyrażeń sensownych otrzymujemy wyrażenie sensowne. (uwaga na wyrażenia wieloznaczne!) Na przykład: Kraków, Warszawa należą do tej samej kategorii składniowej, bo po zastąpieniu jednego przez drugi w zdaniu Kraków jest miastem otrzymamy - Warszawa jest miastem, tj. wyrażenie sensowne. Kraków, jest nie należą do tej samej kategorii składniowej, bo Jest jest miastem nie jest wyrażeniem sensownym. Podobnie: symbole arytmetyczne 2 i 5 należą do tej samej kategorii, a 2 i = nie 2 + 4 = 6 5 + 4 = 6 - zdanie poprawne, choć fałszywe = + 4 = 6 - bez sensu Barbara Głut 2
Podstawowe kategorie składniowe: WYRAŻENIA NAZWOWE WYRAŻENIA ZDANIOWE OPERATORY FUNKTORY A) Do kategorii WYRAŻEŃ NAZWOWYCH zalicza się wyrażenia, które mogą być podmiotem lub orzecznikiem zdań typu M jest N. Mogą więc należeć do tej kategorii rzeczowniki, przymiotniki, zaimki i inne odpowiednio zbudowane wyrażenia złożone. B) Do kategorii WYRAŻEŃ ZDANIOWYCH zalicza się: zdania, zmienne zdaniowe, funkcje zdaniowe. ZDANIE W języku naturalnym (np. polskim) przez zdanie rozumie się poprawnie zbudowane wyrażenie zawierające podmiot, orzeczenie itp. Rodzaje zdań: - oznajmujące -pytające - rozkazujące. Z logicznego punktu widzenia interesujące jedynie zdania oznajmujące i to tylko te, którym możemy nadać wartość logiczną (!), czyli w logice klasycznej - wartość prawdy lub fałszu. (zasada dwuwartościowości) Barbara Głut 3
Np.: zdanie w powyższym sensie: w przeciwieństwie do: Kraków leży nad Wisłą. Miasto leży nad rzeką. bo: drugie, choć poprawne w sensie gramatycznym, ale nie możemy stwierdzić prawdziwości (nadać wartości logicznej). Ta nieformalna definicja odnosi się również do języków sztucznych. W matematyce (w języku matematyki): 2 + 5 = 7 2 + 3 = 7 zdania x + 5 = 7 nie, ale tak, po podstawieniu w miejsce x symbolu konkretnej liczby ZMIENNA ZDANIOWA jest to zmienna, za którą można podstawiać dowolne zdanie. FUNKCJA ZDANIOWA jest to wyrażenie zawierające zmienne, z którego otrzymujemy zdania po podstawieniu za zmienne odpowiednich stałych. np.: Żadne S nie jest P a + b = b + a x + 4 = 7 Funkcje zdaniowe nazywa się także: formami zdaniowymi lub warunkami. Barbara Głut 4
OPERATORY Wjęzykach, w których wprowadza się zmienne i funkcje zdaniowe mogą wystąpić jeszcze wyrażenia innej kategorii składniowej tj. operatory. Operatorami są np.: kwantyfikatory, symbole abstrakcji {x: }, znaki dodawania i mnożenia zbiorów itp.. Wspólną cechą operatorów jest to, że ich częściami są wskaźniki. Można też powiedzieć, że operatory wiążą zmienne. Operatory, tak jak funktory występują łącznie z wyrażeniami określonych kategorii składniowych i tworzą wraz z nimi wyrażenia złożone określonej kategorii. Np. kwantyfikator operator zdaniotwórczy o jednym argumencie zdaniowym, symbol abstrakcji operator nazwotwórczy o jednym argumencie zdaniowym itd. FUNKTORY Funktory są wyrażeniami, które w połączeniu z pewnymi innymi wyrażeniami, zwanymi ich argumentami, tworzą złożone wyrażenia sensowne. Funktory dzieli się na kategorie składniowe ze względu na: kategorię składniową wyrażenia złożonego, które dany funktor tworzy wraz ze swymi argumentami, liczbę argumentów, kategorie składniowe kolejnych argumentów. Funktory tworzące wraz ze swymi argumentami wyrażenia zdaniowe nazywa się funktorami zdaniotwórczymi. Funktory tworzące wraz ze swymi argumentami wyrażenia nazwowe nazywa się funktorami nazwotwórczymi. Barbara Głut 5
Np.: funktory zdaniotwórcze o jednym argumencie zdaniowym - wyraz nie w zdaniu Nie mam., spójnik negacji w zdaniu ( 2 + 2 4 ) o dwóch argumentach zdaniowych - spójnik i łączący dwa wyrażenia zdaniowe, spójnik koniunkcji o dwóch argumentach nazwowych: wyraz oświeca w zdaniu Słońce oświeca ziemię, symbol < w zdaniu 2 < 3 funktor nazwotwórczy o jednym argumencie nazwowym sin w wyrażeniu sin(3 ) Funktory ekstensjonalne - czyli takie, które sprawiają, że wartość logiczna złożonego wyrażenia utworzonego przy ich pomocy zależy wyłącznie od wartości logicznej zdań składowych ( z pominięciem wszelkich innych czynników, w szczególności ich treści). Uzależniają w stały, sobie tylko właściwy sposób wartość logiczną zdań złożonych od wartości zdań składowych. Barbara Głut 6
Negacja: funktor zdaniotwórczy jednoargumentowy, używane symbole: ~ p - p Np p... Wyrażenie zbudowane ze znaku negacji i następującego po nim wyrażenia zdaniowego nazywamy negacją lub zaprzeczeniem. Czytamy: nie p, nieprawda, że p, nie jest tak, że p Pozostałe używane stałe - funktory dwuargumentowe Koniunkcja: używane symbole: p q p q K pq p & q p q Wyrażenie zdaniowe utworzone z dwóch wyrażeń zdaniowych połączonych znakiem koniunkcji nazywa się koniunkcją lub iloczynem logicznym. Człony koniunkcji nazywamy czynnikami. Czytamy p i q. Barbara Głut 7
Alternatywa: używane symbole: p q p q A pq p + q Wyrażenie zdaniowe utworzone z dwóch wyrażeń zdaniowych połączonych znakiem alternatywy nazywa się alternatywą lub sumą logiczną. Człony alternatywy nazywamy składnikami. Czytamy p lub q. Implikacja: używane symbole: p q p q C pq p q Wyrażenie zdaniowe utworzone z dwóch wyrażeń zdaniowych połączonych znakiem implikacji nazywa się implikacją lub okresem warunkowym. Pierwszy człon implikacji nazywamy poprzednikiem, a drugi następnikiem. Czytamy Jeżeli p to q. Barbara Głut 8
Równoważność: używane symbole: p q p q E pq p q Wyrażenie zdaniowe utworzone z dwóch wyrażeń zdaniowych połączonych znakiem równoważności nazywa się równoważnością. Pierwszy człon równoważności nazywamy lewą stroną równoważności, a drugi prawą stroną. Czytamy p wtedy i tylko wtedy, gdy q. Inne funktory: dysjunkcja (funktor Sheffera), binegacja (funktor jednoczesnego zaprzeczenia, funktor Łukasiewicza), alternatywa wykluczająca itd. Barbara Głut 9
Klasyczny rachunek zdań prawa i schematy logiczne, w których oprócz stałych logicznych występują tylko zmienne zdaniowe Alfabet języka rachunku zdań: zmienne zdaniowe -o określonej wartości logicznej {, } oznaczone symbolami liter p, q, r, p, p 2... spójniki logiczne (funktory zdaniotwórcze, stałe rachunku zdań) o symbolach... symbol pomocniczy -nawiasy ( ) V = { p, q, r,..., p, p 2,... } X = {,,,, } Z = { (, ) } A = V X Z alfabet języka rachunku zdań Wyrażenie: dowolny, skończony, niepusty ciąg symboli alfabetu np.: ((p q) r (p r) ( p) p q r (p r) p Wyrażenie poprawnie zbudowane (sensowne - syntaktycznie) gdy spełniony jeden z warunków: o jest jedną z liter, 2 o jeśli wyrażenia α oraz β są poprawnie zbudowane, to wyrażenie α α β α β α β α β (α) są również poprawnie zbudowane. F - zbiór formuł rachunku zdań Barbara Głut
Matrycowe ujęcie logiki zdań polega na podaniu liczbowych (,) charakterystyk dla poszczególnych związków prawdziwościowych zachodzących między zdaniami oraz na zastosowaniu tych charakterystyk do rozstrzygania formuł logiki zdań. metoda zero-jedynkowa: dla oznaczania prawdziwości zdania dla oznaczania fałszywości zdania Matryca negacji: p p Matryca koniunkcji: p q p q Koniunkcja jest prawdziwa wtedy i tylko wtedy, gdy oba jej czynniki są prawdziwe. Barbara Głut
Matryca alternatywy: p q p q Alternatywa jest fałszywa wtedy i tylko wtedy, gdy oba jej składniki są fałszywe. Matryca implikacji: p q p q Implikacja jest fałszywa wtedy i tylko wtedy, gdy jej poprzednik jest prawdziwy, a następnik fałszywy. Barbara Głut 2
Matryca równoważności: p q p q Równoważność jest prawdziwa wtedy i tylko wtedy, gdy obie jej strony mają taką samą wartość logiczną. Matryca dysjunkcji : p q p q Dysjunkcję nazywa się też funktorem Sheffera. Czytamy: nie zarazem p i q. Ma tę samą wartość logiczną co wyrażenie (p q). Barbara Głut 3
Matryca binegacji: p q p q Binegację nazywa się też funktorem jednoczesnego zaprzeczenia lub funktorem Łukasiewicza. Czytamy: ani p ani q. Ma tę samą wartość logiczną co wyrażenie (p q). Matryca alternatywy wykluczającej: p q p q Czytamy: albo p albo q. Ma tę samą wartość logiczną co wyrażenie (p q). Barbara Głut 4
wartościowanie zmiennych: dowolna funkcja określona na V o wartościach w zbiorze Y = {,} ω : V {, } ω(p) = dla oznaczenia prawdy, ω(p) = dla oznaczenia fałszu wartościowanie formuł : funkcja ω * : F {, } taka, że: (i) jeśli α jest zmienną zdaniową (α V), to ω * (α) = ω(α), (ii) jeśli α F jest postaci α lub α α 2 lub α α 2 lub α α 2, gdzie α oraz α 2 są formułami, a ω * (α ) i ω * (α 2 ) są już zdefiniowane, to odpowiednio: ω * (α) = ω * ( α ) = ω * (α ) ω * (α) = ω * (α α 2 ) = min(, + ω * (α 2 ) ω * (α ) ) ω * (α) = ω * (α α 2 ) = min(ω * (α ), ω * (α 2 ) ) ω * (α) = ω * (α α 2 ) = max(ω * (α ), ω * (α 2 ) ). Obliczanie wartości ω * (α) oznacza wyznaczanie wartości logicznej formuły: { p, p 2,..., p n } {, } Istnieje dokładnie 2 n wartościowań formuły zawierającej zmienne zdaniowe { p, p 2,..., p n }. Istnieje dokładnie n 2 2 n argumentowych funktorów. Czyli istnieją cztery funktory jednoargumentowe i szesnaście funktorów dwuargumentowych. A A A 2 A 3 Barbara Głut 5
B B B 2 B 3 B 4 B 5 B 6 B 7 B 8 B 9 B B B 2 B 3 B 4 B 5 Pytanie: czy można zapisać wszystkie funktory używając jedynie zbioru X = {,,,, }? Tak - np. dysjunkcja B 4 równoważna (p q) binegacja B 8 równoważna (p q) alternatywa wykluczająca B 6 równoważna (p q)... Pytanie: czy można zmniejszyć zbiór X = {,,,, }? Barbara Głut 6
Czy można wyeliminować symbol? ( p q ) = ( p q ) ( q p ) Czy można wyeliminować symbol? ( p q ) = ( p q ) Czy można wyeliminować symbol lub? ( p q ) = ( p q ) ( p q ) = ( p q ) ( p q ) = ( p q ) ( p q ) = ( p q ) Czyli można przyjąć za zbiór X : X = {,, } lub X = {, } lub X = {, } lub X = {, } A może wystarczy jeden funktor? Odpowiedź tak w dwóch przypadkach - funktor dysjunkcji funktor binegacji p p p p q (p q) (p q) p p p p q (p q) (p q) Barbara Głut 7