|
ŚFiNiA ŚFiNiA - Światopoglądowe, Filozoficzne, Naukowe i Artystyczne forum - bez cenzury, regulamin promuje racjonalną i rzeczową dyskusję i ułatwia ucinanie demagogii. Forum założone przez Wuja Zbója.
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:09, 10 Maj 2009 Temat postu: Algebra Kubusia - matematyka języka mówionego v.Beata x.0 |
|
|
Beta 1.0
Aksjomat logików praktyków:
Jak logicznie myślimy, tak matematycznie zapisujemy. Mówimy „NIE” zapisujemy (~), mówimy „i” zapisujemy AND(*), mówimy “lub” zapisujemy OR(+), w implikacji mówimy “musi” zapisujemy ( =>), mówimy “może” zapisujemy (~>).
Algebra Kubusia
Matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), Rafał3006 (sfinia), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za końcową, decydującą o wszystkim dyskusję
Spotkało się siedmiu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
Spis treści:
1.0 Notacja w algebrze Kubusia
2.0 Definicja algebry Kubusia
2.1 Definicje operatorów logicznych
2.2 Prawa Kubusia
2.3 Logika dodatnia i ujemna
3.0 Teoria implikacji w pigułce
3.1 Definicje implikacji prostej i odwrotnej
3.2 Najprostsza teoria matematyczna świata
3.3 Matematyka języka mówionego w przedszkolu
3.4 Aktualny stan matematyki w zakresie implikacji
4.0 Algebra Kubusia - implikacja
4.1 Prawa matematyczne implikacji
4.2 Prawa matematyczne równoważności
4.3 Naturalne kodowanie zdań
4.4 Symboliczne definicje operatorów
5.0 Nowa definicja implikacji
5.1 Definicje operatorów
5.2 Definicje spójników zdaniowych
5.3 Matematyczne kodowanie zdań
5.4 Pełny kwadrat logiczny implikacji
5.5 Równoważne definicje implikacji prostej
5.6 Równoważne definicje implikacji odwrotnej
5.7 Uproszczony kwadrat logiczny implikacji
5.8 Algorytm działania implikacji prostej
5.9 Algorytm działania implikacji odwrotnej
5.10 Kwadrat logiczny równoważności
6.0 Istota implikacji
6.1 Planeta implikacji
6.2 Implikacja w praktyce
6.3 Równoważność tabel zero-jedynkowych w logice dodatniej i ujemnej
7.0 Obietnice i groźby
7.1 Obietnice
7.2 Groźby
8.0 Podsumowanie
Wstęp:
Od 2500 lat ludzie poszukują logiki człowieka, czyli implikacji którą się on posługuje, dotychczas bez powodzenia. Żadna ze znanych implikacji, materialna, logiczna i ścisła tego nie robi. Powodem niepowodzeń jest fałszywy fundament dzisiejszej logiki w zakresie implikacji, według którego implikacja odwrotna jest zbędna. Tymczasem implikacją prostą => i odwrotną ~> plus prawami Kubusia doskonale posługują się wszystkie dzieci w przedszkolu milion razy na dobę. Musi to być zatem właściwy fundament którego logicy całego świata szukają.
W rzeczywistości implikacja to najprostszy ze spójników zdaniowych, nieporównywalnie prostszy od spójników technicznych AND(*), OR(*) i negacji na bazie których zbudowana jest cała dzisiejsza technika, z komputerami i Internetem na czele.
1.0 Notacja w algebrze Kubusia
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków
Miękka prawda/fałsz - może zajść ale nie musi
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
2.0 Definicja algebry Kubusia
Lista operatorów logicznych:
Kod: | p q OR NOR AND NAND <=> XOR => ~(=>) ~> ~(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: | Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> ~(=>)
~> ~(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Algebra Kubusia jest fundamentalnie inna od algebry Boole’a (inny fundament) wyłącznie w zakresie operatorów implikacji => i ~>. W algebrze Boole’a operator implikacji odwrotnej ~> jest zbędny, natomiast w algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
1 = PRAWDA
0 = FAŁSZ
Zmienna binarna - zmienna przyjmująca wartości wyłącznie 0 albo 1
Funkcja logiczna - to funkcja zmiennych binarnych połączonych operatorami logicznymi przyjmująca wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają. Niniejszy artykuł jest w 100% zgodny z powyższą definicją, wszelkie nowe prawa i wnioski tu podane wynikają bezpośrednio z definicji zero-jedynkowych odpowiednich operatorów oraz logicznego myślenia.
2.1 Definicje operatorów logicznych
W technice cyfrowej:
Operator logiczny = odpowiednia bramka logiczna
Kod: |
Bramka AND
p * q
| |
| |
-------
|AND |
| |
-------
|
|
Y=p*q
|
Bramka NAND powstaje przez zanegowanie wyjścia w bramce AND czyli:
Y = ~(p*q) - realizowana funkcja logiczna
Oczywiście zachodzi:
p NAND q = ~(p*q)
Darujemy sobie jednak operatory w logice ujemnej (NAND) jako nie używane w naturalnym języku mówionym.
Kod: |
Bramka OR
p + q
| |
| |
-------
|OR |
| |
-------
|
|
Y=p+q
|
Bramka NOR powstaje przez zanegowanie wyjścia w bramce OR czyli:
Y = ~(p+q) - realizowana funkcja logiczna
Kod: |
Bramka implikacji prostej
p=> q
| |
O=> |
-------
| OR |
| |
-------
|
|
r=p=>q=~p+q
|
Implikacja prosta bo stojąc na p widzimy linię niezanegowaną.
Kod: |
Bramka implikacji odwrotnej
p~> q
| |
O |
O~> O
-------
| OR |
| |
-------
|
|
r=p~>q=p+~q
|
Kod: |
Bramka implikacji odwrotnej
p~> q
| |
|~> O
-------
| OR |
| |
-------
|
|
r=p~>q=p+~q
|
Implikacja odwrotna bo stojąc na p widzimy linię zanegowaną.
Uwaga !
Bramka implikacji odwrotnej powstaje poprzez wprowadzenie po jednym negatorze w linie wejściowe bramki =>. Negacja z linii p powędruje wówczas do linii q bo ~(~A)=A.
W obu implikacjach => i ~> p jest poprzednikiem implikacji zaś q jest następnikiem implikacji, czyli po „Jeśli…” mamy zawsze p zaś po „to…” mamy zawsze q.
Oczywiście na mocy definicji:
p=>q # p~>q
Podsumowanie:
1.
Operator NAND powstaje poprzez zanegowanie wyjścia AND
2.
Operator NOR powstaje poprzez zanegowanie wyjścia w OR
3.
Implikacja odwrotna p~>q powstaje poprzez wprowadzenie po jednym negatorze w linie wejściowe bramki p=>q.
p~>q = p+~q
p=>q = ~(p)+~(~q) = ~p+q
W obu równaniach wyżej mamy:
p = poprzednik, po „Jeśli…”
q = następnik, po „to…”
Prawo Kubusia:
Zmieniamy nazwy sygnałów wejściowych w bramce ~> na przeciwne
Kod: |
Bramka implikacji odwrotnej
~p~>~q
| |
|~> O
-------
| OR |
| |
-------
|
|
r=~p~>~q=(~p)+~(~q)=~p+q
|
p=>q = ~p+q
~p~>~q = (~p)+~(~q) = ~p+q
czyli:
p=>q = ~p~>~q - prawo Kubusia
Uwaga !
We wszystkich przekształceniach wyżej mamy:
p = poprzednik, po „Jeśli…”
q = następnik, po „to…”
W analogiczny sposób przechodzimy z bramki implikacji odwrotnej p~>q na implikację prostą p=>q oraz udowadniamy drugie prawo Kubusia:
p~>q = ~p=>~q
2.2 Prawa Kubusia
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Definicje:
p=>q = ~p+q
p~>q = p+~q
Dowód 1:
p=>q = ~p+q
~p~>~q = (~p)+~(~q) = ~p+q
Dowód 2:
p~>q = p+~q
~p=>~q = ~(~p)+(~q) = p+~q
2.3 Logika dodatnia i ujemna
W Wikipedii w temacie "logika ujemna" pisze o związku 0 i 1 z poziomami napięć. Przydatność takiego pojęcia w matematyce jest równa zeru absolutnemu, zapomnijmy o tym.
Dowolne wyrażenie w algebrze Boole’a może przyjmować w osi czasu wyłącznie wartości 0 albo 1
A+B(C*D) .....
gdzie:
A,B,C,D… - zmienne binarne przyjmujące w osi czasu wyłącznie wartości 0 albo 1
Wyrażeniu jak wyżej możemy przypisać abstrakcyjną funkcję logiczną Y (wyjście cyfrowe).
Fizycznie, dowolna funkcja logiczna Y:
Y=A+B(C*D) .....
Może przyjmować w osi czasu wyłącznie wartości 0 albo 1.
Po przepuszczeniu jej przez prościutki negator otrzymamy funkcję ~Y będącą lustrzanym odbiciem funkcji Y. Logika ujemna (~Y) to lustrzane odbicie logiki dodatniej.
Oczywiście zachodzi:
Y = ~(~Y)
O tym, że logika ujemna istnieje można się łatwo przekonać w technice cyfrowej obserwując wszystko na przyrządzie pomiarowym zwanym oscyloskopem.
Definicja iloczynu logicznego.
Y=A1*A2 ….*An = 1 - wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Definicja sumy logicznej.
Y=A1+A2 ….+An = 0 - wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru
Jeśli:
Y=A1*A2 ….*An = 1 - wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
to:
~Y= ~A1+~A2…+~An = 0 - bo wszystkie składniki sumy logicznej są równe 0.
Oczywistym jest że:
Jeśli Y=1 to ~Y=0
Jeśli A1=1 to ~A1=0 itd.
Z ostatniego równania mamy:
Y= ~(~Y) = ~(~A1+~A2…+~An) = ~(0) = 1 czyli:
A1*A2 ….*An = ~(~A1+~A2…+~An) - prawo de’Morgana dla iloczynu logicznego
To samo rozumowanie możemy przeprowadzić dla sumy logicznej.
Jeśli:
Y = A1+A2…+An = 0 - wtedy i tylko wtedy gdy wszystkie zmienne są równa zeru
to:
~Y = ~A1*~A2…*~An =1 - bo wszystkie składniki iloczynu logicznego są równe 1
W tym przypadku mamy;
Jeśli Y=0 to ~Y=1
Jeśli A1=0 to ~A1=1 itd.
Z ostatniego równania mamy:
Y = ~(~Y) = ~(~A1*~A2…*~An) = ~(1) = 0
czyli:
A1+A2…+An = ~(~A1*~A2…*~An) - prawo de’Morgana dla sumy logicznej
Definicja
Dowolnemu wyrażeniu w algebrze Boole’a możemy przypisać abstrakcyjną funkcję logiczną Y przyjmującą w osi czasu wartości binarne w zależności od zmiennych wejściowych.
Logika dodatnia - funkcja logiczna (wyjście cyfrowe) jest niezanegowana (Y)
Logika ujemna - funkcja logiczna (wyjście cyfrowe) jest zanegowana (~Y)
Prawa de’Morgana mówią o związkach między logiką dodatnią a ujemną na dowolnie długiej funkcji logicznej z dowolnie pomieszanymi operatorami.
Y=A+(B*C)
przejście do logiki ujemnej
~Y = ~A * (~B + ~C) - totalna negacja wszystkich zmiennych i wymiana operatorów na przeciwne tzn. OR(+) na AND(*) i odwrotnie.
Powrót do logiki dodatniej możemy wykonać na dwa sposoby:
I.
Y=A+(B*C) - ponowna totalna negacja wszystkich zmiennych i wymiana operatorów
II.
Y = ~(~Y) = ~[~A * (~B + ~C)] - zanegowanie logiki ujemnej
Twierdzenie 2.5
Przejście z logiki dodatniej (Y) do logiki ujemnej (~Y) polega na zamianie wszystkich zmiennych na przeciwne oraz wszystkich operatorów na przeciwne czyli AND(*) na OR(+) i OR na AND. Domyślna kolejność wykonywania działań w logice ujemnej zmieni się na: nawiasy, OR, AND.
Logika dodatnia:
A.
Y=A+B(C+~D)+E*~F - logika dodatnia (Y)
Domyślna kolejność wykonywania działań w logice dodatniej: nawiasy, AND(*), OR(+).
Przejście do logiki ujemnej:
B.
~Y=~A*~B+(~C*D)*~E+F - logika ujemna (~Y)
Domyślna kolejność wykonywania działań w logice ujemnej: nawiasy, OR(+), AND(*)
Przejścia powrotnego do logiki dodatniej dokonujemy w identyczny sposób.
C.
Y=A+B(C+~D)+E*~F - logika dodatnia (Y)
Domyślna kolejność wykonywania działań w logice dodatniej: nawiasy, AND(*), OR(+).
Zmiana kolejności wykonywania działań w logice ujemnej jest oczywista bowiem przy przejściu z logiki dodatniej do ujemnej AND zamienia się w OR.
Dowód twierdzenia:
I.
Y=A+B(C+~D)+E*~F - funkcja zapisana w logice dodatniej (Y)
Uzupełniamy brakujące nawiasy i operatory.
II.
Y=A+(B*(C+~D))+(E*~F) - logika dodatnia (Y)
negujemy wszystkie zmienne i wymieniamy operatory na przeciwne.
III.
~Y=~A*(~B+(~C*D))*(~E+~F) - logika ujemna (~Y)
Zauważmy, że jeśli przyjmiemy domyślną kolejność wykonywania działań w logice ujemnej (~Y): nawiasy, OR, AND to zbędne stanie się dokładanie nawiasów. Przejście powrotne do logiki dodatniej wykonujemy w identyczny sposób tj. zamieniamy wszystkie zmienne i operatory na przeciwne.
IV.
Y=A+(B*(C+~D))+(E*~F) - logika dodatnia (Y)
Aby powrócić do funkcji pierwotnej I usuwamy dołożone nawiasy.
Y=A+B(C+~D)+E*~F - oryginał, logika dodatnia (Y)
Zauważmy, że w tej metodzie uzupełniamy nawiasy przy przejściu z logiki dodatniej na ujemną oraz usuwamy je przy przejściu powrotnym by dojść do oryginału. W sumie niepotrzebna syzyfowa praca bowiem o fakcie zapisania funkcji w logice ujemnej informuje precyzyjnie przeczenie przy jej nazwie (~Y).
3.0 Teoria implikacji w pigułce
Ekspertami algebry Kubusia są dzieci w przedszkolu, to naturalna logika człowieka wyssana z mlekiem matki. Zapoznajmy się zatem z całością teorii implikacji w skrócie, abyśmy poczuli do czego zmierzamy.
3.1 Definicje implikacji prostej i odwrotnej
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Prawa de’Morgana:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany operatora OR(*) na AND(*)
To co wyżej to najważniejsze prawa w całej logice. Jak widać, analogia między prawami Kubusia i prawami de’Morgana jest zupełna. Spójniki AND i OR plus negacja wraz z prawami de’Morgana to fundament świata martwego (technika, komputery, Internet…), natomiast spójniki „musi” => i „może” ~> plus prawa Kubusia to fundamenta świata żywego np. matematyczny opis wolnej woli wszelkich istot żywych.
3.2 Najprostsza teoria matematyczna świata
Jutro pójdę do kina lub do teatru
Y=K+T
Dotrzymam słowa (Y), jeśli jutro pójdę do kina lub do teatru
.... a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negację zmiennych i zmianę operatorów:
~Y=~K*~T
Skłamię (~Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
Definicje:
Logika dodatnia = funkcja logiczna (wyjście cyfrowe) niezanegowana (Y)
Logika ujemna = funkcja logiczna (wyjście cyfrowe) zanegowana (~Y)
Związek logiki dodatniej z logiką ujemną jest oczywisty:
Y=~(~Y)
W zdaniach twierdzących wyjście cyfrowe (Y) jest na poziomie abstrakcyjnym, natomiast w implikacji wyjście cyfrowe (q) jest na poziomie rzeczywistym - zawiera je wypowiadane zdanie.
Prawo de'Morgana w znanej formie:
K+T = ~(~K*~T)
czyli:
Nie może sie zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru
~(~K*~T)
jest praktycznie nieużywane w języku mówionym.
Natomiast absolutnie trywialne prawa Kubusia (z tym się zgadzam) używane są przez każdego człowieka milion razy na dobę.
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Gwarancja:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody.
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K
Implikacja odwrotna bo człowiek ma prawo do darowania dowolnej kary, inaczej jego wolna wola leży w gruzach.
Gwarancja w implikacji odwrotnej wynika z prawa Kubusia:
W~>K = ~W=>~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu że nie spełniłem warunku kary.
Jaś do Zuzi w przedszkolu:
Jeśli nie oddasz zabawki to cię pobiję
~Z~>B
Zdanie w logice dodatniej bo wyjście B niezanegowane
… a jak dodam zabawkę ?
Prawo Kubusia:
~Z~>B = Z=>~B
Jeśli oddasz zabawkę to cię nie pobiję
Z=>~B
odpowiedź w logice ujemnej bo wyjście B zanegowane (~B).
Z powyższego mamy:
1.
groźba (~>) w logice dodatniej = obietnica (=>) w logice ujemnej
analogicznie:
2.
obietnica (=>) w logice dodatniej = groźba (~>) w logice ujemnej
Przykład:
Jeśli zdasz egzamin dostaniesz komputer
E=>K
… a jak nie zdam egzaminu ?
Prawo Kubusia:
E=>K = ~E~>~K
Jeśli nie zdasz egzaminu to nie dostaniesz komputera
~E~>~K
Koniec najprostszej teorii matematycznej świata, to wszystko jest nieprawdopodobnie proste.
3.3 Matematyka języka mówionego w przedszkolu
Spójniki AND(*) i OR(+)
Zuzia:
Moja mama powiedziała, że jutro pójdziemy do cyrku lub do kina
Y=C+K
Mama dotrzyma słowa (Y) jeśli pójdzie z Zuzią do cyrku (C) lub do kina (K)
Jaś:
…. a czy wiesz kiedy twoja mama będzie kłamczuchą ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów:
~Y=~C*~K
Zuzia - oczywiście że wiem:
Moja mama skłamie (~Y), jeśli jutro nie pójdziemy do cyrku (~C) i nie pójdziemy do kina (~K).
Implikacja prosta
Definicja:
Kod: | p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1 |
Zobaczmy, jak doskonale operują definicją implikacji prostej dzieciaki w przedszkolu:
Jaś:
Jeśli mnie pocałujesz dostaniesz czekoladę
P=>C =1
1 1 =1
Oczywiście:
Jeśli Zuzia pocałuje Jasia i nie dostanie czekolady to Jaś jest kłamcą
P=>~C =0
1 0 =0
Zuzia:
… a jak nie pocałuję ?
Prawo Kubusia:
P=>C = ~P~>~C
Jaś:
Jeśli mnie nie pocałujesz to nie dostaniesz czekolady
~P~>~C=1
0 0 =1
LUB (domyślnie)
Jeśli mnie nie pocałujesz to możesz dostać czekoladę
~P~~>C =1
0 1 =1
Jaś ma prawo dać Zuzi czekoladę mimo iż ta nie chce go pocałować (akt miłości) i nie ma prawa zostać kłamcą, zgodnie z definicją implikacji prostej.
Implikacja odwrotna
Definicja:
Kod: | p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0 |
Przedszkolaki posługują się implikacją odwrotną w sposób … jaki dzisiejszym matematykom się nie śniło.
Jaś:
Jeśli nie oddasz zabawki to cię pobiję
~Z~>B =1
To jest groźba w logice dodatniej bo kara nie jest zanegowana, dlatego kodujemy:
1 1 =1
LUB (domyślnie)
Jeśli nie oddasz zabawki to cie nie pobiję
~Z~~>~B =1
1 0 =1
Prawo do darowania kary (akt łaski).
Zuzia:
… a jak dodam zabawkę ?
Prawo Kubusia:
~Z~>B = Z=>~B
Jaś:
Jeśli oddasz zabawkę to cię nie pobiję
Z=>~B =1
0 0 =1
odpowiedź w logice ujemnej bo wyjście B zanegowane (~B).
Oczywiście jeśli Zuzia odda zabawkę i Jaś ją pobije z powodu że oddała mu zabawkę, to Jaś jest kłamcą.
Z=>B =0
0 1 =0
Jak widać wyżej, dzieci w przedszkolu doskonale posługują się w praktyce algebrą Kubusia, czyli matematyką języka mówionego.
3.4 Aktualny stan matematyki w zakresie implikacji
Matematyczne kodowanie implikacji prostej w dzisiejszej matematyce:
A.
Jeśli liczba jest podzielna przez 8 to na pewno => jest podzielna przez 2
P8=>P2
… a jeśli liczba nie jest podzielna przez 8 ?
Prawo Kubusia:
P8=>P2 = ~P8~>~P2
B.
Jeśli liczba nie jest podzielna przez 8 to może ~> być niepodzielna przez 2
~P8~>~P2
Zdanie B dzisiejsza matematyka koduje jako:
P8=>P2
Oczywiście matematycznie kodowanie jest poprawne bo prawo Kubusia.
Matematyczne kodowanie implikacji odwrotnej:
C.
Jeśli liczba jest podzielna przez 2 to może ~> być podzielna przez 8
P2~>P8
Zdanie C dzisiejsza matematyka koduje jako:
~P2=>~P8
…. a jeśli liczba nie jest podzielna przez 2 ?
Prawo Kubusia:
p~>q = ~p=>~q
D.
Jeśli liczba nie jest podzielna przez 2 to na pewno => nie jest podzielna przez 8
~P2=>~P8
W sumie dowolna implikację w algebrze Boole’a możemy kodować na dwa sposoby rzucając monetą np.
Jeśli liczba jest podzielna przez 2 to może ~> być podzielna przez 8
Orzełek:
P2~>P8
Reszka:
~P2=>~P8
… no bo jak równość to równość.
Aksjomat:
Jeśli szukamy matematyki języka mówionego to kodowanie matematyczne musi być zgodne z wypowiedzianym zdaniem.
W algebrze Kubusia zapis matematyczny zdania musi mieć 100% przełożenie na wypowiedziane zdania. Determinuje to jednoznaczność matematyki, czyli z dowolnego zapisu matematycznego możemy odtworzyć wypowiedziane zdanie np.
P2~>P8
Jeśli liczba jest podzielna przez 2 to może ~> być podzielna przez 8
~P2=>~P8
Jeśli liczba nie jest podzielna przez 2 to na pewno => nie jest podzielna przez 8
Aksjomat:
Wymachiwanie zerami i jedynkami bez związku z rzeczywistością jest bez sensu.
4.0 Algebra Kubusia - implikacja
Algebra Kubusia jest zgodna z algebrą Boole’a z wyjątkiem implikacji, gdzie różnice są fundamentalne.
Definicja:
W algebrze Kubusia punktem odniesienia jest zawsze wypowiedziane zdanie czyli po „Jeśli…” zawsze jest poprzednik implikacji p zaś po „to…” zawsze mamy następnik q. O fakcie czy wypowiedziane zdanie jest implikacją prostą => czy też odwrotną ~> decyduje treść zdania. Algorytmy rozpoznawania za chwilę.
W algebrze Kubusia punkt odniesienia ustawiony jest zawsze na wypowiedzianym zdaniu „Jeśli p to q”, nie zaś na implikacji prostej => (dzisiejsza logika), czy też implikacji odwrotnej ~> (trzeci możliwy punkt odniesienia).
Małe, a robi wielką różnicę … algebra Kubusia w obsłudze języka mówionego jest w 100% jednoznaczna !
4.1 Prawa matematyczne implikacji
Fundament logiki implikacyjnej:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
=> - warunek wystarczający
~> - warunek konieczny
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikację prostą =>
Jeżeli zdanie jest implikacja prostą to w stronę p=>q zachodzi warunek wystarczający zaś w drugą stronę q~>p zachodzi warunek konieczny.
Jeśli zdanie jest implikacja odwrotną to w stronę p~>q zachodzi warunek konieczny zaś w drugą stronę q=>p na pewno zachodzi warunek wystarczający.
Jeśli zdanie p=>q jest implikacją prostą to zdanie q=>p jest zawsze fałszywe czyli:
(p=>q)(q=>p) = 1*0 =0
(p=>q)(~p=>~q)=1*0=0
(p~>q)(q~>p) =1*0=0
Dwustronny warunek konieczny jest fizycznie niemożliwy do zaistnienia, w przeciwieństwie do warunku wystarczającego w równoważności.
4.2 Prawa matematyczne równoważności
Fundament logik równoważnościowych:
Definicja równoważności:
p<=>q = p*q+~p*~q
Prawo kontrapozycji:
p=>q = ~q=>~p
Jeśli zdanie jest równoważnością to zachodzi warunek wystarczający w obie strony.
Możliwe, równoważne definicje równoważności:
p<=>q = (p=>q)(q=>p)=1*1=1 - dwustronny warunek wystarczający
p<=>q = (p=>q)(~p=>~q)=1*1=1
4.3 Naturalne kodowanie zdań
* - spójnik „i” (AND)
+ - spójnik „lub” (OR)
=> - spójnik „na pewno” (zachodzi dla każdego elementu po „Jeśli…)
~~> - spójnik „może” (wystarczy jedna prawda)
Matematyczny zapis zdań jest w 100% zgodny z naturalną logiką człowieka. W zapisie matematycznym rozstrzygamy czy zdanie jest prawdziwe/fałszywe lub kiedy w przyszłości zdanie będzie prawdziwe/fałszywe.
Przykłady:
Pies ma cztery łapy - prawda
Pies nie ma czterech łap - fałsz
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo każdy pies ma cztery łapy
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - oczywisty fałsz
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~~>~4L =1 bo kura
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń
Jeśli księżyc jest z sera to pies ma cztery łapy
Zdanie fałszywe bo brak związku między księżycem a psem.
4.4 Symboliczne definicje operatorów
Istotę symbolicznej definicji dowolnego operatora pokażemy na przykładzie operatora OR(+).
Zero-jedynkowa definicja operatora OR(+):
Kod: |
p q Y=p+q
1 1 =1
1 0 =1
0 0 =0
0 1 =1 |
Oczywiście kolejność wierszy nie ma znaczenia, możemy je dowolnie przestawiać.
Symboliczna definicja operatora OR(*).
Przyjmujemy:
1=p, 0=~p
1=q, 0=~q
Kod: |
p q Y=p+q
p q =1
p ~q =1
~p ~q =0
~p q =1 |
Z definicji symbolicznej bardzo łatwo wygenerować realizowaną funkcję logiczną w równaniu algebry Boole’a sprowadzając wszystkie sygnały do jedynek (definicja AND) albo wszystkie sygnały do zera (definicja OR). Powyższą tabelę sprowadziliśmy do jedynek dlatego zawsze korzystamy z definicji operatora AND. Możliwe są dwie równoważne funkcje logiczne opisujące powyższą tabelę.
A.
W linii 3 mamy samotne zero zatem:
~p*~q = ~Y - obie strony równania sprowadzamy do 1
czyli:
Y = ~(~p*~q) = p+q - prawo de’Morgana
gdzie:
Y - funkcja logiczna zmiennych binarnych p i q
czyli:
Prawda (Y) jeśli zajdzie p lub q
… a kiedy zdanie będzie fałszywe ?
~Y = ~(p+q)=~p*~q
Fałsz (~Y) jeśli zajdzie ~p*~q
B.
Równoważną funkcję logiczną otrzymamy opisując jedynki w powyższej tabeli:
Y = p*q+p*~q+~p*q
… a kiedy zdanie będzie fałszywe ?
1.
Uzupełniamy brakujące nawiasy
Y=(p*q)+(p*~q)+(~p*q)
2.
Przechodzimy do logiki ujemnej (~Y) negując wszystkie zmienne i wymieniając operatory na przeciwne.
~Y = (~p+~q)*(~p+q)*(p+~q)
czyli:
Zdanie będzie fałszywe (~Y) jeśli zajdą jednocześnie trzy zdarzenia ujęte w nawiasy czyli:
~p+~q=1
~p+q=1
p+~q=1
Definicja logiki dodatniej i ujemnej:
Y - logika dodatnia jeśli funkcja logiczna Y niezanegowana (Y)
~Y - logika ujemna jeśli funkcja logiczna Y zanegowana (~Y)
W praktyce języka mówionego najczęściej korzystamy z równania A bo jest prostsze.
Przykład:
Jutro pójdę do kina lub do teatru
Y=K+T - zapis naturalny zgodny z językiem mówionym
p=K
q=T
Równanie A
Dotrzymam słowa (Y) jeśli pójdę do kina lub do teatru
… a kiedy skłamię ?
~Y = ~(K+T) = ~K*~T
Nie dotrzymam słowa (~Y) jeśli nie pójdę do kina (~K) i nie pójdę do teatru (~T)
Równanie B
Równanie B jest równoważne zatem podstawiając p i q z wypowiedzianego zdania mamy:
Y = K*T+K*~T+~K*T - kolejność wykonywania działań AND(*), OR(+)
Dotrzymam słowa (Y) jeśli pójdę do kina i do teatru lub pójdę do kina i nie pójdę do teatru lub nie pójdę do kina i pójdę do teatru.
czyli:
Dotrzymam słowa (Y) jeśli zajdzie jakiekolwiek zdarzenie połączone spójnikiem „lub” (OR).
… a kiedy skłamię ?
1.
Uzupełniamy nawiasy w powyższym równaniu
Y=(K*T)+(K*~T)+(~K*T)
2.
Przechodzimy do logiki ujemnej (~Y) negując wszystkie zmienne i odwracając operatory (AND na OR i odwrotnie)
~Y=(~K+~T)*(~K+T)*(K+~T)
Czyli skłamię (~Y) jeśli zajdą jednocześnie wszystkie zdarzenia ujęte w nawiasy czyli:
~K+~T =1
~K+T=1
K+~T=1
Jak widać wyższość symbolicznej definicji sumy logicznej jest bezdyskusyjna. Symboliczna definicja dowolnej funkcji logicznej to po prostu język asemblera języka mówionego. Otrzymujemy zapisy zgodne z językiem mówionym mające 100% pokrycie w kodzie maszynowym (zerach i jedynkach).
5.0 Nowa definicja implikacji
Narodziny nowej definicji implikacji na SFINII trwały 3 lata …
5.1 Definicje operatorów
Definicja implikacji prostej:
Jeśli zajdzie p to musi => zajść q
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
=> - warunek wystarczający między p i q, spójnik „musi” w języku mówionym
Definicja implikacji odwrotnej:
Jeśli zajdzie p to może ~> zajść q
p~>q = p+~q
p musi być warunkiem koniecznym dla q
~> - warunek konieczny między p i q
5.2 Definicje spójników zdaniowych
MUSI =>
p=>q=1
Dla każdego elementu spełniającego warunek p musi zajść q
MUSI = warunek wystarczający =>
MOŻE ~>
Warunek konieczny spełniony
p~>q=1
Istnieje element spełniający warunek p i q i zdanie spełnia warunek konieczny, implikacja odwrotna jest prawdziwa
MOŻE = warunek konieczny ~>
MOŻE ~~>
Warunek konieczny niespełniony
p~~>q=1
Istnieje element spełniający warunek p i q ale zadnie nie spełnia warunku koniecznego, implikacja odwrotna jest fałszywa
Kryterium prawdziwości zdania dla spójnika może:
(p ~~>q) + (p~>q)
Zdanie jest prawdziwe jeśli zajdzie MOŻE ~~> lub MOŻE ~>
Wniosek:
Nie każde zdanie prawdziwe na mocy spójnika MOŻE ~~> jest implikacją odwrotną, czyli spełnia warunek konieczny ~>
Przykład:
Jeśli zwierze ma cztery łapy to może być psem
4L~>P=1
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń...
Zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, implikacja odwrotna fałszywa bo 4 łapy nie są konieczne by nie być psem bo pies
4L~>~P=0 - implikacja odwrotna fałszywa.
Możemy użyć prawa Kubusia by uprościć rozstrzygnięcie o warunku koniecznym/wystarczającym. Dobre prawo matematyczne zawsze zamieni prawdę w prawdę albo fałsz w fałsz - nie ma innej możliwości.
Prawo Kubusia:
4L~>~P (warunek konieczny) = ~4L => P (warunek wystarczający)
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Oczywisty fałsz, zatem warunek wystarczający nie zachodzi, co oznacza także brak warunku koniecznego w zdaniu 4L~>~P.
5.3 Matematyczne kodowanie zdań
1. Sprawdzamy czy z zdaniu występuje warunek wystarczający, jeśli tak to idziemy do pkt. A
2. Sprawdzamy czy w zdaniu występuje spójnik może ~~>, jeśli tak to idziemy do pkt. B
3. Jeśli żaden z powyższych warunków nie zachodzi to zdanie jest fałszywe lub niepoprawne
Zdanie niepoprawne - zdanie któremu nie da się przypisać ani prawdy, ani fałszu np. wszelkie zdania pytające.
A. Implikacja prosta:
Do prawidłowej obsługi warunku wystarczającego => konieczne są dwa symbole:
=> - warunek wystarczający, spójnik MUSI
<=> - równoważność
Po stwierdzeniu p=>q musimy wykluczyć q=>p aby mieć pewność, że p=>q to implikacja prosta
B. Implikacja odwrotna:
Do prawidłowej obsługi warunku koniecznego ~> również potrzebujemy dwóch symboli:
~> - warunek konieczny, jeśli zachodzi to implikacja jest prawdziwa, zdanie oczywiście prawdziwe
~~> zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, ale nie zachodzi warunek konieczny ~>, implikacja odwrotna jest fałszywa
Po stwierdzeniu prawdziwości zdania na mocy spójnika MOŻE ~~> musimy dodatkowo stwierdzić warunek koniczny by mieć pewność że zdanie jest implikacją odwrotną prawdziwą.
UWAGA !
Dowolne zdanie „Jeśli…to…” kodujemy matematycznie w następujący sposób:
p - poprzednik implikacji, zawsze po spójniku „Jeśli…”
q - następnik implikacji, zawsze po spójniku „to…”
Poprzednik p i następnik q łączymy ze sobą jednym z czterech możliwych operatorów =>, <=>, ~>, ~~>. Jednoznaczne rozstrzygnięcie z jakim zdaniem mamy do czynienia umożliwia algorytm przedstawiony wyżej.
5.4 Pełny kwadrat logiczny implikacji
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Kod: |
Implikacja prosta Implikacja odwrotna
A1:p=>q=~p+q=1 A2:p~>q=p+~q=1
p*q=1 p*q=1
1 1=1 1 1=1
W.Wystarczający W.Konieczny
B1:p=>~q=~p+~q=0 B2:p~~>~q=1
p~>~q=p+~q=0
p*~q=0 p*~q=1
1 0=0 1 0=1
Prawa Kubusia: Prawa Kubusia:
p=>q=~p~>~q p~>q=~p=>~q
p=>~q=~p~>q p~>~q=~p=>q
C1:~p~>~q=~p+q=1 C2:~p=>~q=p+~q=1
~p*~q=1 ~p*~q=1
0 0=1 0 0=1
W.Konieczny W.Wystarczający
D1:~p~~>q=~p+~q=1 D2:~p=>q=p+q=0
~p~>q=~p+~q=0
~p*q=1 ~p*q=0
0 1=1 0 1=0
|
Prawdziwość zdania dla linii D1:
(~p~~>q)+(~p~>q) = 1+0 =1
Prawdziwość zdania dla linii B2:
(p~~>~q)+(p~>~q) = 1+0 =1
Kwadrat logiczny implikacji, to dwa izolowane układy logiczne, implikacja prosta z lewej strony i implikacja odwrotna z prawej strony, pomiędzy którymi nie zachodzą żadne zależności matematyczne, w szczególności prawa kontrapozycji, co widać w powyższej tabeli.
Pełny kwadrat logiczny implikacji zawiera w sobie trzy równoważne definicje implikacji:
A.
Definicja zero-jedynkowa - kod maszynowy implikacji
B.
Definicja symboliczna implikacji
C.
Definicja operatorowa implikacji - zgodna z naturalnym językiem mówionym
Równoważność tych definicji udowodnimy w dwóch następnych punktach
5.5 Równoważne definicje implikacji prostej
Definicja zero-jedynkowa implikacji prostej:
Kod: | p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1 |
Definicja symboliczna implikacji prostej:
Kod: | p q p=>q
p q =1
p ~q =0
~p ~q =1
~p q =1 |
Gdzie:
1=p, 0=~p
1=q, 0=~q
Jak widać w definicji symbolicznej wszystkie sygnały sprowadzamy do jedynki. Definicja symboliczna to nic innego jak rozpisane wszystkie przypadki jakie mogą się wydarzyć. Na jej podstawie najprościej można ułożyć równania algebry Boole’a opisujące implikację.
Najłatwiej to zrobić dla linii drugiej bo w wyniku mamy samotne zero:
p*~q = ~(p=>q) - wynik też musimy sprowadzić do jedynki
Stąd:
p=>q = ~(p*~q) = ~p+q - na podstawie prawa de’Morgana
Równoważne równanie otrzymujemy dla linii będących w wyniku jedynkami:
p=>q = p*q+~p*~q+~p*q
Definicja operatorowa wynika z naturalnego opisu tabeli symbolicznej metodą, piszemy to co widzimy.
1.
Jeśli zajdzie p to na pewno => zajdzie q, twarda prawda bo druga linia jest twardym fałszem
p=>q=1
2.
Jeśli zajdzie p to na pewno => zajdzie ~q, twardy fałsz bo wyżej twarda prawda
p=>~q=0
Wniosek:
W implikacji prostej p musi być warunkiem wystarczającym dla q, inaczej zdanie p=>~q nie będzie twardym fałszem, definicja implikacji leży w gruzach.
3.
Jeśli zajdzie ~p to może zajść ~q, bo kolejna linia też jest prawdą
~p~>~q=1
LUB
4.
Jeśli zajdzie ~p to może zajść q, bo linia wyżej też jest prawdą
~p~~>q=1
Komentarz:
p=>q = ~p + q - definicja implikacji prostej
Dobre prawo matematyczne przekształca prawdę w prawdę oraz fałsz w fałsz, nie ma innych możliwości.
p=>q = ~p~>~q - prawo Kubusia dla linii 3
Spełniony warunek wystarczający w zdaniu p=>q (linia 1) wymusza spełniony warunek konieczny w zdaniu ~p~>~q (linia 3)
p=>~q = ~p~>q - prawo Kubusia dla linii 4
Ewidentny fałsz w zdaniu p=>~q (linia 2) wymusza fałszywą implikację odwrotną ~p~>q (linia 4).
Oczywiście warunek wystarczający w zdaniu p=>~q nie jest spełniony co wymusza brak warunku koniecznego w zdaniu ~p~>q.
Warunek prawdziwości zdania dla linii 4:
(~p~~>q) + (~p~>q) = 1 + 0 =1
Zdanie w linii 4 jest prawdziwe na mocy definicji spójnika MOŻE ~~> (wystarczy jedna prawda), implikacja odwrotna ~p~>q jest tu oczywiście fałszywa.
5.6 Równoważne definicje implikacji odwrotnej
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: | p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0 |
Definicja symboliczna implikacji odwrotnej:
Kod: | p q p~>q
p q =1
p ~q =1
~p ~q =1
~p q =0 |
Gdzie:
1=p, 0=~p
1=q, 0=~q
Tu również wszystkie sygnały sprowadzamy do jedynki.
Najprostsze równanie implikacji odwrotnej uzyskamy z ostatniej linii bo w wyniku mamy tu samotne zero:
~p*q = ~(p~>q) - wynik też musimy sprowadzić do jedynki
Stąd:
p~>q = ~(~p*q) = p+~q - na podstawie prawa de’Morgana
Równoważne równanie otrzymujemy dla linii będących w wyniku jedynkami:
p~>q = p*q+p*~q+~p*~q
Definicja operatorowa wynika z naturalnego opisu tabeli symbolicznej w logice człowieka.
1.
Jeśli zajdzie p to może ~> zajść q, bo druga linia też może być prawdą
p~>q=1
LUB
2.
Jeśli zajdzie p to może zajść ~q, bo linia wyżej też może być prawdą
p~~>~q=1
Wniosek:
W implikacji odwrotnej p musi być warunkiem koniecznym dla q, inaczej pierwsza linia jest twardym fałszem, definicja leży w gruzach.
3.
Jeśli zajdzie ~p to na pewno => zajdzie ~q, bo ostatnia linia jest twardym fałszem
~p=>~q=1
4.
Jeśli zajdzie ~p to na pewno => zajdzie q, fałsz bo wyżej twarda prawda
~p=>q=0
Komentarz:
p~>q = p + ~q - definicja implikacji odwrotnej
Jeśli p jest warunkiem koniecznym dla q (linia 1) to zajście ~p wymusza zajście ~q (linia 3). W sposób naturalny odkryliśmy prawo Kubusia dla linii 3.
p~>q = ~p=>~q
Oczywiście spełniony warunek konieczny w p~>q wymusza spełniony warunek wystarczający w zdaniu ~p=>~q. Jeśli linia 3 jest twardą prawdą (zachodzi zawsze) to linia 4 musi być twardym fałszem.
Prawo Kubusia dla linii 4:
~p=>q = p~>~q
Oczywisty brak warunku wystarczającego w ~p=>q (bo fałsz) wymusza brak warunku koniecznego w linii 2. Zdanie w linii 2 jest prawdziwe na mocy spójnika MOŻE ~~> (wystarczy jedna prawda), implikacja odwrotna p~>~q jest tu oczywiście fałszywa.
Prawdziwość zdania dla linii 2:
(p~~>~q) + (p~>~q) = 1 + 0 =1
5.7 Uproszczony kwadrat logiczny implikacji
W praktyce posługiwania się implikacją z reguły wystarczy uproszczony kwadrat logiczny implikacji w którym wszystkie zdania są implikacjami.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Kod: |
Implikacja prosta Implikacja odwrotna
A1:p=>q=~p+q=1 A2:p~>q=p+~q=1
W.Wystarczający W.Konieczny
Prawa Kubusia: Prawa Kubusia:
p=>q=~p~>~q p~>q=~p=>~q
C1:~p~>~q=~p+q=1 C2:~p=>~q=p+~q=1
W.Konieczny W.Wystarczający
|
W poprawnym kwadracie logiki jak wyżej logika człowieka jest matematycznie jednoznaczna. Nie ma tu mowy aby matematycznie na zadane pytanie możliwa była więcej niż jedna odpowiedź.
Implikacja prosta:
Jeśli zajdzie p to na pewno => zajdzie q
p=>q=1
… a jeśli nie zajdzie p ?
Prawo Kubusia:
p=>q = ~p~>~q
Jeśli ~p to może ~> zajść ~q
~p~>~q=1
LUB
Jeśli ~p to może ~~> zajść q
~p~~>q=1
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L=1 bo pies, GWARANCJA
… a jak nie jest psem ?
Prawo Kubusia:
P=>4L= ~P~>~4L
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L=1 bo kura …
… a czy są zwierzątka które nie są psami i mają cztery łapy ?
Tak !
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo słoń … - na podstawie definicji spójnika MOŻE ~~> (wystarczy jedna prawda)
To nie jest implikacja bo:
(~P~>4L) = (P=>~4L) =0 - oczywisty fałsz
Implikacja odwrotna:
Jeśli zajdzie p to może ~> zajść q
p~>q=1
LUB
Jeśli zajdzie p to może zajść ~q
p~~>~q=1 - zdanie prawdziwe na mocy spójnika MOŻE ~~> (wystarczy jedna prawda)
… a jeśli nie zajdzie p
Prawo Kubusia:
p~>q = ~p=>~q
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q=1
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P=1 bo pies…
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń… - na podstawie definicji spójnika MOŻE ~~> (wystarczy jedna prawda)
To nie jest implikacja bo:
(4L~>~P) = (~4L=>P) =0
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P=1, GWARANCJA
Implikacja prosta jest w logice gwarancją na mocy jej definicji.
5.8 Algorytm działania implikacji prostej
Implikację „Jeśli p to q” mózg człowieka obsługuje w dwóch taktach w pierwszym bada zgodność z p zaś w drugim zgodność z q. W żadnej chwili czasowej nie ma wykroczenia poza dwuelementową algebrę Boole’a.
Kod: |
musi
Jeśli |----- q --- p=>q=1
|----- p -----|musi
| |----- ~q --- p=>~q=0
|
|
X => ---|
|
| może
|Jeśli |----- ~q --- ~p~>~q=1
|----- ~p -----|może
|----- q --- ~p~>q=1
|
Jak widać, w pierwszym takcie podejmujemy decyzją czy iść drogą p czy też ~p co zależy od wylosowanego elementu X. W drugim takcie zawsze mamy tylko i wyłącznie dwie możliwości do wyboru, zatem cały czas jesteśmy w dwuelementowej algebrze Boole’a.
5.9 Algorytm działania implikacji odwrotnej
Kod: |
może
Jeśli |----- q --- p~>q=1
|----- p -----|może
| |----- ~q --- p~>~q=1
|
|
Y ~> ---|
|
| musi
|Jeśli |----- ~q --- ~p=>~q=1
|----- ~p -----|musi
|----- q --- ~p=>q=0
|
Tu także implikacja obsługiwana jest w dwóch taktach. W pierwszym następuje decyzja czy iść linią p czy też ~p w zależności od wylosowanego elementu Y. W drugim takcie mamy do wyboru zawsze dwie możliwości czyli cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Wyobraźmy sobie teraz powyższe algorytmy implikacji jako czarne pudełko z jednym wejściem i czterema wyjściami. Jeśli zdanie jest implikacją to elementy wrzucane do tego pudełka segregowane są na cztery zbiory z których jeden jest zawsze pusty. Oznacza to, że implikacja jest wirtualną logiką czterowartościową i rzeczywistą dwuwartościową co wynika z powyższych algorytmów.
5.10 Kwadrat logiczny równoważności
p=>q = ~p+q - definicja implikacji prostej
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (~p+q)*[~(~p)+~q] = (~p+q)*(p+~q) = ~p*p+~p*~q+q*p+q*~q = ~p*~q+q*p = p*q+~p*~q
bo:
~p*p = q*~q =0
Kod: |
A1:p=>q=~p+q=1 A2:q=>p=q+~p=1
W.Wystarczający W.Wystarczający
C1:~p=>~q=~p+q=1 C2:~q=>~p=q+~p=1
W.Wystarczający W.Wystarczający
|
Oczywiście w równoważności zachodzi warunek wystarczający w dwie strony. Można tu zamieniać p i q, zatem zachodzi prawo kontrapozycji.
p=>q = ~q=>~p
6.0 Istota implikacji
Istotą implikacji jest gwarancja matematyczna. Gwarancje w implikacji prostej i odwrotnej są fundamentalnie różne co wynika z różnych definicji.
Definicja implikacji prostej:
p=>q
Jeśli zajdzie p to na pewno zajdzie q
p musi być warunkiem wystarczającym dla q
Przykład:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Bycie psem jest wystarczające aby mieć cztery łapy
Poprawny matematycznie zapis dla tego przykładu to:
P=>4L = ~P+4L = ~(P*~4L)
Gwarancja:
~(P*~4L)
Nie może się zdarzyć ~(..), że zwierzę jest psem i nie ma czterech łap
W implikacji na mocy definicji gwarancją jest sama definicja implikacji prostej czyli:
P=>4L - jeśli zwierzę jest psem to na pewno => ma cztery łapy
Oczywiście te gwarancje są identyczne:
P=>4L = ~(P*~4L)
GWARANCJA 1
Powyższa gwarancja obejmuje wszystkie psy, nie mówi nic o pozostałych zwierzakach
Definicja implikacji odwrotnej
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być warunkiem koniecznym dla q
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Poprawny matematycznie zapis dla tego przykładu to:
4L~>P = 4L+~P = ~(~4L*P)
Gwarancja:
~(~4L*P)
Nie może się zdarzyć ~(..), że zwierzę nie ma czterech łap i jest psem
Gwarancja równoważna dla tego zdania wynika z prawa Kubusia:
4L~>P = ~4L=>~P - prawo zamiany implikacji odwrotnej na prostą
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P
Oczywiście na mocy definicji implikacji prostej mamy natychmiastowy dowód prawa Kubusia:
~4L=>~P = ~(~4L)+~P = 4L+~P = ~(~4L*P)
GWARANCJA 2
Powyższa gwarancja obejmuje wszystkie zwierzaki nie mające czterech łap:
koń, kura, wąż, stonoga … - te zwierzaki na pewno nie są psami
Jak widzimy, gwarancja 1 wynikająca z implikacji prostej jest fundamentalnie inna niż gwarancja 2 wynikająca z implikacji odwrotnej.
Mamy tu bezdyskusyjny dowód fałszywości prawa kontrapozycji w implikacji:
P=>4L # ~4L=>~P
bo gwarancje po obu stronach są fundamentalnie inne.
6.1 Planeta implikacji
Podsumujmy rozważania w poprzednim punkcie budując kwadrat logiczny dla tego przykładu.
Wyobraźmy sobie planetę na której żyją zaledwie trzy gatunki zwierząt: psy, konie i kury.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Kod: |
Implikacja prosta Implikacja odwrotna
A1:P=>4L=~(P*~4L)=Pies A2:4L~>P=~(~4L*P)=Pies
W.Wystarczający W.Konieczny
LUB
B2: 4L~~>~P=koń
Prawa Kubusia: Prawa Kubusia:
P=>4L=~P~>~4L 4L~>P=~4L=>~P
C1:~P~>~4L=~(P*~4L)=kura C2:~4L=>~P=~(~4L*P)=kura
W.Konieczny W.Wystarczający
LUB
D1:~P~~>4L=koń
|
Zapisy połączone naturalnym spójnikiem MOŻE ~~> (wystarczy jedna prawda) nie są implikacjami, bo nie spełniają definicji implikacji.
W pionach mamy tu dwa zamknięte układy implikacyjne pomiędzy którymi nie zachodzą żadne zależności matematyczne.
Oczywiście dla konkretnego przypadku zabroniona jest zamiana argumentów w iloczynie logicznym bowiem:
P=>4L=~(P*~4L) # 4L~>P = ~(~4L*P)
bo:
p=>q # p~>q
na mocy odpowiednich definicji:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Dla lewego pionu mamy gwarancję psa w zdaniu A1. W zdaniach C1 i D1 mamy opisane pozostałe zwierzęta żyjące na planecie implikacji czyli kury i konie.
Gwarancja dla lewego pionu:
p=>4L - jeśli zwierzę jest psem to na pewno ma cztery łapy
W prawym pionie zdania A2 i B2 mówią nam że na planecie żyją psy i konie Zdanie A2 jest równoważne zdaniu C2 na mocy prawa Kubusia. Zdanie C2 gwarantuje iż na planecie żyją kury.
Gwarancja dla prawego pionu:
~4L=>~P - jeśli zwierzę nie jest psem to na pewno nie ma czterech łap
W obu przypadkach wyżej mamy opisane wszystkie zwierzęta jakie żyją na planecie implikacji.
Zauważmy, że prawo kontrapozycji nie opisuje wszystkich zwierząt.
P=>4L=~4L=>~P
Lewa strona tego równania to gwarancja że na planecie implikacji żyją psy, zaś prawa strona to gwarancja że na planecie żyją kury.
Co się stało z końmi ?
Konie oczywiście wyparowały czyli nasza planeta implikacji przeistoczyła się w planetę równoważności bo żyją tu tylko dwa gatunki zwierząt psy i kury. Oczywiście prawo kontrapozycji jest fałszywe w implikacji i prawdziwe w równoważności.
Wyparowania koni jest sprzeczne z I prawem Kirchhoffa które mówi:
W przyrodzie nic nie może zginąć … czyli w węźle elektrycznym suma prądów wpływających jest równa sumie prądów wypływających.
6.2 Implikacja w praktyce
Analizę przykładowego zdania pokażemy w naturalnym języku mówionym człowieka przy pomocy spójników zdaniowych. Przy każdym zdaniu zapiszemy jego wersję symboliczną oraz wersję zero-jedynkową.
Implikacja prosta:
Analiza zdania:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1
Implikacja prosta prawdziwa bo bycie psem jest warunkiem wystarczającym aby mieć cztery łapy
A.
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo pies - twarda prawda, GWARANCJA !
P*4L=1
1 1 =1
Po nieskończonej ilości losowań w tym pudełku mamy wszystkie psy
Implikacja prosta prawdziwa bo bycie psem jest warunkiem wystarczającym dla czterech łap
B.
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - twardy fałsz
P*~4L=0
1 0 =0
To pudełko będzie puste niezależnie od ilości losowań
… a jak nie jest psem ?
Prawo Kubusia:
P=>4L=~P~>~4L
C.
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L =1 bo kura - miękka prawda bo niżej też jest jedynka
~P*~4L=1
0 0 =1
Po nieskończonej ilości losowań tu będą zwierzaki które nie są psami i nie mają czterech łap
LUB
D.
Jeśli zwierzę nie jest psem to może to może mieć cztery łapy
~P~~>4L =1 bo koń - miękka prawda
~P*4L=1
0 1 =1
Zdanie prawdziwe na podstawie definicji spójnika MOŻE ~~> (wystarczy jedna prawda).
Prawo Kubusia dla przypadku B:
P=>~4L = ~P~>4L =0
Implikacja P=>~4L jest oczywistym fałszem, fałszywa jest zatem również ~P~>4L
Prawdziwość zdania D określa wzór:
(~P~~>4L) + (~P~>4L) = 1 + 0 = 1
W tym pudełku będą zwierzęta nie będące psami, mające cztery łapy
Na podstawie powyższego mamy:
Tabela A
P=>4L=1
P=>~4L=0
~P~>~4L=1
~P~~>4L=1
Na podstawie definicji iloczynu kartezjańskiego i pojęcia funkcji linie w powyższej tabeli możemy sobie dowolnie przestawiać. Ułóżmy je tak ….
Tabela B
~P~>~4L=1
~P~~>4L=1
P=>4L=1
P=>~4L=0
Tabele A i B są oczywiście matematycznie równoważne. To żywy dowód poprawności praw Kubusia w implikacji.
W tabeli B mamy analizę zdania:
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~>~4L=1
Prawo Kubusia:
~P~>~4L = P=>4L
Implikacja odwrotna
Analiza zdania:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P =1
Implikacja odwrotna prawdziwa bo cztery łapy są warunkiem koniecznym dla bycia psem
A.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P =1bo pies - miękka prawda bo niżej też jest jedynka
4L*P=1
1 1 =1
Po nieskończonej ilości losowań w tym pudełku będą wyłącznie psy
B.
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo koń - miękka prawda
4L*~P=1
1 0 =1
Po nieskończonej ilości losowań w tym pudełku będą zwierzaki które mają cztery łapy i nie są psami
Zdanie prawdziwe na mocy spójnika MOŻE ~~> (wystarczy jedna prawda)
Implikacja 4L~>~P jest oczywiście fałszywa bo prawo Kubusia
4L~>~P = ~4L=>P=0
Implikacja ~4L=>P jest oczywistym fałszem.
Prawdziwość zdania B określa wzór:
(4L~~>~P) + (4L~>~P) = 1 + 0 = 1
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
C.
Jeśli zwierzę nie ma czterech łap to nie jest psem
~4L=>~P=1 bo kura - twarda prawda. GWARANCJA !
~4L*~P=1
0 0 =1
W tym pudełku będą zwierzaki które nie maja czterech łap
D.
Jeśli zwierzę nie ma czterech łap to jest psem
~4L=>P=0 - twardy fałsz wobec powyższej twardej prawdy
~4L*P=0
0 1 =0
To pudełko będzie puste po dowolnej ilości losowań
Dla dowolnego przypadku tylko i wyłącznie jedno ze zdań implikacyjnych może być prawdziwe, pozostałe będą fałszywe. Jedynki w definicji implikacji oznaczają tylko tyle, że po nieskończonej ilości losowań pudełka które zaznaczono jedynkami będą pełne. Pudełko z wynikiem zero będzie puste po dowolnej ilości losowań, gwarancja fałszu.
6.3 Równoważność tabel zero-jedynkowych w logice dodatniej i ujemnej
W algebrze Boole’a operator NAND powstaje z AND poprzez zanegowanie wyjścia:
AND
Y=p*q
NAND
Y=~(p*q)
W algebrze Boole’a operator implikacji odwrotnej ~> powstaje z operatora implikacji prostej => poprzez zanegowanie wejść !
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
Dowód:
Operator ~> powstaje z operatora => poprzez zanegowanie wejść:
p=>q = ~p+q
p~>q = ~(~p) + ~(q) = p+~q
jeśli jeszcze raz zanegujemy wejścia poprzez wrzucenie przeczeń do nazw p i q to otrzymamy =>:
~p~>~q = ~(p)+~(~q) = ~p+q
czyli:
p=>q = ~p~>~q
2.
Dokładnie to samo robimy z operatorem ~> otrzymując drugie prawo Kubusia.
p~>q = ~p=>~q
W powyższych przekształceniach p jest zawsze poprzednikiem, zaś q następnikiem .
p=>q
Jeśli p to musi zajść q
p~>q
Jeśli p to może zajść q
Czyli:
P8=>P2 = ~P8~>~P2
P2~>P8 = ~P2=>~P8
Przeanalizujmy poniższe zdanie na wszelkie możliwe sposoby:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
=> - na pewno, warunek wystarczający spełniony
~> - może, warunek konieczny spełniony
~~> MOŻE (wystarczy jedna prawda), warunek konieczny niespełniony
A.
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
p q p=>q
1 1 =1 / P=>4L=1
1 0 =0 / P=>~4L=0
0 0 =1 / ~P~>~4L=1
0 1 =1 / ~P~~>4L=1
Prawo Kubusia:
P=>4L = ~P~>~4L
B.
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L
p q p~>q
1 1 =1 /~P~>~4L=1
1 0 =1 /~P~~>4L=1
0 0 =1 /P=>4L=1
0 1 =0 /P=>~4L=0
W zapisie symbolicznym (j. asemblera) bez problemu widać identyczność tabel A i B. W zapisie zero-jedynkowym coś tu się nie zgadza ….
Jak widać wyżej, zdanie A wypowiedziane jest w logice dodatniej (4L) zaś zdanie B w logice ujemnej (~4L). Nie można bezpośrednio w zerach i jedynkach porównywać logiki dodatniej z logiką ujemną, bo to dwa różne światy. Aby rozstrzygnąć czy powyższe tabele zero-jedynkowe są równoważne trzeba je sprowadzić do tej samej logiki, dodatniej albo ujemnej. Robimy to poprzez zamianę zer i jedynek w kolumnach p i q.
Sprowadźmy tabelę zero-jedynkową zdania B do logiki dodatniej A, czyli negujemy wszędzie p i q.
Tabela ~B
p q
0 0 =1
0 1 =1
1 1 =1
1 0 =0
Teraz doskonale widać, że również w zerach i jedynkach tabele A i ~B są równoważne.
Analizujemy teraz zdania powstałe przez zamianę p i q
C.
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
p q p~>q
1 1 =1 / 4L~>P=1
1 0 =1 / 4L~~>~P=1
0 0 =1 / ~4L=>~P=1
0 1 =0 / ~4L=>P=0
D.
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P
p q p=>q
1 1 =1 /~4L=>~P=1
1 0 =0 /~4L=>P=0
0 0 =1 /4L~>P=1
0 1 =1 /4L~~>~P=1
Tu również w zapisie symbolicznym bez problemu widać zgodność tabel C i D, mimo że zdanie C wypowiedziane jest w logice dodatniej (P), zaś zdanie D w logice ujemnej (~P).
Równość w zerach i jedynkach uzyskamy jeśli dowolna z tabel D albo C sprowadzimy do logiki przeciwnej poprzez zamianę zer i jedynek w kolumnach p i q. Zróbmy to tym razem dla tabeli C.
Tabela ~C
p q
0 0 =1
0 1 =1
1 1 =1
1 0 =0
Tabele ~C i D są oczywiście identyczne bo zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji linie możemy dowolnie przestawiać.
Wniosek 1:
Wyższość analizy operatorowej zdań jest bezdyskusyjna bo to naturalna logika człowieka. Nie musimy się tu martwić o idiotyczne zera i jedynki, czyli kod maszynowy implikacji.
Wniosek 2:
Logika dodatnia = logika ujemna (~q) ze zmienionym operatorem (tu => na ~>)
p=>q = ~p~>~q
Czyli:
1.
Zmiana operatora z => na ~>
2.
Zmiana logiki z dodatniej (q) na ujemną (~q)
Wniosek 3:
Równość tabel A i C nie zachodzi bo:
P=>4L # 4L~>P
oba zdania są w logice dodatniej (4L, P) ale mają różne operatory.
Wniosek 4:
W implikacji prawo kontrapozycji nie zachodzi bo:
4L=>P = ~P=>~4L
Oba zdania są w przeciwnych logikach (P, ~4L) ale połączone są identycznym operatorami =>.
Wniosek 5:
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Prawo kontrapozycji jest poprawne w równoważności i fałszywe w implikacji
7.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
7.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
~G~>~C =1
LUB
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
~G~>C=0 - implikacja odwrotna fałszywa
(~G~~>C)+(~G~>C) = 1+0=1
~~> - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Uwaga:
W groźbach naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
7.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca. Intuicyjnie jest to jak najbardziej poprawne, bowiem jeśli odbiorca spełni warunek kary to nadawca może zrobić co mu się podoba, walić albo darować karę (akt łaski) i nie ma najmniejszych szans na zostanie kłamcą.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
B~>~L=0 - implikacja odwrotna fałszywa
(B~~>~L)+(B~>~L) = 1+0 =1
~~> - nadawca ma prawo do darowania dowolnej kary (akt łaski)
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
C: ~B => ~L =1 - twarda prawda (gwarancja)
LUB
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
D: ~B => L =0 - twardy fałsz
8.0 Podsumowanie
Logika człowieka = algebra Kubusia
"Wszyscy myślą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi.", "Wyobraźnia jest ważniejsza od wiedzy"
Albert Einstein
2009-03-31 Koniec
Ostatnio zmieniony przez rafal3006 dnia Nie 13:15, 10 Maj 2009, w całości zmieniany 2 razy
|
|
Powrót do góry |
|
|
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:12, 10 Maj 2009 Temat postu: |
|
|
Beta 2.0
Pożegnalny post Kubusia ze ŚFINIĄ ... w sumie wyszło że góra urodziła mysz ...
Nie myli się tylko ten kto nic nie robi ….
Szukając cytatu z dyskusji z Vorathem Kubuś natknął się na post którego szukał i doznał olśnienia ….
Logicy sami nie wiedzą co mają !
Autor: Kubuś, wirtualny Internetowy Miś
volrath napisał: | Ja nie twierdzę, że implikacja odwrotna to to samo co prosta.
Twierdzę, że p=>q <=> ~q=>~p <=> q~>p <=> ~p~>~q <=> p NAND (p NAND q)
|
Uporządkujmy to co napisał Volrath bo trochę bałaganu tu jest …
p=>q = ~p~>~q = q~>p = ~q=>~p
Dlaczego prawo kontrapozycji:
p=>q = ~q=>~p
Widniejące w powyższym równaniu jest przydatne i widnieje we wszystkich encyklopediach, zaś prawa Kubusia wynikające dokładnie z tego samego równania są nieznane ?
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
q~>q = ~q=>~p - zamiana operatora ~> na =>
Dlaczego logicy są wybiórczo ślepi czyli widzą w powyższym równaniu prawa kontrapozycji a nie widza praw Kubusia .... czyli tego czego szukają od 2500 lat. Dlaczego nie widzą ? … bo nie widzą w definicji zero-jedynkowej implikacji odwrotnej warunku koniecznego który na mocy tejże definicji musi zachodzić - wtedy i tylko wtedy implikacja odwrotna jest prawdziwa.
W takim razie nie mam nic przeciwko aby to „badziewie” p=>q = q~>p zachodziło, ale niech mi odkopią moje prawa Kubusia
W tej sytuacji walka Kubusia z równaniem p=>q = q~>p stała się zbyteczna bo nie jest ono przeszkodą w akceptacji przez kogokolwiek praw Kubusia, skoro w Wikipedii widnieje prawo kontrapozycji wynikające z powyższego równania to nie ma przeszkód by umieścić w niej prawa Kubusia … czyli po 2500 lat na SFINII odkryliśmy matematyczną wersję implikacji którą posługują się dzieci w przedszkolu.
W powyższym równaniu jest jeszcze jedno prawo zbyteczne zdaniem logików, ponieważ implikacja odwrotna jest w praktyce współczesnej logiki nie używana.
q~>p = ~p~>~q
Za chwilę pokażemy, że prawo kontrapozycji dla implikacji odwrotnej tez może być w praktyce użyte, choć rzadko np. może być wymuszone przez dziecko które dopiero poznaje język.
W praktyce logika przedszkolaków działa tak:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
Twierdzenie:
Wystarczy udowodnić warunek konieczny lub wystarczający dla dowolnej implikacji, aby wszystkie implikacje córki były prawdziwe.
… a jeśli zwierzę nie jest psem ?
Prawo kontrapozycji:
4L~>P = ~P~>~4L
Jeśli zwierze nie jest psem to może nie mieć czterech łap
~P~>~4L
… a jeśli zwierzę jest psem ?
Prawo Kubusia:
~P~>~4L = P=>4L
Jeśli zwierzę jest psem to na pewno ma cztery łapy
P=>4L
…itd.
Po trzech latach walki z implikacją, po napisaniu około 3 tysięcy postów, esencja całości zmieściła się na jednej stronie …. no bo to jest logika przedszkolaka, więc musi być nieprawdopodobnie prosta.
KONIEC
Aksjomat logików praktyków:
Jak logicznie myślimy, tak matematycznie zapisujemy. Mówimy „NIE” zapisujemy (~), mówimy „i” zapisujemy AND(*), mówimy “lub” zapisujemy OR(+), w implikacji mówimy “musi” zapisujemy ( =>), mówimy “może” zapisujemy (~>).
Algebra Kubusia
Matematyka języka mówionego
Matematyka języka mówionego = algebra bramek logicznych
Autor: Kubuś - wirtualny Internetowy Miś
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), Rafał3006 (sfinia), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za końcową, decydującą o wszystkim dyskusję
Spotkało się siedmiu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
Spis treści:
1.0 Notacja
2.0 Trzęsienie ziemi w logice
2.1 Prawa matematyczne dla operatorów AND i OR
2.2 Operatory implikacji prostej => i implikacji odwrotnej ~>
2.3 Geneza błędu w fundamencie dzisiejszej implikacji
2.4 Prawo Kubusia w bramkach logicznych
3.0 Algebra Boole’a - matematyka świata techniki
4.0 Algebra Kubusia - matematyka języka mówionego
4.1 Definicja algebry Kubusia
4.2 Definicje operatorów AND i NAND
4.3 Definicje operatorów OR i NOR
4.4 Definicje operatorów => i N(=>)
4.5 Definicja operatorów ~> i N(~>)
5.0 Wykresy czasowe implikacji
5.1 Wykres czasowy implikacji prostej =>
5.2 Wykres czasowy implikacji odwrotnej ~>
6.0 Nowa definicja implikacji
6.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
6.2 Prawa matematyczne implikacji
6.3 Prawa matematyczne równoważności
6.4 Naturalne kodowanie zdań
6.5 Definicje spójników zdaniowych
6.6 Matematyczne kodowanie zdań
6.7 Algorytm działania implikacji prostej
6.8 Algorytm działania implikacji odwrotnej
6.9 Kwadrat logiczny równoważności
7.0 Obietnice i groźby
7.1 Obietnice
7.2 Groźby
8.0 Podsumowanie
Wstęp:
Od 2500 lat ludzie poszukują logiki człowieka, czyli implikacji którą się on posługuje, dotychczas bez powodzenia. Żadna ze znanych implikacji: materialna, logiczna i ścisła tego nie robi.
Wikipedia:
Intencją Lewisa było stworzenie takiej logiki, która lepiej niż implikacja materialna w klasycznym rachunku zdań oddawałaby implikację występującą w języku naturalnym. … współcześnie jednak logiki Lewisa interpretuje się powszechnie jako logiki zdań modalnych.
Powodem niepowodzeń jest fałszywy fundament dzisiejszej logiki w zakresie implikacji według którego implikacja odwrotna jest zbędna. Tymczasem implikacją prostą => i odwrotną ~> plus prawami Kubusia doskonale posługują się wszystkie dzieci w przedszkolu milion razy na dobę. Musi to być zatem właściwy fundament którego logicy całego świata szukają.
W rzeczywistości implikacja to najprostszy ze spójników zdaniowych, nieporównywalnie prostszy od spójników technicznych AND(*), OR(+) i negacji na bazie których zbudowana jest cała dzisiejsza technika, z komputerami i Internetem na czele.
Dzisiejsza logika nie zna kluczowych praw języka mówionego.
Prawa Kubusia:
=> - operator implikacji prostej (musi)
~> - operator implikacji odwrotnej (może)
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p~>~q - zamiana operatora ~> na =>
Prawa Kubusia to dokładny odpowiednik praw de’Morgana
* - operator AND („i”)
+ - operator OR („lub”)
p*q = ~(~p+~q) - zamiana operatora * na +
p+q = ~(~p*~q) - zamiana operatora + na *
Dzisiejsza logika uznaje zbędność operatora ~>. Równie dobrze można uznać zbędność operatorów OR i AND. Idąc tym tropem wywalmy wszystko i zostawmy jeden operator NAND … bo przecież całą algebrę Boole’a da się opisać jednym operatorem NAND albo NOR.
Algebra Kubusia, czyli matematyka języka mówionego korzysta wyłącznie z tych operatorów logicznych które mają 100% odpowiednik w języku mówionym. W artykule wykażemy zbędność w języku mówionym operatorów ujemnych NAND , NOR, N=>, N~>, oraz niezbędność operatorów dodatnich AND, OR, =>, ~>, praw de’Morgana i praw Kubusia.
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków
Miękka prawda/fałsz - może zajść ale nie musi
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
2.0 Trzęsienie ziemi w logice
Film powinien zaczynać się od trzęsienia ziemi, potem zaś napięcie ma nieprzerwanie wzrastać.
Alfred Hitchcock
2.1 Prawa matematyczne dla operatorów AND i OR
Prawa de’Morgana:
A.
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
B.
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Powyższe prawa to dwa izolowane układy logiczne. Równanie A to jedna i ta sama bramka OR(+), zaś równanie B to jedna i ta sama bramka AND(*). Oczywiście zarówno w równaniu A jak i B pod p i q możemy podstawiać co nam się podoba, nic nie może być zabronione.
Podstawmy dla przykładu dla równania A:
p=~p
q=~q
A.
~p+~q = ~[~(~p)*~(~q)] = ~(p*q)
czyli:
p*q = ~(~p+~q)
Cokolwiek byśmy nie podstawiali to nigdy nie uzyskamy:
p+q=p*q
… to niemożliwe na mocy odpowiednich definicji.
Operatory AND i OR
Kod: |
p q p q
| | | |
| | O O
------- -------
| OR | = | AND |
| | | |
------- -------
| O
| |
Y=p+q Y=~(~p*~q)
|
Prawo de’Morgana dla sumy logicznej:
p*q # p+q=~(~p*~q)
Dla dowolnych p i q na obu bramkach wyjście będzie identyczne 0 albo 1
Zatem po obu stronach mamy do czynienia z tą samą bramką OR.
Kod: |
p q p q
| | | |
| | O O
------- -------
| AND | = | OR |
| | | |
------- -------
| O
| |
Y=p*q Y=~(~p+~q)
|
Prawo de’Morgana dla iloczynu logicznego:
p+q # p*q=~(~p+~q)
Dla dowolnych p i q na obu bramkach wyjście będzie identyczne 0 albo 1
Zatem po obu stronach mamy do czynienia z tą samą bramką AND.
Oczywiście na mocy definicji:
p+q # p*q
czyli:
p+q=~(~p*~q) # p*q = ~(~p+~q)
Porównajmy to co wyżej z tym …
2.2 Operatory implikacji prostej => i implikacji odwrotnej ~>
p=>q = ~p+q - definicja implikacji prostej
p musi być wystarczające dla q co wynika bezpośrednio z definicji zero-jedynkowej
p~>q = p+~q - definicja implikacji odwrotnej
p musi być konieczne dla q co wynika bezpośrednio z definicji zero-jedynkowej
Prawa Kubusia:
A.
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
B.
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Powyższe prawa to dwa izolowane układy logiczne. Równanie A to jedna i ta sama bramka implikacji prostej =>, zaś równanie B to jedna i ta sama bramka implikacji odwrotnej ~>. Oczywiście zarówno w równaniu A jak i B pod p i q możemy podstawiać co nam się podoba, nic nie może być zabronione.
Podstawmy dla przykładu dla równania A:
p=~p
q=~q
A.
(~p)=>(~q) = ~(~p)~>~(~q)
Korzystając z prawa podwójnego przeczenia A=~(~A) mamy:
~p=>~q = p~>q
czyli:
p~>q = ~p=>~q
Cokolwiek byśmy nie podstawiali to nigdy nie uzyskamy:
p=>q = p~>q
… to niemożliwe na mocy odpowiednich definicji.
Schematy nieznanych bramek w logice => i ~>:
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
| => | = | ~> | = | ~> |
| | | | | |
------- ------- -------
| | |
A B C
p=>q ~p~>~q ~p~>~q
|
Prawo Kubusia dla operatora =>:
p~>q # p=>q = ~p~>~q
Dla dowolnych p i q na wszystkich bramkach wyjście będzie identyczne 0 albo 1.
Zatem mamy tu do czynienia z jedną i tą samą bramką implikacji prostej =>.
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
| ~> | = | => | = | => |
| | | | | |
------- ------- -------
| | |
A B C
p~>q ~p=>~q ~p=>~q
|
Prawo Kubusia dla operatora ~>:
p=>q # p~>q = ~p=>~q
Dla dowolnych p i q na wszystkich bramkach wyjście będzie identyczne 0 albo 1.
Zatem mamy tu do czynienia z jedną i tą samą bramką implikacji odwrotnej ~>.
Oczywiście na mocy definicji:
p~>q #p=>q
czyli:
p=>q=~p~>~q # p~>q = ~p=>~q
2.3 Geneza błędu w fundamencie dzisiejszej implikacji
Prawa Kubusia:
A.
p=>q = ~p~>~q = ~p+q - prawo zamiany operatora => na ~>
Po obu stronach równania mamy jedną i tą samą bramkę implikacji prostej =>
B.
p~>q = ~p=>~q = p+~q - prawo zamiany operatora ~> na =>
Po obu stronach równania mamy jedną i tą samą bramkę implikacji odwrotnej ~>
Prawa Kubusia to dwa izolowane układy logiczne pomiędzy którymi nie zachodzą żadne związki matematyczne. Pod p i q w układach A i B możemy sobie podstawiać co nam się podoba, nic nie może być zabronione.
Prawo Kubusia dla bramki =>:
p=>q = ~p~>~q
Prawo Kubusia to prawo matematyczne, zatem pod p i q możemy sobie podstawiać co nam się podoba !
Dobre prawo matematyczne zawsze zamieni prawdę w prawdę, zaś fałsz w fałsz - nie ma innych możliwości.
Przykład:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
P8 jest wystarczające dla P2 zatem jest to implikacja prosta prawdziwa.
Pod p i q możemy sobie podstawiać co chcemy, zatem na przykład:
A.
P8=>P2 = ~P2~>~P8
1 = 1
P2=>P8 = ~P2~>~P8
0 = 0
Prawo Kubusia dla bramki ~>:
p~>q = ~p=>~q
Prawo Kubusia to prawo matematyczne, zatem pod p i q możemy sobie podstawiać co mam się podoba !
Dobre prawo matematyczne zawsze zamieni prawdę w prawdę, zaś fałsz w fałsz - nie ma innych możliwości.
Przykład:
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
P2 jest konieczne dla P8 zatem jest to implikacja odwrotna prawdziwa.
Pod p i q możemy sobie podstawiać co chcemy, zatem na przykład:
B.
P2~>P8 = ~P2=>~P8
1 = 1
P8~>P2 = ~P8=>~P2
0 = 0
Oczywiście na mocy definicji:
P8=>P2 # P2~>P8
Zauważmy, że w implikacji nie zachodzi prawo kontrapozycji bowiem:
P8=>P2 = ~P8~>~P2 # P2~>P8 = ~P2=>~P8
Wnioski:
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Prawo kontrapozycji jest poprawne w równoważności i fałszywe w implikacji
W dzisiejszej algebrze Boole’a zachodzi niestety:
P8=>P2 = ~P8~>~P2 = ?! P2~>P8 = ~P2=>~P8
czyli dwa niezależne układy implikacyjne stają się jednym i tym samym …. miejsce takiej logiki jest w koszu na śmieci.
To samo co wyżej inaczej:
Prawa Kubusia:
A.
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Po obu stronach równania mamy jedną i tą samą bramkę implikacji prostej =>
B.
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Po obu stronach równania mamy jedną i tą samą bramkę implikacji odwrotnej ~>
Prawa Kubusia to dwa izolowane układy logiczne pomiędzy którymi nie zachodzą żadne związki matematyczne. Pod p i q w układach A i B możemy sobie podstawiać co nam się podoba, nic nie może być zabronione.
Wypowiadam zdanie:
Jesli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Stwierdzam że zdanie spełnia definicję implikacji prostej p=>q zatem p=P8 i q=P2
Wypowiadam zdanie:
Jesli liczba jest podzielna przez 2 to może byc podzielna przez 8
P2~>P8
Stwierdzam, że zdanie spełnia definicję implikacji odwrotnej p~>q zatem:
p=P2, q=P8
Na mocy definicji mamy:
p=>q # p~>q
czyli:
P8=>P2 # P2~>P8
CND
To samo co wyżej jeszcze inaczej:
Bramka implikacji prostej:
Kod: |
p q p q p q
| | | | | |
| | O O | |
------- ------- -------
|O =>| # |O =>| = |~> O|
| OR| |OR | |OR |
------- ------- -------
| | |
A B C
p=>q=~p+q ~p=>~q p~>q=p+~q
|
Na rysunku A mamy bramkę implikacji prostej.
Jeśli zajdzie p to na pewno zajdzie q
p=>q
Stojąc na przewodzie p widzimy niezanegowaną linię q. W implikacji prostej linia p jest zanegowana w środku układu scalonego tuż przed wejściem na bramkę OR (kółko na rysunku).
Na rysunku B wprowadzamy po jednej negacji w linie p i q, co przenosi się na zapis matematyczny:
~p=>~q
Oczywiście wprowadzenie po jednej negacji zmienia fundamentalnie cały układ:
p=>q # ~p=>~q
Wpychamy teraz wprowadzone negacje do środka bramki => i otrzymujemy układ C będący definicją implikacji odwrotnej. Wewnętrzna negacja w linii p (rys.B) zniknie na podstawie prawa podwójnego przeczenia p=~(~p). Stojąc dalej na tym samym przewodzie p widzimy zanegowaną linię q.
Jeśli zajdzie p to może zajść q
p~>q
We wszystkich przekształceniach nie zamienialiśmy kabelków, zatem wszędzie mamy po „Jeśli…” poprzednik implikacji p, zaś po „to…” wszędzie jest następnik implikacji q.
Zatem w zdaniu:
Jeśli liczba jest podzielna przez 8 to na pewno jest podzielna przez 2
P8=>P2
mamy:
p=P8, q=P2
Natomiast w zdaniu:
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
mamy:
p=P2, q=P8
Oczywiście na mocy definicji:
p=>q # p~>q
czyli:
P8=>P2 # P2~>P8
CND
2.4 Prawo Kubusia w bramkach logicznych
Dowód prawa Kubusia w bramkach logicznych:
p=>q = ~p~>~q = ~p+q
W bramce implikacji prostej => na mocy definicji w linii p mamy wbudowaną w układ scalony negację (kółko) niewidoczną dla świata zewnętrznego.
KROK A.
Kod: |
=>-bramka implikacji prostej
p q p=> q
| | | |
| | O=> |
------- -------
| => | = | OR |
| | | |
------- -------
| |
| |
p=>q p=>q=~p+q
|
p=>q = implikacja prosta bo stojąc na p widzimy niezanegowaną linię q
KROK B
Wprowadzamy na wejścia p i q po jednej negacji (kółku).
Kod: |
=> - bramka implikacji prostej
~> - bramka implikacji odwrotnej
p q p q p q p q p q
| | | | | | | | | |
| | | | O | | | | |
| | O=> | O O |~> O | |
------- ------- ------- ------- -------
| => | = | OR | # | OR | = | OR | = | ~> |
| | | | | | | | | |
------- ------- ------- ------- -------
| | | | |
| | | | |
A B C
p=>q p=>q=~p+q ~p=>~q=p+~q p~>q=p+~q p~>q
|
p~>q = implikacja odwrotna bo stojąc na p widzimy linię zanegowaną q
p~>q = p+~q - na mocy definicji implikacji odwrotnej ~>
Uwaga !
Bramka implikacji odwrotnej powstaje poprzez wprowadzenie po jednym negatorze w linie wejściowe bramki =>. Negacja z linii p powędruje wówczas do linii q bo ~(~A)=A.
W obu implikacjach => i ~> p jest poprzednikiem implikacji zaś q jest następnikiem implikacji, czyli po „Jeśli…” mamy zawsze p zaś po „to…” mamy zawsze q.
Oczywiście wprowadzenie po jednej negacji w linie wejściowe zmienia układ logiczny na coś zupełnie innego:
A#C
p=>q # p~>q
Doskonale widać prawo Kubusia:
C=B
p~>q = ~p=>~q - to jedna i ta sama bramka implikacji odwrotnej ~>
KROK C
Zmieniamy nazwy sygnałów wejściowych w bramce ~> na przeciwne
Kod: |
~> - bramka implikacji odwrotnej
=> - bramka implikacji prostej
p q ~p~>~q ~p~>~q p q p q p q
| | | | | | | | | | | |
| | | | | | | O | | | |
| | | | |~> O O O O=> | | |
------- ------- ------- ------- ------- -------
| ~> | # | ~> | = | OR | = | OR | = | OR | = | => |
| | | | | | | | | | | |
------- ------- ------- ------- ------- -------
| | | | | |
| | | | | |
C D E
p~>q ~p~>~q ~p~>~q p=>q=~p+q p=>q
|
W krokach A, B, C, D, E p jest zawsze p, zaś q jest zawsze q !
Zauważmy, że to co wyżej to czysta matematyka, nie ma tu mowy o jakichkolwiek warunkach typu wystarczający czy konieczny !
Oczywiście:
C#E
p~>q # p=>q
Doskonale widać drugie prawo Kubusia:
E=D
p=>q = ~p~>~q - to jedna i ta sama bramka implikacji prostej =>
Z punktu widzenia świata zewnętrznego układy A i E są identyczne.
A=E
p=>q = p=>q
3.0 Algebra Boole’a - matematyka świata techniki
W świecie techniki wykorzystywane są wyłącznie operatory AND, OR plus negacja. Operatory implikacji prostej => i odwrotnej ~> w świecie techniki są najzwyklejszym idiotyzmem. Operatory => i ~> to między innymi matematyczny opis wolnej woli wszelkich istot żywych. Oczywiście w świecie techniki żaden programista nie życzy sobie, aby tworzony przez niego program wykazywał jakiekolwiek oznaki wolnej woli.
Algebra Boole’a świata techniki to algebra bramek logicznych w 100% zgodna z naturalną logiką człowieka, czyli jak logicznie myślimy tak matematycznie zapisujemy.
Definicja operatora AND(*):
Iloczyn logiczny n zmiennych binarnych jest równy 1 wtedy i tylko wtedy gdy każda ze zmiennych jest równa 1.
Przykład:
Y=1 <=> A=1 i B=1 i C=0
Wyjście układu cyfrowego ma być równe 1 (Y=1) wtedy i tylko wtedy gdy A=1, B=1 i C=0
Zgodnie z definicją operatora AND sprowadzamy wszystkie sygnały do jedynek i kodujemy spójnikiem „i”.
Kodowanie w logice dodatniej człowieka, jak mówimy tak matematycznie zapisujemy:
Y=A*B*~C
gdzie:
Y=1, ~Y=0
A=1, ~A=0 itd
Kodowanie w logice ujemnej:
~Y=~A+~B+C
Kodowanie w logice ujemnej człowieka polega na sprowadzeniu wszystkich sygnałów do 0 i odwróceniu wszystkich spójników co widać wyżej.
Oczywisty związek między logiką dodatnią i ujemną:
Y=~(~Y)
stąd prawo de’Morgana dla iloczynu logicznego:
A*B*~C = ~(~A+~B+C) - zamiana operatora AND(*) na OR(+).
Definicja operatora OR(+):
Suma logiczna n zmiennych binarnych jest równa 0 wtedy i tylko wtedy gdy każda ze zmiennych jest równa 0.
Przykład:
Y=0 <=> A=0 lub B=0 lub C=1
Zgodnie z definicją operatora OR sprowadzamy wszystkie sygnały do 0 i kodujemy spójnikiem „lub”.
Y=A+B+~C
Kodowanie w logice ujemnej człowieka polega w tym przypadku na sprowadzeniu wszystkich sygnałów do jedynek i odwróceniu operatorów.
~Y = ~A*~B*C
Oczywiście:
Y=~(~Y)
stąd prawo de’Morgana dla sumy logicznej:
A+B+~C = ~(~A*~B*C) - zamiana operatora OR(+) na AND(*)
4.0 Algebra Kubusia - matematyka języka mówionego
Matematyczne wariatkowo … czyli życie w przedszkolu zgodnie ze znanymi dzisiaj prawami matematycznymi:
Jaś:
Jak nie oddasz zabawki to cie pobiję
~Z=>B - groźba
Zuzia:
… a jak oddam zabawkę ?
Prawo Kontrapozycji:
~Z=>B = ~B=>Z
Jaś:
Jeśli cie nie zbiję to oddasz zabawkę
~B=>Z
Zuzia:
Wiesz co Jasiu, mój tata jest psychiatrą, myślę że musisz z nim porozmawiać …
Nikt nie może robić z człowieka idioty, przede wszystkim matematyka !
Prawa Kubusia
=> - operator implikacji prostej
~> - operator implikacji odwrotnej
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
Prawami Kubusia posługują się biegle wszystkie dzieci w przedszkolu:
Jaś:
Jak nie oddasz zabawki to cie pobiję
~Z~>B - groźba
Zuzia:
… a jak oddam zabawkę ?
Prawo Kubusia:
~Z~>B = Z=>~B
Jaś:
Jeśli oddasz zabawkę to cię nie pobiję
Z=>~B - obietnica
… tylko matematycy nie mają pojęcia, że implikacja która posługują się przedszkolaki to 100% matematyka ścisła, algebra Kubusia.
4.1 Definicja algebry Kubusia
Lista operatorów logicznych:
Kod: | p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: | Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Algebra Kubusia jest fundamentalnie inna od algebry Boole’a (inny fundament) wyłącznie w zakresie operatorów implikacji => i ~>. W algebrze Boole’a operator implikacji odwrotnej ~> jest zbędny, natomiast w algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
1 = PRAWDA
0 = FAŁSZ
Zmienna binarna - zmienna przyjmująca wartości wyłącznie 0 albo 1
Funkcja logiczna - to funkcja zmiennych binarnych połączonych operatorami logicznymi przyjmująca wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Algebra Kubusia jest zgodna z algebrą Boole’a z wyjątkiem implikacji, gdzie różnice są fundamentalne. W algebrze Kubusia punktem odniesienia jest zawsze wypowiedziane zdanie czyli po „Jeśli…” zawsze jest poprzednik implikacji p zaś po „to…” zawsze mamy następnik q. O fakcie czy wypowiedziane zdanie jest implikacją prostą => czy też odwrotną ~> decyduje treść zdania. Algorytmy rozpoznawania (pkt. 6.6).
W algebrze Kubusia punkt odniesienia ustawiony jest zawsze na wypowiedzianym zdaniu „Jeśli p to q”, nie zaś na implikacji prostej => (dzisiejsza logika), czy też implikacji odwrotnej ~> (trzeci możliwy punkt odniesienia).
Małe, a robi wielką różnicę … algebra Kubusia w obsłudze języka mówionego jest w 100% jednoznaczna !
4.2 Definicje operatorów AND i NAND
W technice cyfrowej:
Operator logiczny = odpowiednia bramka logiczna
Kod: |
Bramka AND
p * q
| |
| |
-------
|AND |
| |
-------
|
|
Y=p*q
|
AND:
Y=p*q = ~(p NAND q)
NAND:
Bramka NAND powstaje przez zanegowanie wyjścia w bramce AND czyli:
~Y=~(p*q) = p NAND q
czyli:
~Y=~p+~q = p NAND q - na podstawie prawa de’Morgana
Przykład:
Jutro pójdę do kina i do teatru
Y=K*T
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
To co wyżej to naturalna logika człowieka. Oczywiście żaden normalny człowiek nie wypali tu zdaniem równoważnym z użyciem operatora NAND:
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro pójdę do kina NAND do teatru
Popisywanie się przez co niektórych matematyków biegłą znajomością operatorów ujemnych to mówienie w Anglii anglikowi:
Popatrz ja potrafię jeździć prawą stroną i jeżdżenie tą stroną - wszyscy Anglicy zaczną się tu pukać w czoło.
Oczywiście w praktyce jest to bez sensu. Wszelkie prawa matematyczne mają swoje odbicie także w operatorach ujemnych np.
Prawa de’Morgana dla operatorów dodatnich AND I OR:
p*q = ~(~p+~q) - zamiana operatora AND(*) na OR(+)
p+q = ~(~p*~q) - zamiana operatora OR(+) na AND(*)
Prawa de’Morgana dla operatorów ujemnych NAND i NOR:
p NAND q = ~(~p NOR ~q) - zamiana operatora NAND na NOR
p NOR q = ~(~p NAND ~q) - zamiana operatora NOR na NAND
W tabeli operatorów logicznych wyżej za operatory dodatnie przyjęto te, które człowiek używa w języku mówionym. W języku mówionym operatory ujemne są zbędne … bo nikt ich nie używa.
4.3 Definicje operatorów OR i NOR
Kod: |
Bramka OR
p + q
| |
| |
-------
|OR |
| |
-------
|
|
Y= p+q
|
OR:
Y = p+q = ~(p NOR q)
NOR:
Bramka NOR powstaje przez zanegowanie wyjścia w bramce OR czyli:
~Y = ~(p+q) = p NOR q
~Y = ~p*~q = p NOR q - na podstawie prawa de’Morgana
Przykład:
Jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Przejście do logiki ujemnej (~Y) poprzez negacje zmiennych i wymianę operatorów:
~Y=~K*~T
Skłamię (~Y) jeśli nie pójdę do kina i nie pójdę do teatru
To samo z operatorem NOR:
Skłamię (~Y) jeśli pójdę do kina NOR teatru
~Y=K NOR T
4.4 Definicje operatorów => i N(=>)
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q N(=>)
A:1 1 =1 =0
B:1 0 =0 =1
C:0 0 =1 =0
D:0 1 =1 =0
|
p=>q = ~p+q = ~(p*~q)
N(=>) = ~(p=>q) = ~(~p+q) = p*~q
Z pierwszych dwóch linii tabeli zero-jedynkowej widać, że jeśli zajdzie p to „na pewno” => zajdzie q, bo druga linia ( jeśli zajdzie p to „na pewno” zajdzie ~q) jest twardym fałszem czyli p musi być warunkiem wystarczającym dla q.
Przykład:
A.
Jeśli zwierzę jest psem to „na pewno” => ma cztery łapy.
P=>4L=1 bo pies - twarda prawda zachodząca zawsze
1 1 =1 - bo pies
Bycie psem jest warunkiem wystarczającym by mieć cztery łapy
B.
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L=0
1 0 =0
… a jeśli zwierzę nie jest psem ?
Prawo Kubusia:
P=>4L = ~P~>~4L
Lewa strona jest implikacja prosta z warunkiem wystarczającym, zatem prawa strona musi być implikacją odwrotną z warunkiem koniecznym.
C.
Jeśli zwierzę nie jest psem to „może” ~> nie mieć czterech łap
~P~>~4L=1 bo kura - miękka prawda bo kolejna linia również może być prawdą
0 0 =1
LUB
D.
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń - miękka prawda, może zajść ale nie musi
0 1 =0
Prawo Kubusia dla zdania B:
P=>~4L = ~P~>4L
0 = 0
Lewa strona (B) na pewno nie jest implikacją prostą, zatem prawa strona (D) nie może być implikacją odwrotną. Zdanie D jest prawdziwe na mocy naturalnego spójnika „MOŻE” ~~> (wystarczy jedna prawda).
Implikacja prosta => w równaniach:
p=>q = ~(p*~q)
P=>4L = ~(P*~4L)
Prawda:
Nie może się zdarzyć, że zwierzę jest psem i nie ma czterech łap
P=>4L = ~(P*~4L)
Kłamstwo:
~(P=>4L) = P*~4L
Kłamstwo, jeśli zwierzę jest psem i nie ma czterech łap
4.5 Definicja operatorów ~> i N(~>)
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p~>q N(~>)
A:1 1 =1 =0
B:1 0 =1 =0
C:0 0 =1 =0
D:0 1 =0 =1
|
p~>q = p+~q = ~(~p*q)
N(~>) = ~(p~>q) = ~(p+~q) = ~p*q
Z pierwszych dwóch linii widać, że jeśli zajdzie p to może zajść q LUB jeśli zajdzie p to może zajść ~q. Wynika z tego że p musi być warunkiem koniecznym dla q inaczej pierwsza linia będzie twardym fałszem.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P =1
Cztery łapy są warunkiem koniecznym dla psa
Jeśli zwierzę ma skrzydła to może być psem
S~>P=0
Oczywisty twardy fałsz, definicja implikacji odwrotnej leży w gruzach.
Zauważmy, że jeśli p jest konieczne dla q to zajście ~p wymusza zajście ~q. W sposób naturalny odkryliśmy prawo Kubusia.
p~>q = ~p=>~q - zamiana operatora ~> na =>
Przykład:
A.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P =1 bo pies
1 1 =1
Cztery łapy są warunkiem koniecznym dla psa, zatem implikacja odwrotna prawdziwa
B.
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P =1 bo koń
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
C.
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P =1 - twarda prawda
0 0 =1
D.
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P =0 - twardy fałsz
Prawo Kubusia dla zdania B:
4L~>~P = ~4L=>P
Prawa strona (D) jest fałszem, zatem zdanie B nie może być implikacją odwrotną. Zdanie B jest prawdziwe na mocy naturalnego spójnika MOŻE ~~> (wystarczy jedna prawda).
Implikacja odwrotna ~> w równaniach:
p~>q = p+~q = ~(~p*q)
4L~>P = ~(~4L*P)
Prawda:
Nie może się zdarzyć, że zwierzę nie ma czterech łap i jest psem
4L~>P = ~(~4L*P)
Fałsz:
~(4L~>P) = ~4L*P
Fałsz, jeśli zwierzę nie ma czterech łap i jest psem
Ciekawostka
Prawa Kubusia dla operatorów ujemnych:
p N(=>) q = ~p N(~>) ~q
p N(~>) q = ~p N(=>) ~q
5.0 Wykresy czasowe implikacji
W technice cyfrowej do opisywania układów logicznych używa się tabel prawdy lub wykresów czasowych. W algebrze Kubusia tabela prawdy to po prostu definicja zero-jedynkowa wybranego operatora. Wykres czasowy to graficzne przedstawienie tabeli prawdy w funkcji czasu.
5.1 Wykres czasowy implikacji prostej =>
Bramka implikacji prostej:
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
|O =>| = |~> O| = |~> O|
| OR| |OR | |OR |
------- ------- -------
| | |
A B C
p=>q ~p~>~q ~p~>~q
|
Prawo Kubusia dla operatora =>:
p=>q = ~p~>~q
Dla dowolnych p i q na wszystkich bramkach wyjście będzie identyczne 0 albo 1, zatem mamy tu do czynienia z jedną i tą samą bramką implikacji prostej =>.
W środku układu => mamy wstawioną negację w linii p, zaś w środku układu ~> mamy wstawioną negację w linii q po czym następuje wejście obu sygnałów na wewnętrzną bramkę OR co pokazano na schemacie.
Definicja zero-jedynkowa implikacji prostej:
Kod: |
p q p=>q Zapis operatorowy
1: 1 1 =1 p=> q =1
2: 1 0 =0 p=>~q =0
Prawo Kubusia:
p=>q=~p~>~q
3: 0 0 =1 ~p~>~q =1
4: 0 1 =1 ~p~> q =1
|
Działanie bramki implikacji prostej w bezwzględnych zerach i jedynkach ilustrują schematy ideowe A i B. W liniach 1 i 2 powyższej tabeli mamy do czynienia z bramką A czyli odpowiedzią na pytanie co będzie jeśli p, zaś w liniach 3 i 4 mamy do czynienia z bramką B czyli odpowiedzią na pytanie co będzie jeśli ~p.
Dla linii 1 i 2 mamy p=1.
Po minięciu negatora wbudowanego w układ => na wejście bramki OR wchodzi neutralny sygnał ~p=0. Wyjście bramki A zależy więc od sygnału q wchodzącego bezpośrednio na wbudowaną bramkę OR.
Jeśli q=1 to wyjście p=>q=1
Jeśli q=0 to wyjście p=>q=0
… co doskonale widać w liniach 1 i 2 zero-jedynkowej definicji implikacji wyżej.
W liniach 3 i 4 powyższej definicji mamy odpowiedź na pytanie co będzie jeśli ~p. Zgodnie z prawem Kubusia działa teraz bramka B.
W liniach 3 i 4 powyższej definicji mamy p=0. Sygnał ten po minięciu zewnętrznego negatora przyjmie wartość ~p=1. Sygnał ~p=1 wchodzi bezpośrednio na wewnętrzną bramkę OR wymuszając na wyjściu ~p~>~q stałą wartość 1 niezależnie od zmian sygnału na linii wejściowej q (definicja OR).
Wykres czasowy powyższych rozważań jest następujący:
Kod: |
1 1 1 1
p ==========|==========|==========|==========|
---
1 0 1 0
q ==========| |==========| |==
| | | |
--- |==========| |==========|
p=>q 1 0 1 1
==========| |==========|==========|
| |
|==========|
p=>q=1 p=>~q=0 ~p~>~q=1 ~p~>q=1
gwarancja
|
Do powyższego wykresu można także dotrzeć z poziomu operatorowej definicji implikacji metodą „jak słyszymy tak zapisujemy”.
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
|O =>| = |~> O| = |~> O|
| OR| |OR | |OR |
------- ------- -------
| | |
A B C
p=>q ~p~>~q ~p~>~q
|
Zdanie wypowiedziane:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
Zdanie analizujemy w oparciu o bramkę A zgodną z wypowiedzianym zdaniem.
Jeśli p=1 i q=1 to A=1 bo q wchodzi bezpośrednio na bramkę OR i wymusza A=1.
Jeśli p=1 i q=0 to A=0 bo na bramce OR będziemy mieli q=0 i ~p=0 (p jest negowane na wejściu do bramki OR)
… a jeśli nie zajdzie p ?
Prawo Kubusia:
p=>q = ~p~>~q
Jeśli nie zajdzie p to może nie zajść q
~p~>~q
Tu natomiast zgodna z wypowiedzianym zdaniem jest bramka C i z niej korzystamy.
Jeśli ~p=1 i ~q=1 to wyjście C=1 bo sygnał ~p dociera bezpośrednio do bramki OR stan q jest tu nieistotny (definicja OR).
Jeśli ~p=1 i ~q=0 to wyjście C=1 z powodu jak wyżej
W ten sposób również mamy kompletny wykres czasowy implikacji prostej jak wyżej.
Najprostsze dotarcie do wykresu czasowego otrzymamy traktując zdania wynikłe z prawa Kubusia jako nowo wypowiedziane.
Kod: |
Logika dodatnia bo q: p=1, ~p=0, q=1, ~q=0
p=> q =1
1 1 =1
p=>~q =0
1 0 =0 - na podstawie definicji implikacji prostej
Prawo Kubusia:
p=>q = ~p~>~q
Logika ujemna bo ~q: ~p=1, p=0, ~q=1, q=0
~p~>~q =1
1 1 =1 - zdanie nowo wypowiedziane
~p~> q =1
1 0 =1 - na podstawie definicji implikacji odwrotnej
|
W kodach zero-jedynkowych w powyższej tabeli mamy wykres czasowy implikacji prostej.
5.2 Wykres czasowy implikacji odwrotnej ~>
Bramka implikacji odwrotnej:
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
|~> O| = |O =>| = |O =>|
|OR | | OR| | OR|
------- ------- -------
| | |
A B C
p~>q ~p=>~q ~p=>~q
|
Prawo Kubusia dla operatora ~>:
p~>q = ~p=>~q
Dla dowolnych p i q na wszystkich bramkach wyjście będzie identyczne 0 albo 1, zatem mamy tu do czynienia z jedną i tą samą bramką implikacji odwrotnej ~>.
W środku układu ~> mamy wstawioną negację w linii q, zaś w środku układu => mamy wstawioną negację w linii p po czym następuje wejście obu sygnałów na wewnętrzną bramkę OR co pokazano na schemacie.
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
p q p~>q Zapis operatorowy
1: 1 1 =1 p~> q =1
2: 1 0 =1 p~>~q =1
Prawo Kubusia:
p~>q=~p=>~q
3: 0 0 =1 ~p=>~q =1
4: 0 1 =0 ~p=> q =0
|
Działanie bramki implikacji odwrotnej w bezwzględnych zerach i jedynkach ilustrują schematy ideowe A i B. W liniach 1 i 2 powyższej tabeli mamy do czynienia z bramką A czyli odpowiedzią na pytanie co będzie jeśli p, zaś w liniach 3 i 4 mamy do czynienia z bramką B czyli odpowiedzią na pytanie co będzie jeśli ~p.
Dla linii 1 i 2 mamy p=1.
Linia ta wchodzi bezpośrednio na wewnętrzną bramkę OR wymuszając na wyjściu p~>q stałą wartość 1 bez względu na stan linii q (definicja OR), co widać w powyższej tabeli zero-jedynkowej.
W liniach 3 i 4 powyższej definicji mamy odpowiedź na pytanie co będzie jeśli ~p. Zgodnie z prawem Kubusia działa teraz bramka B.
Dla linii 3 i 4 mamy p=0. Ze schematu B widać że sygnał p=0 jest neutralny bo wchodzi bezpośrednio na wewnętrzną bramkę OR - minięcie po drodze dwóch negatorów niczego nie zmieni zgodnie z prawem podwójnego przeczenia p=~(~p).
Stan wyjścia ~p=>~q zależy zatem od sygnału q wchodzącego na wewnętrzną bramkę OR poprzez negator co widac na schemacie.
Jeśli q=0 to wyjście ~p=>~q=1 bo wejście na wewnętrzną bramkę OR poprzez negator
Jeśli q=1 to wyjście ~p=>~q=0 bo wejście na wewnętrzną bramkę OR poprzez negator
Oczywiście powyższe jest zgodne z liniami 3 i 4 tabeli zero-jedynkowej definicji implikacji odwrotnej.
Wykres czasowy implikacji odwrotnej dla powyższej analizy słownej
Kod: |
1 1 1 1
p ==========|==========|==========|==========|
---
1 0 1 0
q ==========| |==========| |==
| | | |
--- |==========| |==========|
p~>q 1 1 1 0
==========|==========|==========| |===
| | | |
|==========|
p~>q=1 p~>~q=1 ~p=>~q=1 ~p=>q=0
gwarancja
|
Do powyższego wykresu można również dotrzeć z poziomu operatorowej definicji implikacji odwrotnej.
Kod: |
p q p q ~p ~q
| | | | | |
| | O O | |
------- ------- -------
|~> O| = |O =>| = |O =>|
|OR | | OR| | OR|
------- ------- -------
| | |
A B C
p~>q ~p=>~q ~p=>~q
|
Zdanie wypowiedziane:
p~>q
Jeśli zajdzie p to może zajść q
Zgodna z wypowiedzianym zdaniem jest bramka A i jej używamy dla pierwszej części wykresu czyli dla p=1.
Jeśli p=1 i q=x to A=1 bo sygnał p wchodzi bezpośrednio na bramkę OR wymuszając A=1 bez względu na q
q=x - oznacza stan dowolny 0 albo 1
Pierwszą część wykresu mamy zatem z głowy.
… a jeśli nie zajdzie p ?
Prawo Kubusia:
p~>q = ~p=>~q
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q
Tu natomiast zgodna z wypowiedzianym zdaniem będzie bramka C której używamy do utworzenia drugiej części wykresu.
Jeśli ~p=1 i ~q=1 to C=1 bo ~q=1 dociera bezpośrednio do bramki OR i wymusza C=1 bez względu na ~p.
Jeśli ~p=1 i ~q=0 to:
W linii ~p=1 mamy wbudowany negator przed wejściem na bramkę OR, zatem do bramki OR dotrze sygnał neutralny p=0 czyli wszystko zależy od ~q.
Sygnał ~q=0 dociera bezpośrednio do bramki OR, wymusza zatem C=0 w ostatniej części wykresu.
Najprostsze dotarcie do wykresu czasowego otrzymamy traktując zdania wynikłe z prawa Kubusia jako nowo wypowiedziane.
Kod: |
Logika dodatnia bo q: p=1, ~p=0
p~> q =1
1 1 =1
p~>~q =1
1 0 =1 - na podstawie definicji implikacji odwrotnej
Prawo Kubusia:
p~>q = ~p=>~q
Logika ujemna bo ~q: ~p=1, p=0
~p=>~q =1
1 1 =1 - zdanie nowo wypowiedziane
~p=> q =0
1 0 =0 - na podstawie definicji implikacji prostej
|
W kodach zero-jedynkowych w powyższej tabeli mamy wykres czasowy implikacji prostej.
6.0 Nowa definicja implikacji
Narodziny nowej definicji implikacji na SFINII trwały 3 lata …
6.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
Definicja implikacji prostej:
Jeśli zajdzie p to musi => zajść q
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
=> - warunek wystarczający między p i q, spójnik „musi” w języku mówionym
Definicja implikacji odwrotnej:
Jeśli zajdzie p to może ~> zajść q
p~>q = p+~q
p musi być warunkiem koniecznym dla q
~> - warunek konieczny między p i q
6.2 Prawa matematyczne implikacji
Fundament logiki implikacyjnej:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
=> - warunek wystarczający
~> - warunek konieczny
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikację prostą =>
Jeżeli zdanie jest implikacja prostą to w stronę p=>q zachodzi warunek wystarczający zaś w drugą stronę q~>p zachodzi warunek konieczny.
Jeśli zdanie jest implikacja odwrotną to w stronę p~>q zachodzi warunek konieczny zaś w drugą stronę q=>p na pewno zachodzi warunek wystarczający.
Jeśli zdanie p=>q jest implikacją prostą to zdanie q=>p jest zawsze fałszywe czyli:
(p=>q)(q=>p) = 1*0 =0
(p=>q)(~p=>~q)=1*0=0
(p~>q)(q~>p) =1*0=0
Dwustronny warunek konieczny jest fizycznie niemożliwy do zaistnienia, w przeciwieństwie do warunku wystarczającego w równoważności.
6.3 Prawa matematyczne równoważności
Fundament logik równoważnościowych:
Definicja równoważności:
p<=>q = p*q+~p*~q
Prawo kontrapozycji:
p=>q = ~q=>~p
Jeśli zdanie jest równoważnością to zachodzi warunek wystarczający w obie strony.
Możliwe, równoważne definicje równoważności:
p<=>q = (p=>q)(q=>p)=1*1=1 - dwustronny warunek wystarczający
p<=>q = (p=>q)(~p=>~q)=1*1=1
6.4 Naturalne kodowanie zdań
* - spójnik „i” (AND)
+ - spójnik „lub” (OR)
=> - spójnik „na pewno” (zachodzi dla każdego elementu po „Jeśli…)
~~> - naturalny spójnik „MOŻE” (wystarczy jedna prawda)
Naturalne kodowanie zdań jest w 100% zgodne z logiką człowieka. W kodowaniu tym rozstrzygamy czy zdanie jest prawdziwe/fałszywe lub kiedy w przyszłości zdanie będzie prawdziwe/fałszywe.
Przykłady:
Pies ma cztery łapy - prawda
Pies nie ma czterech łap - fałsz
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo każdy pies ma cztery łapy
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - oczywisty fałsz
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~~>~4L =1 bo kura
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń
Jeśli księżyc jest z sera to pies ma cztery łapy
Zdanie fałszywe bo brak związku między księżycem a psem.
6.5 Definicje spójników zdaniowych
MUSI =>
p=>q=1
Dla każdego elementu spełniającego warunek p musi zajść q
MUSI = warunek wystarczający =>
MOŻE ~>
Warunek konieczny spełniony
p~>q=1
Istnieje element spełniający warunek p i q i zdanie spełnia warunek konieczny, implikacja odwrotna jest prawdziwa
MOŻE = warunek konieczny ~>
MOŻE ~~>
Warunek konieczny niespełniony
p~~>q=1
Istnieje element spełniający warunek p i q ale zadnie nie spełnia warunku koniecznego, implikacja odwrotna jest fałszywa
Kryterium prawdziwości zdania dla spójnika może:
(p ~~>q) + (p~>q)
Zdanie jest prawdziwe jeśli zajdzie MOŻE ~~> lub MOŻE ~>
Wniosek:
Nie każde zdanie prawdziwe na mocy spójnika MOŻE ~~> jest implikacją odwrotną, czyli spełnia warunek konieczny ~>
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P=1
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń...
Zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, implikacja odwrotna fałszywa bo 4 łapy nie są konieczne by nie być psem bo pies
4L~>~P=0 - implikacja odwrotna fałszywa.
Możemy użyć prawa Kubusia by uprościć rozstrzygnięcie o warunku koniecznym/wystarczającym. Dobre prawo matematyczne zawsze zamieni prawdę w prawdę albo fałsz w fałsz - nie ma innej możliwości.
Prawo Kubusia:
4L~>~P (warunek konieczny) = ~4L => P (warunek wystarczający)
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Oczywisty fałsz, zatem warunek wystarczający nie zachodzi, co oznacza także brak warunku koniecznego w zdaniu 4L~>~P.
6.6 Matematyczne kodowanie zdań
Algorytm rozstrzygania o rodzaju wypowiedzianego zdania:
1. Sprawdzamy czy z zdaniu występuje warunek wystarczający, jeśli tak to idziemy do pkt. A
2. Sprawdzamy czy w zdaniu występuje spójnik może ~~>, jeśli tak to idziemy do pkt. B
3. Jeśli żaden z powyższych warunków nie zachodzi to zdanie jest fałszywe lub niepoprawne
Zdanie niepoprawne - zdanie któremu nie da się przypisać ani prawdy, ani fałszu np. wszelkie zdania pytające.
A. Implikacja prosta:
Do prawidłowej obsługi warunku wystarczającego => konieczne są dwa symbole:
=> - warunek wystarczający, spójnik MUSI
<=> - równoważność
Po stwierdzeniu p=>q musimy wykluczyć q=>p aby mieć pewność, że p=>q to implikacja prosta.
Jeśli zachodzi warunek wystarczający w dwie strony p=>q i q=>p to zdanie jest równoważnością i do kodowania używamy symbolu równoważności <=>.
B. Implikacja odwrotna:
Do prawidłowej obsługi warunku koniecznego ~> również potrzebujemy dwóch symboli:
~> - warunek konieczny, jeśli zachodzi to implikacja jest prawdziwa, zdanie oczywiście prawdziwe
~~> zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, ale nie zachodzi warunek konieczny ~>, implikacja odwrotna jest fałszywa
Po stwierdzeniu prawdziwości zdania na mocy spójnika MOŻE ~~> musimy dodatkowo stwierdzić warunek koniczny by mieć pewność że zdanie jest implikacją odwrotną prawdziwą.
UWAGA !
Dowolne zdanie „Jeśli…to…” kodujemy matematycznie w następujący sposób:
p - poprzednik implikacji, zawsze po spójniku „Jeśli…”
q - następnik implikacji, zawsze po spójniku „to…”
Poprzednik p i następnik q łączymy ze sobą jednym z czterech możliwych operatorów =>, <=>, ~>, ~~>. Jednoznaczne rozstrzygnięcie z jakim zdaniem mamy do czynienia umożliwia algorytm przedstawiony wyżej.
6.7 Algorytm działania implikacji prostej
Implikację „Jeśli p to q” mózg człowieka obsługuje w dwóch taktach w pierwszym bada zgodność z p zaś w drugim zgodność z q. W żadnej chwili czasowej nie ma wykroczenia poza dwuelementową algebrę Boole’a.
Kod: |
musi
Jeśli |----- q --- p=>q=1
|----- p -----|musi
| |----- ~q --- p=>~q=0
|
|
X => ---|
|
| może
|Jeśli |----- ~q --- ~p~>~q=1
|----- ~p -----|może
|----- q --- ~p~>q=1
|
Jak widać, w pierwszym takcie podejmujemy decyzją czy iść drogą p czy też ~p co zależy od wylosowanego elementu X. W drugim takcie zawsze mamy tylko i wyłącznie dwie możliwości do wyboru, zatem cały czas jesteśmy w dwuelementowej algebrze Boole’a.
6.8 Algorytm działania implikacji odwrotnej
Kod: |
może
Jeśli |----- q --- p~>q=1
|----- p -----|może
| |----- ~q --- p~>~q=1
|
|
Y ~> ---|
|
| musi
|Jeśli |----- ~q --- ~p=>~q=1
|----- ~p -----|musi
|----- q --- ~p=>q=0
|
Tu także implikacja obsługiwana jest w dwóch taktach. W pierwszym następuje decyzja czy iść linią p czy też ~p w zależności od wylosowanego elementu Y. W drugim takcie mamy do wyboru zawsze dwie możliwości czyli cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Wyobraźmy sobie teraz powyższe algorytmy implikacji jako czarne pudełko z jednym wejściem i czterema wyjściami. Jeśli zdanie jest implikacją to elementy wrzucane do tego pudełka segregowane są na cztery zbiory z których jeden jest zawsze pusty. Oznacza to, że implikacja jest wirtualną logiką czterowartościową i rzeczywistą dwuwartościową co wynika z powyższych algorytmów.
6.9 Kwadrat logiczny równoważności
p=>q = ~p+q - definicja implikacji prostej
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (~p+q)*[~(~p)+~q] = (~p+q)*(p+~q) = ~p*p+~p*~q+q*p+q*~q = ~p*~q+q*p = p*q+~p*~q
bo:
~p*p = q*~q =0
Kod: |
A1:p=>q=~p+q=1 A2:q=>p=q+~p=1
W.Wystarczający W.Wystarczający
C1:~p=>~q=~p+q=1 C2:~q=>~p=q+~p=1
W.Wystarczający W.Wystarczający
|
Oczywiście w równoważności zachodzi warunek wystarczający w dwie strony. Można tu zamieniać p i q, zatem zachodzi prawo kontrapozycji.
p=>q = ~q=>~p
7.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
7.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
~G~>~C =1
LUB
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
~G~>C=0 - implikacja odwrotna fałszywa
(~G~~>C)+(~G~>C) = 1+0=1
~~> - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Uwaga:
W groźbach naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
7.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca. Intuicyjnie jest to jak najbardziej poprawne, bowiem jeśli odbiorca spełni warunek kary to nadawca może zrobić co mu się podoba, walić albo darować karę (akt łaski) i nie ma najmniejszych szans na zostanie kłamcą.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
B~>~L=0 - implikacja odwrotna fałszywa
(B~~>~L)+(B~>~L) = 1+0 =1
~~> - nadawca ma prawo do darowania dowolnej kary (akt łaski)
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
C: ~B => ~L =1 - twarda prawda (gwarancja)
LUB
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
D: ~B => L =0 - twardy fałsz
8.0 Podsumowanie
Logika człowieka = algebra Kubusia
"Wszyscy myślą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi.", "Wyobraźnia jest ważniejsza od wiedzy"
Albert Einstein
2009-04-12 Koniec
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:18, 10 Maj 2009 Temat postu: |
|
|
Beta 3.0
Aksjomat logików praktyków:
Jak logicznie myślimy, tak matematycznie zapisujemy. Mówimy „NIE” zapisujemy (~), mówimy „i” zapisujemy AND(*), mówimy “lub” zapisujemy OR(+), w implikacji mówimy “musi” zapisujemy ( =>), mówimy “może” zapisujemy (~>).
Algebra Kubusia
matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), Rafał3006 (sfinia), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za końcową, decydującą o wszystkim dyskusję
Spotkało się siedmiu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
Spis treści:
1.0 Notacja
1.1 Fabryka robotów ?
2.0 Matematyczne fundamenty algebry Boole’a
2.1 Iloczyn kartezjański i pojęcie funkcji
2.2 Funkcja iloczynu algebraicznego
2.3 Funkcja iloczynu logicznego
2.4 Funkcja sumy logicznej
2.5 Funkcja implikacji prostej
2.6 Funkcja implikacji odwrotnej
3.0 Algebra Kubusia - operatory „musi” => i „może” ~>
3.1 Definicja algebry Kubusia
3.2 Symboliczna i operatorowa definicja implikacji prostej
3.3 Symboliczna i operatorowa definicja implikacji odwrotnej
3.4 Prawa Kubusia
3.5 Implikacja w bramkach logicznych
4.0 Obietnice i groźby
4.1 Obietnice
4.2 Groźby
5.0 Algebra Kubusia w pigułce
5.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
5.2 Prawa matematyczne implikacji
5.3 Prawa matematyczne równoważności
5.4 Naturalne kodowanie zdań
5.5 Definicje spójników zdaniowych
5.6 Matematyczne kodowanie zdań
5.7 Sens implikacji prostej
5.8 Sens implikacji odwrotnej
6.0 Metody dowodzenia praw implikacyjnych
6.1 Metoda równań algebry Boole’a
6.2 Metoda makarona czterojajecznego
6.2.1 Dowód p=>q # q~>p metoda makarona czterojajecznego
6.3 Metoda symboliczna Kubusia
6.3.1 Dowód p=>q # q~>p metodą symboliczną Kubusia
6.4 Dowód fałszywości prawa kontrapozycji w implikacji
7.0 Kwadratura koła w dzisiejszej matematyce
7.1 Rozwiązanie kwadratury koła
Wstęp.
Matematycy kompletnie nie rozumieją implikacji czego dowód jest tutaj. Algebra Boole’a jest dobra w obszarze spójników AND(„i”) i OR(„lub”) i kompletnie bez sensu w obszarze implikacji. W definicji algebry Boole’a brakuje operatorów implikacji, spójników „musi” => i „może” ~>. Implikacja, opisująca między innymi wolną wolę wszelkich istot żywych sprowadzona została do technicznych spójników AND i OR, czyli wolną wolę człowieka usiłuje się opisać aparatem matematycznym dobrym w świecie techniki.
Do matematycznego opisu zachowania się wszelkich istot żywych niezbędne są bramki „musi” => i „może” ~>, to dwie różne definicje zero-jedynkowe, dwa różne operatory logiczne.
Algebra Kobusia to algebra Boole’a z dołączonymi do definicji operatorami „musi”=> i „może” ~>. W naturalnej logice człowiek posługuje się prawie wyłącznie tymi operatorami plus prawami Kubusia. Prawa Kubusia to odpowiedź na pytanie co będzie gdy nie zajdzie poprzednik p. W języku mówionym gwarancja wynika bezpośrednio z definicji operatora „musi” =>, stąd wszyscy wiedzą kiedy w przyszłości dotrzymają słowa a kiedy skłamią. Oczywiście każde dziecko w przedszkolu bez problemu przejdzie do operatorów ślepych AND(*) i OR(+) i odpowie kiedy wystąpi kłamstwo innym sposobem, to jedyny sensowny powód takiego przejścia. W operatorach „musi” => i „może” ~> nie wolno zamieniać argumentów p i q. Matematyczne przejście z operatorów „musi” => i „może” ~> do operatorów AND(*) i OR(+) wymusza zatem brak przemienności argumentów w AND(*) i OR(+). Matematycy o tym nie wiedzą i z zapałem zamieniają te argumenty błędnie sądząc, iż dalej jest to implikacja. Zamiana argumentów p i q dozwolona jest w równoważności, dlatego dzisiejsze pojęcie ”implikacji” zdaje egzamin jedynie w matematyce bo wszystkie twierdzenia matematyczne to równoważności i totalnie zawodzi w świecie rzeczywistym gdzie równoważność praktycznie nie występuje, tu króluje implikacja.
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków
Miękka prawda/fałsz - może zajść ale nie musi
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - naturalny spójnik MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
1.1 Fabryka robotów ?
Za moich czasów, wcale nie tak dawnych świat był normalny. Skończyłem normalne szkoły na Politechnice Warszawskiej kończąc (elektronika) i nigdy nie słyszałem o bzdurze zwanej „kwantyfikatorem”. Na matematyce w szkole średniej w temacie implikacja była w podręczniku wyłącznie tabelka zero-jedynkowa z której wszyscy się śmiali, nauczyciel matematyki nawet na to badziewie nie zwrócił uwagi. Świat był wówczas normalny czyli wszystkie twierdzenia w szkole średniej i na studiach technicznych były równoważnościami. W międzyczasie musiało dojść do jakiegoś przełomowego odkrycia bo okazuje się dzisiaj, że wiele twierdzeń np. twierdzenie Pitagorasa nagle stało się implikacjami.
Najtragiczniejsze jest to, że dzisiejsza szkoła usiłuje robić z ucznia robota czyli poprawne twierdzenie musi być superprecyzyjne, wypowiedziane w jedynie słuszny sposób.
Za moich czasów wystarczało to:
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
Dla wszystkich była to równoważność, nikt się nie pytał czy to może być implikacja bo nikt nie wiedział co to jest implikacja, łącznie z nauczycielem matematyki. W świecie techniki tabela zero-jedynkowa implikacji to najzwyklejszy idiotyzm, nic więcej.
W dniu dzisiejszym mamy taką sytuację na lekcjach matematyki w szkole podstawowej.
Pani do Jasia:
Poproszę o definicję trójkąta równobocznego …
Jaś:
Jeśli trójkąt ma równe boki to jest równoboczny
To nie jest poprawne twierdzenie matematyczne Jasiu, powiedz to inaczej.
Jaś:
Jeśli trójkąt ma kąty równe to jest równoboczny
Pani:
Źle Jasiu, spróbuj inaczej.
Jaś:
Trójkąt jest równoboczny gdy ma wszystkie boki równe
Ty zakuta pało, ile razy mam wam powtarzać że to równoważność zatem jedynie poprawne są takie zdania.
Pani:
Trójkąt jest równoboczny wtedy i tylko wtedy gdy ma kąty równe
Jaś:
Ale proszę Pani to nie jest prawda bo jest równoboczny także wtedy gdy ma boki równe ….
Przestańmy robić z dzieci i siebie idiotów na lekcjach matematyki.
Człowiek to nie komputer, zginąć można zarówno w chaosie jak i nadmiernej precyzyjności.
Można powiedzieć:
Jeśli trójkąt ma równe boki to jest równoboczny
Domyślnie wszelkie twierdzenia matematyczne to równoważności. Oczywiście zapis matematyczny powyższego twierdzenia jeśli nie wiedzieć po co będzie wymagała Pani to:
BR<=>R.
Zauważmy, że jeśli twierdzenie jest poprawnie powiedziane, a można to zrobić na bardzo dużo sposobów (dwa wyżej), to Pani powinna spytać czy to implikacja tylko w stosunku do implikacji bo równoważności w matematyce są domyślne.
Implikacją jest prawidło matematyczne:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Prawidło matematyczne, nie twierdzenie - to autentyczne określenie wykładowcy logiki.
W implikacji obowiązują prawa Kubusia:
p=>q = ~p~>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „na pewno” =>
p~>q = ~p=>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „może” ~>
W obu powyższych równaniach mamy do czynienia ze spójnikiem może ~>. Gdyby jakiekolwiek twierdzenie było rzeczywiście implikacją to mamy tak:
Jeśli jutro nie będzie pochmurno to na pewno => nie będzie padać
~CH=>~P
… ale zdanie absolutnie równoważne do powyższego, z identyczną gwarancją w każdym przecinku i literce jest takie.
Prawo Kubusia:
~CH=>~P = CH~>P
Jeśli jutro będzie pochmurno to może ~> padać
CH~>P
Jaka jest użyteczność takiego twierdzenia w matematyce ?
Oczywiście chmury mają „wolną wolę” i jedyne co możemy to rzucać monetą …
orzełek - będzie padać
reszka - nie będzie padać
Implikacja to między innymi matematyczny opis wolnej woli w świecie wszelkich istot żywych, w technice to idiotyzm. Nie da się na bazie definicji implikacji zbudować jakiejkolwiek użytecznej logiki, mającej zastosowanie np. w technice.
Nie zabijajmy w dzieciach wyobraźni, nie rozkazujmy im wypowiadać twierdzeń matematycznych w jedynie słuszny sposób, to już było, to komunizm.
Wyobraźnia jest ważniejsza od wiedzy
Albert Einstein
2.0 Matematyczne fundamenty algebry Boole’a
Iloczyn kartezjański i pojęcie funkcji to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w ślepych operatorach AND(*) i OR(+) oraz brak przemienności argumentów w operatorach implikacji prostej => i odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacyjnych przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacyjnych do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
2.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
2.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
2.3 Funkcja iloczynu logicznego
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu tylko dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
2.4 Funkcja sumy logicznej
Definicja sumy logicznej (funkcja logiczna):
Kod: |
p q p+q
1 1 =1
1 0 =1
0 0 =0
0 1 =1 |
gdzie:
+ - operator sumy logicznej OR(+), funkcja logiczna
W sumie logicznej zachodzi przemienność argumentów
czyli:
p+q = q+p
Dowód jest analogiczny jak w iloczynie logicznym.
2.5 Funkcja implikacji prostej
Definicja implikacji prostej, funkcja logiczna:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1 |
gdzie:
=> - operator implikacji prostej, funkcja logiczna
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z drugiej linii sprowadzając wszystkie sygnały do jedynki.
p*~q = ~(p=>q)
stąd:
p=>q = ~(p*~q) = ~p+q
Zbadajmy czy w implikacji można zamieniać p i q miejscami.
Kod: |
Tabela B
q p q=>p
1 1 =1
0 1 =1
0 0 =1
1 0 =0 |
Różnica w wynikowych zerach i jedynkach w tabelach A i B jest dowodem, że w implikacji prostej nie wolno zamieniać p i q miejscami, to bardzo ważna informacja.
W implikacji prostej nie zachodzi przemienność argumentów
Oczywiście:
p=>q # q=>p
zaś zapis:
q=>p - jest w implikacji zawsze fałszywy
Przykład:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2 =1
p=P8
q=P2
Po zamianie p i q otrzymujemy zdanie zawsze fałszywe.
Jeśli liczba jest podzielna przez 2 to na pewno jest podzielna przez 8
P2=>P8 =0 bo 2
2.6 Funkcja implikacji odwrotnej
Definicja implikacji odwrotnej, funkcja logiczna.
Kod: |
Tabela A
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0 |
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z ostatniej linii sprowadzając wszystkie sygnały do jedynki.
~p*q = ~(p~>q)
stąd:
p~>q = ~(~p*q) = p+~q
Sprawdźmy czy można zamieniać p i q.
Kod: |
Tabela B
q p q~>p
1 1 =1
0 1 =0
0 0 =1
1 0 =1 |
Różnica w wyniku tabel A i B jest dowodem, że w implikacji odwrotnej nie wolno zamieniać p i q, identycznie jak w implikacji prostej.
W implikacji odwrotnej nie zachodzi przemienność argumentów
Oczywiście:
p~>q # q~>p
zaś zapis:
q~>p - jest w implikacji zawsze fałszywy
Przykład:
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
p=P2
q=P8
Implikacja odwrotna prawdziwa bo P2 jest konieczne dla P8
Po zamianie p i q mamy:
Jeśli liczba jest podzielna przez 8 to może być podzielna przez 2
P8~~>P2
q~~>p
Implikacja odwrotna fałszywa ponieważ podzielność liczby przez 8 nie jest konieczna dla jej podzielności przez 2 bo 4, 6…
Zauważmy, że zdanie P8~~>P2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) natomiast implikacja odwrotna P8~>P2 jest fałszywa bo nie zachodzi warunek konieczny między P8 i P2.
W stronę przeciwną będzie prawdziwa implikacja q=>p:
Jeśli liczba jest podzielna przez 8 to na pewno => jest podzielna przez 2
P8=>P2
q=>p
Implikacja prosta prawdziwa bo P8 jest wystarczające dla P2
Twierdzenie 2.6
Jeśli implikacja odwrotna p~>q jest prawdziwa (zachodzi warunek konieczny), to w druga stronę musi zachodzić implikacja prosta q=>p (zachodzi warunek wystarczający).
Jeśli implikacja prosta p=>q jest prawdziwa (zachodzi warunek wystarczający), to w drugą stronę może zachodzić implikacja odwrotna q~>p (zachodzi warunek konieczny) albo równoważność q=>p (zachodzi warunek wystarczający)
3.0 Algebra Kubusia - operatory „musi” => i „może” ~>
Algebra Kubusia jest fundamentalnie inna od algebry Boole’a wyłącznie w zakresie operatorów implikacji prostej => i implikacji odwrotnej ~>. W definicji algebry Boole’a nie ma operatorów implikacji, czyli Bóg coś zaprojektował a mądrzejszy od Niego człowiek uznał że są niepotrzebne. W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
3.1 Definicja algebry Kubusia
Lista operatorów logicznych:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR.
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
1 = PRAWDA
0 = FAŁSZ
Zmienna binarna - zmienna przyjmująca wartości wyłącznie 0 albo 1
Funkcja logiczna - to funkcja zmiennych binarnych połączonych operatorami logicznymi przyjmująca wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
3.2 Symboliczna i operatorowa definicja implikacji prostej
Definicja zero-jedynkowa implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji prostej to po prostu rozpisane wszystkie przypadki jakie mogą w przyszłości wystąpić. Najłatwiej to zrozumieć przechodząc na symboliczną definicję implikacji prostej.
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji prostej;
Kod: |
p q p=>q
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z drugiej linii sprowadzając wszystkie sygnały do jedynki:
p*~q = ~(p=>q)
czyli:
p=>q = ~(p*~q) = ~p+q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „musi” zajść q bo druga linia jest twardym fałszem i nie ma prawa wystąpić czyli:
p=>q =1
p=>~q=0
Wynika z tego że p musi być wystarczające dla q, inaczej druga linia nie będzie twardym fałszem.
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” zajść q
p musi być wystarczające dla q
gdzie:
=> - operator implikacji prostej, spójnik „musi” => miedzy p i q ze spełnionym warunkiem wystarczającym.
Przykład:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L=1
Bycie psem jest wystarczające dla 4 łap, implikacja prosta prawdziwa
Druga linia przybierze tu postać:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz bo wszystkie psy mają cztery łapy. Psy kalekie z inną ilością łap służą do obalania logiki, dlatego wywalamy je do kosza, mając świadomość że takie istnieją.
Ostatnie dwie linie tabeli mówią że:
Jeśli nie zajdzie p to może zajść ~q
~p~>~q=1
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
LUB
Jeśli zajdzie ~p to może zajść q
~p~~>q=1
Przekładając na nasz przykład mamy:
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L=1 bo kura
Nie bycie psem jest warunkiem koniecznym, aby nie mieć czterech łap, implikacja odwrotna prawdziwa.
LUB
Jeśli zwierzę nie jest psem to może ~~> mieć cztery łapy
~P~~>4L=1 bo słoń
To zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda), nie jest to implikacja odwrotna.
Operatorowa definicja implikacji prostej:
p=>q =1
p=>~q=0
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p=>q= ~p~>~q
~p~>~q=1
~p~~>q=1
Ostatnie zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Zauważmy, że implikacja odwrotna w ostatniej linii jest wykluczona na podstawie prawa Kubusia:
p=>~q = ~p~>q =0
Ostatnie zdanie jest prawdziwe na mocy tego równania:
~p~~>q = ~p~>q + ~p~~>q = 0 + 1 =1
Sens implikacji prostej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko p=>~q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
3.3 Symboliczna i operatorowa definicja implikacji odwrotnej
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji odwrotnej;
Kod: |
p q p~>q
p q =1
p ~q =1
~p ~q =1
~p q =0
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z ostatniej linii sprowadzając wszystkie sygnały do jedynki:
~p*q = ~(p~>q)
czyli:
p~>q = ~(~p*q) = p+~q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „może” zajść q
p~>q=1
LUB
Jeśli zajdzie p to może zajść ~q
p~~>~q=1
Z powyższego wynika że p musi być warunkiem koniecznym dla q inaczej pierwsza linia będzie twardym fałszem, implikacja odwrotna będzie fałszywa.
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to może zajść q
p musi być konieczne dla q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
Przykład:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P=1 bo pies
Cztery łapy są konieczne dla psa, implikacja odwrotna prawdziwa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń
… ale
Jeśli zwierze ma skrzydła to może być psem
S~>P=0
Skrzydła nie są konieczne dla psa, implikacja oczywiście fałszywa
Zauważmy, że jeśli p jest konieczne dla q (pierwsza linia) to zajście ~p wymusza zajście ~q (trzecia linia). Stąd w sposób naturalny otrzymaliśmy prawo Kubusia.
p~>q = ~p=>~q=1
Prawa strona wymusza twardy fałsz w ostatniej linii:
~p=>q=0
Wracając do naszego przykładu … co będzie jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P=1 bo kura
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Operatorowa definicja implikacji odwrotnej:
p~>q =1
LUB
p~~>~q =1
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p~>q= ~p=>~q
~p=>~q=1
~p=>q=0
Linia p~~>~q=1 jest prawdziwa na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Implikacja w tej linii jest wykluczona na mocy prawa Kubusia:
p~>~q = ~p=>q=0
Zdanie p~~>~q jest prawdziwe na mocy tego równania:
p~~>~q = ~p=>q + p~~>~q = 0 + 1 =1
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko ~p=>q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
3.4 Prawa Kubusia
Definicje:
A.
p=>q = ~p+q - definicja implikacji prostej
B.
p~>q = p+~q - definicja implikacji odwrotnej
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę logiczną implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q - na podstawie definicji ~>
Prawa strona jest identyczna jak w definicji A zatem zachodzi:
p=>q = ~p~>~q
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q - na podstawie definicji =>
prawa strona jest identyczna jak definicja B zatem zachodzi:
p~>q = ~p=>~q
Prawa Kubusia to ścisły odpowiednik praw de’Morgana z operatorów AND(*) i OR(+).
p*q = ~(~p+~q) - zamian operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q = ~(~p*~q) - zamian operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
3.5 Implikacja w bramkach logicznych
Podstawa matematyczna przekształceń na bramkach logicznych.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
1.
Negujemy wejścia p i q otrzymując:
p=>q # (~p)=>(~q) = ~(~p)+(~q)
p=>q # ~p=>~q = p+~q
Prawa strona powyższego równania to definicja implikacji odwrotnej zatem:
p=>q # ~p=>~q = p~>q = p+~q
Prawo Kubusia:
p~>q = ~p=>~q - prawo zamiany ~> na =>
2.
Dokładnie to samo robimy z definicją implikacji odwrotnej.
p~>q # (~p)~>(~q) = (~p)+~(~q)
p~>q # ~p~>~q = ~p+q
Prawa strona ostatniego równania to definicja implikacji prostej zatem:
p~>q # ~p~>~q = p=>q = ~p+q
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany => na ~>
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
Definicja implikacji prostej - układ A:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja implikacji odwrotnej - układ C:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
W implikacji punktem odniesienia jest zawsze poprzednik p.
Bramkowa definicja implikacji prostej:
Układ A
Stojąc na przewodzie p widzimy niezanegowaną linię q
Bramkowa definicja implikacji odwrotnej:
Układ C
Stojąc na przewodzie p widzimy zanegowaną linie q
Opis przekształceń bramkowych:
1.
W linie wejściowe p i q bramki A wprowadzamy po jednym negatorze otrzymując układ B.
2.
Wpychamy wprowadzone negacje do układu scalonego otrzymując układ implikacji odwrotnej C.
Oczywiście matematycznie zachodzi:
(A) p=>q # (B) ~p=>~q = (C) p~>q
Prawa strona to prawo Kubusia:
p~>q = ~p=>~q
3.
W linie wejściowe układu C wprowadzamy po jednej negacji i otrzymujemy układ D
4.
Wpychamy wprowadzone negatory do układu scalonego otrzymując układ E
Oczywiście matematycznie zachodzi:
(C) p~>q # (D)~p~>~q = (E) p=>q
Prawa strona to drugie z praw Kubusia:
p=>q = ~p~>~q
Zauważmy, że w sumie przechodząc z układu A do układu D wprowadziliśmy po dwie negacje w linie wejściowe. Oczywiście taki układ scalony nie ulegnie zmianie na mocy prawa podwójnego przeczenia.
p=~(~p) - w dowolną linię można wprowadzić dwie negacje i układ nie ulegnie zmianie.
Mamy zatem:
(A) p=>q = (D)~p~>~q = (E) p=>q
czyli … wszystko w porządku !
4.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
4.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
~G~>~C =1
LUB
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
~G~>C=0 - implikacja odwrotna fałszywa
(~G~~>C)+(~G~>C) = 1+0=1
~~> - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Uwaga:
W groźbach naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~(G=>C) = G*~C - skłamię
Synku, skłamię jeśli będziesz grzeczny i nie dostaniesz czekolady.
G*~C
Jaś:
Mama, a czy może się zdarzyć że będę grzeczny i nie dostanę czekolady ?
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
4.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca. Intuicyjnie jest to jak najbardziej poprawne, bowiem jeśli odbiorca spełni warunek kary to nadawca może zrobić co mu się podoba, walić albo darować karę (akt łaski) i nie ma najmniejszych szans na zostanie kłamcą.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
B~>~L=0 - implikacja odwrotna fałszywa
(B~~>~L)+(B~>~L) = 1+0 =1
~~> - nadawca ma prawo do darowania dowolnej kary (akt łaski)
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
C: ~B => ~L =1 - twarda prawda (gwarancja)
LUB
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
D: ~B => L =0 - twardy fałsz
Jedyne sensowne przejście z operatora implikacji odwrotnej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
Jaś:
… tata, a kiedy skłamiesz ?
B~>L = B+~L = ~(~B*L) - dotrzymam słowa
czyli:
~(B~>L) = ~B*L - skłamię
Skłamię, jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
5.0 Algebra Kubusia w pigułce
Narodziny algebry Kubusia na SFINII trwały 3 lata …
5.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
Definicja implikacji prostej:
Jeśli zajdzie p to musi => zajść q
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
Jeśli zajdzie p to może ~> zajść q
p~>q = p+~q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
5.2 Prawa matematyczne implikacji
Fundament logiki implikacyjnej:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
=> - warunek wystarczający
~> - warunek konieczny
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikację prostą =>
Jeżeli zdanie jest implikacja prostą to w stronę p=>q zachodzi warunek wystarczający zaś w drugą stronę q~>p zachodzi warunek konieczny.
Jeśli zdanie jest implikacja odwrotną to w stronę p~>q zachodzi warunek konieczny zaś w drugą stronę q=>p na pewno zachodzi warunek wystarczający.
Jeśli zdanie p=>q jest implikacją prostą to zdanie q=>p jest zawsze fałszywe czyli:
(p=>q)(q=>p) = 1*0 =0
(p=>q)(~p=>~q)=1*0=0
(p~>q)(q~>p) =1*0=0
Dwustronny warunek konieczny jest fizycznie niemożliwy do zaistnienia, w przeciwieństwie do warunku wystarczającego w równoważności.
5.3 Prawa matematyczne równoważności
Fundament logik równoważnościowych:
Definicja równoważności:
p<=>q = p*q+~p*~q
Prawo kontrapozycji:
p=>q = ~q=>~p
Jeśli zdanie jest równoważnością to zachodzi warunek wystarczający w obie strony.
Możliwe, równoważne definicje równoważności:
p<=>q = (p=>q)(q=>p)=1*1=1 - dwustronny warunek wystarczający
p<=>q = (p=>q)(~p=>~q)=1*1=1
5.4 Naturalne kodowanie zdań
* - spójnik „i” (AND)
+ - spójnik „lub” (OR)
=> - spójnik „na pewno” (zachodzi dla każdego elementu po „Jeśli…)
~~> - naturalny spójnik „MOŻE” (wystarczy jedna prawda)
Naturalne kodowanie zdań jest w 100% zgodne z logiką człowieka. W kodowaniu tym rozstrzygamy czy zdanie jest prawdziwe/fałszywe lub kiedy w przyszłości zdanie będzie prawdziwe/fałszywe.
Przykłady:
Pies ma cztery łapy - prawda
Pies nie ma czterech łap - fałsz
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo każdy pies ma cztery łapy
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - oczywisty fałsz
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~~>~4L =1 bo kura
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń
Jeśli księżyc jest z sera to pies ma cztery łapy
Zdanie fałszywe bo brak związku między księżycem a psem.
5.5 Definicje spójników zdaniowych
MUSI =>
p=>q=1
Dla każdego elementu spełniającego warunek p musi zajść q
MUSI = warunek wystarczający =>
MOŻE ~>
Warunek konieczny spełniony
p~>q=1
Istnieje element spełniający warunek p i q i zdanie spełnia warunek konieczny, implikacja odwrotna jest prawdziwa
MOŻE = warunek konieczny ~>
MOŻE ~~>
Warunek konieczny niespełniony
p~~>q=1
Istnieje element spełniający warunek p i q ale zadnie nie spełnia warunku koniecznego, implikacja odwrotna jest fałszywa
Kryterium prawdziwości zdania dla spójnika może:
(p ~~>q) + (p~>q)
Zdanie jest prawdziwe jeśli zajdzie MOŻE ~~> lub MOŻE ~>
Wniosek:
Nie każde zdanie prawdziwe na mocy spójnika MOŻE ~~> jest implikacją odwrotną, czyli spełnia warunek konieczny ~>
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P=1
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń...
Zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, implikacja odwrotna fałszywa bo 4 łapy nie są konieczne by nie być psem bo pies
4L~>~P=0 - implikacja odwrotna fałszywa.
Możemy użyć prawa Kubusia by uprościć rozstrzygnięcie o warunku koniecznym/wystarczającym. Dobre prawo matematyczne zawsze zamieni prawdę w prawdę albo fałsz w fałsz - nie ma innej możliwości.
Prawo Kubusia:
4L~>~P (warunek konieczny) = ~4L => P (warunek wystarczający)
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Oczywisty fałsz, zatem warunek wystarczający nie zachodzi, co oznacza także brak warunku koniecznego w zdaniu 4L~>~P.
5.6 Matematyczne kodowanie zdań
Algorytm rozstrzygania o rodzaju wypowiedzianego zdania:
1. Sprawdzamy czy z zdaniu występuje warunek wystarczający, jeśli tak to idziemy do pkt. A
2. Sprawdzamy czy w zdaniu występuje spójnik może ~~>, jeśli tak to idziemy do pkt. B
3. Jeśli żaden z powyższych warunków nie zachodzi to zdanie jest fałszywe lub niepoprawne
Zdanie niepoprawne - zdanie któremu nie da się przypisać ani prawdy, ani fałszu np. wszelkie zdania pytające.
A. Implikacja prosta:
Do prawidłowej obsługi warunku wystarczającego => konieczne są dwa symbole:
=> - warunek wystarczający, spójnik MUSI
<=> - równoważność
Po stwierdzeniu p=>q musimy wykluczyć q=>p aby mieć pewność, że p=>q to implikacja prosta.
Jeśli zachodzi warunek wystarczający w dwie strony p=>q i q=>p to zdanie jest równoważnością i do kodowania używamy symbolu równoważności <=>.
B. Implikacja odwrotna:
Do prawidłowej obsługi warunku koniecznego ~> również potrzebujemy dwóch symboli:
~> - warunek konieczny, jeśli zachodzi to implikacja jest prawdziwa, zdanie oczywiście prawdziwe
~~> zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, ale nie zachodzi warunek konieczny ~>, implikacja odwrotna jest fałszywa
Po stwierdzeniu prawdziwości zdania na mocy spójnika MOŻE ~~> musimy dodatkowo stwierdzić warunek koniczny by mieć pewność że zdanie jest implikacją odwrotną prawdziwą.
UWAGA !
Dowolne zdanie „Jeśli…to…” kodujemy matematycznie w następujący sposób:
p - poprzednik implikacji, zawsze po spójniku „Jeśli…”
q - następnik implikacji, zawsze po spójniku „to…”
Poprzednik p i następnik q łączymy ze sobą jednym z czterech możliwych operatorów =>, <=>, ~>, ~~>. Jednoznaczne rozstrzygnięcie z jakim zdaniem mamy do czynienia umożliwia algorytm przedstawiony wyżej.
5.7 Sens implikacji prostej
Implikację „Jeśli p to q” mózg człowieka obsługuje w dwóch taktach w pierwszym bada zgodność z p zaś w drugim zgodność z q. W żadnej chwili czasowej nie ma wykroczenia poza dwuelementową algebrę Boole’a.
Algorytm działania implikacji odwrotnej:
Kod: |
musi
Jeśli |----- q --- p=>q=1
|----- p -----|musi
| |----- ~q --- p=>~q=0
|
|
X => ---|
|
| może
|Jeśli |----- ~q --- ~p~>~q=1
|----- ~p -----|może
|----- q --- ~p~>q=1
|
Jak widać, w pierwszym takcie podejmujemy decyzją czy iść drogą p czy też ~p co zależy od wylosowanego elementu X. W drugim takcie zawsze mamy tylko i wyłącznie dwie możliwości do wyboru, zatem cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji prostej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka p=>~q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji prostej. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
5.8 Sens implikacji odwrotnej
Algorytm działania implikacji odwrotnej:
Kod: |
może
Jeśli |----- q --- p~>q=1
|----- p -----|może
| |----- ~q --- p~>~q=1
|
|
Y ~> ---|
|
| musi
|Jeśli |----- ~q --- ~p=>~q=1
|----- ~p -----|musi
|----- q --- ~p=>q=0
|
Tu także implikacja obsługiwana jest w dwóch taktach. W pierwszym następuje decyzja czy iść linią p czy też ~p w zależności od wylosowanego elementu Y. W drugim takcie mamy do wyboru zawsze dwie możliwości czyli cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka ~p=>q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji odwrotnej. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
Wyobraźmy sobie teraz powyższe algorytmy implikacji jako czarne pudełko z jednym wejściem i czterema wyjściami. Jeśli zdanie jest implikacją to elementy wrzucane do tego pudełka segregowane są na cztery zbiory z których jeden jest zawsze pusty. Oznacza to, że implikacja jest wirtualną logiką czterowartościową i rzeczywistą dwuwartościową co wynika z powyższych algorytmów.
6.0 Metody dowodzenia praw implikacyjnych
Kluczową różnicą w dowodzeniu praw opartych o ślepe operatory AND(*) i OR(+) oraz praw implikacyjnych jest brak przemienności argumentów w operatorach implikacji co dowiedziono wyżej.
6.1 Metoda równań algebry Boole’a
Brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Z powyższego wynika że:
p=>q = ~p+q # q+~p = q~>p
czyli:
p=>q = ~(p*~q) # ~(~q*p) =q~>p
Przykład:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
~(P8*~P2)
Nie może się zdarzyć, że liczba jest podzielna przez 8 i nie jest podzielna przez 2
Gwarantowane liczby to:
8, 16, 24 …
Tu poza gwarancją są liczby:
1,3,,5 … 2,4,6 …
~(~P2*P8)
Nie może się zdarzyć, że liczba nie jest podzielna przez 2 i jest podzielna przez 8
Gwarantowane liczby to:
1,3,5 …
Tu poza gwarancją są liczby:
8,16,24 … 2,4,6 …
W obu przypadkach mamy różne zarówno zbiory gwarantowane, jak i zbiory będące poza gwarancją.
Zachodzi zatem:
~(P8*~P2) # ~(~P2*P8)
To dwie zupełnie inne gwarancje czyli brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Zauważmy, że w prawach Kubusia gwarancje są identyczne bo tu nie zamieniamy operatorów w implikacyjnych AND i OR.
Definicje:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawa Kubusia:
p=>q = ~p~>~q = ~p+q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q
p~>q = ~p=>~q = p+~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q
W prawach Kubusia mamy identyczne gwarancje po obu stronach równości z dokładnością do każdej literki i każdego przecinka. Tak musi być bo po obu stronach mamy identyczną bramkę logiczną czyli w 100% dokładnie to samo.
Prawa Kubusia to dokładny odpowiednik praw de’Morgana z operatorów AND i OR:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q=~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
6.2 Metoda makarona czterojajecznego
Na początek udowodnijmy taką tożsamość:
p*q = q*p
metodą makarona czterojajecznego (fajna dyskusja była), który po obu stronach równości zapisywał sobie przypadkowe zera i jedynki po stronie p i q, ale metodą wygibasów udowodnił co chciał, dowód był poprawny. Oczywiście makaron czterojajeczny korzystał z właściwości iloczynu kartezjańskiego i pojęcia funkcji.
Lewa strona tożsamości:
Tworzymy tabelę zero-jedynkową dla lewej strony:
Kod: |
Tabela A
p q p*q
0 0 =0
0 1 =0
1 0 =0
1 1 =1
|
Przechodzimy z powyższą tabelą do zapisu symbolicznego przyjmując:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
~p ~q =0
~p q =0
p ~q =0
p q =1
|
Prawa strona tożsamości:
Kod: |
Tabela C
q p q*p
1 1 =1
0 0 =0
0 1 =0
1 0 =0
|
Oczywiście rozkład zer i jedynek po stronie p i q może być absolutnie dowolny np. jak wyżej.
Przechodzimy do zapisu symbolicznego:
Kod: |
Tabela D
q p =1
~q ~p =0
~q p =0
q ~p =0
|
Jak udowodnić równoważność tabel B i D ?
Punkt 1.
Korzystamy z prawa przemienności iloczynu logicznego i zamieniamy kolumny w tabeli D
Kod: |
Tabela E
p q =1
~p ~q =0
p ~q =0
~p q =0
|
Punkt 2
Korzystając z definicji iloczynu kartezjańskiego i pojęcia funkcji zamieniamy w tabeli D linie, aby uzyskać zgodność z tabelą B, jeśli się to uda to oczywiście tożsamość p*q=q*p zachodzi.
Kod: |
Tabela F
~p ~q =0
~p q =0
p ~q =0
p q =1
|
Jak widać bez problemu to się udało - tabele B i F są identyczne.
CND
6.2.1 Dowód p=>q # q~>p metoda makarona czterojajecznego
Weźmy się teraz za kluczowy w całej publikacji dowód:
p=>q # q~>p
Lewa strona:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Przechodzimy do zapisu symbolicznego przyjmując:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa strona:
Kod: |
Tabela C
q p q~>p
0 0 =1
0 1 =0
1 0 =1
1 1 =1
|
Oczywiście rozkład zer i jedynek po stronie p i q może być dowolny.
Przechodzimy do zapisu symbolicznego:
Kod: |
Tabela D
~q ~p =1
~q p =0
q ~p =1
q p =1
|
Jak udowodnić równoważność tabel B i D ?
Można to tylko i wyłącznie w jeden sposób, zamieniając kolumny p i q … ale prawo przemienności nie zachodzi w implikacji, zatem nie wolno tego robić !
Prawidłowe równanie jest zatem takie:
p=>q # q~>p
CND
6.3 Metoda symboliczna Kubusia
W metodzie symbolicznej Kubusia korzystamy z symbolicznych definicji implikacji prostej => i odwrotnej ~>. W miejsce parametrów formalnych z tych definicji podstawiamy parametry aktualne z wypowiedzianego zdania. Równość zachodzi jeśli uzyskamy równość tabel przestawiając wiersze co jest dozwolone na mocy definicji iloczynu kartezjańskiego i pojęcia funkcji. W implikacji nie wolno zamieniać kolumn czyli zamieniać argumentów funkcji.
Na początek udowodnijmy prawo Kubusia:
p=>q = ~p~>~q
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
Tabela C
p q p~>q
0 0 =1
1 0 =1
0 1 =0
1 1 =1
|
Oczywiście zera i jedynki po stronie p i q można generować w sposób losowy.
Przejście do symbolicznej definicji implikacji odwrotnej:
Kod: |
Tabela D
~p ~q =1
p ~q =1
~p q =0
p q =1
|
W definicji implikacji odwrotnej w miejsce parametrów formalnych p i q podstawiamy parametry aktualne ~p i ~q ze strony prawej.
Kod: |
Tabela E
~(~p) ~(~q) =1
(~p) ~(~q) =1
~(~p) (~q) =0
(~p) (~q) =1
|
Korzystając z prawa podwójnego przeczenia A=~(~A) opuszczamy nawiasy.
Kod: |
Tabela F
p q =1
~p q =1
p ~q =0
~p ~q =1
|
Łatwo zauważyć, że jeśli w tabeli F zamienimy odpowiednie linie to doprowadzimy do zgodności z tabela B, możemy to zrobić na podstawie definicji iloczynu kartezjańskiego i pojęcia funkcji.
Kod: |
Tabela G
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Tabele b i G są identyczne zatem prawo Kubusia zachodzi.
CND
6.3.1 Dowód p=>q # q~>p metodą symboliczną Kubusia
p=>q # q~>p
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
Tabela C
p q p~>q
0 0 =1
1 0 =1
0 1 =0
1 1 =1
|
Oczywiście zera i jedynki po stronie p i q można generować w sposób losowy.
Przejście do symbolicznej definicji implikacji odwrotnej:
Kod: |
Tabela D
~p ~q =1
p ~q =1
~p q =0
p q =1
|
Prawa strona interesującej nas zależności to:
q~>p
Podstawiamy zatem powyższe parametry aktualne do symbolicznej definicji implikacji odwrotnej.
Kod: |
Tabela E
~q ~p =1
q ~p =1
~q p =0
q p =1
|
W implikacji nie zachodzi przemienność argumentów implikacyjnych, nie możemy zatem zamienić kolumn w powyższej tabeli … czyli nigdy nie doprowadzimy do zgodności tabel B i E.
Zachodzi zatem:
p=>q # q~>p
CND
6.4 Dowód fałszywości prawa kontrapozycji w implikacji
Prawo kontrapozycji:
p=>q = ~q=>~p
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
~q=>~p
Do definicji symbolicznej implikacji prostej (Tabela B) wstawiamy parametry aktualne jak wyżej:
Kod: |
Tabela C
(~q) (~p) =1
(~q) ~(~p) =0
~(~q) ~(~p) =1
~(~q) (~p) =1
|
Opuszczamy nawiasy korzystając z prawa podwójnego przeczenia A=~(~A):
Kod: |
Tabela D
~q ~p =1
~q p =0
q p =1
q ~p =1
|
Równość tabel B i D uzyskamy tylko i wyłącznie w jednym przypadku … jeśli zamienimy kolumny q i p. Nie możemy jednak tego zrobić bo w implikacji nie zachodzi prawo przemienności argumentów.
Prawo kontrapozycji jest zatem w implikacji fałszywe.
Wnioski:
Prawa Kubusia są prawdziwe w implikacji i fałszywe w równoważności
Prawo kontrapozycji jest prawdziwe w równoważności bo tu można zamieniać argumenty i fałszywe w implikacji gdzie tego robić nie wolno.
7.0 Kwadratura koła w dzisiejszej matematyce
Wprowadzenie:
p=>q - definicja implikacji prostej
p~>q - definicja implikacji odwrotnej
Symbole p i q to po prostu standard umożliwiający porozumiewanie się. Znaczki są tu kompletnie nieważne. Ważne jest co podajemy na podstawę wektorów (p) a co na strzałki (q).
Jeśli między postawą a strzałka zachodzi warunek wystarczający to musimy użyć definicji p=>q, jeśli konieczny to p~>q.
Możemy sobie nazwać q~>p, pies~>wydra ... to bez znaczenia ale:
Prawo Kubusia:
pies~>wydra = ~pies => ~wydra - prawo zamiany operatora ~> na =>
w powyższym zapisie pies i wydra to tylko symbole (parametry formalne) bez żadnego związku z psem i wydrą.
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze pies, zaś po „to..” jest zawsze wydra.
Oczywiście zgodnie z powszechnym standardem:
p=pies
q=wydra
czyli jeszcze raz to samo prawo Kubusia:
p=>q = ~p~>~q - prawo Kubusia zapisane zgodnie z powszechnym standardem
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze p zaś po „to…” jest zawsze q
Po powyższym wstępie czas na kwadraturę koła w dzisiejszej logice:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
4L są konieczne dla psa, zatem implikacja odwrotna prawdziwa
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Implikacja odwrotna do powyższej:
Jeśli zwierze jest psem to na pewno => ma cztery łapy
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Kubuś nie ma nic przeciwko q=>p, może sobie być !
… ale co to jest ?!
Matematyk ma do wyboru:
A.
q=>p jest dokładnie tym samym co podręcznikowa definicja implikacji prostej p=>q i to zdanie analizujemy przy pomocy tej definicji
B.
…..
Za cholerę nie mogę wpaść co napisać w B ?!
Proszę o odpowiedź matematyka co napisze w B jeśli wedle niego to nie jest A !
Zauważmy że matematyk ma do wyboru takie definicje:
p=>q - definicja implikacji prostej (tylko ta jest dobra)
p~>q - definicje implikacji odwrotnej (odpada)
p<=>q - równoważność (odpada)
p=>q - implikacja fałszywa, odpada bo P=>4L jest implikacją prawdziwą
7.1 Rozwiązanie kwadratury koła
Matematyka operuje na zapisie ogólnym, nie na przykładach.
Zapis q=>p oznacza oczywiście implikacje odwrotną do p=>q.
Jeśli p=>q jest implikacją prostą prawdziwą to implikacja q=>p jest zawsze fałszywa.
Oczywiście:
p=>q # q=>p
Identycznie jest w implikacji odwrotnej …
Zapis q~>p oznacza w matematyce implikację odwrotną do p~>q.
Jeśli p~>q jest implikacją prawdziwą to implikacja q~>p jest zawsze fałszywa.
Oczywiście:
p~>q # q~>p
Z powyższego wynika, że kodowanie zdań prawdziwych w postaci q=>p lub q~>p jest czysto matematycznym błędem, bo w zapisach ogólnych zdania te są zawsze fałszywe co pokazano wyżej … oczywiście przy prawdziwości odpowiednich p=>q i p~>q.
Wróćmy do cytowanego tekstu.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Zdanie odwrotne do powyższego:
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Nie !!!
Tylko i wyłącznie p=>q jak u Kubusia … bo dla przypadku gdy punktem odniesienia będzie zdanie p~>q jak wyżej to implikacja q=>p jest prawdziwa i matematycznie zachodzi:
q=>p = p=>q
co rozwala cała matematykę w zakresie implikacji !
Oczywiście w języku potocznym możemy powiedzieć:
Implikacja odwrotną do p=>q jest implikacja q~>p = p~>q
Implikacją odwrotna do p~>q jest implikacja q=>p = p=>q
Wszystkie powyższe zdania są oczywiście prawdziwe, zaś znaczenie implikacji odwrotnej jest tu inne niż w klasycznej matematyce gdzie zachodzi:
p=>q # q=>p
p~>q # q~>p
Nadmierna precyzja = chaos
Zginąć można zarówno w chaosie jak i nadmiernej precyzyjności
Kubuś
"Wszyscy myślą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi.", "Wyobraźnia jest ważniejsza od wiedzy"
Albert Einstein
2009-05-08 Koniec
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:18, 10 Maj 2009 Temat postu: |
|
|
Beta 3.0
Aksjomat logików praktyków:
Jak logicznie myślimy, tak matematycznie zapisujemy. Mówimy „NIE” zapisujemy (~), mówimy „i” zapisujemy AND(*), mówimy “lub” zapisujemy OR(+), w implikacji mówimy “musi” zapisujemy ( =>), mówimy “może” zapisujemy (~>).
Algebra Kubusia
matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), Rafał3006 (sfinia), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za końcową, decydującą o wszystkim dyskusję
Spotkało się siedmiu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
Spis treści:
1.0 Notacja
1.1 Fabryka robotów ?
2.0 Matematyczne fundamenty algebry Boole’a
2.1 Iloczyn kartezjański i pojęcie funkcji
2.2 Funkcja iloczynu algebraicznego
2.3 Funkcja iloczynu logicznego
2.4 Funkcja sumy logicznej
2.5 Funkcja implikacji prostej
2.6 Funkcja implikacji odwrotnej
3.0 Algebra Kubusia - operatory „musi” => i „może” ~>
3.1 Definicja algebry Kubusia
3.2 Symboliczna i operatorowa definicja implikacji prostej
3.3 Symboliczna i operatorowa definicja implikacji odwrotnej
3.4 Prawa Kubusia
3.5 Implikacja w bramkach logicznych
4.0 Obietnice i groźby
4.1 Obietnice
4.2 Groźby
5.0 Algebra Kubusia w pigułce
5.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
5.2 Prawa matematyczne implikacji
5.3 Prawa matematyczne równoważności
5.4 Naturalne kodowanie zdań
5.5 Definicje spójników zdaniowych
5.6 Matematyczne kodowanie zdań
5.7 Sens implikacji prostej
5.8 Sens implikacji odwrotnej
6.0 Metody dowodzenia praw implikacyjnych
6.1 Metoda równań algebry Boole’a
6.2 Metoda makarona czterojajecznego
6.2.1 Dowód p=>q # q~>p metoda makarona czterojajecznego
6.3 Metoda symboliczna Kubusia
6.3.1 Dowód p=>q # q~>p metodą symboliczną Kubusia
6.4 Dowód fałszywości prawa kontrapozycji w implikacji
7.0 Kwadratura koła w dzisiejszej matematyce
7.1 Rozwiązanie kwadratury koła
Wstęp.
Matematycy kompletnie nie rozumieją implikacji czego dowód jest tutaj. Algebra Boole’a jest dobra w obszarze spójników AND(„i”) i OR(„lub”) i kompletnie bez sensu w obszarze implikacji. W definicji algebry Boole’a brakuje operatorów implikacji, spójników „musi” => i „może” ~>. Implikacja, opisująca między innymi wolną wolę wszelkich istot żywych sprowadzona została do technicznych spójników AND i OR, czyli wolną wolę człowieka usiłuje się opisać aparatem matematycznym dobrym w świecie techniki.
Do matematycznego opisu zachowania się wszelkich istot żywych niezbędne są bramki „musi” => i „może” ~>, to dwie różne definicje zero-jedynkowe, dwa różne operatory logiczne.
Algebra Kobusia to algebra Boole’a z dołączonymi do definicji operatorami „musi”=> i „może” ~>. W naturalnej logice człowiek posługuje się prawie wyłącznie tymi operatorami plus prawami Kubusia. Prawa Kubusia to odpowiedź na pytanie co będzie gdy nie zajdzie poprzednik p. W języku mówionym gwarancja wynika bezpośrednio z definicji operatora „musi” =>, stąd wszyscy wiedzą kiedy w przyszłości dotrzymają słowa a kiedy skłamią. Oczywiście każde dziecko w przedszkolu bez problemu przejdzie do operatorów ślepych AND(*) i OR(+) i odpowie kiedy wystąpi kłamstwo innym sposobem, to jedyny sensowny powód takiego przejścia. W operatorach „musi” => i „może” ~> nie wolno zamieniać argumentów p i q. Matematyczne przejście z operatorów „musi” => i „może” ~> do operatorów AND(*) i OR(+) wymusza zatem brak przemienności argumentów w AND(*) i OR(+). Matematycy o tym nie wiedzą i z zapałem zamieniają te argumenty błędnie sądząc, iż dalej jest to implikacja. Zamiana argumentów p i q dozwolona jest w równoważności, dlatego dzisiejsze pojęcie ”implikacji” zdaje egzamin jedynie w matematyce bo wszystkie twierdzenia matematyczne to równoważności i totalnie zawodzi w świecie rzeczywistym gdzie równoważność praktycznie nie występuje, tu króluje implikacja.
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków
Miękka prawda/fałsz - może zajść ale nie musi
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - naturalny spójnik MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
1.1 Fabryka robotów ?
Za moich czasów, wcale nie tak dawnych świat był normalny. Skończyłem normalne szkoły na Politechnice Warszawskiej kończąc (elektronika) i nigdy nie słyszałem o bzdurze zwanej „kwantyfikatorem”. Na matematyce w szkole średniej w temacie implikacja była w podręczniku wyłącznie tabelka zero-jedynkowa z której wszyscy się śmiali, nauczyciel matematyki nawet na to badziewie nie zwrócił uwagi. Świat był wówczas normalny czyli wszystkie twierdzenia w szkole średniej i na studiach technicznych były równoważnościami. W międzyczasie musiało dojść do jakiegoś przełomowego odkrycia bo okazuje się dzisiaj, że wiele twierdzeń np. twierdzenie Pitagorasa nagle stało się implikacjami.
Najtragiczniejsze jest to, że dzisiejsza szkoła usiłuje robić z ucznia robota czyli poprawne twierdzenie musi być superprecyzyjne, wypowiedziane w jedynie słuszny sposób.
Za moich czasów wystarczało to:
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
Dla wszystkich była to równoważność, nikt się nie pytał czy to może być implikacja bo nikt nie wiedział co to jest implikacja, łącznie z nauczycielem matematyki. W świecie techniki tabela zero-jedynkowa implikacji to najzwyklejszy idiotyzm, nic więcej.
W dniu dzisiejszym mamy taką sytuację na lekcjach matematyki w szkole podstawowej.
Pani do Jasia:
Poproszę o definicję trójkąta równobocznego …
Jaś:
Jeśli trójkąt ma równe boki to jest równoboczny
To nie jest poprawne twierdzenie matematyczne Jasiu, powiedz to inaczej.
Jaś:
Jeśli trójkąt ma kąty równe to jest równoboczny
Pani:
Źle Jasiu, spróbuj inaczej.
Jaś:
Trójkąt jest równoboczny gdy ma wszystkie boki równe
Ty zakuta pało, ile razy mam wam powtarzać że to równoważność zatem jedynie poprawne są takie zdania.
Pani:
Trójkąt jest równoboczny wtedy i tylko wtedy gdy ma kąty równe
Jaś:
Ale proszę Pani to nie jest prawda bo jest równoboczny także wtedy gdy ma boki równe ….
Przestańmy robić z dzieci i siebie idiotów na lekcjach matematyki.
Człowiek to nie komputer, zginąć można zarówno w chaosie jak i nadmiernej precyzyjności.
Można powiedzieć:
Jeśli trójkąt ma równe boki to jest równoboczny
Domyślnie wszelkie twierdzenia matematyczne to równoważności. Oczywiście zapis matematyczny powyższego twierdzenia jeśli nie wiedzieć po co będzie wymagała Pani to:
BR<=>R.
Zauważmy, że jeśli twierdzenie jest poprawnie powiedziane, a można to zrobić na bardzo dużo sposobów (dwa wyżej), to Pani powinna spytać czy to implikacja tylko w stosunku do implikacji bo równoważności w matematyce są domyślne.
Implikacją jest prawidło matematyczne:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Prawidło matematyczne, nie twierdzenie - to autentyczne określenie wykładowcy logiki.
W implikacji obowiązują prawa Kubusia:
p=>q = ~p~>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „na pewno” =>
p~>q = ~p=>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „może” ~>
W obu powyższych równaniach mamy do czynienia ze spójnikiem może ~>. Gdyby jakiekolwiek twierdzenie było rzeczywiście implikacją to mamy tak:
Jeśli jutro nie będzie pochmurno to na pewno => nie będzie padać
~CH=>~P
… ale zdanie absolutnie równoważne do powyższego, z identyczną gwarancją w każdym przecinku i literce jest takie.
Prawo Kubusia:
~CH=>~P = CH~>P
Jeśli jutro będzie pochmurno to może ~> padać
CH~>P
Jaka jest użyteczność takiego twierdzenia w matematyce ?
Oczywiście chmury mają „wolną wolę” i jedyne co możemy to rzucać monetą …
orzełek - będzie padać
reszka - nie będzie padać
Implikacja to między innymi matematyczny opis wolnej woli w świecie wszelkich istot żywych, w technice to idiotyzm. Nie da się na bazie definicji implikacji zbudować jakiejkolwiek użytecznej logiki, mającej zastosowanie np. w technice.
Nie zabijajmy w dzieciach wyobraźni, nie rozkazujmy im wypowiadać twierdzeń matematycznych w jedynie słuszny sposób, to już było, to komunizm.
Wyobraźnia jest ważniejsza od wiedzy
Albert Einstein
2.0 Matematyczne fundamenty algebry Boole’a
Iloczyn kartezjański i pojęcie funkcji to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w ślepych operatorach AND(*) i OR(+) oraz brak przemienności argumentów w operatorach implikacji prostej => i odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacyjnych przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacyjnych do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
2.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
2.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
2.3 Funkcja iloczynu logicznego
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu tylko dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
2.4 Funkcja sumy logicznej
Definicja sumy logicznej (funkcja logiczna):
Kod: |
p q p+q
1 1 =1
1 0 =1
0 0 =0
0 1 =1 |
gdzie:
+ - operator sumy logicznej OR(+), funkcja logiczna
W sumie logicznej zachodzi przemienność argumentów
czyli:
p+q = q+p
Dowód jest analogiczny jak w iloczynie logicznym.
2.5 Funkcja implikacji prostej
Definicja implikacji prostej, funkcja logiczna:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1 |
gdzie:
=> - operator implikacji prostej, funkcja logiczna
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z drugiej linii sprowadzając wszystkie sygnały do jedynki.
p*~q = ~(p=>q)
stąd:
p=>q = ~(p*~q) = ~p+q
Zbadajmy czy w implikacji można zamieniać p i q miejscami.
Kod: |
Tabela B
q p q=>p
1 1 =1
0 1 =1
0 0 =1
1 0 =0 |
Różnica w wynikowych zerach i jedynkach w tabelach A i B jest dowodem, że w implikacji prostej nie wolno zamieniać p i q miejscami, to bardzo ważna informacja.
W implikacji prostej nie zachodzi przemienność argumentów
Oczywiście:
p=>q # q=>p
zaś zapis:
q=>p - jest w implikacji zawsze fałszywy
Przykład:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2 =1
p=P8
q=P2
Po zamianie p i q otrzymujemy zdanie zawsze fałszywe.
Jeśli liczba jest podzielna przez 2 to na pewno jest podzielna przez 8
P2=>P8 =0 bo 2
2.6 Funkcja implikacji odwrotnej
Definicja implikacji odwrotnej, funkcja logiczna.
Kod: |
Tabela A
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0 |
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z ostatniej linii sprowadzając wszystkie sygnały do jedynki.
~p*q = ~(p~>q)
stąd:
p~>q = ~(~p*q) = p+~q
Sprawdźmy czy można zamieniać p i q.
Kod: |
Tabela B
q p q~>p
1 1 =1
0 1 =0
0 0 =1
1 0 =1 |
Różnica w wyniku tabel A i B jest dowodem, że w implikacji odwrotnej nie wolno zamieniać p i q, identycznie jak w implikacji prostej.
W implikacji odwrotnej nie zachodzi przemienność argumentów
Oczywiście:
p~>q # q~>p
zaś zapis:
q~>p - jest w implikacji zawsze fałszywy
Przykład:
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
p=P2
q=P8
Implikacja odwrotna prawdziwa bo P2 jest konieczne dla P8
Po zamianie p i q mamy:
Jeśli liczba jest podzielna przez 8 to może być podzielna przez 2
P8~~>P2
q~~>p
Implikacja odwrotna fałszywa ponieważ podzielność liczby przez 8 nie jest konieczna dla jej podzielności przez 2 bo 4, 6…
Zauważmy, że zdanie P8~~>P2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) natomiast implikacja odwrotna P8~>P2 jest fałszywa bo nie zachodzi warunek konieczny między P8 i P2.
W stronę przeciwną będzie prawdziwa implikacja q=>p:
Jeśli liczba jest podzielna przez 8 to na pewno => jest podzielna przez 2
P8=>P2
q=>p
Implikacja prosta prawdziwa bo P8 jest wystarczające dla P2
Twierdzenie 2.6
Jeśli implikacja odwrotna p~>q jest prawdziwa (zachodzi warunek konieczny), to w druga stronę musi zachodzić implikacja prosta q=>p (zachodzi warunek wystarczający).
Jeśli implikacja prosta p=>q jest prawdziwa (zachodzi warunek wystarczający), to w drugą stronę może zachodzić implikacja odwrotna q~>p (zachodzi warunek konieczny) albo równoważność q=>p (zachodzi warunek wystarczający)
3.0 Algebra Kubusia - operatory „musi” => i „może” ~>
Algebra Kubusia jest fundamentalnie inna od algebry Boole’a wyłącznie w zakresie operatorów implikacji prostej => i implikacji odwrotnej ~>. W definicji algebry Boole’a nie ma operatorów implikacji, czyli Bóg coś zaprojektował a mądrzejszy od Niego człowiek uznał że są niepotrzebne. W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
3.1 Definicja algebry Kubusia
Lista operatorów logicznych:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR.
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
1 = PRAWDA
0 = FAŁSZ
Zmienna binarna - zmienna przyjmująca wartości wyłącznie 0 albo 1
Funkcja logiczna - to funkcja zmiennych binarnych połączonych operatorami logicznymi przyjmująca wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
3.2 Symboliczna i operatorowa definicja implikacji prostej
Definicja zero-jedynkowa implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji prostej to po prostu rozpisane wszystkie przypadki jakie mogą w przyszłości wystąpić. Najłatwiej to zrozumieć przechodząc na symboliczną definicję implikacji prostej.
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji prostej;
Kod: |
p q p=>q
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z drugiej linii sprowadzając wszystkie sygnały do jedynki:
p*~q = ~(p=>q)
czyli:
p=>q = ~(p*~q) = ~p+q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „musi” zajść q bo druga linia jest twardym fałszem i nie ma prawa wystąpić czyli:
p=>q =1
p=>~q=0
Wynika z tego że p musi być wystarczające dla q, inaczej druga linia nie będzie twardym fałszem.
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” zajść q
p musi być wystarczające dla q
gdzie:
=> - operator implikacji prostej, spójnik „musi” => miedzy p i q ze spełnionym warunkiem wystarczającym.
Przykład:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L=1
Bycie psem jest wystarczające dla 4 łap, implikacja prosta prawdziwa
Druga linia przybierze tu postać:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz bo wszystkie psy mają cztery łapy. Psy kalekie z inną ilością łap służą do obalania logiki, dlatego wywalamy je do kosza, mając świadomość że takie istnieją.
Ostatnie dwie linie tabeli mówią że:
Jeśli nie zajdzie p to może zajść ~q
~p~>~q=1
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
LUB
Jeśli zajdzie ~p to może zajść q
~p~~>q=1
Przekładając na nasz przykład mamy:
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L=1 bo kura
Nie bycie psem jest warunkiem koniecznym, aby nie mieć czterech łap, implikacja odwrotna prawdziwa.
LUB
Jeśli zwierzę nie jest psem to może ~~> mieć cztery łapy
~P~~>4L=1 bo słoń
To zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda), nie jest to implikacja odwrotna.
Operatorowa definicja implikacji prostej:
p=>q =1
p=>~q=0
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p=>q= ~p~>~q
~p~>~q=1
~p~~>q=1
Ostatnie zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Zauważmy, że implikacja odwrotna w ostatniej linii jest wykluczona na podstawie prawa Kubusia:
p=>~q = ~p~>q =0
Ostatnie zdanie jest prawdziwe na mocy tego równania:
~p~~>q = ~p~>q + ~p~~>q = 0 + 1 =1
Sens implikacji prostej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko p=>~q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
3.3 Symboliczna i operatorowa definicja implikacji odwrotnej
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji odwrotnej;
Kod: |
p q p~>q
p q =1
p ~q =1
~p ~q =1
~p q =0
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z ostatniej linii sprowadzając wszystkie sygnały do jedynki:
~p*q = ~(p~>q)
czyli:
p~>q = ~(~p*q) = p+~q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „może” zajść q
p~>q=1
LUB
Jeśli zajdzie p to może zajść ~q
p~~>~q=1
Z powyższego wynika że p musi być warunkiem koniecznym dla q inaczej pierwsza linia będzie twardym fałszem, implikacja odwrotna będzie fałszywa.
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to może zajść q
p musi być konieczne dla q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
Przykład:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P=1 bo pies
Cztery łapy są konieczne dla psa, implikacja odwrotna prawdziwa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń
… ale
Jeśli zwierze ma skrzydła to może być psem
S~>P=0
Skrzydła nie są konieczne dla psa, implikacja oczywiście fałszywa
Zauważmy, że jeśli p jest konieczne dla q (pierwsza linia) to zajście ~p wymusza zajście ~q (trzecia linia). Stąd w sposób naturalny otrzymaliśmy prawo Kubusia.
p~>q = ~p=>~q=1
Prawa strona wymusza twardy fałsz w ostatniej linii:
~p=>q=0
Wracając do naszego przykładu … co będzie jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P=1 bo kura
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Operatorowa definicja implikacji odwrotnej:
p~>q =1
LUB
p~~>~q =1
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p~>q= ~p=>~q
~p=>~q=1
~p=>q=0
Linia p~~>~q=1 jest prawdziwa na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Implikacja w tej linii jest wykluczona na mocy prawa Kubusia:
p~>~q = ~p=>q=0
Zdanie p~~>~q jest prawdziwe na mocy tego równania:
p~~>~q = ~p=>q + p~~>~q = 0 + 1 =1
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko ~p=>q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
3.4 Prawa Kubusia
Definicje:
A.
p=>q = ~p+q - definicja implikacji prostej
B.
p~>q = p+~q - definicja implikacji odwrotnej
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę logiczną implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q - na podstawie definicji ~>
Prawa strona jest identyczna jak w definicji A zatem zachodzi:
p=>q = ~p~>~q
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q - na podstawie definicji =>
prawa strona jest identyczna jak definicja B zatem zachodzi:
p~>q = ~p=>~q
Prawa Kubusia to ścisły odpowiednik praw de’Morgana z operatorów AND(*) i OR(+).
p*q = ~(~p+~q) - zamian operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q = ~(~p*~q) - zamian operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
3.5 Implikacja w bramkach logicznych
Podstawa matematyczna przekształceń na bramkach logicznych.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
1.
Negujemy wejścia p i q otrzymując:
p=>q # (~p)=>(~q) = ~(~p)+(~q)
p=>q # ~p=>~q = p+~q
Prawa strona powyższego równania to definicja implikacji odwrotnej zatem:
p=>q # ~p=>~q = p~>q = p+~q
Prawo Kubusia:
p~>q = ~p=>~q - prawo zamiany ~> na =>
2.
Dokładnie to samo robimy z definicją implikacji odwrotnej.
p~>q # (~p)~>(~q) = (~p)+~(~q)
p~>q # ~p~>~q = ~p+q
Prawa strona ostatniego równania to definicja implikacji prostej zatem:
p~>q # ~p~>~q = p=>q = ~p+q
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany => na ~>
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
Definicja implikacji prostej - układ A:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja implikacji odwrotnej - układ C:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
W implikacji punktem odniesienia jest zawsze poprzednik p.
Bramkowa definicja implikacji prostej:
Układ A
Stojąc na przewodzie p widzimy niezanegowaną linię q
Bramkowa definicja implikacji odwrotnej:
Układ C
Stojąc na przewodzie p widzimy zanegowaną linie q
Opis przekształceń bramkowych:
1.
W linie wejściowe p i q bramki A wprowadzamy po jednym negatorze otrzymując układ B.
2.
Wpychamy wprowadzone negacje do układu scalonego otrzymując układ implikacji odwrotnej C.
Oczywiście matematycznie zachodzi:
(A) p=>q # (B) ~p=>~q = (C) p~>q
Prawa strona to prawo Kubusia:
p~>q = ~p=>~q
3.
W linie wejściowe układu C wprowadzamy po jednej negacji i otrzymujemy układ D
4.
Wpychamy wprowadzone negatory do układu scalonego otrzymując układ E
Oczywiście matematycznie zachodzi:
(C) p~>q # (D)~p~>~q = (E) p=>q
Prawa strona to drugie z praw Kubusia:
p=>q = ~p~>~q
Zauważmy, że w sumie przechodząc z układu A do układu D wprowadziliśmy po dwie negacje w linie wejściowe. Oczywiście taki układ scalony nie ulegnie zmianie na mocy prawa podwójnego przeczenia.
p=~(~p) - w dowolną linię można wprowadzić dwie negacje i układ nie ulegnie zmianie.
Mamy zatem:
(A) p=>q = (D)~p~>~q = (E) p=>q
czyli … wszystko w porządku !
4.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
4.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
~G~>~C =1
LUB
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
~G~>C=0 - implikacja odwrotna fałszywa
(~G~~>C)+(~G~>C) = 1+0=1
~~> - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Uwaga:
W groźbach naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~(G=>C) = G*~C - skłamię
Synku, skłamię jeśli będziesz grzeczny i nie dostaniesz czekolady.
G*~C
Jaś:
Mama, a czy może się zdarzyć że będę grzeczny i nie dostanę czekolady ?
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
4.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca. Intuicyjnie jest to jak najbardziej poprawne, bowiem jeśli odbiorca spełni warunek kary to nadawca może zrobić co mu się podoba, walić albo darować karę (akt łaski) i nie ma najmniejszych szans na zostanie kłamcą.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
B~>~L=0 - implikacja odwrotna fałszywa
(B~~>~L)+(B~>~L) = 1+0 =1
~~> - nadawca ma prawo do darowania dowolnej kary (akt łaski)
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
C: ~B => ~L =1 - twarda prawda (gwarancja)
LUB
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
D: ~B => L =0 - twardy fałsz
Jedyne sensowne przejście z operatora implikacji odwrotnej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
Jaś:
… tata, a kiedy skłamiesz ?
B~>L = B+~L = ~(~B*L) - dotrzymam słowa
czyli:
~(B~>L) = ~B*L - skłamię
Skłamię, jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
5.0 Algebra Kubusia w pigułce
Narodziny algebry Kubusia na SFINII trwały 3 lata …
5.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
Definicja implikacji prostej:
Jeśli zajdzie p to musi => zajść q
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
Jeśli zajdzie p to może ~> zajść q
p~>q = p+~q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
5.2 Prawa matematyczne implikacji
Fundament logiki implikacyjnej:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
=> - warunek wystarczający
~> - warunek konieczny
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikację prostą =>
Jeżeli zdanie jest implikacja prostą to w stronę p=>q zachodzi warunek wystarczający zaś w drugą stronę q~>p zachodzi warunek konieczny.
Jeśli zdanie jest implikacja odwrotną to w stronę p~>q zachodzi warunek konieczny zaś w drugą stronę q=>p na pewno zachodzi warunek wystarczający.
Jeśli zdanie p=>q jest implikacją prostą to zdanie q=>p jest zawsze fałszywe czyli:
(p=>q)(q=>p) = 1*0 =0
(p=>q)(~p=>~q)=1*0=0
(p~>q)(q~>p) =1*0=0
Dwustronny warunek konieczny jest fizycznie niemożliwy do zaistnienia, w przeciwieństwie do warunku wystarczającego w równoważności.
5.3 Prawa matematyczne równoważności
Fundament logik równoważnościowych:
Definicja równoważności:
p<=>q = p*q+~p*~q
Prawo kontrapozycji:
p=>q = ~q=>~p
Jeśli zdanie jest równoważnością to zachodzi warunek wystarczający w obie strony.
Możliwe, równoważne definicje równoważności:
p<=>q = (p=>q)(q=>p)=1*1=1 - dwustronny warunek wystarczający
p<=>q = (p=>q)(~p=>~q)=1*1=1
5.4 Naturalne kodowanie zdań
* - spójnik „i” (AND)
+ - spójnik „lub” (OR)
=> - spójnik „na pewno” (zachodzi dla każdego elementu po „Jeśli…)
~~> - naturalny spójnik „MOŻE” (wystarczy jedna prawda)
Naturalne kodowanie zdań jest w 100% zgodne z logiką człowieka. W kodowaniu tym rozstrzygamy czy zdanie jest prawdziwe/fałszywe lub kiedy w przyszłości zdanie będzie prawdziwe/fałszywe.
Przykłady:
Pies ma cztery łapy - prawda
Pies nie ma czterech łap - fałsz
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo każdy pies ma cztery łapy
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - oczywisty fałsz
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~~>~4L =1 bo kura
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń
Jeśli księżyc jest z sera to pies ma cztery łapy
Zdanie fałszywe bo brak związku między księżycem a psem.
5.5 Definicje spójników zdaniowych
MUSI =>
p=>q=1
Dla każdego elementu spełniającego warunek p musi zajść q
MUSI = warunek wystarczający =>
MOŻE ~>
Warunek konieczny spełniony
p~>q=1
Istnieje element spełniający warunek p i q i zdanie spełnia warunek konieczny, implikacja odwrotna jest prawdziwa
MOŻE = warunek konieczny ~>
MOŻE ~~>
Warunek konieczny niespełniony
p~~>q=1
Istnieje element spełniający warunek p i q ale zadnie nie spełnia warunku koniecznego, implikacja odwrotna jest fałszywa
Kryterium prawdziwości zdania dla spójnika może:
(p ~~>q) + (p~>q)
Zdanie jest prawdziwe jeśli zajdzie MOŻE ~~> lub MOŻE ~>
Wniosek:
Nie każde zdanie prawdziwe na mocy spójnika MOŻE ~~> jest implikacją odwrotną, czyli spełnia warunek konieczny ~>
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P=1
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń...
Zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, implikacja odwrotna fałszywa bo 4 łapy nie są konieczne by nie być psem bo pies
4L~>~P=0 - implikacja odwrotna fałszywa.
Możemy użyć prawa Kubusia by uprościć rozstrzygnięcie o warunku koniecznym/wystarczającym. Dobre prawo matematyczne zawsze zamieni prawdę w prawdę albo fałsz w fałsz - nie ma innej możliwości.
Prawo Kubusia:
4L~>~P (warunek konieczny) = ~4L => P (warunek wystarczający)
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Oczywisty fałsz, zatem warunek wystarczający nie zachodzi, co oznacza także brak warunku koniecznego w zdaniu 4L~>~P.
5.6 Matematyczne kodowanie zdań
Algorytm rozstrzygania o rodzaju wypowiedzianego zdania:
1. Sprawdzamy czy z zdaniu występuje warunek wystarczający, jeśli tak to idziemy do pkt. A
2. Sprawdzamy czy w zdaniu występuje spójnik może ~~>, jeśli tak to idziemy do pkt. B
3. Jeśli żaden z powyższych warunków nie zachodzi to zdanie jest fałszywe lub niepoprawne
Zdanie niepoprawne - zdanie któremu nie da się przypisać ani prawdy, ani fałszu np. wszelkie zdania pytające.
A. Implikacja prosta:
Do prawidłowej obsługi warunku wystarczającego => konieczne są dwa symbole:
=> - warunek wystarczający, spójnik MUSI
<=> - równoważność
Po stwierdzeniu p=>q musimy wykluczyć q=>p aby mieć pewność, że p=>q to implikacja prosta.
Jeśli zachodzi warunek wystarczający w dwie strony p=>q i q=>p to zdanie jest równoważnością i do kodowania używamy symbolu równoważności <=>.
B. Implikacja odwrotna:
Do prawidłowej obsługi warunku koniecznego ~> również potrzebujemy dwóch symboli:
~> - warunek konieczny, jeśli zachodzi to implikacja jest prawdziwa, zdanie oczywiście prawdziwe
~~> zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, ale nie zachodzi warunek konieczny ~>, implikacja odwrotna jest fałszywa
Po stwierdzeniu prawdziwości zdania na mocy spójnika MOŻE ~~> musimy dodatkowo stwierdzić warunek koniczny by mieć pewność że zdanie jest implikacją odwrotną prawdziwą.
UWAGA !
Dowolne zdanie „Jeśli…to…” kodujemy matematycznie w następujący sposób:
p - poprzednik implikacji, zawsze po spójniku „Jeśli…”
q - następnik implikacji, zawsze po spójniku „to…”
Poprzednik p i następnik q łączymy ze sobą jednym z czterech możliwych operatorów =>, <=>, ~>, ~~>. Jednoznaczne rozstrzygnięcie z jakim zdaniem mamy do czynienia umożliwia algorytm przedstawiony wyżej.
5.7 Sens implikacji prostej
Implikację „Jeśli p to q” mózg człowieka obsługuje w dwóch taktach w pierwszym bada zgodność z p zaś w drugim zgodność z q. W żadnej chwili czasowej nie ma wykroczenia poza dwuelementową algebrę Boole’a.
Algorytm działania implikacji odwrotnej:
Kod: |
musi
Jeśli |----- q --- p=>q=1
|----- p -----|musi
| |----- ~q --- p=>~q=0
|
|
X => ---|
|
| może
|Jeśli |----- ~q --- ~p~>~q=1
|----- ~p -----|może
|----- q --- ~p~>q=1
|
Jak widać, w pierwszym takcie podejmujemy decyzją czy iść drogą p czy też ~p co zależy od wylosowanego elementu X. W drugim takcie zawsze mamy tylko i wyłącznie dwie możliwości do wyboru, zatem cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji prostej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka p=>~q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji prostej. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
5.8 Sens implikacji odwrotnej
Algorytm działania implikacji odwrotnej:
Kod: |
może
Jeśli |----- q --- p~>q=1
|----- p -----|może
| |----- ~q --- p~>~q=1
|
|
Y ~> ---|
|
| musi
|Jeśli |----- ~q --- ~p=>~q=1
|----- ~p -----|musi
|----- q --- ~p=>q=0
|
Tu także implikacja obsługiwana jest w dwóch taktach. W pierwszym następuje decyzja czy iść linią p czy też ~p w zależności od wylosowanego elementu Y. W drugim takcie mamy do wyboru zawsze dwie możliwości czyli cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka ~p=>q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji odwrotnej. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
Wyobraźmy sobie teraz powyższe algorytmy implikacji jako czarne pudełko z jednym wejściem i czterema wyjściami. Jeśli zdanie jest implikacją to elementy wrzucane do tego pudełka segregowane są na cztery zbiory z których jeden jest zawsze pusty. Oznacza to, że implikacja jest wirtualną logiką czterowartościową i rzeczywistą dwuwartościową co wynika z powyższych algorytmów.
6.0 Metody dowodzenia praw implikacyjnych
Kluczową różnicą w dowodzeniu praw opartych o ślepe operatory AND(*) i OR(+) oraz praw implikacyjnych jest brak przemienności argumentów w operatorach implikacji co dowiedziono wyżej.
6.1 Metoda równań algebry Boole’a
Brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Z powyższego wynika że:
p=>q = ~p+q # q+~p = q~>p
czyli:
p=>q = ~(p*~q) # ~(~q*p) =q~>p
Przykład:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
~(P8*~P2)
Nie może się zdarzyć, że liczba jest podzielna przez 8 i nie jest podzielna przez 2
Gwarantowane liczby to:
8, 16, 24 …
Tu poza gwarancją są liczby:
1,3,,5 … 2,4,6 …
~(~P2*P8)
Nie może się zdarzyć, że liczba nie jest podzielna przez 2 i jest podzielna przez 8
Gwarantowane liczby to:
1,3,5 …
Tu poza gwarancją są liczby:
8,16,24 … 2,4,6 …
W obu przypadkach mamy różne zarówno zbiory gwarantowane, jak i zbiory będące poza gwarancją.
Zachodzi zatem:
~(P8*~P2) # ~(~P2*P8)
To dwie zupełnie inne gwarancje czyli brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Zauważmy, że w prawach Kubusia gwarancje są identyczne bo tu nie zamieniamy operatorów w implikacyjnych AND i OR.
Definicje:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawa Kubusia:
p=>q = ~p~>~q = ~p+q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q
p~>q = ~p=>~q = p+~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q
W prawach Kubusia mamy identyczne gwarancje po obu stronach równości z dokładnością do każdej literki i każdego przecinka. Tak musi być bo po obu stronach mamy identyczną bramkę logiczną czyli w 100% dokładnie to samo.
Prawa Kubusia to dokładny odpowiednik praw de’Morgana z operatorów AND i OR:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q=~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
6.2 Metoda makarona czterojajecznego
Na początek udowodnijmy taką tożsamość:
p*q = q*p
metodą makarona czterojajecznego (fajna dyskusja była), który po obu stronach równości zapisywał sobie przypadkowe zera i jedynki po stronie p i q, ale metodą wygibasów udowodnił co chciał, dowód był poprawny. Oczywiście makaron czterojajeczny korzystał z właściwości iloczynu kartezjańskiego i pojęcia funkcji.
Lewa strona tożsamości:
Tworzymy tabelę zero-jedynkową dla lewej strony:
Kod: |
Tabela A
p q p*q
0 0 =0
0 1 =0
1 0 =0
1 1 =1
|
Przechodzimy z powyższą tabelą do zapisu symbolicznego przyjmując:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
~p ~q =0
~p q =0
p ~q =0
p q =1
|
Prawa strona tożsamości:
Kod: |
Tabela C
q p q*p
1 1 =1
0 0 =0
0 1 =0
1 0 =0
|
Oczywiście rozkład zer i jedynek po stronie p i q może być absolutnie dowolny np. jak wyżej.
Przechodzimy do zapisu symbolicznego:
Kod: |
Tabela D
q p =1
~q ~p =0
~q p =0
q ~p =0
|
Jak udowodnić równoważność tabel B i D ?
Punkt 1.
Korzystamy z prawa przemienności iloczynu logicznego i zamieniamy kolumny w tabeli D
Kod: |
Tabela E
p q =1
~p ~q =0
p ~q =0
~p q =0
|
Punkt 2
Korzystając z definicji iloczynu kartezjańskiego i pojęcia funkcji zamieniamy w tabeli D linie, aby uzyskać zgodność z tabelą B, jeśli się to uda to oczywiście tożsamość p*q=q*p zachodzi.
Kod: |
Tabela F
~p ~q =0
~p q =0
p ~q =0
p q =1
|
Jak widać bez problemu to się udało - tabele B i F są identyczne.
CND
6.2.1 Dowód p=>q # q~>p metoda makarona czterojajecznego
Weźmy się teraz za kluczowy w całej publikacji dowód:
p=>q # q~>p
Lewa strona:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Przechodzimy do zapisu symbolicznego przyjmując:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa strona:
Kod: |
Tabela C
q p q~>p
0 0 =1
0 1 =0
1 0 =1
1 1 =1
|
Oczywiście rozkład zer i jedynek po stronie p i q może być dowolny.
Przechodzimy do zapisu symbolicznego:
Kod: |
Tabela D
~q ~p =1
~q p =0
q ~p =1
q p =1
|
Jak udowodnić równoważność tabel B i D ?
Można to tylko i wyłącznie w jeden sposób, zamieniając kolumny p i q … ale prawo przemienności nie zachodzi w implikacji, zatem nie wolno tego robić !
Prawidłowe równanie jest zatem takie:
p=>q # q~>p
CND
6.3 Metoda symboliczna Kubusia
W metodzie symbolicznej Kubusia korzystamy z symbolicznych definicji implikacji prostej => i odwrotnej ~>. W miejsce parametrów formalnych z tych definicji podstawiamy parametry aktualne z wypowiedzianego zdania. Równość zachodzi jeśli uzyskamy równość tabel przestawiając wiersze co jest dozwolone na mocy definicji iloczynu kartezjańskiego i pojęcia funkcji. W implikacji nie wolno zamieniać kolumn czyli zamieniać argumentów funkcji.
Na początek udowodnijmy prawo Kubusia:
p=>q = ~p~>~q
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
Tabela C
p q p~>q
0 0 =1
1 0 =1
0 1 =0
1 1 =1
|
Oczywiście zera i jedynki po stronie p i q można generować w sposób losowy.
Przejście do symbolicznej definicji implikacji odwrotnej:
Kod: |
Tabela D
~p ~q =1
p ~q =1
~p q =0
p q =1
|
W definicji implikacji odwrotnej w miejsce parametrów formalnych p i q podstawiamy parametry aktualne ~p i ~q ze strony prawej.
Kod: |
Tabela E
~(~p) ~(~q) =1
(~p) ~(~q) =1
~(~p) (~q) =0
(~p) (~q) =1
|
Korzystając z prawa podwójnego przeczenia A=~(~A) opuszczamy nawiasy.
Kod: |
Tabela F
p q =1
~p q =1
p ~q =0
~p ~q =1
|
Łatwo zauważyć, że jeśli w tabeli F zamienimy odpowiednie linie to doprowadzimy do zgodności z tabela B, możemy to zrobić na podstawie definicji iloczynu kartezjańskiego i pojęcia funkcji.
Kod: |
Tabela G
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Tabele b i G są identyczne zatem prawo Kubusia zachodzi.
CND
6.3.1 Dowód p=>q # q~>p metodą symboliczną Kubusia
p=>q # q~>p
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
Tabela C
p q p~>q
0 0 =1
1 0 =1
0 1 =0
1 1 =1
|
Oczywiście zera i jedynki po stronie p i q można generować w sposób losowy.
Przejście do symbolicznej definicji implikacji odwrotnej:
Kod: |
Tabela D
~p ~q =1
p ~q =1
~p q =0
p q =1
|
Prawa strona interesującej nas zależności to:
q~>p
Podstawiamy zatem powyższe parametry aktualne do symbolicznej definicji implikacji odwrotnej.
Kod: |
Tabela E
~q ~p =1
q ~p =1
~q p =0
q p =1
|
W implikacji nie zachodzi przemienność argumentów implikacyjnych, nie możemy zatem zamienić kolumn w powyższej tabeli … czyli nigdy nie doprowadzimy do zgodności tabel B i E.
Zachodzi zatem:
p=>q # q~>p
CND
6.4 Dowód fałszywości prawa kontrapozycji w implikacji
Prawo kontrapozycji:
p=>q = ~q=>~p
Lewa strona:
Definicja zero-jedynkowa implikacji prostej:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Symboliczna definicja implikacji prostej:
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Kod: |
Tabela B
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Prawa Strona:
~q=>~p
Do definicji symbolicznej implikacji prostej (Tabela B) wstawiamy parametry aktualne jak wyżej:
Kod: |
Tabela C
(~q) (~p) =1
(~q) ~(~p) =0
~(~q) ~(~p) =1
~(~q) (~p) =1
|
Opuszczamy nawiasy korzystając z prawa podwójnego przeczenia A=~(~A):
Kod: |
Tabela D
~q ~p =1
~q p =0
q p =1
q ~p =1
|
Równość tabel B i D uzyskamy tylko i wyłącznie w jednym przypadku … jeśli zamienimy kolumny q i p. Nie możemy jednak tego zrobić bo w implikacji nie zachodzi prawo przemienności argumentów.
Prawo kontrapozycji jest zatem w implikacji fałszywe.
Wnioski:
Prawa Kubusia są prawdziwe w implikacji i fałszywe w równoważności
Prawo kontrapozycji jest prawdziwe w równoważności bo tu można zamieniać argumenty i fałszywe w implikacji gdzie tego robić nie wolno.
7.0 Kwadratura koła w dzisiejszej matematyce
Wprowadzenie:
p=>q - definicja implikacji prostej
p~>q - definicja implikacji odwrotnej
Symbole p i q to po prostu standard umożliwiający porozumiewanie się. Znaczki są tu kompletnie nieważne. Ważne jest co podajemy na podstawę wektorów (p) a co na strzałki (q).
Jeśli między postawą a strzałka zachodzi warunek wystarczający to musimy użyć definicji p=>q, jeśli konieczny to p~>q.
Możemy sobie nazwać q~>p, pies~>wydra ... to bez znaczenia ale:
Prawo Kubusia:
pies~>wydra = ~pies => ~wydra - prawo zamiany operatora ~> na =>
w powyższym zapisie pies i wydra to tylko symbole (parametry formalne) bez żadnego związku z psem i wydrą.
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze pies, zaś po „to..” jest zawsze wydra.
Oczywiście zgodnie z powszechnym standardem:
p=pies
q=wydra
czyli jeszcze raz to samo prawo Kubusia:
p=>q = ~p~>~q - prawo Kubusia zapisane zgodnie z powszechnym standardem
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze p zaś po „to…” jest zawsze q
Po powyższym wstępie czas na kwadraturę koła w dzisiejszej logice:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
4L są konieczne dla psa, zatem implikacja odwrotna prawdziwa
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Implikacja odwrotna do powyższej:
Jeśli zwierze jest psem to na pewno => ma cztery łapy
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Kubuś nie ma nic przeciwko q=>p, może sobie być !
… ale co to jest ?!
Matematyk ma do wyboru:
A.
q=>p jest dokładnie tym samym co podręcznikowa definicja implikacji prostej p=>q i to zdanie analizujemy przy pomocy tej definicji
B.
…..
Za cholerę nie mogę wpaść co napisać w B ?!
Proszę o odpowiedź matematyka co napisze w B jeśli wedle niego to nie jest A !
Zauważmy że matematyk ma do wyboru takie definicje:
p=>q - definicja implikacji prostej (tylko ta jest dobra)
p~>q - definicje implikacji odwrotnej (odpada)
p<=>q - równoważność (odpada)
p=>q - implikacja fałszywa, odpada bo P=>4L jest implikacją prawdziwą
7.1 Rozwiązanie kwadratury koła
Matematyka operuje na zapisie ogólnym, nie na przykładach.
Zapis q=>p oznacza oczywiście implikacje odwrotną do p=>q.
Jeśli p=>q jest implikacją prostą prawdziwą to implikacja q=>p jest zawsze fałszywa.
Oczywiście:
p=>q # q=>p
Identycznie jest w implikacji odwrotnej …
Zapis q~>p oznacza w matematyce implikację odwrotną do p~>q.
Jeśli p~>q jest implikacją prawdziwą to implikacja q~>p jest zawsze fałszywa.
Oczywiście:
p~>q # q~>p
Z powyższego wynika, że kodowanie zdań prawdziwych w postaci q=>p lub q~>p jest czysto matematycznym błędem, bo w zapisach ogólnych zdania te są zawsze fałszywe co pokazano wyżej … oczywiście przy prawdziwości odpowiednich p=>q i p~>q.
Wróćmy do cytowanego tekstu.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Zdanie odwrotne do powyższego:
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Nie !!!
Tylko i wyłącznie p=>q jak u Kubusia … bo dla przypadku gdy punktem odniesienia będzie zdanie p~>q jak wyżej to implikacja q=>p jest prawdziwa i matematycznie zachodzi:
q=>p = p=>q
co rozwala cała matematykę w zakresie implikacji !
Oczywiście w języku potocznym możemy powiedzieć:
Implikacja odwrotną do p=>q jest implikacja q~>p = p~>q
Implikacją odwrotna do p~>q jest implikacja q=>p = p=>q
Wszystkie powyższe zdania są oczywiście prawdziwe, zaś znaczenie implikacji odwrotnej jest tu inne niż w klasycznej matematyce gdzie zachodzi:
p=>q # q=>p
p~>q # q~>p
Nadmierna precyzja = chaos
Zginąć można zarówno w chaosie jak i nadmiernej precyzyjności
Kubuś
"Wszyscy myślą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi.", "Wyobraźnia jest ważniejsza od wiedzy"
Albert Einstein
2009-05-08 Koniec
Ostatnio zmieniony przez rafal3006 dnia Sob 17:54, 16 Maj 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:19, 10 Maj 2009 Temat postu: |
|
|
Beta v5.0
Aksjomat logików praktyków:
Jak logicznie myślimy, tak matematycznie zapisujemy. Mówimy „NIE” zapisujemy (~), mówimy „i” zapisujemy AND(*), mówimy “lub” zapisujemy OR(+), w implikacji mówimy “musi” zapisujemy ( =>), mówimy “może” zapisujemy (~>).
Algebra Kubusia
matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), Rafał3006 (sfinia), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za końcową, decydującą o wszystkim dyskusję
Spotkało się siedmiu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
Spis treści:
1.0 Notacja
1.1 Fabryka robotów ?
2.0 Algebra Kubusia
2.1 Definicja algebry Kubusia
3.0 Matematyczne fundamenty algebry Boole’a
3.1 Iloczyn kartezjański i pojęcie funkcji
3.2 Funkcja iloczynu algebraicznego
3.3 Funkcja iloczynu logicznego AND(*)
3.4 Funkcja sumy logicznej OR(+)
3.5 Logika dodatnia i ujemna w bramkach logicznych
3.6 Prawo de’Morgana dla sumy logicznej
3.7 Prawo de’Morgana dla iloczynu logicznego
3.8 Logika dodatnia i ujemna w operatorach AND i OR
3.9 Matematyczne związki operatorów typu AND(*) i OR(+)
4.0 Ogólna algebra Boole’a
4.1 Logika dodatnia i ujemna w algebrze Boole’a
4.2 Logika dodatnia i ujemna człowieka
5.0 Implikacja
5.1 Logika przedszkolaka
5.2 Funkcja implikacji prostej
5.3 Funkcja implikacji odwrotnej
5.4 Logika dodatnia i ujemna w implikacji
5.5 Prawa Kubusia w równaniach matematycznych
5.6 Implikacja w bramkach logicznych
6.0 Operatorowe definicje implikacji
6.1 Symboliczna i operatorowa definicja implikacji prostej
6.2 Symboliczna i operatorowa definicja implikacji odwrotnej
7.0 Obietnice i groźby
7.1 Obietnice
7.2 Groźby
8.0 Algebra Kubusia w pigułce
8.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
8.2 Prawa matematyczne implikacji
8.3 Prawa matematyczne równoważności
8.4 Naturalne kodowanie zdań
8.5 Definicje spójników zdaniowych
8.6 Matematyczne kodowanie zdań
8.7 Sens implikacji prostej
8.8 Sens implikacji odwrotnej
9.0 Zburzenie starej logiki w zakresie implikacji
9.1 Dowód p=>q # q~>p metodą równań algebry Boole’a
10.0 Kwadratura koła w dzisiejszej matematyce
10.1 Rozwiązanie kwadratury koła
10.2 Jednoznaczność zapisu ogólnego w implikacji
Wstęp.
Matematycy kompletnie nie rozumieją implikacji czego dowód jest tutaj oraz tutaj. Algebra Boole’a jest dobra w obszarze spójników AND(„i”) i OR(„lub”) i kompletnie bez sensu w obszarze implikacji. W definicji algebry Boole’a brakuje operatorów implikacji, spójników „musi” => i „może” ~>. Implikacja, opisująca między innymi wolną wolę wszelkich istot żywych sprowadzona została do technicznych spójników AND i OR, czyli wolną wolę człowieka usiłuje się opisać aparatem matematycznym dobrym w świecie techniki.
Do matematycznego opisu zachowania się wszelkich istot żywych niezbędne są bramki „musi” => i „może” ~>, to dwie różne definicje zero-jedynkowe, dwa różne operatory logiczne.
Algebra Kobusia to algebra Boole’a z dołączonymi do definicji operatorami „musi”=> i „może” ~>. W naturalnej logice człowiek posługuje się prawie wyłącznie tymi operatorami plus prawami Kubusia. Prawa Kubusia to odpowiedź na pytanie co będzie gdy nie zajdzie poprzednik p. W języku mówionym gwarancja wynika bezpośrednio z definicji operatora „musi” =>, stąd wszyscy wiedzą kiedy w przyszłości dotrzymają słowa a kiedy skłamią. Oczywiście każde dziecko w przedszkolu bez problemu przejdzie do operatorów ślepych AND(*) i OR(+) i odpowie kiedy wystąpi kłamstwo innym sposobem, to jedyny sensowny powód takiego przejścia. W operatorach „musi” => i „może” ~> nie wolno zamieniać argumentów p i q. Matematyczne przejście z operatorów „musi” => i „może” ~> do operatorów AND(*) i OR(+) wymusza zatem brak przemienności argumentów w AND(*) i OR(+). Matematycy o tym nie wiedzą i z zapałem zamieniają te argumenty błędnie sądząc, iż dalej jest to implikacja. Zamiana argumentów p i q dozwolona jest w równoważności, dlatego dzisiejsze pojęcie ”implikacji” zdaje egzamin jedynie w matematyce bo wszystkie twierdzenia matematyczne to równoważności i totalnie zawodzi w świecie rzeczywistym gdzie równoważność praktycznie nie występuje, tu króluje implikacja.
To jest podręcznik, przy pomocy którego chciałbym poznać fundamenty techniki cyfrowej, gdybym miał znowu 16 lat.
Kubuś
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków
Miękka prawda/fałsz - może zajść ale nie musi
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Spójniki zdaniowe:
=> - „musi”, implikacja prosta, warunek wystarczający między p i q
~> - „może”, implikacja odwrotna, warunek konieczny między p i q
~~> - naturalny spójnik MOŻE (wystarczy jedna prawda), warunek konieczny tu nie zachodzi zatem nie jest to implikacja odwrotna.
1.1 Fabryka robotów ?
Za moich czasów, wcale nie tak dawnych świat był normalny. Skończyłem normalne szkoły na Politechnice Warszawskiej kończąc (elektronika) i nigdy nie słyszałem o bzdurze zwanej „kwantyfikatorem”. Na matematyce w szkole średniej w temacie implikacja była w podręczniku wyłącznie tabelka zero-jedynkowa z której wszyscy się śmiali, nauczyciel matematyki nawet na to badziewie nie zwrócił uwagi. Świat był wówczas normalny czyli wszystkie twierdzenia w szkole średniej i na studiach technicznych były równoważnościami. W międzyczasie musiało dojść do jakiegoś przełomowego odkrycia bo okazuje się dzisiaj, że wiele twierdzeń np. twierdzenie Pitagorasa nagle stało się implikacjami.
Najtragiczniejsze jest to, że dzisiejsza szkoła usiłuje robić z ucznia robota czyli poprawne twierdzenie musi być superprecyzyjne, wypowiedziane w jedynie słuszny sposób.
Za moich czasów wystarczało to:
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
Dla wszystkich była to równoważność, nikt się nie pytał czy to może być implikacja bo nikt nie wiedział co to jest implikacja, łącznie z nauczycielem matematyki. W świecie techniki tabela zero-jedynkowa implikacji to najzwyklejszy idiotyzm, nic więcej.
W dniu dzisiejszym mamy taką sytuację na lekcjach matematyki w szkole podstawowej.
Pani do Jasia:
Poproszę o definicję trójkąta równobocznego …
Jaś:
Jeśli trójkąt ma równe boki to jest równoboczny
To nie jest poprawne twierdzenie matematyczne Jasiu, powiedz to inaczej.
Jaś:
Jeśli trójkąt ma kąty równe to jest równoboczny
Pani:
Źle Jasiu, spróbuj inaczej.
Jaś:
Trójkąt jest równoboczny gdy ma wszystkie boki równe
Ty zakuta pało, ile razy mam wam powtarzać że to równoważność zatem jedynie poprawne są takie zdania.
Pani:
Trójkąt jest równoboczny wtedy i tylko wtedy gdy ma kąty równe
Jaś:
Ale proszę Pani to nie jest prawda bo jest równoboczny także wtedy gdy ma boki równe ….
Przestańmy robić z dzieci i siebie idiotów na lekcjach matematyki.
Człowiek to nie komputer, zginąć można zarówno w chaosie jak i nadmiernej precyzyjności.
Można powiedzieć:
Jeśli trójkąt ma równe boki to jest równoboczny
Domyślnie wszelkie twierdzenia matematyczne to równoważności. Oczywiście zapis matematyczny powyższego twierdzenia jeśli nie wiedzieć po co będzie wymagała Pani to:
BR<=>R.
Zauważmy, że jeśli twierdzenie jest poprawnie powiedziane, a można to zrobić na bardzo dużo sposobów (dwa wyżej), to Pani powinna spytać czy to implikacja tylko w stosunku do implikacji bo równoważności w matematyce są domyślne.
Implikacją jest prawidło matematyczne:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Prawidło matematyczne, nie twierdzenie - to autentyczne określenie wykładowcy logiki.
W implikacji obowiązują prawa Kubusia:
p=>q = ~p~>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „na pewno” =>
p~>q = ~p=>~q - tu po obu stronach jest IDENTYCZNA bramka logiczna „może” ~>
W obu powyższych równaniach mamy do czynienia ze spójnikiem może ~>. Gdyby jakiekolwiek twierdzenie było rzeczywiście implikacją to mamy tak:
Jeśli jutro nie będzie pochmurno to na pewno => nie będzie padać
~CH=>~P
… ale zdanie absolutnie równoważne do powyższego, z identyczną gwarancją w każdym przecinku i literce jest takie.
Prawo Kubusia:
~CH=>~P = CH~>P
Jeśli jutro będzie pochmurno to może ~> padać
CH~>P
Jaka jest użyteczność takiego twierdzenia w matematyce ?
Oczywiście chmury mają „wolną wolę” i jedyne co możemy to rzucać monetą …
orzełek - będzie padać
reszka - nie będzie padać
Implikacja to między innymi matematyczny opis wolnej woli w świecie wszelkich istot żywych, w technice to idiotyzm. Nie da się na bazie definicji implikacji zbudować jakiejkolwiek użytecznej logiki, mającej zastosowanie np. w technice.
Nie zabijajmy w dzieciach wyobraźni, nie rozkazujmy im wypowiadać twierdzeń matematycznych w jedynie słuszny sposób, to już było, to komunizm.
Wyobraźnia jest ważniejsza od wiedzy
Albert Einstein
2.0 Algebra Kubusia
Algebra Kubusia jest fundamentalnie inna od algebry Boole’a wyłącznie w zakresie operatorów implikacji prostej => i implikacji odwrotnej ~>. W definicji algebry Boole’a nie ma operatorów implikacji, czyli Bóg coś zaprojektował a mądrzejszy od Niego człowiek uznał że są niepotrzebne. W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
2.1 Definicja algebry Kubusia
Lista operatorów logicznych:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Za operatory dodatnie przyjęto te, które człowiek używa w naturalnym języku mówionym.
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
1 = PRAWDA
0 = FAŁSZ
Zmienna binarna - zmienna przyjmująca wartości wyłącznie 0 albo 1
Funkcja logiczna - to funkcja zmiennych binarnych połączonych operatorami logicznymi przyjmująca wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Prawo podwójnego przeczenia:
A=~(~A) - to jedno z najważniejszych praw logicznych
Dowód:
Kod: |
A ~A ~(~A)
0 1 0
1 0 1
|
Skorzystaliśmy tu dwukrotnie z definicji negacji. Równość kolumn A i ~(~A) jest dowodem poprawności prawa podwójnego przeczenia. Ten sposób dowodzenia praw jest równoważny z dowodzeniem praw w równaniach matematycznych, o czym będzie dalej.
3.0 Matematyczne fundamenty algebry Boole’a
Iloczyn kartezjański i pojęcie funkcji to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w ślepych operatorach AND(*) i OR(+) oraz brak przemienności argumentów w operatorach implikacji prostej => i odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacyjnych przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacyjnych do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
3.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
3.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
3.3 Funkcja iloczynu logicznego AND(*)
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu tylko dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Bezpośrednio z powyższej definicji wynikają następujące prawa:
A*0=0
A*1=A
A*A=A
Tabela zero-jedynkowa iloczynu logicznego:
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
Przykład:
Jutro pójdę do kina i do teatru
Y=K*T
Jutro pójdę to teatru i do kina
Y=T*K
Oczywiście:
K*T = T*K
3.4 Funkcja sumy logicznej OR(+)
Definicja sumy logicznej (funkcja logiczna):
Suma logiczna jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru
Bezpośrednio z definicji wynikają prawa:
A+1=1
A+0=A
A+A=A
Tabela zero-jedynkowa sumy logicznej:
Kod: |
p q p+q
1 1 =1
1 0 =1
0 0 =0
0 1 =1 |
gdzie:
+ - operator sumy logicznej OR(+), funkcja logiczna
W sumie logicznej zachodzi przemienność argumentów
czyli:
p+q = q+p
Dowód jest analogiczny jak w iloczynie logicznym.
Przykład:
Jutro pójdę do kina lub do teatru
Y=K+T
Jutro pójdę to teatru lub do kina
Y=T+K
Oczywiście:
K+T = T+K
3.5 Logika dodatnia i ujemna w bramkach logicznych
Bramka logiczna to układ cyfrowy o n wejściach i jednym wyjściu realizujący określoną funkcję logiczną.
Kod: |
p q
| |
-------
| |
| AND |
-------
|
Y=p*q
|
Bramka logiczna operatora AND, logika dodatnia
Logika dodatnia (Y) to odpowiedź bramki logicznej na niezanegowane sygnały wejściowe
Logika ujemna (~Y) to odpowiedź bramki logicznej na zanegowane sygnały wejściowe.
Przerysujmy z tablicy legalnych operatorów (pkt.2.1) tylko te, dotyczące AND(*) i OR(+)
Lista operatorów logicznych typu AND i OR:
Kod: |
p q OR NOR AND NAND
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
3.6 Prawo de’Morgana dla sumy logicznej
Prawa de’Morgana mówią o związkach logiki dodatniej i ujemnej. Zanegujmy sygnały wejściowe w bramce AND(*) i zobaczmy co z tego wyniknie.
o - w technice cyfrowej kółko jest symbolem negacji
Kod: |
p q
| |
O O
-------
| |
| AND |
-------
| ~Y=~p*~q
O
|
Y=~(~p*~q)=p+q
|
To samo co wyżej w tabelach zero-jedynkowych:
Kod: |
p q ~p ~q ~Y=~p*~q Y=~(~p*~q) Y=p+q
0 0 1 1 1 0 0
0 1 1 0 0 1 1
1 0 0 1 0 1 1
1 1 0 0 0 1 1
|
W powyższej tabeli mamy dowód prawa de’Morgana:
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
To samo co wyżej w równaniach matematycznych:
Y=p+q
Przejście do logiki ujemnej poprzez negację wszystkich sygnałów i wymianę operatora OR(+) na AND(*).
~Y=~p*~q
Oczywiście zachodzi:
Y=~(~Y)
Stąd:
Prawo de’Morgana dla sumy logicznej
p+q = ~(~p*~q) - po obu stronach równania mamy identyczną bramkę OR(+)
Z prawa de’Morgana dla sumy logicznej wynika układ zastępczy bramki OR(+).
Kod: |
p q p q
| | | |
O O | |
------- -------
| | = | |
| AND | | OR |
------- -------
O |
| |
Y=~(~p*~q)=p+q Y=p+q
|
Z powyższego wynika, że jeśli dysponujemy wyłącznie bramką AND(*) plus negatorami to łatwo możemy zbudować bramkę OR(+) w sposób jak wyżej.
Przykład zastosowania prawa de’Morgana w języku mówionym:
Jutro pójdę do kina lub do teatru
Y=K+T
Kiedy zostanę kłamcą ?
Odpowiedź na to pytanie mamy w logice ujemnej:
~Y=~K*~T
Zostanę kłamcą (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
Czy może się zdarzyć że jutro nie pójdę do kina i nie pójdę do teatru ?
Zgodnie z obietnicą mamy:
~Y=~K*~T - skłamię, nie dotrzymam słowa
czyli:
Y=~(~K*~T) - dotrzymam słowa
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
3.7 Prawo de’Morgana dla iloczynu logicznego
Prawa de’Morgana mówią o związkach logiki dodatniej i ujemnej. Zanegujmy sygnały wejściowe tym razem w bramce OR(*) i zobaczmy co z tego wyniknie.
o - w technice cyfrowej kółko jest symbolem negacji
Kod: |
p q
| |
O O
-------
| |
| OR |
-------
| ~Y=~p+~q
O
|
Y=~(~p+~q)=p*q
|
To samo co wyżej w tabelach zero-jedynkowych:
Kod: |
p q ~p ~q ~Y=~p+~q Y=~(~p+~q) Y=p*q
0 0 1 1 1 0 0
0 1 1 0 1 0 0
1 0 0 1 1 0 0
1 1 0 0 0 1 1
|
W powyższej tabeli mamy dowód prawa de’Morgana:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
To samo co wyżej w równaniach matematycznych:
Y=p*q
Przejście do logiki ujemnej poprzez negację wszystkich sygnałów i wymianę operatora OR(+) na AND(*).
~Y=~p+~q
Oczywiście zachodzi:
Y=~(~Y)
Stąd:
Prawo de’Morgana dla iloczynu logicznego:
p*q = ~(~p+~q) - po obu stronach równania mamy identyczną bramkę AND(*)
Z prawa de’Morgana dla iloczynu logicznego wynika układ zastępczy bramki AND(*).
Kod: |
p q p q
| | | |
O O | |
------- -------
| | = | |
| OR | | AND |
------- -------
O |
| |
Y=~(~p+~q)=p*q Y=p*q
|
Z powyższego wynika, że jeśli dysponujemy wyłącznie bramką OR(+) plus negatorami to łatwo możemy zbudować bramkę AND(*) w sposób jak wyżej.
Przykład zastosowania prawa de’Morgana w języku mówionym:
Jutro pójdę do kina i do teatru
Y=K*T
Kiedy zostanę kłamcą ?
Odpowiedź na to pytanie mamy w logice ujemnej:
~Y=~K+~T
Zostanę kłamcą (~Y) jeśli jutro nie pójdę do kina lub nie pójdę do teatru
Czy może się zdarzyć że jutro nie pójdę do kina lub nie pójdę do teatru ?
Zgodnie z obietnicą mamy:
~Y=~K+~T - skłamię, nie dotrzymam słowa
czyli:
Y=~(~K+~T) - dotrzymam słowa
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru
Z powyższego wynika, że człowiek w naturalny sposób minimalizuje bazę operatorów którymi posługuje się w języku mówionym. Nie używa ani NOR ani NAND bo operatory te łatwo można zastąpić operatorami OR(+) i AND(*) co widać w przykładach wyżej.
3.8 Logika dodatnia i ujemna w operatorach AND i OR
W punkcie 3.6 negując sygnały wejściowe w bramce AND(*) plus wstawiając negację na wyjściu przeszliśmy do bramki OR(+).
Oczywiście zachodzi:
p*q # p+q
bo wprowadziliśmy wyłącznie po jednej negacji we wszystkie linie wejściowe i na wyjście bramki AND.
Możemy tu zatem powiedzieć że funkcja OR jest logiką ujemną w stosunku do AND lub odwrotnie.
Prawa de’Morgana:
p*q = ~(~p+~q) - prawa strona to bramka AND w logice ujemnej bo na wyjściu Y widnieje negator
p+q = ~(~p*~q) - prawa strona to bramka OR w logice ujemnej bo na wyjściu Y widnieje negator
W pkt. 3.7 wprowadziliśmy po jednej negacji w sygnały wejściowe bramki OR(+) plus zanegowaliśmy wyjście i w ten sposób powróciliśmy do bramki AND(*) z pkt. 3.6. To oczywistość, bo w sumie do bramki AND(*) z pkt. 3.6 wprowadziliśmy w każdą linię wejściową i wyjściową po dwie negacje. Taki układ nie ma prawa ulec zmianie.
Twierdzenie 3.7.
W dowolna linię układu cyfrowego możemy wprowadzić parzystą ilość negacji i układ się nie zmieni.
Dowód:
A=~(~A) - prawo podwójnego przeczenia
3.9 Matematyczne związki operatorów typu AND(*) i OR(+)
Tabela legalnych operatorów logicznych typu AND(*) I OR(+)
Kod: |
Tabela A
p q Y=p+q Y=pNORq Y=p*q Y=pNANDq
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
Logika ujemna dowolnej bramki logicznej to jej odpowiedź na zanegowane sygnały wejściowe.
Kod: |
Tabela B
~p ~q ~Y=~p+~q ~Y=~pNOR~q ~Y=~p*~q ~Y=~pNAND~q
1 1 1 0 1 0
1 0 1 0 0 1
0 1 1 0 0 1
0 0 0 1 0 1
|
Powyższą tabelę sprowadzamy do logiki dodatniej
Kod: |
Tabela C
~p ~q Y=~(~p+~q) Y=~(~pNOR~q) Y=~(~p*~q) Y=~(~pNAND~q)
1 1 0 1 0 1
1 0 0 1 1 0
0 1 0 1 1 0
0 0 1 0 1 0
|
Z tabel A i C łatwo odczytujemy wszystkie prawa zachodzące między operatorami typu AND(*) i OR(+)
Prawa de’Morgana dla operatorów dodatnich, używanych w języku mówionym:
p+q = ~(~p*~q) - zamiana operatora OR(+) na AND(*)
p*q = ~(~p+~q) - zamiana operatora AND(*) na OR(+)
Prawa de’Morgana dla operatorów ujemnych, nieużywanych w języku mówionym:
pNORq = ~(~pNAND~q) - zamian operatora NOR na NAND
pNANDq = ~(~pNOR~q) - zamiana operatora NAND na NOR
4.0 Ogólna algebra Boole’a
W poprzednich punktach ograniczyliśmy algebrę Boole’a do zaledwie dwóch zmiennych. W ogólnym przypadku do bramki logicznej może dochodzić dowolna ilość sygnałów wejściowych realizujących jednoznaczną funkcję na wyjściu Y.
A,B,C… - zmienne binarne mogące przyjmować wyłącznie wartości 0 albo 1.
Y - funkcja logiczna mogąca przyjmować wyłącznie wartości 0 albo 1 w zależności od wartości zmiennych binarnych
Y=A+B*C - przykładowa funkcja logiczna
Definicja negacji:
Y=~A
Jeśli A=0 to Y=1 i jeśli A=1 to Y=0
Prawo podwójnego przeczenia:
A=~(~A)
Dowód językowy:
A = jestem uczciwy
~A = nie jestem uczciwy
~(~A) = nieprawdą jest, że jestem nieuczciwy
A=~(~A)
czyli:
Jestem uczciwy = Nieprawdą jest że jestem nieuczciwy
Definicja iloczynu logicznego AND(*):
Iloczyn logiczny n-zmiennych binarnych jest równa 1 gdy wszystkie zmienne są równe 1
LUB
Iloczyn logiczny n-zmiennych binarnych równa jest 0 gdy którakolwiek zmienna jest równa 0
Definicja sumy logicznej OR(+):
Suma logiczna n-zmiennych binarnych jest równa 1 gdy dowolna zmienna jest równa 1.
LUB
Suma logiczna n-zmiennych binarnych jest równa 0 gdy wszystkie zmienne są równe 0
Prawa algebry Boole’a wynikające bezpośrednio z definicji:
A+1=1
A+0=A
A*0=0
A*1=A
A+A=A
A*A=A
A+~A =1
A*~A =0
Najważniejsze prawa wynikające z definicji algebry Boole’a
A+~A=1 - tu jest gwarancja że A i ~A nie mogą być równocześnie równe 0 (fałsz)
bo byłoby:
0+0=1
Czyli:
0=1 - algebra Boole’a leży w gruzach
A*~A=0 - tu jest gwarancja że A i ~A nie mogą być równocześnie równe 1 (prawda)
bo byłoby:
1*1=0
Czyli:
1=0 - algebra Boole’a leży w gruzach
Porada praktyczna.
Najważniejsze prawa łatwo zapamiętać jeśli wyobrazimy sobie zmienne jako zera i jedynki w logice dodatniej czyli:
A=1
~A=0
Wtedy w wyobraźni zapisujemy sobie uproszczenie:
A+~A = 1+0 =1
A*~A = 1*0 =0
Zauważmy że dla dowolnej ilości zmiennych mnożenie logiczne niczym nie różni się od mnożenia algebraicznego:
Y = 1*1*1*1*0*0*1 =0 - wystarczy jedno zero aby wynik był równy 0
W algebrze dziesiętnej dla powyższego mamy identycznie Y=0
Zupełnie inaczej jest w sumie logicznej:
Y=1+1+0+1+0+1 = 1 - wystarczy jedna jedynka aby wynik był równy 1
W algebrze dziesiętnej byłoby tu Y=4, zupełnie co innego !
4.1 Logika dodatnia i ujemna w algebrze Boole’a
A+B - wyrażenie w algebrze Boole’a
Y=A+B
Y = abstrakcyjna funkcja logiczna przypisana dowolnemu wyrażeniu w algebrze Boole’a
Definicja:
Logika dodatnia - funkcja logiczna zmiennych binarnych niezanegowana (Y)
Logika ujemna - funkcja logiczna zmiennych binarnych zanegowana (~Y)
W zdaniach twierdzących z operatorami AND(*) i OR(+) możemy mówić o abstrakcyjnej funkcji logicznej, niedostępnej w wypowiadanym zdaniu.
Jutro pójdę do kina i do teatru
Y=K*T
W implikacji wyjście q jest dostępne w wypowiadanym zdaniu
Jeśli jutro będzie ładna pogoda to pójdę do kina i do teatru
P=>(K*T)
p=>q
Przykład złożonej funkcji logicznej:
A.
Y = A+C(D*E) - funkcja logiczna w logice dodatniej
Domyślna kolejność wykonywania działań: nawiasy, AND, OR
Ta sama funkcja może być zapisana w logice ujemnej na dwa sposoby.
B.
Negujemy dwustronnie powyższe równanie:
~Y = ~[A+C(D*E)] - logika ujemna bo ~Y
C.
Przechodzimy do logiki ujemnej negując w równaniu A wszystkie zmienne i wymieniając operatory AND(*) na OR(+) i odwrotnie:
~Y = ~A*~C+(~D+~E) - logika ujemna bo ~Y
Domyślna kolejność wykonywania działań: nawiasy, OR, AND
Ponowny powrót do logiki dodatniej uzyskujemy na dwa sposoby.
D.
Negujemy dwustronnie równanie B otrzymując równanie A
Y=A+C(D*E) - logika dodatnia bo Y
E.
Negujemy dwustronnie równanie C
Y=~(~Y)
Y=~[~A*~C+(~D+~E)] - logika dodatnia bo Y
Równoważne przekształcenia pozwalające uniezależnić się od pamiętania o kolejności wykonywania działań w logice dodatniej i ujemnej.
A.
Y = A+C(D*E) - funkcja logiczna w logice dodatniej
Uzupełniamy brakujące nawiasy i operatory:
Y=A+[C*(D*E)] - logika dodatnia bo Y
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów:
~Y = ~A*[~C+(~D+~E)] - logika ujemna bo ~Y
Z powyższego mamy prawo de’Morgana dla wielu zmiennych:
A+[C*(D*E)] = ~{~A*[~C+(~D+~E)]}
4.2 Logika dodatnia i ujemna człowieka
W katalogach układów cyfrowych roi się od błędów przy przechodzeniu z kodu zero-jedynkowego do równań w algebrze Boole’a.
Przykład:
A.
Y=1 <=> A=1 i B=0 i C=0
Funkcja logiczna Y (wyjście układu cyfrowego) ma być równa 1 wtedy i tylko wtedy gdy A=1 i B=0 i C=0.
Przykład błędnego kodowania spotykanego w katalogach:
Y=A*B*C … no bo wszędzie występuje spójnik „i”
W naturalnej logice dodatniej człowieka (algebrze Boole’a) wszystkie sygnały sprowadzamy do logicznych jedynek i dopiero wówczas zapisujemy równanie w naturalny sposób czyli:
B.
Y=A*~B*~C - poprawne przejście do równania w algebrze Boole’a w logice dodatniej
bo:
B=0 czyli ~B=1
C=0 czyli ~C=1
Zmienne Y i A są naturalnymi jedynkami zatem tylko je przepisujemy.
Równanie A można także zakodować w równoważnej logice ujemnej człowieka, gdzie wszystkie sygnały sprowadzamy do 0 i wszędzie zapisujemy przeciwne operatory do występujących w równaniu zero-jedynkowym czyli:
A.
Y=1 <=> A=1 i B=0 i C=0
Kodujemy jako:
C.
~Y=~A+B+C
bo:
Y=1 czyli ~Y=0
A=1 czyli ~A=0
Zmienne B i C są naturalnymi zerami zatem tylko je przepisujemy
Oczywiście zachodzi:
Y=~(~Y)
stąd na podstawie równań B i C mamy:
A*~B*~C = ~(~A+B+C)
W ten sposób znów odkryliśmy genialne prawo de’Morgana.
5.0 Implikacja
Zanim przejdziemy do teorii implikacji zobaczmy jak prosta jest implikacja którą posługują się ludzie.
p=>q = ~p+q - definicja bramki implikacji prostej =>
p~>q = p+~q - definicja bramki implikacji odwrotnej ~>
Gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator Implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym.
Prawa Kubusia:
p=>q = ~p~>~q - zamian operatora => na ~>
Po obu stronach mamy tu do czynienia z identyczną bramką implikacji prostej w odniesieniu do sygnałów p i q.
p~>q = ~p=>~q - zamiana operatora ~> na =>
Po obu stronach mamy tu do czynienia z identyczną bramką implikacji odwrotnej w odniesieniu do sygnałów p i q.
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać. Spójnik „musi” jest w implikacji domyślny.
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K
Implikacja odwrotna bo nadawca ma prawo do darowania dowolnej kary. W groźbach spójnik „może” jest prawie zawsze pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności wobec precyzyjnej definicji groźby jak wyżej. Nagrodę od kary każde stworzenie musi rozróżniać, to warunek przetrwania.
Który dzisiejszy matematyk wie, że poniższe to dwie identyczne bramki implikacji prostej =>, czyli zdania A i B są absolutnie równoważne matematycznie ?
A.
Kto wierzy we mnie będzie zbawiony
W=>Z
Prawo Kubusia:
p=>q = ~p~>~q
W=>Z = ~W~>~Z
B.
Kto nie wierzy we mnie pójdzie do piekła
~W~>P
Oczywiście:
P=~Z
W naturalnych dialogach, w naturalnej logice człowieka, ludzie NIGDY nie przechodzą do operatorów ślepych AND(*) i OR(+), bo nie ma takiej potrzeby ... za wyjątkiem kiedy dziecko uczy się języka i zadaje „głupie” pytania.
5.1 Logika przedszkolaka
Zajrzyjmy do przedszkola i posłuchajmy rozmowy Taty z 3-letnim Jasiem
Tata:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
Każde dziecko doskonale zna zachodzącą tu gwarancję, ale 3-letni maluch który jeszcze tego nie wie może zapytać:
Jaś:
... a kiedy nie dostanę lania ?
Prawo Kubusia:
B~>L = ~B=>~L
Jeśli przyjdziesz w czystych (~B) spodniach to na pewno nie dostaniesz lania (z powodu czystych spodni)
~B=>~L
Ciekawski Jaś pyta dalej:
Tata a kiedy będziesz kłamcą ?
Jedynie w tym przypadku potrzebne jest przejście do ślepych operatorów AND(*) i OR(+):
B~>L = B+~L = ~(~B*L) - dotrzymam słowa (prawo de’Morgana)
czyli:
~(B~>L) = ~B*L - skłamię
Odpowiedź Taty:
Skłamię gdy przyjdziesz w czystych spodniach i dostaniesz lanie
~(B~>L) = ~B*L - skłamię
Jaś:
... a czy może sie zdarzyć że przyjdę w czystych spodniach i dostanę lanie ?
Tata:
Nie może się zdarzyć że przyjdziesz w czystych spodniach i dostaniesz lanie.
B~>L = ~(~B*L) - dotrzymam słowa
KONIEC !
To jest cała implikacja człowieka o której dzisiejsi logicy i matematycy nie mają pojęcia.
5.2 Funkcja implikacji prostej
Definicja implikacji prostej, funkcja logiczna:
Kod: |
Tabela A
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1 |
Funkcję logiczną implikacji prostej czytamy:
Jeśli zajdzie p to musi zajść q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Wynika to z pierwszych dwóch linii powyższej definicji zero-jedynkowej, bo przypadek z drugiej linii p*~q nie ma prawa wystąpić.
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z drugiej linii sprowadzając wszystkie sygnały do jedynki.
p*~q = ~(p=>q)
stąd:
p=>q = ~(p*~q) = ~p+q
Bramka logiczna implikacji prostej:
Kod: |
p q
| |
-------
|O => |
|OR |
-------
|
p=>q=~p+q
|
Bramkowa definicja implikacji prostej:
Stojąc na przewodzie p widzimy niezanegowaną linie q.
Zbadajmy czy w implikacji można zamieniać p i q miejscami.
Kod: |
Tabela B
q p q=>p
1 1 =1
0 1 =1
0 0 =1
1 0 =0
|
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji różnica w wynikowych zerach i jedynkach w tabelach A i B jest dowodem, że w implikacji prostej nie wolno zamieniać p i q miejscami, to bardzo ważna informacja.
W implikacji prostej nie zachodzi przemienność argumentów
Oznacza to, że jeśli implikacja prosta p=>q jest prawdziwa to implikacja q=>p jest na pewno fałszywa.
A.
Jeśli p=>q=1 to q=>p=0
Wnioski:
1.
Zapis ogólny q=>p jest w implikacji nielegalny tzn. nie może on oznaczać zdania prawdziwego bo będzie to kolidowało z powyższym. Zapis q=>p jest prawdziwy wyłącznie w równoważności gdzie zamiana p i q jest oczywiście dozwolona. Implikacja i równoważność to dwa różne światy których nie wolno mieszać.
2.
Jeśli w dowolnym zdaniu „Jeśli p to musi zajść q” stwierdzimy warunek wystarczający między p i q to w pierwszej kolejności musimy wykluczyć równoważność czyli wykluczyć warunek wystarczający w stronę q=>p, wtedy i tylko wtedy zdanie jest implikacja prostą. Zgodnie z definicją implikacji prostej po „Jeśli…” musi być p zaś po „to…” musi być q. Kodowanie implikacji odwrotnej prawdziwej jako q=>p jest błędem matematycznym z powodu A.
3.
Zauważmy, że tabele A i B opisują tą samą bramkę implikacji prostej =>. W obu przypadkach występują identyczne, kluczowe sekwencje (1,0)=0 decydujące o tym iż jest to bramka implikacji prostej, gdyż na podstawie właściwości iloczynu logicznego i pojęcia funkcji linie możemy dowolnie przestawiać. O rodzaju użytej bramki decyduje jej operator => a nie jakiekolwiek znaczki na wejściach.
Przykład:
Jeśli liczba jest podzielna przez 8 to na pewno jest podzielna przez 2
P8=>P2
p=P8
q=P2
p=>q
P8 jest wystarczające dla P2, zatem implikacja prosta jest prawdziwa
5.3 Funkcja implikacji odwrotnej
Definicja implikacji odwrotnej, funkcja logiczna.
Kod: |
Tabela A
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0 |
Funkcje logiczna implikacji odwrotnej odczytujemy jako:
p~>q
Jeśli zajdzie p to „może” zajść q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym.
Z pierwszej i drugiej linii wynika, że p musi być konieczne dla q inaczej pierwsza linia będzie twardym fałszem, definicja leży w gruzach.
Zapis tej tabeli w równaniu algebry Boole’a najłatwiej uzyskać z ostatniej linii sprowadzając wszystkie sygnały do jedynki.
~p*q = ~(p~>q)
stąd:
p~>q = ~(~p*q) = p+~q
Bramka logiczna implikacji odwrotnej:
Kod: |
p q
| |
-------
| ~> O|
|OR |
-------
|
p~>q=p+~q
|
Bramkowa definicja implikacji prostej:
Stojąc na przewodzie p widzimy zanegowaną linie q.
Sprawdźmy czy można zamieniać p i q.
Kod: |
Tabela B
q p q~>p
1 1 =1
0 1 =0
0 0 =1
1 0 =1
|
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji różnica w wynikowych zerach i jedynkach w tabelach A i B jest dowodem, że w implikacji odwrotnej nie wolno zamieniać p i q miejscami, to bardzo ważna informacja.
W implikacji odwrotnej nie zachodzi przemienność argumentów
Oznacza to, że jeśli implikacja odwrotna p~>q jest prawdziwa to implikacja q~>p jest na pewno fałszywa.
A.
Jeśli p~>q=1 to q~>p=0
Wnioski:
1.
Zapis ogólny q~>p jest w implikacji nielegalny tzn. nie może on oznaczać zdania prawdziwego bo będzie to kolidowało z powyższym.
2.
Jeśli w dowolnym zdaniu „Jeśli p to może zajść q” stwierdzimy warunek konieczny między p i q to zgodnie z definicją implikacji odwrotnej po „Jeśli…” musi być p zaś po „to…” musi być q. Kodowanie implikacji odwrotnej prawdziwej jako q~>p jest błędem matematycznym z powodu A.
3.
Zauważmy, że tabele A i B opisują tą samą bramkę implikacji odwrotnej ~>. W obu przypadkach występują identyczne, kluczowe sekwencje (0,1)=0 decydujące o tym iż jest to bramka implikacji odwrotnej, gdyż na podstawie właściwości iloczynu logicznego i pojęcia funkcji linie możemy dowolnie przestawiać. O rodzaju użytej bramki decyduje jej operator ~> a nie jakiekolwiek znaczki na wejściach.
Przykład:
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
p=P2
q=P8
p~>q
P2 jest konieczna dla P8, zatem implikacja odwrotna jest prawdziwa
5.4 Logika dodatnia i ujemna w implikacji
Logika ujemna dla dowolnej bramki logicznej (czyli także bramki implikacji) to odpowiedź układu na zanegowane sygnały wejściowe. Mamy tu sytuację totalnie analogiczną jak w operatorach AND(*) i OR(+).
Dziewicza tabela legalnych operatorów logicznych jest tu następująca:
Kod: |
p q => N(=>) ~> N(~>)
1 1 1 0 1 0
1 0 0 1 1 0
0 0 1 0 1 0
0 1 1 0 0 1
|
Przerysujmy tabelę legalnych operatorów z uwzględnieniem sygnałów ujemnych na wejściu.
Kod: |
p q p=>q pN(=>)q p~>q pN(~>)q ~p ~q ~p=>~q ~pN(=>)~q ~p~>~q ~pN(~>)~q
1 1 1 0 1 0 0 0 1 0 1 0
1 0 0 1 1 0 0 1 1 0 0 1
0 0 1 0 1 0 1 1 1 0 1 0
0 1 1 0 0 1 1 0 0 1 1 0
|
Z powyższej tabeli natychmiast widać prawa Kubusia zarówno dla operatorów dodatnich => i ~> czyli tych których człowiek używa w naturalnym języku mówionym, jak i dla operatorów ujemnych N(=>) i N(~>) których w języku mówionym nie używa się.
Prawa Kubusia dla operatorów dodatnich.
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Prawa Kubusia dla operatorów ujemnych:
p N(=>) q = ~p N(~>) ~q - prawo zamiany operatora N(=>) na N(~>)
p N(~>) q = ~p N(=>) ~q - prawo zamiany operatora N(~>) na N(=>)
Zależności operatorów dodatnich i ujemnych opisują oczywiste wzorki:
p=>q = ~[pN(=>)q]
p~>q = ~[pN(~>)q]
czyli:
[pN(=>)q] = ~(p=>q)
[pN(~>)q] = ~(p~>q)
Powyższa tabela w bramkach logicznych wygląda następująco.
Bramka logiczna implikacji prostej:
Kod: |
p q p q
| | | |
| | O O
------- -------
|O => | = |~> O|
|OR | |OR |
------- -------
| p=>q=~p+q | ~p~>~q=~p+q
O O
| |
~(p=>q)=[pN(=>)q] ~(~p~>~q)=~[~pN(~>)~q]
|
Komentarz:
~(p=>q) = ~(~p+q)=p*~q - skłamię
p=>q = ~(p*~q) - dotrzymam słowa (nie może się zdarzyć)
Przed negacją, na wyjściu bramki p=>q mamy oczywiście implikacje prostą np.
Tata do 3-letniego Jasia:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C
… i wszystko jasne z przedszkolakami włącznie, ale 3-latek poznaje język i zadaje „głupie” pytania:
Jaś:
… a jak będę niegrzeczny ?
Prawo Kubusia:
G=>C = ~G~>~C
Jeśli będziesz niegrzeczny to nie dostaniesz czekolady
~G~>~C
Jaś:
Tata, a kiedy zostaniesz kłamcą ?
Za wyjątkiem 3-latka nikt nie zada takiego pytania … ale ten może wszystko, i tu jest odpowiedź po negacji jak wyżej.
Przed negacją (kółkiem) mamy:
G=>C - dotrzymam słowa, czyli jak będziesz grzeczny to na 100% czekolada
Jaś:
… a kiedy skłamiesz ?
Po negacji mamy:
~(G=>C) - skłamię …
Skłamię, gdy nie zdarzy się ~(…) że jeśli będziesz grzeczny dostaniesz czekoladę
~(G=>C)
Powyższe zdanie jest „zagmatwane”, sensownym jest tu przejście do ślepych operatorów AND i OR.
~(G=>C) = ~(~G+C) = ~[~(G*~C)]= G*~C … bo: A=~(~A)
czyli:
Skłamię, jeśli będziesz grzeczny i nie dostaniesz czekolady
~(G=>C) = G*~C
Jaś drąży dalej:
Tata, a czy może się zdarzyć, że będę grzeczny i nie dostane czekolady ?
~(G=>C) = G*~C
czyli:
G=>C = ~(G*~C)
Nie może się zdarzyć ~(…), że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Koniec komentarza.
Jak widać, układ zastępczy bramki implikacji prostej => to bramka implikacji odwrotnej z zanegowanymi wejściami czyli prawo Kubusia.
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Po obu stronach mamy tu identyczną bramkę implikacji prostej => względem sygnałów odniesienia p i q. Możemy tu powiedzieć, że po prawej stronie mamy do czynienia z bramką implikacji prostej w logice ujemnej bo wyjście q jest zanegowane (~p~>~q).
Bramka logiczna implikacji odwrotnej:
Kod: |
p q p q
| | | |
| | O O
------- -------
|~> O| = |O =>|
|OR | |OR |
------- -------
| p~>q=p+~q | ~p=>~q=p+~q
O O
| |
~(p~>q)=[pN(~>)q] ~(~p=>~q)=~[~pN(=>)~q]
|
Komentarz:
~(p~>q) = ~(p+~q)=~p*q - skłamię
p~>q = ~(~p*q) - dotrzymam słowa (nie może się zdarzyć)
Przed negacją, na wyjściu bramki p~>q mamy oczywiście implikacje odwrotną np.
Tata do 3-letniego Jasia:
jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
… i wszystko jasne z przedszkolakami włącznie, ale 3-latek poznaje język i zadaje „głupie” pytania:
Jaś:
… a jak nie ubrudzę spodni ?
Prawo Kubusia:
B~>L = ~B=>~L
Jeśli nie ubrudzisz spodni to na pewno nie dostaniesz lania (z powodu czystych spodni)
Jaś:
Tata, a kiedy zostaniesz kłamcą ?
Za wyjątkiem 3-latka nikt nie zada takiego pytania … ale ten może wszystko, i tu jest odpowiedź po negacji jak wyżej.
Przed negacją (kółkiem) mamy:
B~>L - jeśli przyjdziesz w brudnych spodniach to możesz dostać lanie (na podstawie definicji ~>)
Jaś:
… a kiedy skłamiesz ?
Po negacji mamy:
~(B~>L) = ~(~B=>~L) - skłamię …
Skłamię, gdy nie zdarzy się ~(…), że jeśli przyjdziesz w czystych spodniach to nie dostaniesz lania
Sensownym jest tu zdecydowane uproszczenie zdania poprzez przejście do ślepych operatorów AND i OR.
~(B~>L) = ~(B+~L) = ~[~(~B*L)] = ~B*L … bo A=~(~A)
czyli:
Skłamię, jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie
~(B~>L) = ~B*L
Jaś drąży dalej:
Tata, a czy może się zdarzyć, że przyjdę w czystych spodniach i dostane lanie ?
~(B~>L) = ~B*L
czyli:
B~>L = ~(~B*L)
Nie może się zdarzyć ~(…), że przyjdziesz w czystych spodniach i dostaniesz lanie (z powodu czystych spodni)
Koniec komentarza.
Układ zastępczy bramki implikacji odwrotnej ~> to bramka implikacji prostej z zanegowanymi wejściami czyli prawo Kubusia.
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Po obu stronach mamy tu identyczną bramkę implikacji odwrotnej ~> względem sygnałów odniesienia p i q. Możemy tu powiedzieć, że po prawej stronie mamy do czynienia z bramką implikacji odwrotnej w logice ujemnej bo wyjście q jest zanegowane (~p=>~q).
5.5 Prawa Kubusia w równaniach matematycznych
W poprzednim punkcie udowodniliśmy prawa Kubusia w tabelach zero-jedynkowych. Dokładnie to samo można udowodnić bardziej elegancko w równaniach matematycznych.
Definicje:
A.
p=>q = ~p+q - definicja implikacji prostej
B.
p~>q = p+~q - definicja implikacji odwrotnej
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę logiczną implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q - na podstawie definicji ~>
Prawa strona jest identyczna jak w definicji A zatem zachodzi:
p=>q = ~p~>~q
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q - na podstawie definicji =>
prawa strona jest identyczna jak definicja B zatem zachodzi:
p~>q = ~p=>~q
Prawa Kubusia to ścisły odpowiednik praw de’Morgana z operatorów AND(*) i OR(+).
p*q = ~(~p+~q) - zamian operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q = ~(~p*~q) - zamian operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
5.6 Implikacja w bramkach logicznych
Podstawa matematyczna przekształceń na bramkach logicznych.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
1.
Negujemy wejścia p i q otrzymując:
p=>q # (~p)=>(~q) = ~(~p)+(~q)
p=>q # ~p=>~q = p+~q
Prawa strona powyższego równania to definicja implikacji odwrotnej zatem:
p=>q # ~p=>~q = p~>q = p+~q
Prawo Kubusia:
p~>q = ~p=>~q - prawo zamiany ~> na =>
2.
Dokładnie to samo robimy z definicją implikacji odwrotnej.
p~>q # (~p)~>(~q) = (~p)+~(~q)
p~>q # ~p~>~q = ~p+q
Prawa strona ostatniego równania to definicja implikacji prostej zatem:
p~>q # ~p~>~q = p=>q = ~p+q
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany => na ~>
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
Definicja implikacji prostej - układ A:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja implikacji odwrotnej - układ C:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
W implikacji punktem odniesienia jest zawsze poprzednik p.
Bramkowa definicja implikacji prostej:
Układ A
Stojąc na przewodzie p widzimy niezanegowaną linię q
Bramkowa definicja implikacji odwrotnej:
Układ C
Stojąc na przewodzie p widzimy zanegowaną linie q
Opis przekształceń bramkowych:
1.
W linie wejściowe p i q bramki A wprowadzamy po jednym negatorze otrzymując układ B.
2.
Wpychamy wprowadzone negacje do układu scalonego otrzymując układ implikacji odwrotnej C.
Oczywiście matematycznie zachodzi:
(A) p=>q # (B) ~p=>~q = (C) p~>q
Prawa strona to prawo Kubusia:
p~>q = ~p=>~q
3.
W linie wejściowe układu C wprowadzamy po jednej negacji i otrzymujemy układ D
4.
Wpychamy wprowadzone negatory do układu scalonego otrzymując układ E
Oczywiście matematycznie zachodzi:
(C) p~>q # (D)~p~>~q = (E) p=>q
Prawa strona to drugie z praw Kubusia:
p=>q = ~p~>~q
Zauważmy, że w sumie przechodząc z układu A do układu D wprowadziliśmy po dwie negacje w linie wejściowe. Oczywiście taki układ scalony nie ulegnie zmianie na mocy prawa podwójnego przeczenia.
p=~(~p) - w dowolną linię można wprowadzić dwie negacje i układ nie ulegnie zmianie.
Mamy zatem:
(A) p=>q = (D)~p~>~q = (E) p=>q
czyli … wszystko w porządku !
6.0 Operatorowe definicje implikacji
W języku mówionym każdy człowiek, od przedszkolaka poczynając, posługuje się biegle operatorowymi definicjami implikacji prostej i odwrotnej plus prawami Kubusia.
6.1 Symboliczna i operatorowa definicja implikacji prostej
Definicja zero-jedynkowa implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji prostej to po prostu rozpisane wszystkie przypadki jakie mogą w przyszłości wystąpić. Najłatwiej to zrozumieć przechodząc na symboliczną definicję implikacji prostej.
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji prostej;
Kod: |
p q p=>q
p q =1
p ~q =0
~p ~q =1
~p q =1
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z drugiej linii sprowadzając wszystkie sygnały do jedynki:
p*~q = ~(p=>q)
czyli:
p=>q = ~(p*~q) = ~p+q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „musi” zajść q bo druga linia jest twardym fałszem i nie ma prawa wystąpić czyli:
p=>q =1
p=>~q=0
Wynika z tego że p musi być wystarczające dla q, inaczej druga linia nie będzie twardym fałszem.
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” zajść q
p musi być wystarczające dla q
gdzie:
=> - operator implikacji prostej, spójnik „musi” => miedzy p i q ze spełnionym warunkiem wystarczającym.
Przykład:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L=1
Bycie psem jest wystarczające dla czterech łap, implikacja prosta prawdziwa
Druga linia przybierze tu postać:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz bo wszystkie psy mają cztery łapy. Psy kalekie z inną ilością łap służą do obalania logiki, dlatego wywalamy je do kosza, mając świadomość że takie istnieją.
Ostatnie dwie linie tabeli mówią że:
Jeśli nie zajdzie p to może zajść ~q
~p~>~q=1
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
LUB
Jeśli zajdzie ~p to może zajść q
~p~~>q=1
Przekładając na nasz przykład mamy:
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L=1 bo kura
Nie bycie psem jest warunkiem koniecznym, aby nie mieć czterech łap, implikacja odwrotna prawdziwa.
LUB
Jeśli zwierzę nie jest psem to może ~~> mieć cztery łapy
~P~~>4L=1 bo słoń
To zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda), nie jest to implikacja odwrotna.
Operatorowa definicja implikacji prostej:
p=>q =1
p=>~q=0
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p=>q= ~p~>~q
~p~>~q=1
~p~~>q=1
Ostatnie zdanie jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Zauważmy, że implikacja odwrotna w ostatniej linii jest wykluczona na podstawie prawa Kubusia:
p=>~q = ~p~>q =0
Ostatnie zdanie jest prawdziwe na mocy tego równania:
~p~~>q = ~p~>q + ~p~~>q = 0 + 1 =1
Sens implikacji prostej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko p=>~q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
6.2 Symboliczna i operatorowa definicja implikacji odwrotnej
Definicja zero-jedynkowa implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Stąd symboliczna definicja implikacji odwrotnej;
Kod: |
p q p~>q
p q =1
p ~q =1
~p ~q =1
~p q =0
|
Równanie algebry Boole’a dla powyższej tabeli najprościej tworzymy z ostatniej linii sprowadzając wszystkie sygnały do jedynki:
~p*q = ~(p~>q)
czyli:
p~>q = ~(~p*q) = p+~q - na podstawie prawa de’Morgana
Z pierwszych dwóch linii widać, że jeśli zajdzie p to „może” zajść q
p~>q=1
LUB
Jeśli zajdzie p to może zajść ~q
p~~>~q=1
Z powyższego wynika że p musi być warunkiem koniecznym dla q inaczej pierwsza linia będzie twardym fałszem, implikacja odwrotna będzie fałszywa.
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to może zajść q
p musi być konieczne dla q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” ~> między p i q ze spełnionym warunkiem koniecznym.
Przykład:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P=1 bo pies
Cztery łapy są konieczne dla psa, implikacja odwrotna prawdziwa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń
… ale
Jeśli zwierze ma skrzydła to może być psem
S~>P=0
Skrzydła nie są konieczne dla psa, implikacja oczywiście fałszywa
Zauważmy, że jeśli p jest konieczne dla q (pierwsza linia) to zajście ~p wymusza zajście ~q (trzecia linia). Stąd w sposób naturalny otrzymaliśmy prawo Kubusia.
p~>q = ~p=>~q=1
Prawa strona wymusza twardy fałsz w ostatniej linii:
~p=>q=0
Wracając do naszego przykładu … co będzie jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P=1 bo kura
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Operatorowa definicja implikacji odwrotnej:
p~>q =1
LUB
p~~>~q =1
… a co będzie jeśli zajdzie ~p ?
Prawo Kubusia:
p~>q= ~p=>~q
~p=>~q=1
~p=>q=0
Linia p~~>~q=1 jest prawdziwa na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda)
Implikacja w tej linii jest wykluczona na mocy prawa Kubusia:
p~>~q = ~p=>q=0
Zdanie p~~>~q jest prawdziwe na mocy tego równania:
p~~>~q = ~p=>q + p~~>~q = 0 + 1 =1
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań puste będzie wyłącznie pudełko ~p=>q=0, pozostałe będą pełne, stąd taki a nie inny rozkład zer i jedynek w definicji implikacji. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
Ciąg dalszy w kolejnym poście ...
Ostatnio zmieniony przez rafal3006 dnia Nie 12:46, 09 Sie 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:19, 10 Maj 2009 Temat postu: |
|
|
Ciąg dalszy powyższego postu ...
7.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
7.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
~G~>~C =1
LUB
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
~G~>C=0 - implikacja odwrotna fałszywa
(~G~~>C)+(~G~>C) = 1+0=1
~~> - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Uwaga:
W groźbach naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~(G=>C) = G*~C - skłamię
Synku, skłamię jeśli będziesz grzeczny i nie dostaniesz czekolady.
G*~C
Jaś:
Mama, a czy może się zdarzyć że będę grzeczny i nie dostanę czekolady ?
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
7.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca. Intuicyjnie jest to jak najbardziej poprawne, bowiem jeśli odbiorca spełni warunek kary to nadawca może zrobić co mu się podoba, walić albo darować karę (akt łaski) i nie ma najmniejszych szans na zostanie kłamcą.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy spójnika MOŻE ~~>
B~>~L=0 - implikacja odwrotna fałszywa
(B~~>~L)+(B~>~L) = 1+0 =1
~~> - nadawca ma prawo do darowania dowolnej kary (akt łaski)
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
C: ~B => ~L =1 - twarda prawda (gwarancja)
LUB
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
D: ~B => L =0 - twardy fałsz
Jedyne sensowne przejście z operatora implikacji odwrotnej do operatorów implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
Jaś:
… tata, a kiedy skłamiesz ?
B~>L = B+~L = ~(~B*L) - dotrzymam słowa
czyli:
~(B~>L) = ~B*L - skłamię
Skłamię, jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.0 Algebra Kubusia w pigułce
Narodziny algebry Kubusia na SFINII trwały 3 lata …
8.1 Definicje operatorów implikacji prostej => i odwrotnej ~>
Definicja implikacji prostej:
Jeśli zajdzie p to musi => zajść q
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
Jeśli zajdzie p to może ~> zajść q
p~>q = p+~q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
8.2 Prawa matematyczne implikacji
Fundament logiki implikacyjnej:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
=> - warunek wystarczający
~> - warunek konieczny
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikację prostą =>
Jeżeli zdanie jest implikacja prostą to w stronę p=>q zachodzi warunek wystarczający zaś w drugą stronę q~>p zachodzi warunek konieczny.
Jeśli zdanie jest implikacja odwrotną to w stronę p~>q zachodzi warunek konieczny zaś w drugą stronę q=>p na pewno zachodzi warunek wystarczający.
Jeśli zdanie p=>q jest implikacją prostą to zdanie q=>p jest zawsze fałszywe czyli:
(p=>q)(q=>p) = 1*0 =0
(p=>q)(~p=>~q)=1*0=0
(p~>q)(q~>p) =1*0=0
Dwustronny warunek konieczny jest fizycznie niemożliwy do zaistnienia, w przeciwieństwie do warunku wystarczającego w równoważności.
8.3 Prawa matematyczne równoważności
Fundament logik równoważnościowych:
Definicja równoważności:
p<=>q = p*q+~p*~q
Prawo kontrapozycji:
p=>q = ~q=>~p
Jeśli zdanie jest równoważnością to zachodzi warunek wystarczający w obie strony.
Możliwe, równoważne definicje równoważności:
p<=>q = (p=>q)(q=>p)=1*1=1 - dwustronny warunek wystarczający
p<=>q = (p=>q)(~p=>~q)=1*1=1
8.4 Naturalne kodowanie zdań
* - spójnik „i” (AND)
+ - spójnik „lub” (OR)
=> - spójnik „na pewno” (zachodzi dla każdego elementu po „Jeśli…)
~~> - naturalny spójnik „MOŻE” (wystarczy jedna prawda)
Naturalne kodowanie zdań jest w 100% zgodne z logiką człowieka. W kodowaniu tym rozstrzygamy czy zdanie jest prawdziwe/fałszywe lub kiedy w przyszłości zdanie będzie prawdziwe/fałszywe.
Przykłady:
Pies ma cztery łapy - prawda
Pies nie ma czterech łap - fałsz
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L =1 bo każdy pies ma cztery łapy
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L =0 - oczywisty fałsz
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~~>~4L =1 bo kura
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L =1 bo koń
Jeśli księżyc jest z sera to pies ma cztery łapy
Zdanie fałszywe bo brak związku między księżycem a psem.
8.5 Definicje spójników zdaniowych
MUSI =>
p=>q=1
Dla każdego elementu spełniającego warunek p musi zajść q
MUSI = warunek wystarczający =>
MOŻE ~>
Warunek konieczny spełniony
p~>q=1
Istnieje element spełniający warunek p i q i zdanie spełnia warunek konieczny, implikacja odwrotna jest prawdziwa
MOŻE = warunek konieczny ~>
MOŻE ~~>
Warunek konieczny niespełniony
p~~>q=1
Istnieje element spełniający warunek p i q ale zadnie nie spełnia warunku koniecznego, implikacja odwrotna jest fałszywa
Kryterium prawdziwości zdania dla spójnika może:
(p ~~>q) + (p~>q)
Zdanie jest prawdziwe jeśli zajdzie MOŻE ~~> lub MOŻE ~>
Wniosek:
Nie każde zdanie prawdziwe na mocy spójnika MOŻE ~~> jest implikacją odwrotną, czyli spełnia warunek konieczny ~>
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P=1
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P=1 bo słoń...
Zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, implikacja odwrotna fałszywa bo 4 łapy nie są konieczne by nie być psem bo pies
4L~>~P=0 - implikacja odwrotna fałszywa.
Możemy użyć prawa Kubusia by uprościć rozstrzygnięcie o warunku koniecznym/wystarczającym. Dobre prawo matematyczne zawsze zamieni prawdę w prawdę albo fałsz w fałsz - nie ma innej możliwości.
Prawo Kubusia:
4L~>~P (warunek konieczny) = ~4L => P (warunek wystarczający)
Jeśli zwierzę nie ma czterech łap to na pewno => jest psem
~4L=>P=0
Oczywisty fałsz, zatem warunek wystarczający nie zachodzi, co oznacza także brak warunku koniecznego w zdaniu 4L~>~P.
8.6 Matematyczne kodowanie zdań
Algorytm rozstrzygania o rodzaju wypowiedzianego zdania:
1. Sprawdzamy czy z zdaniu występuje warunek wystarczający, jeśli tak to idziemy do pkt. A
2. Sprawdzamy czy w zdaniu występuje spójnik może ~~>, jeśli tak to idziemy do pkt. B
3. Jeśli żaden z powyższych warunków nie zachodzi to zdanie jest fałszywe lub niepoprawne
Zdanie niepoprawne - zdanie któremu nie da się przypisać ani prawdy, ani fałszu np. wszelkie zdania pytające.
A. Implikacja prosta:
Do prawidłowej obsługi warunku wystarczającego => konieczne są dwa symbole:
=> - warunek wystarczający, spójnik MUSI
<=> - równoważność
Po stwierdzeniu p=>q musimy wykluczyć q=>p aby mieć pewność, że p=>q to implikacja prosta.
Jeśli zachodzi warunek wystarczający w dwie strony p=>q i q=>p to zdanie jest równoważnością i do kodowania używamy symbolu równoważności <=>.
B. Implikacja odwrotna:
Do prawidłowej obsługi warunku koniecznego ~> również potrzebujemy dwóch symboli:
~> - warunek konieczny, jeśli zachodzi to implikacja jest prawdziwa, zdanie oczywiście prawdziwe
~~> zdanie prawdziwe na mocy definicji spójnika MOŻE ~~>, ale nie zachodzi warunek konieczny ~>, implikacja odwrotna jest fałszywa
Po stwierdzeniu prawdziwości zdania na mocy spójnika MOŻE ~~> musimy dodatkowo stwierdzić warunek koniczny by mieć pewność że zdanie jest implikacją odwrotną prawdziwą.
UWAGA !
Dowolne zdanie „Jeśli…to…” kodujemy matematycznie w następujący sposób:
p - poprzednik implikacji, zawsze po spójniku „Jeśli…”
q - następnik implikacji, zawsze po spójniku „to…”
Poprzednik p i następnik q łączymy ze sobą jednym z czterech możliwych operatorów =>, <=>, ~>, ~~>. Jednoznaczne rozstrzygnięcie z jakim zdaniem mamy do czynienia umożliwia algorytm przedstawiony wyżej.
8.7 Sens implikacji prostej
Implikację „Jeśli p to q” mózg człowieka obsługuje w dwóch taktach w pierwszym bada zgodność z p zaś w drugim zgodność z q. W żadnej chwili czasowej nie ma wykroczenia poza dwuelementową algebrę Boole’a.
Algorytm działania implikacji odwrotnej:
Kod: |
musi
Jeśli |----- q --- p=>q=1
|----- p -----|musi
| |----- ~q --- p=>~q=0
|
|
X => ---|
|
| może
|Jeśli |----- ~q --- ~p~>~q=1
|----- ~p -----|może
|----- q --- ~p~>q=1
|
Jak widać, w pierwszym takcie podejmujemy decyzją czy iść drogą p czy też ~p co zależy od wylosowanego elementu X. W drugim takcie zawsze mamy tylko i wyłącznie dwie możliwości do wyboru, zatem cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji prostej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka p=>~q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji prostej. Najważniejsze w implikacji prostej nie jest puste pudełko, ale gwarancja matematyczna p=>q=1.
8.8 Sens implikacji odwrotnej
Algorytm działania implikacji odwrotnej:
Kod: |
może
Jeśli |----- q --- p~>q=1
|----- p -----|może
| |----- ~q --- p~>~q=1
|
|
Y ~> ---|
|
| musi
|Jeśli |----- ~q --- ~p=>~q=1
|----- ~p -----|musi
|----- q --- ~p=>q=0
|
Tu także implikacja obsługiwana jest w dwóch taktach. W pierwszym następuje decyzja czy iść linią p czy też ~p w zależności od wylosowanego elementu Y. W drugim takcie mamy do wyboru zawsze dwie możliwości czyli cały czas jesteśmy w dwuelementowej algebrze Boole’a.
Sens implikacji odwrotnej:
Po nieskończonej ilości losowań wszystkie pudełka będą pełne za wyjątkiem pudełka ~p=>q=0 które będzie puste, stąd taki a nie inny rozkład zer i jedynek w implikacji odwrotnej. Najważniejsze w implikacji odwrotnej nie jest puste pudełko, ale gwarancja matematyczna ~p=>~q=1.
Wyobraźmy sobie teraz powyższe algorytmy implikacji jako czarne pudełko z jednym wejściem i czterema wyjściami. Jeśli zdanie jest implikacją to elementy wrzucane do tego pudełka segregowane są na cztery zbiory z których jeden jest zawsze pusty. Oznacza to, że implikacja jest wirtualną logiką czterowartościową i rzeczywistą dwuwartościową co wynika z powyższych algorytmów.
9.0 Zburzenie starej logiki w zakresie implikacji
W poprzednich rozdziałach zbudowaliśmy od podstaw poprawną algebrę Kubusia czyli algebrę Boole’a z dołączonymi do definicji operatorami implikacji prostej => i implikacji odwrotnej ~>.
Dlaczego do tej pory tego nie uczyniono ?
… bo matematycy nie mają bladego pojęcia czym w rzeczywistości jest implikacja. W logice funkcjonują różne definicje implikacji np. implikacja materialna, implikacja logiczna, implikacja ścisła C. I. Lewisa itp. Oczywistością jest, że nie może być poprawną definicją cokolwiek co nie jest matematycznie jednoznaczne.
Burzenie starej logiki w zakresie implikacji:
Definicje:
p=>q - implikacja prosta, między p i q musi zachodzić warunek wystarczający
p~>q - implikacja odwrotna, między p i q musi zachodzić warunek konieczny
Przykład:
A.
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
P2 jest konieczne dla P8 zatem musimy użyć operatora (bramki) ~> czyli tego:
p~>q
B.
Jeśli liczba jest podzielna przez 8 to na pewno jest podzielna przez 2
P8=>P2
P8 jest wystarczające dla P2 zatem musimy użyć operatora (bramki) => czyli tego:
p=>q
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
czyli:
P8=>P2 = ~P8~>~P2
P2~>P8 = ~P2=>~P8
W równoważności musi być po lewej i prawej stronie to samo p i to samo q jak wyżej, to oczywiste.
Oczywiście na mocy definicji:
p=>q # p~>q
P8=>P2 # P2~>P8
Lewa strona nierówności:
p=P8
q=P2
Prawa strona nierówności:
p=P2
q=P8
Co niektórzy „matematycy” na widok powyższego będą sobie włosy rwać i krzyczeć, że ostatni zapis jest sprzeczny matematycznie. Nie ma tu żadnej sprzeczności bo lewa i prawa strona ostatniej nierówności to dwa izolowane układy logiczne pomiędzy którymi nie zachodzą żadne związki matematyczne. Między symbolami p i q po lewej stronie musi zachodzić warunek konieczny, zaś między p i q po prawej stronie musi zachodzić warunek wystarczający. W przypadku P8 i P2 będzie to dokładnie tak, jak wyżej.
Gdyby zamiast znaku # był znak =, to wtedy inna byłaby bajka. Oczywistym jest, że zmienne po obu stronach równości muszą oznaczać to samo. W algebrze Kubusia zmienne oznaczają to samo w prawach Kubusia bo tu jest równość - mamy je wyżej.
W algebrze Kubusia nie zachodzą równania rodem z wariatkowa czyli te:
p=>q = q~>p
p~>q = q=>p
Tylko ktoś kto ma zerowe pojęcie w praktycznej algebrze Boole’a (matematycy niestety) może takie bzdury wypisywać.
Dowód:
W implikacji nie zachodzi przemienność argumentów co zostało dowiedzione wyżej. Brak przemienności argumentów w implikacji przenosi się na brak przemienności argumentów w implikacyjnych operatorach AND(*) i OR(+).
Mamy zatem:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
CND
Zobaczmy teraz co jest w dzisiejszej „matematyce”:
Zdanie A.
p~>q
P2~>P8 =1 - oczywista prawda
Zdanie odwrotne z zamienionym operatorem również musi być prawdziwe:
Zdanie C.
q=>p
P8=>P2 =1
q=P8
p=P2
Oczywistością dla każdego jołopa jest że:
Zdanie D.
P8=>P2 =1 - to przepiękna implikacja prosta p=>q
p=>q
p=P8
q=P2
Jak widzimy wyżej w dzisiejszej „matematyce” mamy sprzeczność.
Oczywistym jest że:
P8=>P2 (zdanie C) = P8=>P2 (zdanie D)
czyli:
q=>p (zdanie C) = p=>q (zdanie D) ???!!!
Co gorsza w dzisiejszej matematyce zachodzi:
q=>p = p~>q
podstawiając to do powyższego mamy kosmiczną bzdurę:
p~>q = p=>q
9.1 Dowód p=>q # q~>p metodą równań algebry Boole’a
Kluczową różnicą w dowodzeniu praw opartych o ślepe operatory AND(*) i OR(+) oraz praw implikacyjnych jest brak przemienności argumentów w operatorach implikacji co dowiedziono wyżej.
Brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Z powyższego wynika że:
p=>q = ~p+q # q+~p = q~>p
czyli:
p=>q = ~(p*~q) # ~(~q*p) =q~>p
Przykład A.
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
P8=>P2 = ~P8+P2 = ~(P8*~P2)
~(P8*~P2)
Nie może się zdarzyć, że liczba jest podzielna przez 8 i nie jest podzielna przez 2
Gwarantowane liczby to:
8, 16, 24 …
Tu poza gwarancją są liczby:
1,3,,5 … 2,4,6 …
Przykład B.
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8
P2~>P8 = P2+~P8 = ~(~P2*P8)
~(~P2*P8)
Nie może się zdarzyć, że liczba nie jest podzielna przez 2 i jest podzielna przez 8
Gwarantowane liczby to:
1,3,5 …
Tu poza gwarancją są liczby:
8,16,24 … 2,4,6 …
W przykładach A i B mamy różne zarówno zbiory gwarantowane, jak i zbiory będące poza gwarancją.
Zachodzi zatem:
~(P8*~P2) # ~(~P2*P8)
czyli:
P8=>P2 # P2~>P8
To dwie zupełnie inne gwarancje czyli brak przemienności w operatorach implikacji przenosi się na brak przemienności w implikacyjnych AND i OR.
Zauważmy, że w prawach Kubusia gwarancje są identyczne bo tu nie zamieniamy operatorów w implikacyjnych AND i OR.
Definicje:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawa Kubusia:
p=>q = ~p~>~q = ~p+q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji prostej =>
Dowód:
~p~>~q = (~p)+~(~q) = ~p+q
Dla naszego przykładu mamy:
P8=>P2 = ~P8=>~P2 = ~P8+P2 = ~(~P8*P2) - identyczna gwarancja dla obu stron równoważności
p~>q = ~p=>~q = p+~q - prawo zamiany operatora => na ~>
Po obu stronach mamy identyczną bramkę implikacji odwrotnej ~>
Dowód:
~p=>~q = ~(~p)+(~q) = p+~q
Dla naszego przykładu mamy:
P2~>P8 = ~P2=>~P8 = P2+~P8 = ~(~P2*P8) - identyczna gwarancja dla obu stron równowazności
W prawach Kubusia mamy identyczne gwarancje po obu stronach równości z dokładnością do każdej literki i każdego przecinka. Tak musi być bo po obu stronach mamy identyczną bramkę logiczną czyli w 100% dokładnie to samo.
Prawa Kubusia to dokładny odpowiednik praw de’Morgana z operatorów AND i OR:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Po obu stronach mamy identyczną bramkę AND(*)
p+q=~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
Po obu stronach mamy identyczną bramkę OR(+)
10.0 Kwadratura koła w dzisiejszej matematyce
Wprowadzenie:
p=>q - definicja implikacji prostej
p~>q - definicja implikacji odwrotnej
Symbole p i q to po prostu standard umożliwiający porozumiewanie się. Znaczki są tu kompletnie nieważne. Ważne jest co podajemy na podstawę wektorów (p) a co na strzałki (q).
Jeśli między postawą a strzałka zachodzi warunek wystarczający to musimy użyć definicji p=>q, jeśli konieczny to p~>q.
Możemy sobie nazwać q~>p, pies~>wydra ... to bez znaczenia ale:
Prawo Kubusia:
pies~>wydra = ~pies => ~wydra - prawo zamiany operatora ~> na =>
w powyższym zapisie pies i wydra to tylko symbole (parametry formalne) bez żadnego związku z psem i wydrą.
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze pies, zaś po „to..” jest zawsze wydra.
Oczywiście zgodnie z powszechnym standardem:
p=pies
q=wydra
czyli jeszcze raz to samo prawo Kubusia:
p=>q = ~p~>~q - prawo Kubusia zapisane zgodnie z powszechnym standardem
gdzie:
W prawie Kubusia po „Jeśli..” jest zawsze p zaś po „to…” jest zawsze q
Po powyższym wstępie czas na kwadraturę koła w dzisiejszej logice:
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
4L są konieczne dla psa, zatem implikacja odwrotna prawdziwa
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Implikacja odwrotna do powyższej:
Jeśli zwierze jest psem to na pewno => ma cztery łapy
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Kubuś nie ma nic przeciwko q=>p, może sobie być !
… ale co to jest ?!
Matematyk ma do wyboru:
A.
q=>p jest dokładnie tym samym co podręcznikowa definicja implikacji prostej p=>q i to zdanie analizujemy przy pomocy tej definicji
B.
…..
Za cholerę nie mogę wpaść co napisać w B ?!
Proszę o odpowiedź matematyka co napisze w B jeśli wedle niego to nie jest A !
Zauważmy że matematyk ma do wyboru takie definicje:
p=>q - definicja implikacji prostej (tylko ta jest dobra)
p~>q - definicje implikacji odwrotnej (odpada)
p<=>q - równoważność (odpada)
p=>q - implikacja fałszywa, odpada bo P=>4L jest implikacją prawdziwą
10.1 Rozwiązanie kwadratury koła
Matematyka operuje na zapisie ogólnym, nie na przykładach.
Zapis q=>p oznacza oczywiście implikacje odwrotną do p=>q.
Jeśli p=>q jest implikacją prostą prawdziwą to implikacja q=>p jest zawsze fałszywa.
Oczywiście:
p=>q # q=>p
Identycznie jest w implikacji odwrotnej …
Zapis q~>p oznacza w matematyce implikację odwrotną do p~>q.
Jeśli p~>q jest implikacją prawdziwą to implikacja q~>p jest zawsze fałszywa.
Oczywiście:
p~>q # q~>p
Z powyższego wynika, że kodowanie zdań prawdziwych w postaci q=>p lub q~>p jest czysto matematycznym błędem, bo w zapisach ogólnych zdania te są zawsze fałszywe co pokazano wyżej … oczywiście przy prawdziwości odpowiednich p=>q i p~>q.
Wróćmy do cytowanego tekstu.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Kubuś:
p~>q - definicja implikacji odwrotnej
Matematyk:
p~>q - definicja implikacji odwrotnej
Zdanie odwrotne do powyższego:
P=>4L
Kubuś:
p=>q - definicja implikacji prostej
Matematyk:
q=>p ???!!!
Nie !!!
Tylko i wyłącznie p=>q jak u Kubusia … bo dla przypadku gdy punktem odniesienia będzie zdanie p~>q jak wyżej to implikacja q=>p jest prawdziwa i matematycznie zachodzi:
q=>p = p=>q
co rozwala cała matematykę w zakresie implikacji !
Oczywiście w języku potocznym możemy powiedzieć:
Implikacja odwrotną do p=>q jest implikacja q~>p = p~>q
Implikacją odwrotna do p~>q jest implikacja q=>p = p=>q
Wszystkie powyższe zdania są oczywiście prawdziwe, zaś znaczenie implikacji odwrotnej jest tu inne niż w klasycznej matematyce gdzie zachodzi:
p=>q # q=>p
p~>q # q~>p
10.2 Jednoznaczność zapisu ogólnego w implikacji
Dzisiejszy zapis ogólny implikacji nie jest jednoznaczny, bowiem q=>p może być różnie rozumiane czyli raz będzie q=>p=0, zaś innym razem q=>p=1.
p=>q # q=>p - to potrafi udowodnić każdy.
Po obu stronach jest identyczny operator zatem jeśli p=>q jest prawdą to q=>p musi być fałszem bo to algebra Boole’a przecież.
Czyli:
Jeśli p=>q=1 to q=>p=0 !!!
Przykład dla powyższego:
A.
Jeśli liczba jest podzielna przez 8 to na pewno => jest podzielna przez 2
P8=>P2 =1
p=>q =1
B.
Jeśli liczba jest podzielna przez 2 to na pewno => jest podzielna przez 8
P2=>P8 =0 bo 2,4,6 …
q=>p=0
Wypowiedzmy teraz taką implikację odwrotna prawdziwą:
C.
Jeśli liczba jest podzielna przez 2 to może być podzielna przez 8
P2~>P8 =1 bp 8,16…
P2 jest konieczne dla P8, zatem jest to implikacja odwrotna prawdziwa
p~>q =1
Implikacja odwrotna do p~>q (P2~>P8) będzie fałszywa jeśli rozumiemy ją jako q~>p=0, albo prawdziwa jeśli rozumiemy ją jako q=>p=1, bowiem jeśli w stronę p~>q zachodzi warunek konieczny jak wyżej, to w stronę q=>p musi zachodzić warunek wystarczający czyli:
Jeśli p~>q = 1 to q=>p =1 !!!
D.
Jeśli liczba jest podzielna przez 8 to na pewno => jest podzielna przez 2
P8=>P2 =1
q=>p =1 … jeśli za punkt odniesienia przyjmiemy p~>q (zdanie C) jak wyżej
Porównajmy teraz wytłuszczone równania ogólne wyżej, widać iż w zapisach ogólnych mamy sprzeczność, bo raz q=>p=0 zaś innym razem q=>p=1.
Jak sobie z tym poradzić ?
Zauważmy że zdania A i D są identyczne, dla tego przypadku zachodzi zatem:
p=>q (A) = q=>p(D)
Twierdzenia Kubusia - o jednoznaczności zapisu ogólnego w implikacji:
Jeśli implikacja prosta => jest prawdziwa, to jedynym poprawnym zapisem ogólnym takiej implikacji jest zapis p=>q zgodny z definicją implikacji prostej p=>q.
Jeśli implikacja odwrotna ~> jest prawdziwa, to jedynym poprawnym zapisem ogólnym takiej implikacji jest zapis p~>q zgodny z definicją implikacji odwrotnej p~>q.
… i po bólu, czyli mamy zapisy ogólne w 100% jednoznaczne !!!
Z powyższego wynika, iż nie wolno stosować zapisu q=>p w odniesieniu do implikacji prostej => prawdziwej, tu musimy zastosować równoważny zapis p=>q.
Identycznie w implikacji odwrotnej nie wolno stosować zapisu ogólnego q~>p w odniesieniu do implikacji odwrotnej ~> prawdziwej, tu musimy użyć zapisu równoważnego p~>q.
Wniosek z twierdzenia o jednoznaczności zapisu ogólnego w implikacji.
q=>p =0
q~>p =0
Powyższe zapisy są oczywistym fałszem w całej algebrze Kubusia.
Algebra Kubusia to algebra Boole'a z włączonymi do definicji tej algebry definicjami implikacji prostej => i odwrotnej ~> jak wyżej.
Nadmierna precyzja = chaos
Zginąć można zarówno w chaosie jak i nadmiernej precyzyjności
Kubuś
"Wszyscy myślą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi.", "Wyobraźnia jest ważniejsza od wiedzy"
Albert Einstein
2009-05-15 Koniec
Ostatnio zmieniony przez rafal3006 dnia Nie 12:50, 09 Sie 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 13:19, 10 Maj 2009 Temat postu: |
|
|
rezerwa 4
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 12:51, 09 Sie 2009 Temat postu: |
|
|
DODATEK
Wnioski końcowe z ciekawej dyskusji na ateiście.pl są tu:
http://www.sfinia.fora.pl/metodologia,12/dyskusja-ze-zbanowanym-uczy-i-nobody-na-ateiscie-pl,4156-20.html#84855
Fizyk:
Twierdzenie Pitagorasa jest twierdzeniem czyli ani to implikacja, ani równoważność …
Uczy:
Twierdzenie Pitagorasa jest implikacją
Kubuś:
Twierdzenie Pitagorasa jest równoważnością
Oczywiście wyłącznie jeden ma tu rację, twierdzę że Kubuś, pozostali są w błędzie.
Humor 1000-lecia, czyli twierdzenie Pitagorasa wypowiedziane w postaci równoważności
Cytat z:
[link widoczny dla zalogowanych]
NoBody napisał: | precyzyjnie
dla każdego x,a,b,c jeżeli x jest trójkątem prostokątnym i a jest przyprostokątną x'a i b jest przyprostokątną x'a różną od a i c jest przeciwprostokątną x'a to suma kwadratów długości a i długości b jest równa kwadratowi długości c i dla każdego a,b,c jeżeli suma kwadratów długości a i długości b jest równa kwadratowi długości c to istnieje trójkąt x o bokach a,b,c i x jest trójkątem prostokątnym i a jest przyprostokątną x'a i b jest przyprostokątną x'a różną od a i c jest przeciwprostokątną x'a, wtedy i tylko wtedy gdy, dla każdego x,a,b,c , x jest trójkątem prostokątnym wtedy i tylko wtedy gdy a jest przyprostokątną x'a i b jest przyprostokątną x'a różną od a i c jest przeciwprostokątną x'a i suma kwadratów długości a i długości b jest równą kwadratowi długości c
|
Twierdzenie Pitagorasa jest w szkole podstawowej, proponuję zatem powyższe umieścić w odpowiednim podręczniku, nie możemy przecież kształcić naszych dzieci na debili …
Definicja równoważności:
p<=>q = (p=>q)*(q=>p)
Wyłącznie w równoważności zachodzi warunek wystarczający w dwie strony i wtedy na mocy definicji jest to równoważność:
p<=>q = (p=>q)*(q=>p) =1*1 =1
Jeżeli zdanie jest impliakcja prostą p=>q to implikacja q=>p będzie zawsze fałszem, nie da się z implikacji zrobić równoważności bo:
p<=>q = (p=>q)*(q=>p) = 1*0 =0
Wniosek:
Twierdzenie Pitagorasa to równoważność ponieważ zachodzi warunek wystarczający zarówno w sptronę p=>q jak i q=>p:
p<=>q = (p=>q)*(q=>p) = 1*1=1
CND
… a tu niewątpliwie na Ziemię zstąpił Bóg i zamienił wodę w wino.
NoBody napisał: |
rafal3006 napisał: |
Czyli istnieje sposób na zrobienie z dwóch implikacji p=>q i q=>p równoważności ?
|
tak "p wtedy i tylko wtedy gdy q" i mamy równoważność
rafal3006 napisał: |
Wystarczy wypowiedzieć TP=>SK i SK=>TP i mamy równoważność (oczywiście w pełnej formie i superprecyzyjnie jak to wyżej zrobiłeś)
Zgadza się ?
|
tak, dokładnie tak jak wcześniej to zrobiłem ... |
Stwierdzam NoBody że jesteś Bogiem, właśnie zamieniłeś wodę w wino czyli z implikacji zrobiłeś równoważność.
… no i kwiatek do kożucha:
Fizyk napisał: |
Twierdzenie Pitagorasa jako twierdzenie nie jest więc ani implikacją, ani równoważnością, bo nie jest operatorem logicznym, tylko twierdzeniem Robi jednak użytek z operatora implikacji w postaci "Dla każdego trójkąta (znowu kwantyfikator!) zachodzi TP=>SK".
Jak się zastanowić, to trzeba się trochę pomęczyć, żeby w tym twierdzeniu zastąpić operator implikacji operatorem równoważności. Czemu? Ano dlatego, że następnik mówi o przyprostokątnych i przeciwprostokątnej, a te pojęcia są niezdefiniowane, dopóki nie mamy do czynienia z trójkątem prostokątnym. Jeśli jednak założymy, że mamy do czynienia z TP, to otrzymujemy masło maślane w postaci "jeśli trójkąt jest prostokątny, to jest prostokątny". Dlatego w zasadzie nie jest tak łatwo skleić twierdzenie Pitagorasa z twierdzeniem odwrotnym.
|
Za wytłuszczone - złota czcionka !
NoBody napisał: |
a i jeszcze jedno, Fizyk ma rację ...
|
Taaa… na pewno ma rację, tyle że w świecie świrów.
P.S.
Twierdzenie Pitagorasa to oczywista równoważność, tak było od wieki wieków i na wieki wieków pozostanie.
rafal3006 napisał: |
Weźmy teraz twierdzenie Pitagorasa
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
TP<=>SK
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)
gdzie:
* - spójnik AND(*)
=> - operator implikacji prostej, spójnik „musi” ze stwierdzonym warunkiem wystarczającym
Przekładając to na nasz przykład mamy:
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1=1
Weźmy teraz zdania składowe powyższej równoważności:
TP=>SK
TP wystarcza, aby spełnione było SK, czyli zachodzi warunek wystarczający
~TP=>~SK
~TP wystarcza aby zachodziło ~SK, czyli warunek wystarczający również tu zachodzi
Zatem twierdzenie Pitagorasa to absolutna równoważność, nigdy implikacja.
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1=1
CND
|
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 12:53, 09 Sie 2009 Temat postu: |
|
|
Beta 6.0
Wszystko co do tej pory Kubuś napisał w temacie implikacji blednie w obliczu tego podręcznika, napisanego przy założeniu, że matematyczna wiedza startowa czytelnika jest na poziomie 16-latka.
Kubuś, Gdynia ME’2009-07-15
Narzędzia, których próbujemy używać, język lub notacja których używamy do wyrażenia lub rejestrowania naszych myśli, są głównymi czynnikami określającymi to, co w ogóle możemy myśleć lub wyrazić.
E.W. Dijkstra, pionier informatyki
Algebra Kubusia
Matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
Ciekawe artykuły na temat „Algebry Kubusia”:
Komentarz do wstępu „Algebry Kubusia”
Nadmierna precyzja
Współczesna logika vs Algebra kubusia
Fundamentalny błąd współczesnej logiki
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Fizyk (ateista.pl), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), NoBody (ateista.pl), Rafał3006 (sfinia), Rogal (matematyka.pl), Uczy (wolny), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za decydującą o wszystkim dyskusję
Spotkało się jedenstu odpowiednich ludzi w odpowiednim miejscu i czasie, gdyby zabrakło któregokolwiek ogniwa ta teoria nie mogłaby zaistnieć.
… wszystko, co chcecie, żeby ludzie wam czynili, wy też im podobnie czyńcie …
Ewangelia Mateusza 7:12
To jest podręcznik, przy pomocy którego chciałbym poznać fundamenty logiki człowieka, gdybym miał znowu 16 lat
Kubuś
Spis treści:
1.0 Notacja
1.2 Algebra Kubusia
1.3 Definicja algebry Kubusia
1.4 O co chodzi w implikacji
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
2.1 Podstawowe pojęcia i definicje
2.2 Funkcja logiczna jednej zmiennej
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
2.5 Logika ujemna
2.6 Definicja sumy logicznej
2.7 Prawo Prosiaczka
2.8 Definicja iloczynu logicznego
2.9 Dowody zero-jedynkowe w algebrze Boole’a
2.10 Logika dodatnia i ujemna w bramkach logicznych
2.11 Operatory OR i AND w logice człowieka
3.0 Zero-jedynkowa algebra Boole’a
3.1 Prawa wynikające z definicji iloczynu logicznego
3.2 Prawa wynikające z definicji sumy logicznej
3.3 Najważniejsze prawa algebry Boole’a
3.4 Operatory dodatnie i operatory ujemne
Część II Implikacja
4.0 Kubuś na tropie implikacji odwrotnej
4.1 Implikacja odwrotna
4.2 Operatorowa definicja implikacji odwrotnej
4.3 Zero-jedynkowa definicja implikacji odwrotnej
4.4 Gwarancja matematyczna w implikacji odwrotnej
5.0 Kubuś na tropie implikacji prostej
5.1 Operatorowa definicja implikacji prostej
5.2 Zero-jedynkowa definicja implikacji prostej
5.3 Gwarancja w implikacji prostej
6.0 Fundamenty algebry Boole’a
6.1 Iloczyn kartezjański i pojęcie funkcji
6.2 Funkcja iloczynu algebraicznego
6.3 Funkcja iloczynu logicznego AND(*)
6.4 Algebra Boole’a i prawo przemienności
6.5 Prawa Kubusia
6.6 Prawo Kłapouchego
6.7 Implikacja w bramkach logicznych
6.8 Kwadrat logiczny implikacji
6.9 Równoważność
6.10 Kwadrat logiczny równoważności
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
7.1 Prawo Tygryska
8.0 Obietnice i groźby
8.1 Obietnice
8.2 Groźby
8.3 „Równoważność” w obietnicach i groźbach
9.0 Geneza klęski dzisiejszej logiki w obszarze implikacji
9.1 Kwantyfikatory w implikacji są nieporozumieniem
10.0 Podsumowanie
10.1 Geneza zero-jedynkowych tabel operatorów logicznych
Wstęp.
Trzy lata temu, całkiem przypadkiem, Kubuś dowiedział się iż w dzisiejszej logice obowiązuje hasło „Logika człowieka nie istnieje”, czyli nie jest znana implikacja którą posługuje się człowiek. Ktoś nawet powiedział, że logika człowieka nie jest podobna do jakiejkolwiek sensownej, czyli zapewne znanej człowiekowi logiki.
Kubuś to przybysz ze świata techniki dobrze znający techniczną algebrę Boole’a której fundamentem są operatory AND(*) i OR(+). Zaskoczył go fakt, że dzisiejsza logika (KRZ) to rachunek zero-jedynkowy, że cała współczesna algebra Boole’a to mielenie bezsensownych zer i jedynek. W technicznej algebrze Boole’a myślimy naturalną logiką człowieka zapisując symbolicznie to co chcemy uzyskać. Na tym najważniejszym etapie projektowania (poziom algorytmu) zera i jedynki kompletnie nas nie interesują, wszystko zapisujemy w symbolicznych równaniach algebry Boole’a.
Matematycznie istnieją dwie zero-jedynkowe definicje implikacji znane człowiekowi od ponad stu lat, implikacja prosta => i implikacją odwrotna ~>. Definicje implikacji to w jednej połówce pewne wynikanie matematyczne (gwarancja matematyczna), natomiast w drugiej połowie to najzwyklejsze rzucanie monetą, czyli przypadek (pkt.6.6). Z tego powodu implikacja jest bezsensem w świecie techniki. Implikacja opisuje między innymi „wolną wolę” świata martwego i żywego. Oczywiście żaden projektant nie życzy sobie, aby zaprojektowane przez niego urządzenie wykazywało jakiekolwiek oznaki wolnej woli.
Człowiek poszukuje matematycznej wersji implikacji którą posługuje się w naturalnym języku mówionym od 2500 lat, jak do tej pory bezskutecznie. Po trzech latach walki z implikacją Kubuś i przyjaciele wreszcie to wszystko rozszyfrowali.
Łatwo sformułować warunki które musi spełniać poprawna matematycznie teoria języka mówionego.
1.
Teoria musi być niezależna od jakiegokolwiek języka świata
2.
Teoria musi być matematycznie jednoznaczna
3.
Teoria musi opisywać naturalny język mówiony, którym posługują się dzieci w przedszkolu
Symboliczna algebra Kubusia bez problemu spełnia wszystkie trzy warunki.
Algebra Kubusia to algebra Boole’a z dołączonymi do definicji tej algebry poprawnymi definicjami implikacji prostej => i odwrotnej ~>. Algebra Kubusia jest algebrą symboliczną (język asemblera) mającą 100% przełożenie na kod maszynowy, czyli zera i jedynki, co pokażemy za chwilę.
Nowe, nieznane człowiekowi definicje implikacji prostej => i odwrotnej ~> (oczywiście chodzi tu o interpretacje tabel zero-jedynkowych) plus prawa Kubusia działają doskonale w matematyce, przyrodzie martwej i żywej, groźbach i obietnicach oraz opisują takie pojęcia jak „wolna wola” czy „dobro-zło”.
Najśmieszniejszy w całej tej historii jest fakt, że człowiek nie musi się uczyć matematycznej wersji swojej logiki, po prostu ma ją wyssaną z mlekiem matki, wystarczy że będzie logicznie myślał i zapisywał swoje myśli w postaci równań algebry Kubusia w przełożeniu 1/1.
KRZ - Klasyczny Rachunek Zdań, dział logiki, w zakresie implikacji oparty na definicji implikacji materialnej. Fundamentem KRZ jest rachunek zero-jedynkowy.
Uwaga:
W tej publikacji używając terminu „dzisiejsza logika” będziemy mieli na myśli KRZ
Zobacz też:
Komentarz do wstępu „Algebry Kubusia”
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
Symboliczna algebra Kubusia:
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
Rachunek zero-jedynkowy:
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków (warunek wystarczający =>)
Miękka prawda/fałsz - może zajść, ale nie musi (warunek konieczny ~>)
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Funkcja logiczna:
Funkcja logiczna Y to funkcja n-zmiennych binarnych połączonych operatorami AND(*) lub OR(+):
Y = A+(B*C) ….
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Warunki wystarczający w implikacji prostej => i konieczny w implikacji odwrotnej ~> wynikają bezpośrednio z dziewiczych definicji zero-jedynkowych tych implikacji.
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Najważniejsze prawa algebry Kubusia.
Prawa Kubusia - fundament logiki człowieka:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
Prawami Kubusia każdy człowiek posługuje się milion razy na dobę.
Najważniejsze prawa algebry Boole’a.
Prawa de’Morgana - fundament działania komputerów:
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
W naturalnej logice praw de’Morgana człowiek praktycznie nie używa, zamiast nich doskonale posługuje się logiką dodatnią i ujemną.
Prawo Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności) to wyrocznia rozstrzygająca czy zdanie „Jeśli…to…” jest implikacją.
Kodowanie zdań ze spójnikiem „Jeśli…to…”
Implikacja prosta:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
p musi być wystarczające dla q
Stwierdzenie warunku wystarczającego w p=>q determinuje zdanie prawdziwe które może być:
1.
Implikacją prostą p=>q jeśli po stronie ~p stwierdzimy warunek konieczny czyli:
~p~>~q
Czasami prościej jest wykluczyć warunek wystarczający w stronę ~p=>~q, to wystarczy aby udowodnić że zdanie p=>q jest implikacją prostą.
2.
Równoważnością p<=>q, gdy po stronie ~p również stwierdzimy warunek wystarczający czyli
~p=>~q.
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)=1*1=1
3.
Jeśli zdanie jest implikacją prostą to w stronę p=>q zachodzi warunek wystarczający, natomiast w stronę q~>p musi zachodzić warunek konieczny. Jeśli w stronę q=>p stwierdzimy warunek wystarczający to zdanie jest na pewno równoważnością, nigdy implikacją.
Definicja równoważna równoważności:
p<=>q = (p=>q)*(q=>p) = 1*1=1
Stąd mamy kolejną możliwość stwierdzenia czy zdanie jest implikacją. Po stwierdzeniu warunku wystarczającego w stronę p=>q wystarczy wykluczyć warunek wystarczający w stronę q=>p.
Implikacja odwrotna:
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
Stwierdzenie warunku koniecznego w p~>q determinuje implikację odwrotną:
p~>q
ale ….
Zdanie może być prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) i nie być implikacją odwrotną np.
Jeśli liczba jest podzielna przez 8 to może ~~> być podzielna przez 3
P8~~>P3 =1 bo 24
P8 nie jest konieczne dla P3 bo 3, nie jest to zatem implikacja odwrotna.
Koniec, to jest cała filozofia kodowania zdań ze spójnikiem „Jeśli…to…”
1.2 Algebra Kubusia
Punkty 1.2 i 1.3 na pewno nie będą zrozumiałe dla początkującego czytelnika. Nie należy się tym przejmować, można je nawet pominąć i wrócić do nich po przeczytaniu całości, bowiem właściwy elementarz zaczyna się od punktu 1.4. Algebra Kubusia to coś nowego w matematyce i jej definicja dla zawodowców musi znaleźć się na początku.
Iloczyn kartezjański i pojęcie funkcji (pkt. 6.1) to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w operatorach AND(*), OR(+), równoważności <=> i XOR oraz brak przemienności argumentów w operatorach implikacji prostej => i implikacji odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacji przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z definicji tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
czyli:
p=>q # q~>p
p~>q # q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacji do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Ściśle rzecz biorąc w implikacji poprawne jest równanie (pkt. 9.0):
p~>q = p<=q = p+~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
Wynika z tego że:
~> = <= - jeśli wektor <= będzie czytany przeciwnie do strzałki jako spójnik „może” ze spełnionym warunkiem koniecznym
Wprowadzenie nowego symbolu implikacji odwrotnej ~> jest konieczne, aby uniknąć potwornego zamieszania i możliwych niejednoznaczności.
Oczywiście na mocy definicji:
p~>q = p<=q =p+~q # p=>q = ~p+q
gdzie:
~> = <= - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Równanie którym operuje dzisiejsza logika:
p~>q = p+~q = ~q+p = q=>p
czyli:
p~>q = q=>p
gdzie:
=> - operator implikacji prostej, spójnik „musi” między q i p ze spełnionym warunkiem wystarczającym
z którego wynika że implikacja odwrotna p~>q jest zbędna, poprawne jest tylko i wyłącznie w równoważności bo tu argumenty są przemienne, co przenosi się na przemienność argumentów w powyższej sumie logicznej (szczegóły pkt. 6.10)
Zauważmy coś fundamentalnie ważnego:
W operatorach AND(*) i OR(+) można się obejść bez jednego z tych operatorów na podstawie praw de’Morgana:
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Wydawać by się mogło, że na tej samej zasadzie zbędna jest implikacja odwrotna ~>, bo prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikacje prostą =>
Nic bardziej błędnego !
Prawa Kubusia działają bowiem w obrębie jednej i tej samej definicji zero-jedynkowej. Niemożliwe jest zatem istnienie implikacji prostej => bez implikacji odwrotnej ~> i odwrotnie - patrz prawo Kłapouchego pkt. 6.6.
1.3 Definicja algebry Kubusia
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
Zmienna binarna - zmienna przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Funkcja logiczna (Y) - to funkcja zmiennych binarnych połączonych operatorami logicznymi AND(*) lub OR(+) przyjmująca w osi czasu wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Przykładowa funkcja logiczna:
Y=A+(B*~C)
gdzie:
Y - funkcja logiczna (typowe oznaczenie rodem z teorii układów logicznych)
A,B,C … - zmienne binarne
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Lista legalnych operatorów logicznych w postaci zero-jedynkowej:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Za operatory dodatnie przyjęto te, które człowiek używa w naturalnym języku mówionym. Wyjątkiem jest tu operator XOR, w języku mówionym spójnik „albo”.
Operator ujemny to zanegowany operator dodatni, co doskonale widać w powyższej tabeli.
Operator dodatni to zanegowany operator ujemny, co również widać wyżej.
Kod: |
Definicje operatorów ujemnych:
pNORq = ~(p+q)
pNANDq = ~(p*q)
pXORq = ~(p<=>q)
pN(=>)q = ~(p=>q)
pN(~>)q = ~(p~>q)
pNOPq = ~(pFILLq)
pNPq = ~(pPq)
pNQq = ~(pQq)
|
W języku mówionym operatory ujemne nie są używane, ponieważ łatwo je zastąpić operatorami dodatnimi plus negacją co widać w powyższej tabeli.
1.4 O co chodzi w implikacji
Implikacja to zdanie złożone warunkowe typu „Jeśli…to…”
W dzisiejszej matematyce funkcjonuje taka definicja implikacji:
Jeśli p to q
gdzie:
p - poprzednik
q - następnik
Koniec, absolutne zero jakiegokolwiek komentarza czyli kompletnie nie wiadomo o co chodzi.
Matematycznie istnieją dwie różne tabele zero-jedynkowe implikacji.
p=>q - implikacja prosta
p~>q - implikacja odwrotna
Oczywiście dzisiejsza matematyka akceptuje fakt że:
p=>q # p~>q
Jednak z powodu fałszywej interpretacji zer i jedynek w definicjach implikacji wychodzi jej że implikacja odwrotna jest zbędna. Poprawne definicje implikacji prostej i odwrotnej są wyżej.
Ujmując rzecz całą ściśle matematycznie można udowodnić, że wszystkie operatory logiczne są zbędne za wyjątkiem jednego, NOR albo NAND … nie o to jednak chodzi.
Twierdzenie Kubusia:
W logice niezbędne są tylko i wyłącznie te operatory których człowiek używa w naturalnym języku mówionym czyli: AND(*), OR(+), implikacja prosta =>, implikacja odwrotna ~> plus negacja (~).
Powyższego zestawu operatorów nie należy ani skracać, ani też rozszerzać bo wyjdzie z tego logika-potworek nie mająca nic wspólnego z nieprawdopodobnie prostą i doskonałą, logiką człowieka.
Implikacja to przede wszystkim matematyczny opis przyszłości, dzięki niej człowiek z góry wie kiedy w przyszłości zostanie kłamcą a kiedy nie.
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Oczywiście jeśli zdam egzamin do mam gwarantowany komputer. Jeśli nie zdam to wszystko może się zdarzyć wedle „widzi mi się” czyli wolnej woli ojca … mamy rzucanie monetą.
Implikacja to również matematyczny opis przyszłości świata martwego.
Jeśli jutro będzie padać to na pewno będzie pochmurno
P=>CH
Jeśli będzie padać to na pewno będzie pochmurno. Jeśli nie będzie padać, to może być pochmurno lub nie być, wedle „wolnej woli” pogody, czyli rzucanie monetą.
Implikacja występuje również w przyrodzie i matematyce. Wszelkie twierdzenia matematyczne to równoważności, implikacja jest tu niezwykle rzadkim wyjątkiem.
Jeśli zwierzę jest psem to ma cztery łapy
Jeśli wylosowane w przyszłości zwierzę będzie psem to na pewno będzie mieć cztery łapy
P=>4L
Matematycznie to dwa równoważne zdania. Oczywiście wszystkie psy mają cztery łapy, ale jeśli wylosowane zwierzę nie będzie psem to może mieć cztery łapy (słoń) albo nie mieć czterech łap (mrówka), czyli rzucanie monetą.
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
Jeśli wylosowana w przyszłości liczba będzie podzielna przez 8 to będzie podzielna przez 2
P8=>P2
Matematycznie to dwa równoważne zdania. Oczywiście każda liczba podzielna przez 8 jest podzielna przez 2, ale jeśli wylosowana liczba nie będzie podzielna przez 8 to może być podzielna przez 2 (2,4,6..) albo nie (3,5,7…), czyli rzucanie monetą.
Jak widać wyżej każda implikacja prosta => jest w pierwszej części zdeterminowana, tu mamy pewność, ale w drugiej części definicji to najzwyklejsze rzucanie monetą.
W implikacji odwrotnej ~> mamy dokładnie odwrotnie. Tu w pierwszej części definicji mamy przypadek czyli rzucanie monetą zaś w drugiej części mamy pewność.
Jeśli zwierzę ma cztery łapy to może być psem
Jeśli wylosowane w przyszłości zwierzę będzie mieć cztery łapy to może być psem
4L~>P
Oba zdania są matematycznie równoważne. Ta implikacja jest prawdziwa bo spełnia definicję implikacji odwrotnej ~>. Jeśli zwierzę ma cztery łapy to może być psem albo nie być (np.słoń). W pierwszej części definicji implikacji odwrotnej mamy rzucanie monetą, ale w drugiej części mamy pewność, czyli jeśli zwierzę nie ma czterech łap to na pewno nie jest psem.
Matematycznie obie implikacje, prosta => i odwrotna ~> są równie cenne bowiem w obu występuje gwarancja matematyczna.
Zdanie bez żadnej gwarancji jest po prostu śmieciem np.
Jeśli księżyc świeci to pies ma cztery łapy
KS=>4L
Implikacja oczywiście fałszywa bo brak związku poprzednika z następnikiem, nie możemy tu mówić o jakiejkolwiek gwarancji. Świecenie księżyca nie gwarantuje czterech łap u psa … no, chyba że suczka zaszła w ciążę przy pełni księżyca i dlatego pies ma cztery łapy ?
Implikacja jest implikacją prawdziwą, jeśli spełnia odpowiednią definicję implikacji. W matematyce występują dwie definicje implikacji: implikacja prosta => oraz implikacja odwrotna ~>. Logika każdego człowieka to przechodzenie z jednej implikacji do drugiej milion razy na dobę zgodnie z prawami Kubusia.
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na prostą =>
Przyczyną klęski dzisiejszej logiki w poszukiwaniu logiki człowieka są fałszywe interpretacje zero-jedynkowych definicji implikacji prostej => i odwrotnej ~> uniemożliwiające stosowanie praw Kubusia.
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
Pewnego razu Kubuś, leżąc na polance w stumilowym lesie doznał olśnienia. A gdyby tak wyzerować sobie mózg, czyli założyć że moja matematyczna wiedza wstępna jest na poziomie ucznia I klasy LO który nie ma pojęcia o algebrze Boole’a i napisać podręcznik logiki dla samego siebie ?
Hmm… to całkiem niezły pomysł, pomyślał Kubuś.
Fundamentem dzisiejszej logiki (KRZ) jest rachunek zero-jedynkowy, będący przyczyną jej klęski w poszukiwaniu logiki człowieka. Po prostu praktycznie nie da się dojść od zer i jedynek do poziomu naturalnej logiki człowieka. Do problemu trzeba podejść dokładnie z drugiej strony, czyli myśleć logicznie jak dziecko w przedszkolu zapisując swoje myślenie w postaci równań algebry Boole’a.
2.1 Podstawowe pojęcia i definicje
Pewne jest, że algebrą Kubusia doskonale posługują się wszystkie dzieci w przedszkolu. Zacznijmy zatem myśleć logicznie jak 5-letnie dziecko i przelewajmy wszystko na papier. Oczywiście aby to robić musimy znać fundamentalne pojęcia i definicje z zakresu logiki. Aparatu matematycznego nie potrzebujemy w ogóle gdyż mamy go w głowie - to nasz mózg.
+ - suma logiczna, spójnik „lub” (OR) w naturalnym języku mówionym
* - iloczyn logiczny, spójnik „i” (AND) w naturalnym języku mówionym
~ - przeczenie „NIE”
K - kino
~K - nie kino
T - teatr
~T - nie teatr
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
~(…) - nieprawda że …, nie może się zdarzyć że …
Znaczenie symboli w logice:
K, T - zmienne binarne, mogące przyjmować w osi czasu wyłącznie wartości 0 albo 1
Y - funkcja logiczna zmiennych binarnych np.
Y = K+T
Y = Kino lub (+) Teatr
Definicja zmiennej binarnej:
Zmienna binarna to zmienna mogąca przyjmować w osi czasu wyłącznie wartości 0 albo 1
Definicja funkcji logicznej:
Funkcja logiczna to funkcja zmiennych binarnych połączonych operatorami OR(+) lub AND(*) przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Prawo podwójnego przeczenia:
Y=~(~Y)
prawda = nieprawda, że nieprawda
Dowód na przykładzie:
U= jestem uczciwy
~U = jestem nieuczciwy
U=~(~U)
Nieprawdą jest, że jestem nieuczciwy
czyli:
Jestem uczciwy = Nieprawdą jest że jestem nieuczciwy
W dzisiejszej logice (KRZ), której fundamentem jest rachunek zero-jedynkowy, zwyczajowo przyjmuje się logikę dodatnią gdzie:
1 = prawda, dotrzymam słowa
0 = fałsz, skłamię
… i niech tak zostanie, choć oczywiście możliwy jest standard przeciwny, czyli logika ujemna w stosunku do przyjętego standardu.
Poprawna logika nie powinna zależeć od przyjętego standardu jak wyżej. Każdy człowiek, od przedszkolaka po profesora doskonale posługuje się algebrą Kubusia na poziomie symbolicznym. Absolutnie nikt nie myśli logicznie przy pomocy zer i jedynek poza dinozaurami logiki, fanatykami rachunku zero-jedynkowego.
Identycznie jest w technice mikroprocesorowej. Człowiek myślał tu w kodzie maszynowym czyli zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wymyślił symboliczny język asemblera mający bezpośrednie przełożenie na kod maszynowy programu … czyli skopiował działanie własnego mózgu.
Z punktu odniesienia mikroprocesora mamy świat w 100% binarny czyli mikroprocesor zna wyłącznie zera i jedynki. Z punktu odniesienia człowieka mamy zupełnie inną rzeczywistość. Wszyscy wiemy, że komputery potrafią liczyć, rysować, malować, sterować fabryką bez ludzi itd.
Jak zatem działa program napisany przez człowieka w symbolicznym języku asemblera skoro mikroprocesory znają wyłącznie dwie cyferki 0 i 1 ?
Oczywiście konieczny jest tu translator języka symbolicznego na kod maszynowy programu czyli na zera i jedynki. Translator to również napisany przez człowieka program komputerowy, nic więcej.
Fundamentalnym językiem symbolicznym każdego mikroprocesora jest język asemblera, to fundament wszelkich innych języków wysokiego poziomu. Język asemblera jest jeden (to algebra Boole’a), natomiast języków wysokiego poziomu może być nieskończenie wiele.
Zacznijmy teraz myśleć logicznie jak 5-cio letnie dziecko zapisując wszystko w równaniach algebry Boole’a.
2.2 Funkcja logiczna jednej zmiennej
Jutro idę do kina
Y=K
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina (K)
Y=K
Kiedy zostanę kłamcą ?
Skłamię (~Y), jeśli jutro nie pójdę do kina
~Y = ~K
Zauważmy, że po prostu zanegowaliśmy dwustronnie równanie Y=K
Inne zdanie:
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
Jutro pójdę do kina lub do teatru
Y=K+T
czyli matematycznie:
Dotrzymam słowa (Y), jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Oczywiście zatrudniliśmy tu aparat matematyczny wbudowany w mózg każdego człowieka.
… czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru
Y=~(~K*~T)
Ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
A: Y=K+T
B: ~Y=~K*~T
C: Y=~(~Y) - prawo podwójnego przeczenia
Stąd po podstawieniu A i B do C mamy prawo de’Morgana:
K+T = ~(~K*~T) - prawo zamiany operatora OR(+) na AND(*)
Czyli zdanie równoważne do Y będzie brzmiało:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
~(~K*~T) = K+T
Ostatnie zdanie używane jest niezwykle rzadko. Nasz mózg optymalizuje odpowiedzi, czyli jeśli to samo można wyrazić prościej to preferuje tą odpowiedź (tu K+T)
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
Jutro pójdę do kina i do teatru
Y=K*T
czyli matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y = ~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru.
Y=~(~K+~T)
Oczywiście ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
Mamy wyżej:
A: Y=K*T
B: ~Y=~K+~T
Prawo podwójnego przeczenia:
C: Y=~(~Y)
Podstawiając A i B do C mamy prawo de’Morgana:
K*T = ~(~K+~T) - prawo zamiany operatora AND(*) na OR(+)
2.5 Logika ujemna
Popatrzmy jeszcze raz na matematykę, którą posługuje się każdy przedszkolak.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Koniec !
To jest cała matematyka, którą każdy człowiek od przedszkolaka po profesora używa milion razy na dobę. Jak widać mózg przedszkolaka na pytanie „Kiedy skłamię ?” odpowiada w logice ujemnej.
Definicja logiki ujemnej:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
Nietrudno zauważyć, jak mózg dziecka przechodzi z logiki dodatniej (Y) do logiki ujemnej (~Y), po prostu neguje wszystkie zmienne i wymienia operator na przeciwny. Nietrudno też się domyśleć, że to jest poprawny sposób przejścia do logiki ujemnej dla dowolnie długiej funkcji logicznej.
Metoda przedszkolaka:
Przejście z logiki dodatniej (Y)do ujemnej (~Y) lub odwrotnie uzyskujemy negując wszystkie zmienne i wymieniając operatory na przeciwne.
Przykład:
A: Y=A+(~B*C)
Przejście do logiki ujemnej poprzez negację zmiennych i wymianę operatorów na przeciwne:
B: ~Y = ~A*(B+~C)
Oczywiście zachodzi:
C: Y=~(~Y) - prawo podwójnego przeczenia
Podstawiając A i B do C mamy prawo de’Morgana.
A+(~B*C) = ~[~A*(B+~C)]
Łatwo zauważyć, że z prawa de’Morgana mózg dziecka praktycznie nigdy nie korzysta … no, chyba że w fazie poznawania języka, kiedy to dwulatek zadaje wszelkie możliwe pytania.
Popatrzmy na to jeszcze raz, delektując się genialną matematyką która posługuje się każde dziecko.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Już dziecko pięcioletnie nie będzie zadawało więcej pytań bo wszystko jest jasne, dwulatek może jednak kontynuować.
… a czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Ostatnie zdanie w dialogu:
~Y=~K*~T
Negujemy dwustronnie i mamy odpowiedź na temat, czyli zgodną z zadanym pytaniem.
Y=~(~K*~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
Na powyższe pytanie można odpowiedzieć inaczej:
Jutro na pewno pójdę do kina lub do teatru
Y=K+T
Jednak nie będzie to ścisła odpowiedź na zadane pytanie, dlatego mało kto tak odpowie.
2.6 Definicja sumy logicznej
Powyżej użyliśmy niezawodnego aparatu matematycznego, mózgu 5-cio latka, do rozszyfrowania operatorów OR(+) i AND(*). Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych. Powszechnie przyjętym zwyczajem jest, że zmienne formalne w algebrze Boole’a oznaczamy literkami p i q. Dla konkretnego przypadku pod zmienne formalne p i q podstawiamy zmienne aktualne.
Y=p+q - formalny zapis sumy logicznej
Jutro pójdę do kina lub do teatru.
Y=K+T - aktualny zapis sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
Y = A1+A2+… An =0 <=> A1=0, A2=0 …An=0
Definicja równoważna:
Suma logiczna n-zmiennych binarnych jest równa jeden gdy którakolwiek ze zmiennych jest równa jeden.
Zajrzyjmy ponownie do przedszkola ….
Pani do dzieci w przedszkolu:
Słuchajcie dzieci, obiecuję wam że jutro pójdziemy do kina lub do teatru
Y=K+T
Które z was powie mi kiedy dotrzymam słowa ?
Odpowiedzi 5-cio letniego Jasia zapiszemy w formie tabeli:
K*T = Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i do teatru
K*~T =Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i nie pójdziemy do teatru
~K*T =Y - dotrzymam słowa (Y) jeśli nie pójdziemy do kina i pójdziemy do teatru
Oczywiście wyłącznie jeden z powyższych przypadków może jutro wystąpić, czyli używamy definicji sumy logicznej aby z powyższego wygenerować równanie algebry Boole’a.
Y=K*T + K*~T + ~K*T
Pani dotrzyma słowa wtedy i tylko wtedy gdy wystąpi którykolwiek z powyższych przypadków.
Bardzo dobrze Jasiu, a teraz które z was powie kiedy skłamię ?
Zuzia:
Pani skłamie (~Y) jeśli jutro nie pójdziemy do kina i nie pójdziemy do teatru
~K*~T =~Y
Zauważmy, że wyżej mamy zapisane wszystkie przypadki dla zmiennych K i T jakie w przyszłości mogą wystąpić. Możemy to nazwać „matrycą przyszłości”, nic poza tą matrycą nie ma prawa się wydarzyć.
Zapiszmy to wszystko razem w formie tabeli:
Kod: |
K T = Y
K ~T = Y
~K T = Y
~K ~T =~Y
|
Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych.
Przyjmijmy zatem:
p=K i q=T
i przepiszmy powyższą tabelkę.
Kod: |
p q = Y=p+q
p q = Y
p ~q = Y
~p q = Y
~p ~q =~Y
|
Zauważmy, że do tej pory analizujemy sobie poczynania mózgu 5-cio latka w postaci symbolicznej. Nadszedł czas, aby z powyższego zapisu symbolicznego wygenerować kod maszynowy czyli definicje zero-jedynkową sumy logicznej.
Przyjmujemy logikę dodatnią:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
i mamy to co fanatycy zer i jedynek lubią najbardziej.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Zauważmy, że w powyższej tabeli mamy pełną zgodność z definicją logiki dodatniej i ujemnej. W logice dodatniej (Y=1) mamy odpowiedź na pytanie kiedy wystąpi prawda, zaś w logice ujemnej (~Y=1) mamy odpowiedź na pytanie kiedy wystąpi fałsz.
W tabeli widać też znaczenie kolumny wynikowej w logice dodatniej (Y):
Y=1 - dotrzymam słowa
Y=0 - skłamię
Znaczenie kolumny wynikowej w logice ujemnej (~Y):
~Y=0 - dotrzymam słowa
~Y=1 - skłamię
Matematycznie wszystko musi się zgadzać czyli:
Y=~(~Y) =1 - dotrzymam słowa w logice dodatniej
Y=~(~Y)=0 - skłamię w logice dodatniej
Oczywiście matematycznie zachodzi:
Y=~(~Y) - prawo podwójnego przeczenia
oraz:
Y#~Y
czyli jedynka w logice dodatniej (Y) to zupełnie co innego niż jedynka w logice ujemnej (~Y).
Oczywiście wszystko musi się tu zgadzać czyli:
Y=~(~Y)=Y - oczywistość w powyższej tabeli
oraz:
~Y=1 czyli Y=0 - sprowadzenie fałszu w logice ujemnej (~Y=1) do fałszu w logice dodatniej (Y=0).
2.7 Prawo Prosiaczka
Prawo Prosiaczka mówi o sposobie przejścia z tabeli zero-jedynkowej n-elementowej do równania algebry Boole’a opisującego tą tabelę.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Kubuś, nauczyciel logiki w I klasie LO w stumilowym lesie:
Kto potrafi z powyższej tabeli zero-jedynkowej wygenerować równanie algebry Boole’a ?
Wszystkie ręce w górze, do tablicy podchodzi Jaś:
W ostatniej linii w wyniku mamy samotne zero, zatem dla tej linii możemy zapisać najprostsze równanie.
Z tabeli widzimy że:
A.
Y=0 <=> p=0 i q=0
Przejście z takiego zapisu do równań algebry Boole’a jest banalne. Należy skorzystać z definicji iloczynu logicznego sprowadzając wszystkie zmienne do jedynki albo z definicji sumy logicznej sprowadzając wszystkie zmienne do zera.
Sposób I.
Sprowadzam wszystkie zmienne do jedynki:
B.
Y=0 czyli ~Y=1
p=0 czyli ~p=1
q=0 czyli ~q=1
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Korzystając z A i B na podstawie tej definicji mamy:
~Y = ~p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując wszystkie zmienne i wymieniając operator AND(*) na OR(+):
Y = p+q
Sposób II
Sprowadzamy wszystkie zmienne do zera i stosujemy definicję sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
W równaniu A wszystkie zmienne są równe zeru, zatem tu nic nie musimy robić, od razu mamy równanie algebry Boole’a dla powyższej tabeli zero-jedynkowej.
Y=p+q
Kubuś:
Jasiu, zapisałeś równanie algebry Boole’a wyłącznie dla ostatniej linii, skąd wiesz jakie będą wartości logiczne w pozostałych liniach, nie opisanych tym równaniem ?
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
2.8 Definicja iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Y=A1*A2* … *An =1 <=> A1=1, A2=1 … An=1
Definicja równoważna:
Iloczyn logiczny jest równy zeru jeśli którakolwiek zmienna jest równa zeru.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej metodą przedszkolaka, negujemy zmienne i wymieniamy operator.
Skłamię (~Y) jeśli jutro nie pójdę do kina lub nie pójdę teatru
~Y=~K+~T
Oczywiście dotrzymam słowa wtedy i tylko wtedy gdy pójdę do kina i do teatru, w przeciwnym przypadku skłamię. Rozpiszmy szczegółowo te przypadki.
K*T=Y - dotrzymam słowa jeśli pójdę do kina i do teatru
W przeciwnym przypadku skłamię czyli uzupełniamy pozostałe możliwości:
K*~T=~Y - skłamię (~Y) jeśli pójdę do kina i nie pójdę do teatru
~K*~T=~Y - skłamię (~Y) jeśli nie pójdę do kina i nie pójdę do teatru
~K*T =~Y - skłamię (~Y) jeśli nie pójdę do kina i pójdę do teatru
Oczywiście skłamię jeśli wystąpi którykolwiek z powyższych przypadków czyli:
~Y = K*~T + ~K*~T + ~K*T
Na podstawie powyższego budujemy tabelę prawdy dla iloczyny logicznego
Kod: |
K T = Y=K*T
K ~T =~Y
~K ~T =~Y
~K T =~Y
|
Przechodzimy teraz na zapis symboliczny przy użyciu parametrów formalnych p i q podstawiając:
p=K, q=T
stąd mamy symboliczną definicje iloczynu logicznego:
Kod: |
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Zauważmy, że tu również uzyskaliśmy pełną definicję iloczynu logicznego na poziomie symbolicznym czyli absolutne zero styczności z kodem maszynowym, zerami i jedynkami.
Równania algebry Boole’a najłatwiej utworzyć korzystając z definicji symbolicznej.
Z pierwszej linii otrzymujemy najprostsze równanie:
A1: Y=p*q - dotrzymam słowa
Z kolejnych trzech linii mamy:
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
W sumie na podstawie powyższych równań możemy ułożyć aż osiem różnych zdań, cztery z nich (matematycznie równoważne) będą mówiły kiedy dotrzymam słowa (Y), zaś kolejne cztery (także równoważne) kiedy skłamię (~Y).
A1: Y=p*q - dotrzymam słowa
Dotrzymam słowa (Y), jeśli jutro pójdę do kina i do teatru
Y=K*T
Negujemy równania dwustronnie:
A2: ~Y=~(p*q) - skłamię
Skłamię (~Y), jeśli nie zdarzy się ~(…) że jutro pójdę do kina i do teatru
~Y=~(K*T)
Przechodzimy z równaniem A1 do logiki ujemnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne:
A3: ~Y=~p+~q - skłamię
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
Negujemy dwustronnie równanie A3:
A4: Y=~(~p+~q) - dotrzymam słowa
Dotrzymam słowa (Y), jeśli nie zdarzy się ~(…) że jutro nie pójdę do kina lub nie pójdę do teatru
Y=~(~K+~T)
To co wyżej to najczęstsze zdania w języku mówionym. Zdania serii B są zdecydowanie rzadsze bo bardziej złożone.
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
~Y=(K*~T)+(~K*~T)+(~K*T)
Skłamię (~Y), jeśli zdarzy się którykolwiek z powyższych przypadków.
Negujemy dwustronnie:
B2: Y=~[(p*~q) + (~p*~q) + (~p*q)] - dotrzymam słowa
Przechodzimy z równaniem B1 do logiki przeciwnej negując zmienne i wymieniając operatory na przeciwne:
B3: Y=(~p+q)*(p+q)*(p+~q) - dotrzymam słowa
Negujemy dwustronnie:
B4: ~Y=~[(~p+q)*(p+q)*(p+~q)] - skłamię
W sumie mamy fantastyczną właściwość języka mówionego czyli powiedzenie tego samego na wiele różnych sposobów. Zauważmy, że nigdzie wyżej nie mamy styczności z kodem maszynowym języka czyli idiotycznymi zerami i jedynkami. Taki związek oczywiście istnieje i jest łatwy do pokazania.
Przechodzimy do zero-jedynkowej definicji iloczynu logicznego w logice dodatniej przyjmując:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
Zero jedynkowa definicja iloczynu logicznego:
Kod: |
p q Y=p*q ~Y=~(p*q)
1 1 =1 0
1 0 =0 1
0 0 =0 1
0 1 =0 1
|
Tu również mamy doskonałą zgodność z definicją logiki dodatniej i ujemnej.
Dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy p*q czyli:
Y=p*q - dotrzymam słowa
Skłamię (~Y=1) gdy:
~Y=p*~q + ~p*~q + ~p*q - skłamię
Załóżmy teraz, że mamy wyłącznie tabelę zero-jedynkową jak wyżej. Jak dla takiej tabeli ułożyć równanie algebry Boole’a. Oczywiście najprostsze równanie uzyskamy z pierwszej linii bo mamy tu samotną jedynkę w wyniku. Na podstawie tej linii możemy ułożyć równanie na dwa sposoby.
Dla powyższej tabeli możemy zapisać:
A.
Y=1 <=> p=1 i q=1 - na podstawie pierwszej linii
Sposób I
Sprowadzamy wszystkie sygnały do jedynki i korzystamy z definicji iloczynu logicznego.
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden gdy wszystkie składniki iloczynu są równe jeden
Wszystkie sygnały w równaniu A są jedynkami zatem tylko je przepisujemy, nic nie musimy negować.
Y=p*q
Sposób II
Sprowadzamy wszystkie sygnały do zera i korzystamy z definicji sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru gdy wszystkie składniki sumy są równe zeru
Sprowadzamy sygnały A do zera:
Y=1 czyli ~Y=0
p=1 czyli ~p=0
q=1 czyli ~q=0
Stąd na podstawie definicji sumy logicznej mamy:
~Y = ~p+~q
Oczywiście przechodzimy do logiki dodatniej ponieważ człowiek używa logiki ujemnej wyłącznie w przeczeniach. Negujemy sygnały i wymieniamy operatory na przeciwne.
Y=p*q
Na zakończenie zabawy z operatorami typu AND(*) i OR(+) pokażemy dowód prawa de’Morgana metodą zero-jedynkową.
2.9 Dowody zero-jedynkowe w algebrze Boole’a
Dowody zero-jedynkowe w algebrze Boole’a są równoważne do odpowiednich dowodów w równaniach matematycznych które wykonywaliśmy do tej pory. Dowody te są zdecydowanie bardziej czasochłonne i w wielu przypadkach nie wiadomo o co chodzi np. zasługą dowodów zero-jedynkowych jest fakt, że człowiek do tej pory nie był w stanie zlokalizować implikacji którą się posługuje.
Prawo de’Morgana:
p*q=~(~p+~q)
Dowód zero-jedynkowy:
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Jak widać rozpatrujemy tu wszystkie możliwe przypadki dla zmiennych p i q. Równość kolumn trzeciej i ostatniej wskazuje na poprawność prawa de’Morgana. Kluczową różnicą tabeli wyżej w stosunku do identycznej tabeli znanej matematykom jest rozróżnianie logiki dodatniej (Y) od logiki ujemnej (~Y). Zdanie p*q w logice dodatniej (Y) to zupełnie co innego niże zdanie ~p+~q w logice ujemnej (~Y).
Zobaczmy po raz n-ty jak genialnie prosto przechodzi mózg przedszkolaka z logiki dodatniej do ujemnej.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
A: Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów na przeciwne:
~Y=~K+~T
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie:
B: Y=~(~K+~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru
~(~K+~T)
Z równań A i B mamy prawo de’Morgana:
K*T = ~(~K+~T)
Jak widzimy w języku mówionym każdy człowiek stosuje podświadomie prawa de’Morgana ….potrafi to robić nawet przedszkolak, naturalny ekspert algebry Kubusia.
Na zakończenie pokażemy dowód prawa de’Morgana w bramkach logicznych. Bramki logiczne to graficzna ilustracja skomplikowanych niekiedy przekształceń matematycznych. Dzięki nim łatwiej zorientować się „o co tu chodzi”.
2.10 Logika dodatnia i ujemna w bramkach logicznych
Podstawowe pojęcia w teorii układów logicznych.
Sygnał cyfrowy (zmienna binarna) to sygnał mogący przyjmować w osi czasu wyłącznie dwa stany 0 albo 1.
Wyjście cyfrowe (funkcja logiczna) to wyjście układu logicznego, dowolnie złożonego, zbudowanego z bramek logicznych typu OR(+) lub AND(*) oraz negatorów.
Bramki logiczne to domena elektroników logików. Już na pierwszym wykładzie z „Teorii układów logicznych” dowiadujemy się, że w dowolną linię układu logicznego zbudowanego na bramkach logicznych możemy wstawić dwa negatory (na schemacie kółka) i nic się nie zmieni zgodnie z prawem podwójnego przeczenia.
A=~(~A)
Kod: |
Negator i prawo podwójnego przeczenia
Y=A ~Y=~A Y=~(~A)=A
-----O-------------O---------
|
Na wejście negatora (na schematach kółko) podajemy sygnał A, na jego wyjściu otrzymujemy sygnał zanegowany ~A który podajemy na kolejny negator. Po drugim negatorze mamy oczywiście sygnał cyfrowy identyczny z A zgodnie z prawem podwójnego przeczenia.
Po drugim wykładzie wiemy już jak zastąpić bramkę OR(+) bramką AND(*) i odwrotnie. Tu korzystamy z praw de’Morgana.
p*q = ~(~p+~q) - prawo zamiany bramki AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany bramki OR(+) na AND(*)
Przy pomocy negatora możemy symbolicznie pokazać obsługę zdań prostych.
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Negujemy dwustronnie.
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
Kod: |
-------
| |
Y=~K ----------| ~ |O----------> ~Y=K
| |
-------
|
W technice cyfrowej symbolem negacji jest kółko, nie musimy rysować całego negatora jak wyżej. Ze schematu widać że, na wejście negatora podajemy sygnał (funkcję logiczną) Y=~K, zaś na wyjściu otrzymujemy sygnał zanegowany ~Y=K.
Oczywiście mamy:
Y#~Y
czyli sygnał na wejściu negatora to zupełnie co innego niż sygnał na jego wyjściu.
Łatwo się o tym przekonać biorąc do ręki rzeczywisty negator np. układ scalony 7404. Jeśli na wejście rzeczywistego negatora podamy cyfrowy sygnał zero-jedynkowy (zmienny w czasie) to na jego wyjściu otrzymamy lustrzane odbicie sygnału wejściowego, co łatwo można zaobserwować na oscyloskopie, przyrządzie służącym do wizualizacji przebiegów zmiennych.
Zwarcie kabelkiem wejścia negatora z wyjściem, czyli wymuszenie:
Y=~Y
grozi oczywiście wybuchem czyli dużo dymu i smrodu.
Podstawowe schematy elektroniczne bramek OR(+) i AND(*) są następujące.
Kod: |
Bramka OR i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| OR | | AND |
------- -------
| O
| |
Y=p+q = Y=~(~p*~q)
|
Z powyższego wynika, że bramkę OR możemy zastąpić bramką AND plus trzema negatorami wstawionymi w linie wejściowe p i q oraz linię wyjściową Y.
Kod: |
Bramka AND i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| AND | | OR |
------- -------
| O
| |
Y=p*q = Y=~(~p+~q)
|
Podobnie bramkę AND możemy zastąpić bramką OR plus trzema negatorami. Fizycznie oznacza to, że możemy zbudować dwa układy jak wyżej (w technice cyfrowej to banał) a następnie połączyć sygnały p-p, q-q, Y-Y i wszystko będzie dalej pięknie działało.
Powróćmy jeszcze raz do dowodu praw de’Morgana uwzględniającego logikę dodatnią i ujemną by zobaczyć na bramkach logicznych skąd się to bierze.
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Równość kolumn trzeciej i ostatniej jest dowodem poprawności prawa de’Morgana. Ten sam dowód krok po kroku w bramkach logicznych.
Na początku była bramka AND(*) ….
Kod: |
p q p q p q
| | | | | |
| | O O O O
| | |~p |~q |~p |~q
| | O O | |
| | |p |q | |
------- ------- -------
| | = | | = | |
| AND | | AND | | OR |
------- ------- -------
| |Y=p*q |
| O |
| |~Y=~(p*q) |~Y=~p+~q
| O O
| | |
Y=p*q = Y=p*q Y=~(~p+~q)
A B C
|
Schemat A:
Bramka AND rodem z teorii układów logicznych, realizująca funkcję logiczną Y=p*q.
Schemat B:
Na rysunku B wstawiliśmy w każdą linię wejściową bramki po dwie negacje oraz w linię wyjściową Y również dwie negacje.
Taki układ oczywiście nie zmieni się bo:
A=~(~A) - prawo podwójnego przeczenia.
W linii wejściowej p po minięciu pierwszego negatora otrzymamy sygnał ~p ale po minięciu drugiego negatora będziemy mieli sygnał p, identyczny jak na wejściu. Identycznie mamy w linii wejściowej q. Na wyjściu bramki AND mamy sygnał Y=p*q, po minięciu pierwszego negatora mamy ten sam sygnał w logice ujemnej ~Y=~(p*q), zaś po minięciu kolejnego negatora mamy sygnał identyczny jak bezpośrednio na wyjściu bramki AND czyli Y=p*q
Schemat C:
Ten schemat różni się od B wyłącznie tym, że zastosowaliśmy układ zastępczy bramki AND z zanegowanymi wejściami i zanegowanym wyjściem, którym jest po prostu bramka OR. Oczywiście na wyjściu ~Y mamy teraz ~Y=~p+~q zgodnie ze schematem ideowym, zaś po minięciu negatora na wyjściu (negujemy dwustronnie) mamy Y=~(~p+~q).
W matematyce wszystko musi się zgadzać.
Dla rysunków B i C mamy dla wyjścia ~Y:
~Y=~Y
czyli:
~(p*q) = ~p+~q - prawo de’Morgana w równoważnym zapisie
Zaś dla wyjścia Y:
Y=Y
czyli:
p*q = ~(~p+~q) - prawo de’Morgana w najpopularniejszym zapisie
Jak widzimy wyżej, przedszkolak przechodząc z logiki dodatniej do ujemnej w genialnie prosty sposób nie robi nic nadzwyczajnego.
Y=p*q
przejście do logiki ujemnej poprzez negację sygnałów i wymianę operatorów na przeciwne:
~Y=~p+~q
Wszystko jest tu w 100% zgodne z teorią bramek logicznych, czyli algebrą Boole’a. Mam nadzieję, że wszyscy rozumieją teraz dlaczego w nowatorskiej tabeli zero-jedynkowego dowodu prawa de’Morgana wyżej widnieje zapis ~Y=~p+~q a nie jak to jest w dzisiejszej matematyce gołe ~p+~q, które nie wiadomo czym jest.
Oczywiście sygnały w punktach Y i ~Y to zupełnie co innego, gdybyśmy je połączyli kabelkiem na powyższym schemacie (czyli wymusili Y=~Y) byłoby dużo dymu i smrodu, wszystko wyleciałoby w powietrze.
Przykład:
Jutro pójdę do kina i do teatru
Y=K+T
Matematycznie oznacza to:
Dotrzymam słowa (Y=1), jeśli jutro pójdę do kina i do teatru
Y=K*T
gdzie: Y=1 - zdanie prawdziwe
…. a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów.
~Y=~K+~T
Skłamię (~Y=1), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
gdzie: ~Y=1 - zdanie prawdziwe
Mamy tu do czynienia ze zdaniami prawdziwymi, ale nie równoważnymi bowiem występującymi w przeciwnych logikach.
2.11 Operatory AND i OR w logice człowieka
W algebrze Boole’a z operatorami AND i OR da się wypowiedzieć cztery różne zdania, a po uwzględnieniu praw de’Morgana nawet osiem.
p*q = ~(~p+~q)
p+q = ~(~p*~q)
~(p*q) = ~p+~q
~(p+q) = ~p*~q
W języku mówionym w zdaniach prostych przedrostek dotrzymam słowa (Y) jest domyślny czyli:
Jutro pójdę do kina lub do teatru
Y=K+T
matematycznie oznacza:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Przechodzimy z powyższym do logiki przeciwnej metodą przedszkolaka czyli negujemy zmienne i odwracamy operatory.
~Y=~K*~T
Skłamię (~Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y=~K*~T
Przedrostek skłamię (~Y) nie jest domyślny i musi zostać wypowiedziany czyli:
Skłamię (~Y), jeśli jutro pójdę do kina lub do teatru
~Y=K+T
… a kiedy powiem prawdę ?
Przechodzimy z powyższym do logiki przeciwnej czyli negujemy zmienne i odwracamy operatory.
Y=~K*~T
czyli:
Dotrzymam słowa (Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
Y=~K*~T
Oczywiście zdanie w logice dodatniej (Y) nie jest równoważne zdaniu w logice ujemnej (~Y) mimo że oba zdania są prawdziwe, tak wiec prawdziwość zdania nie oznacza automatycznie równoważności zdania.
3.0 Zero-jedynkowa algebra Boole’a
Algebra Kubusia, matematyka języka mówionego, jest algebrą symboliczną mającą 100% przełożenie na kod maszynowy czyli zera i jedynki, co pokazaliśmy wyżej.
Klasyczna, zero-jedynkowa algebra Boole’a to w dniu dzisiejszym zabytek klasy zerowej. Algebra ta jest co prawda fundamentem działania wszelkich komputerów (i całego naszego Wszechświata) ale człowiek myślał w zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wynalazł język symboliczny zwany asemblerem izolując się od kodu maszynowego … czyli skopiował działanie własnego mózgu. Żaden programista pisząc programy nie myśli w zerach i jedynkach bo to po prostu horror. Klasyczna algebra Boole’a jest zupełnie nieprzydatna w technice bowiem nikt nie projektuje już automatów cyfrowych na bramkach logicznych, jak to miało miejsce przed wynalezieniem mikroprocesora. Pierwszy przyzwoity mikroprocesor (Intel 8080) pojawił się w roku 1974, ale już przed nim algebra Boole’a załamała się na układach cyfrowych średniej skali integracji (liczniki, rejestry, multipleksery itp.).
Oczywiście algebra Boole’a w najprostszej postaci będzie w technice przydatna zawsze, ale już nikt nigdy nie będzie używał bramek logicznych do projektowania złożonych automatów cyfrowych, tu królują mikroprocesory.
Fundamentalne prawa algebry Boole’a musi znać każdy programista piszący programy w dowolnym języku programowania … ale normalni ludzie nie muszą, tak wiec wszyscy których nie interesuje pisanie programów mogą ten rozdział pominąć.
3.1 Prawa wynikające z definicji iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Definicja równoważna:
Iloczyn logiczny jest równy zeru gdy którakolwiek zmienna jest równa zeru.
Prawa wynikające bezpośrednio z definicji:
1*0=0
1*1=1
A*0=0
A*1=A
A*A=A
A*~A=0
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.2 Prawa wynikające z definicji sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zminnych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Definicja równoważna:
Suma logiczna jest równa jeden gdy którakolwiek zmienna jest równa 1
Prawa wynikające bezpośrednio z definicji:
1+0=1
0+0=0
A+1=1
A+0=A
A+A=A
A+~A=1
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.3 Najważniejsze prawa algebry Boole’a
W języku mówionym prawa łączności i przemienności to oczywistość, natomiast absorpcja, rozdzielność i pochłanianie są przydatne jedynie w technice cyfrowej.
Łączność:
A+(B+C) = (A+B)+C
A*(B*C)=(A*B)*C
Przemienność:
A+B=B+C
A*B=B*C
Absorbcja:
A+(A*B)=A
Dowód:
Jeśli A=1 to A+(A*B)=1+(A*B)=1
Jeśli A=0 to A+(A*B)=0+(0*B)=0+0=0
niezależnie od wartości B
CND
A*(A+B)=A
Dowód:
Jeśli A=1 to A*(A+B)= 1*(1+B)=1*1=1
Jeśli A=0 to A*(A+B)=0*(A+B)=0
niezależnie od wartości B.
CND
Rozdzielność:
A+(B*C) = (A+B)*(A+C)
A*(B+C)=(A*B)+(B*C)
Pochłanianie:
A*~A=0
A+~A=1
3.4 Operatory dodatnie i operatory ujemne
Tabela legalnych operatorów logicznych typu AND(*) I OR(+)
Kod: |
Tabela A
p q Y=p+q ~Y=pNORq Y=p*q ~Y=pNANDq
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
OR(+), AND(*) - operatory w logice dodatniej
NOR, NAND - operatory w logice ujemnej
Porównajmy powyższą tabele z tabelą używaną przez nas do tej pory.
Kod: |
Tabela B
p q Y=p+q ~Y=~(p+q) Y=p*q ~Y=~(p*q)
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
Z powyższych tabel wynikają definicje operatorów NOR i NAND:
pNORq = ~(p+q) = ~p*~q - na podstawie prawa de’Morgana
pNANDq = ~(p*q) = ~p+~q - na podstawie prawa de’Morgana
bo:
~Y=~Y
Stąd w katalogach układów cyfrowych znajdziemy takie definicje bramek NOR i NAND.
Funkcja logiczna realizowana przez bramkę NOR:
Y=~(p+q)
Funkcja logiczna realizowana przez bramkę NAND:
Y=~(p*q)
Zauważmy, że po takim manewrze operatorów ujemnych NAND i NOR nie wolno mieszać z operatorami dodatnimi AND i OR ponieważ zachodzi.
Y(NAND, NOR) # Y(AND, OR)
co doskonale widać na bramkach logicznych.
Kod: |
Bramka AND i bramka NAND
p q p q
| | | |
| | | |
------- -------
| | = | |
| AND | | NAND|
------- -------
| O
| |
|Y=p*q | Y=pNANDq=~(p*q)
O O
| |
|~Y=~(p*q) |~Y=~(pNANDq)=p*q
A B
|
A - punkt odniesienia, operator AND(*)
B - punkt odniesienia, operator NAND
Oczywistym jest, że zwarcie pozornie identycznych sygnałów:
Y=Y lub ~Y=~Y
grozi wysadzeniem bramki w powietrze.
Na powyższym schemacie zachodzą tożsamości po przekątnych czyli absolutna bzdura z punktu widzenia algebry Boole’a bo wtedy mamy:
Y=~Y
czyli:
Y=p*q <=> ~Y=~(pNANDq) = p*q
Wniosek:
Można myśleć logicznie albo w operatorach dodatnich AND i OR, albo w operatorach ujemnych NAND i NOR. Mieszanie tych operatorów w jednej logice to głupota.
Punkt odniesienia, operatory dodatnie AND i OR:
Y=prawda
~Y=fałsz
Punkt odniesienia, operatory ujemne NAND i NOR:
Y=fałsz
~Y=prawda
Wróćmy do symbolicznej definicji bramki AND.
Kod: |
Tabela A
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Dla punktu odniesienia AND i OR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=1(prawda), ~Y=0(Fałsz)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia AND(*) i OR(+):
Kod: |
p q Y=p*q=~(pNANDq) ~Y=~(p*q)=pNANDq
1 1 1 0
1 0 0 1
0 0 0 1
0 1 0 1
|
stąd:
Definicja operatora AND:
Y=1 <=> p=1 i q=1
Dla punktu odniesienia NAND i NOR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=0(fałsz), ~Y=1(prawda)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia NAND i NOR:
Kod: |
p q Y=pNANDq=~(p*q) ~Y=~(pNANDq)=p*q
1 1 0 1
1 0 1 0
0 0 1 0
0 1 1 0
|
stąd:
Definicja operatora NAND:
Y=0 <=> p=1 i q=1
Podsumowanie:
Można myśleć w logice dodatniej (operatory OR i AND) albo w ujemnej (operatory NOR i NAND). Mieszanie operatorów dodatnich i ujemnych w naturalnym języku mówionym człowieka to jeżdżenie samochodem po Anglii prawą stroną, żaden normalny człowiek tego nie zrozumie.
Ostatnio zmieniony przez rafal3006 dnia Nie 12:53, 09 Sie 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Nie 12:54, 09 Sie 2009 Temat postu: |
|
|
Część II Implikacja
4.0 Kubuś na tropie implikacji odwrotnej
Notacja szczególna w implikacji:
W implikacji dla uproszczenia używać będziemy bezwzględnych zer i jedynek wyłącznie dla określenia prawdziwości zdania:
1 - zdanie prawdziwe
0 - zdanie fałszywe
To „uproszczenie” wynika tylko i wyłącznie z przyzwyczajeń przeciętnego człowieka do powyższego standardu. Elegancja w matematyce polega na wyprowadzeniu wzoru ogólnego i dopiero na końcu na podstawieniu danych.
Gdybyśmy w tej publikacji użyli symboli w 100% czyli zastosowali:
Y - zdanie prawdziwe
~Y - zdanie fałszywe
to otrzymalibyśmy w pełni symboliczne tabele operatorowe implikacji prostej, implikacji odwrotnej i równoważności czyli zero styczności z zerami i jedynkami.
4.1 Implikacja odwrotna
Udajmy się do przedszkola, aby upewnić się czy dzieciaki znają algebrę Kubusia. Zadaniem dzieci będzie określenie które z wypowiedzianych zdań jest prawdziwe a które fałszywe. Zdania oczywiście będą tendencyjne, bo wymawia je Kubuś. Na początek Kubuś postanowił sprawdzić jak reagują dzieci na implikację odwrotną. Poprosił je, aby przy określaniu czy zdanie jest prawdziwe/fałszywe brały pod uwagę wyłącznie psy zdrowe, z czterema łapami.
Kubuś:
A1:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P = 1 - zdanie prawdziwe bo pies, tu żaden przedszkolak nie miał wątpliwości.
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
A2:
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P = 1 - zdanie prawdziwe bo słoń, koń, kot, lis, hipopotam …. przekrzykiwały się dzieci
Kubuś:
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Dzieciaki:
A3:
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P =1 - zdanie oczywiście prawdziwe
Kubuś:
A4:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
~4L=>P = 0 - kłamstwo, fałsz, bo każdy pies ma cztery łapy … zgodnym chórem krzyknęły dzieci
Hmm … pomyślał Kubuś, dzieciaki doskonale znają matematyczną wersję implikacji odwrotnej, aby upewnić się czy to prawda, zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci ani razu nie popełniły błędu !
Zauważmy, że w zdaniu A1 cztery łapy są konieczne aby być psem, zatem jeśli zwierzę nie ma czterech łap to na pewno nie jest psem. Mamy tu bezpośredni dowód prawa Kubusia.
A1: 4L~>P= A3: ~4L=>~P
Zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) ale na pewno nie jest implikacją.
Dlaczego ?
Wyrocznią są tu prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności).
Dowód nie wprost.
Załóżmy, że zdanie A2: 4L~>~P jest implikacją odwrotną prawdziwą.
Prawo Kubusia:
A2: 4L~>~P = A4: ~4L=>P
czyli:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
A4: ~4L=>P
Zdanie A4 jest na pewno fałszywe, zatem wobec zachodzącej tożsamości implikacja A2 musi być także fałszywa, czyli nie zachodzi tu warunek konieczny.
Prawdziwość zdania A2 opisuje wzór:
(4L~>~P) +( 4L~~>~P) = 0+1=1
Implikacja odwrotna (4L~>~P) na mocy prawa Kubusia jest tu oczywiście fałszywa, ale zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda, tu np. słoń).
4.2 Operatorowa definicja implikacji odwrotnej
Zapiszmy teraz powyższe zdania wyłącznie w postaci operatorowej, czyli przy pomocy operatorów „musi” (=>) i „może” (~> lub ~~>)
Kod: |
4L P Y=4L~>P ~Y=~(4L~>P)
4L ~> P = 1 0
4L~~>~P = 1 0
~4L=> ~P = 1 0
~4L => P = 0 1
|
gdzie:
1 - zdanie prawdziwe
0 - zdanie fałszywe
W matematyce nie operujemy na konkretnych przykładach, lecz na zapisach formalnych. Powszechnie przyjętym standardem są w implikacji literki p i q.
Jeśli p to q
p - poprzednik
q - następnik
Przepiszmy zatem powyższą tabelę podstawiając:
4L=p, P=q
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Zauważmy, że w implikacji odwrotnej p musi być konieczne dla q, inaczej pierwsza linia definicji operatorowej jest twardym fałszem, zdanie na pewno nie jest implikacją odwrotną.
Przykład:
Jeśli zwierzę ma skrzydła to może być psem
S~>P=0
Oczywisty twardy fałsz bo skrzydła nie są warunkiem koniecznym dla psa.
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji odwrotnej .
Symboliczna definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p q = 1 0
p ~q = 1 0
~p ~q = 1 0
~p q = 0 1
|
Najprostszą definicję implikacji odwrotnej w równaniu algebry Boole’a otrzymujemy z ostatniej linii tabeli.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie ~p i zajdzie q.
~Y= ~p*q
Kiedy wystąpi prawda ?
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+).
Y=p+~q
stąd:
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y= p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Wystąpi prawda (Y=1) wtedy i tylko wtedy gdy nie zdarzy się ~(…), że zajdzie ~p i zajdzie q.
4.3 Zero-jedynkowa definicja implikacji odwrotnej
Zero jedynkowa definicja implikacji odwrotnej to w dniu dzisiejszym zabytek klasy zerowej. Wszyscy ludzie na ziemi od przedszkolaka po profesora posługują się biegle operatorową definicją implikacji odwrotnej. Nie ma potrzeby przechodzenia do zero-jedynkowej definicji implikacji odwrotnej.
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja odwrotna to w pierwszej części rzucanie monetą p~>q, zaś w drugiej części pewne wynikanie ~p=>~q.
Zero-jedynkową definicję implikacji odwrotnej otrzymujemy opuszczając operatory oraz przyjmując:
p=1, ~p=0
q=1, ~q=0
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Najprostsze równanie algebry Boole’a zapiszemy dla ostatniej linii bo tu w wyniku mamy samotne zero (Y=0).
Y=0 <=> p=0 i q=1
Przejście z takiego zapisu do równania algebry Boole’a możemy uzyskać na dwa sposoby.
Sposób 1
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych równy jest jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0, ~Y=1
p=0, ~p=1
q=1
Sprowadzamy wszystkie sygnały do jedynki i stosujemy definicję iloczynu logicznego.
~Y=~p*q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne
Y = p+~q
Sposób 2
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0
p=0
q=1,~q=0
Sprowadzamy wszystkie sygnały do zera i stosujemy definicję sumy logicznej.
Y=p+~q
Jak widać, w tym przypadku końcowe równanie implikacji odwrotnej mamy natychmiast.
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y = p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było samotne zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Definicja zero-jedynkowa implikacji odwrotnej przybierze zatem postać końcową.
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q=p+~q=~(~p*q) ~Y=~(p~>q)=~[~(~p*q)]=~p*q
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie ~p i q
Wystąpi fałsz (~Y=1) jeśli zajdzie ~p i q
4.4 Gwarancja matematyczna w implikacji odwrotnej
Istotą implikacji jest gwarancja matematyczna. Poza gwarancją wszystko może się zdarzyć czyli mamy rzucanie monetą.
Gwarancją w implikacji odwrotnej jest wynikająca z prawa Kubusia implikacja prosta:
Y=p~>q = ~p=>~q
Gwarancja:
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
Y=4L~>P
Gwarancja:
Y=4L~>P = ~4L=>~P - prawo Kubusia
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Gwarancja dotyczy zwierząt które nie mają czterech łap, te na pewno nie są psami, poza tą gwarancją wszystko może się zdarzyć czyli jeśli zwierzę ma cztery łapy to może być psem (tu pies), lub nie być psem (np. słoń) czyli mamy tu rzucanie monetą.
Gwarancję równoważną otrzymujemy z definicji implikacji odwrotnej zapisanej w równaniu algebry Boole’a.
Definicja implikacji odwrotnej:
Y=p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
stąd:
Y=4L~>P = ~(~4L*P)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę nie ma czterech łap i jest psem
Y=~(~4L*P)
Oczywiście gwarantowane zwierzaki to kura, mrówka, stonoga, wąż … - te na pewno nie są psami.
… a kiedy wystąpi fałsz ?
Negujemy powyższe równanie dwustronnie:
~Y=~4L*P
Wystąpi fałsz (~Y) jeśli zwierzę nie będzie miało czterech łap i będzie psem.
Zauważmy coś bardzo ważnego. Człowiek mając do wybory dwie równoważne gwarancje G1 i G2 praktycznie na 100% zawsze wybierze G1 bo ta jest zdecydowanie bardziej klarowna.
Wniosek:
W naturalnym języku mówionym człowiek posługuje się przede wszystkim operatorową definicją implikacji odwrotnej.
Z definicji równoważnej, zapisanej w równaniu algebry Boole’a:
p~>q = ~p=>~q = ~(~p*q)
w praktyce nikt nie korzysta, co nie oznacza że przedszkolak miałby tu jakiekolwiek kłopoty.
Jaś:
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Kubuś:
… a czy może się zdarzyć że zwierzę nie ma czterech łap i jest psem ?
p~>q = ~p=>~q = p+~q = ~(~p*q) - na podstawie prawa Kubusia i definicji implikacji odwrotnej
stąd:
~4L=>~P = ~(~4L*P)
Jaś:
Nie może się zdarzyć, że zwierzę nie ma czterech łap i jest psem
~(~4L*P)
Zauważmy, że przeanalizowaliśmy implikację odwrotną:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
na wszelkie możliwe sposoby wyłącznie w symbolicznej algebrze Kubusia nie mając bezpośredniej styczności z kodem maszynowym czyli zerami i jedynkami po stronie p i q.
5.0 Kubuś na tropie implikacji prostej
Dzieci w przedszkolu są doskonałym testerem dowolnej logiki roszczącej sobie miano matematycznego opisu języka mówionego. Nowa, nieznana człowiekowi definicja implikacji odwrotnej ~> przeszła taki test bez najmniejszego problemu. Kubuś postanowił sprawdzić czy również nowa definicja implikacji prostej => przejdzie „test przedszkolaka”.
Druga wizyta Kubusia w przedszkolu.
Drogie dzieci, będę wypowiadał różne zdania o piesku i jego czterech łapach. Waszym zadaniem będzie rozstrzygnięcie czy zdanie jest prawdziwe/fałszywe. Proszę Was, abyście uwzględniali wyłącznie pieski zdrowe które mają cztery łapy.
B1:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L=1
Zdanie prawdziwe, zgodnym chórem krzyknęły dzieci, bo każdy pies ma cztery łapy.
Implikacja prosta prawdziwa bo bycie psem jest wystarczające, aby mieć cztery łapy.
B2:
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L=0
Fałsz, kłamstwo, bo każdy pies ma cztery łapy, żaden przedszkolak nie miał tu wątpliwości
Jaś:
… a jeśli zwierzę nie jest psem ?
Prawo Kubusia:
P=>4L = ~P~>~4L
Kubuś:
B3:
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~>~4L=1
Prawda czy fałsz ?
Dzieci:
Prawda bo mrówka, stonoga, kura, wąż ….
lub
B4:
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L=1
Prawda bo koń, słoń, wilk, hipopotam … przekrzykiwały się dzieci
Na wszelki wypadek by upewnić się czy nowa teoria matematyczna jest prawdziwa Kubuś zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci nie pomyliły się ani razu !
Nie ma zatem wątpliwości, symboliczna algebra Kubusia przeszła „test przedszkolaka” pomyślnie.
Zauważmy, że zdanie B4 nie może być implikacją odwrotną.
Dlaczego ?
Najprostszą wyrocznią jest tu oczywiście prawo Kubusia.
Dowód nie wprost.
Załóżmy że B4 jest implikacją odwrotną, wtedy musi być spełnione prawo Kubusia:
B4: ~P~>4L = B2: P=>~4L
Prawa strona tożsamości:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz, zatem fałszywa musi być tez implikacja po lewej stronie czyli:
B4: ~P~>4L=0
Prawdziwość zdania B4 określa wzór:
(~P~>4L)+(~P~~>4L) = 0+1 =1
gdzie:
~~> - naturalny spójnik „może”, wystarczy jedna prawda (tu np. koń), na pewno nie jest to implikacja odwrotna.
5.1 Operatorowa definicja implikacji prostej
Przepiszmy powyższy przykład wyłącznie w postaci operatorowej.
Kod: |
P 4L Y=(P=>4L) ~Y=~(P=>4L)
B1: P=> 4L = 1 0
B2: P=>~4L = 0 1
B3:~P~>~4L = 1 0
B4:~p~~>4L = 1 0
|
Prawo Kubusia:
P=>4L = ~P~>~4L
Oczywiście w matematyce nie operujemy na konkretnym przykładzie lecz na parametrach formalnych którymi w implikacji są literki p i q.
Podstawiamy zatem:
P=p i 4L=q
i otrzymujemy operatorową definicję implikacji prostej.
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji prostej.
Symboliczna definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p q = 1 0
p ~q = 0 1
~p ~q = 1 0
~p q = 1 0
|
Stąd dla drugiej linii zapisujemy najprostsze równanie algebry Boole’a.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie p i ~q
czyli:
~Y=p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+):
Y=~p+q
stąd:
Definicja implikacji prostej w równaniu algebry Boole’a
Y = p=>q = ~p+q = ~(p*~q) - na podstawie prawa de’Morgana
5.2 Zero-jedynkowa definicja implikacji prostej
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja prosta to w pierwszej części pewne wynikanie p=>q, natomiast w drugiej części to najzwyklejsze rzucanie monetą ~p~>~q.
Po opuszczeniu operatorów w operatorowej definicji implikacji prostej i przyjęciu:
p=1, ~p=0
q=1, ~q=0
otrzymujemy …
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=(p=>q)=~p+q=~(p*~q) ~Y=~(p=>q)=~[~(p*~q)]=p*~q
1 1 1 0
1 0 0 1
0 0 1 0
0 1 1 0
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie p i ~q
Wystąpi fałsz (~Y=1) jeśli zajdzie p i ~q
5.3 Gwarancja w implikacji prostej
Na mocy definicji gwarancją jest sama definicja implikacji prostej ….
G1:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarantowany zwierzak to pies, który na pewno ma cztery łapy … poza tym wszystko może się zdarzyć czyli jeśli zwierzę nie jest psem to może nie mieć czterech łap (np. mrówka) lub jeśli zwierzę nie jest psem to może mieć cztery łapy (np. słoń).
Równoważną gwarancję, lecz w praktyce nigdy nie używaną mamy z równań algebry Boole’a.
Definicja implikacji prostej w równaniu algebry Boole’a.
Y = p=>q = ~p~>~q =~p+q = ~(p*~q) - na podstawie prawa de’Morgana
stąd:
P=>4L = ~P~>~4L = ~(P*~4L)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap
~(P*~4L)
Gwarantowany zwierzak to pies, poza tym wszystko może się zdarzyć.
Oczywiście nie oznacza to że przedszkolak będzie miał jakiekolwiek problemy z wypowiedzeniem gwarancji G2 … jeśli się go do tego zmusi.
Jaś:
Jeśli zwierze jest psem to na pewno ma cztery łapy
P=>4L
Kubuś:
… a czy może się zdarzyć że zwierze jest psem i nie ma czterech łap ?
P=>4L = ~(P*~4L) - na mocy definicji implikacji prostej
Jaś:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap.
6.0 Fundamenty algebry Boole’a
Matematycznym fundamentem algebry Boole’a jest definicja iloczynu kartezjańskiego i pojęcie funkcji.
6.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
6.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
6.3 Funkcja iloczynu logicznego AND(*)
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Tabela zero-jedynkowa iloczynu logicznego:
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
6.4 Algebra Boole’a i prawo przemienności
Wyżej udowodniliśmy, iż operator iloczynu logicznego AND(*) jest przemienny. Sprawdźmy teraz pozostałe kluczowe operatory (pkt.1.3) czyli te, które człowiek używa w naturalnym języku mówionym.
Kod: |
p q p+q q+p p=>q q=>p p~>q q~>p p<=>q q<=>p
1 1 1 1 1 1 1 1 1 1
1 0 1 1 0 1 1 0 0 0
0 0 0 0 1 1 1 1 1 1
0 1 1 1 1 0 0 1 0 0
|
p=>q=0 <=> p=1 i q=0
p~>q=0 <=> p=0 i q=1
Doskonale widać, że operatory OR(+) i <=> są przemienne, natomiast operatory implikacji nie są przemienne bo kolumny wynikowe są różne:
p=>q # q=>p
p~>q # q~>p
Oczywistym jest, że implikacja jest implikacją prawdziwą wtedy i tylko wtedy gdy spełnia odpowiednią tabelę zero-jedynkową.
Wynika z tego że:
Jeśli p=>q=1 to q=>p=0
Jeśli p~>q=1 to q~>p=0
… bo to jest algebra Boole’a.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Brak przemienności argumentów w implikacji przenosi się oczywiście na brak przemienności implikacyjnej sumy logicznej wynikającej z odpowiednich definicji.
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
6.5 Prawa Kubusia
Jako pierwszy prawa Kubusia zapisał i udowodnił metodą zero-jedynkową Kubuś po wielomiesięcznych zmaganiach z matematyczną obsługą wszelkich gróźb i obietnic. Właśnie w tym obszarze po raz pierwszy prawa Kubusia zaczęły fenomenalnie działać. To był jednak dopiero początek wojny o całkowite rozszyfrowanie implikacji.
Dowód prawa Kubusia metoda zero-jedynkową.
Definicja implikacji prostej:
Kod: |
p q p=>q
1 1 1
1 0 0
0 0 1
0 1 1
|
p=>q=0 wtedy i tylko wtedy gdy p=1 i q=0
Definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 1
1 0 1
0 0 1
0 1 0
|
p~>q=0 wtedy i tylko wtedy gdy p=0 i q=1
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>.
Dowód metodą zero-jedynkową:
Kod: |
p q p=>q ~p ~q ~p~>~q
1 1 1 0 0 1
1 0 0 0 1 0
0 0 1 1 1 1
0 1 1 1 0 1
|
Równość kolumn wynikowych trzeciej i ostatniej jest dowodem poprawności prawa Kubusia.
Najbardziej elegancki dowód praw Kubusia zaprezentował Wuj Zbój:
A.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Dla prawej strony korzystamy z definicji implikacji odwrotnej:
B.
~p~>~q = (~p)+~(~q) = ~p+q
bo:
~(~q)=q - prawo podwójnego przeczenia
Prawe strony równań A i B są identyczne zatem prawo Kubusia jest prawdziwe.
CND
Jako ostatni, metodą nie wprost, udowodnił prawa Kubusia Zbanowany Uczy.
6.6 Prawo Kłapouchego
Prawo Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności) to wyrocznia rozstrzygająca czy zdanie „Jeśli…to…” jest implikacją.
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na równoważną implikację prostą =>
Operatorowa definicja implikacji prostej:
Kod: |
Tabela A
p q = Y=p=>q
p=> q = 1
p=> ~q = 0
~p~> ~q = 1
~p~~> q = 1
|
Prawo Kubusia:
p=>q = ~p~>~q
Jak widać, w pierwszej części definicji mamy pewne wynikanie p=>q, natomiast w drugiej części mamy najzwyklejsze rzucanie monetą ~p~>~q.
Po stronie ~p może zajść:
~p~>~q
lub
~p~~>q
czyli:
~p=>(~q+q)
Jeśli zajdzie ~p to na pewno => zajdzie ~q lub q
Oczywiście:
~q+q =1 - prawo algebry Boole’a
Ostatnie zdanie jest tautologią, czyli wiem, że nic nie wiem.
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji linie w powyższej tabeli możemy sobie dowolnie przestawiać. Przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji odwrotnej dla parametrów ~p i ~q.
Kod: |
Tabela B
p q = Y=~p~>~q
~p~> ~q = 1
~p~~> q = 1
p=> q = 1
p=> ~q = 0
|
Prawo Kubusia:
~p~>~q = p=>q
Dzisiejszy matematyk mówi tak (autentyczne z matematyki.pl):
Tabela A jest dobra bo ma prawidłowy nagłówek, natomiast tabela B jest kompletnie nieprzydatna w matematyce wiec wyrzucam ja do kosza, precz z Kubusiem który usiłuje wmówić nam co innego.
Czy każdy widzi nonsens takiego rozumowania ?
Z matematyką się nie dyskutuje
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
Tam gdzie mamy operator => tam mamy pewne wynikanie matematyczne, warunek wystarczający.
Tam gdzie mamy operator ~> mamy rzucanie monetą, warunek konieczny
Tożsamość to tożsamość, jak kto obali matematykę to wtedy może twierdzić że pewne wynikanie => jest lepsze od „rzucania monetą” czyli ~>.
Twierdzenie Sowy:
W prawach Kubusia implikacje po obu stronach tożsamości mają IDENTYCZNĄ wartość matematyczną.
CND
Zero-jedynkową definicję implikacji prostej otrzymujemy z tabeli A opuszczając operatory i przyjmując:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Operatorowa definicja implikacji odwrotnej:
Kod: |
Tabela C
p q = Y=p~>q
p ~> q = 1
p~~>~q = 1
~p=> ~q = 1
~p => q = 0
|
Prawo Kubusia:
p~>q = ~p=>~q
W implikacji odwrotnej w pierwszej części mamy rzucanie monetą p~>q, natomiast w drugiej mamy pewne wynikanie ~p=>~q.
W pierwszej części mamy tautologię:
p~>q =1
LUB
p~~>~q=1
czyli:
p=>(q+~q)
bo:
q+~q=1
Jeśli zajdzie p to na pewno => zajdzie q lub ~q, czyli wiem, że nic nie wiem.
Tu również linie w powyższej definicji możemy dowolnie przedstawiać, przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji prostej dla parametrów ~p i ~q.
Kod: |
Tabela D
p q = Y=~p=>~q
~p=> ~q = 1
~p => q = 0
p ~> q = 1
p~~>~q = 1
|
Prawo Kubusia:
~p=>~q = p~>q
Dla tabeli C przyjmujemy:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Podsumowanie:
W dowolnej implikacji, prostej => lub odwrotnej ~> mamy w jednej połówce pewne wynikanie matematyczne =>, natomiast w drugiej połowie mamy do czynienia z najzwyklejszym rzucaniem monetą ~>, z tego względu implikacja jest bezsensem w świecie techniki.
Wniosek:
Implikacja prosta => nie może istnieć bez implikacji odwrotnej ~> i odwrotnie.
6.7 Implikacja w bramkach logicznych
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
| | |~p |~q | | |~p |~q | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
gdzie:
O - w technice cyfrowej kółko jest symbolem negacji
Układ A.
Definicja implikacji prostej:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy niezanegowaną linię q.
Układ C:
Definicja implikacji odwrotnej:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy zanegowana linie q.
Startujemy od bramki implikacji prostej p=>q, układ A.
Na schemacie B wprowadzamy po jednej negacji w linie wejściowe p i q. Oczywiście bramki A i B będą różne bo wprowadziliśmy tylko po jednej negacji.
p=>q=~p+q (układ A) # ~p=>~q (układ B) = ~(~p)+(~q) = p+~q = p~>q (układ C) - na mocy definicji bramki p~>q
Układ C jest identyczny jak układ B, bowiem nie wprowadziliśmy tu żadnych zewnętrznych negacji. Sztuczka polega na tym, że negacje w układzie B wpychamy do środka układu scalonego. Negacja w linii p zniknie na mocy prawa podwójnego przeczenia p=~(~p), pojawi się natomiast negacja w linii q bo tu uprzednio nie było żadnej negacji. Na mocy definicji bramka C to po prostu dziewicza definicja implikacji odwrotnej. Doskonale to również widać w przekształceniach matematycznych wyżej.
Startujemy teraz od bramki implikacji odwrotnej p~>q, układ C
Na schemacie D wprowadzamy po jednej negacji w linie p i q. Oczywiście układ ulegnie zmianie w stosunku do układu C.
p~>q = p+~q (układ C) # ~p~>~q (układ D) = (~p)+~(~q) = ~p+q = p=>q (układ E) - na mocy definicji bramki p=>q
Układ E jest identyczny jak układ D bowiem nie wprowadziliśmy tu żadnej zewnętrznej negacji. Nasza stara sztuczka to wepchnięcie zewnętrznych negacji z układu D do środka układu scalonego E. Tym razem zniosą się negacje w linii q na mocy prawa podwójnego przeczenia q=~(~q), oczywiście pojawi się negacja w linii p bo tu nic nie było przed przekształceniem.
Zauważmy, że w sumie poczynając od układu A wprowadziliśmy po dwie negacje w linie wejściowe. Taki układ nie ma prawa ulec zmianie na mocy prawa podwójnego przeczenia A=~(~A) co widać na schemacie. Oczywiście układ A = układ E.
6.8 Kwadrat logiczny implikacji
Kwadrat logiczny implikacji w wersji z parametrami formalnymi:
Kod: |
p=>q=~p+q p~>q=p+~q
~p~>~q=~p+q ~p=>~q=p+~q
|
Oczywiście w pionach mamy tu prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~>na =>
Między pionami nie zachodzą żadne zależności matematyczne co widać w prawych stronach tożsamości. Zapiszmy teraz kwadrat logiczny dla naszego sztandarowego przykładu o piesku i jego czterech łapach.
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Stąd otrzymujemy kwadrat logiczny dla konkretnego przykładu:
Kod: |
p=>q =~p+q p~>q=p+~q
P=>4L=~P+4L 4L~>P=4L+~P
~p~>~q=~p+q ~p=>~q=p+~q
~P~>~4L=~P+4L ~4L=>~P=4L+~P
|
Kubuś celowo pozostawił zapis formalny, abyśmy zauważyli coś bardzo ciekawego.
Zauważmy, że dla zapisu formalnego mamy:
p=>q=~p+q # p~>q=p+~q
natomiast dla zapisu aktualnego:
P=>4L=~P+4L # 4L~>P=4L+~P
Mamy tu zatem inne znaczenie parametrów formalnych p i q po lewej i prawej stronie nierówności.
Lewa strona:
p=P i q=4L
Prawa strona:
p=4L i q=P
O implikacji prostej prawdziwej decyduje warunek wystarczający między podstawą a strzałką wektora =>, natomiast o implikacji odwrotnej prawdziwej decyduje warunek konieczny między podstawą a strzałką wektora ~>.
Literki p i q są tu wstawiane prawidłowo na mocy odpowiednich definicji.
Definicja implikacji prostej:
P=>4L
p=>q
Jeśli zajdzie p to musi => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
4L~>P
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
CND
Algebra Boole’a to nie algebra dziesiętna, reguły rządzące tymi algebrami nie muszą pokrywać się w 100%.
6.9 Równoważność
Dziewicza tabela zero-jedynkowa równoważności:
Kod: |
p q p<=>q
1 1 1
1 0 0
0 0 1
0 1 0
|
Z tabeli zero-jedynkowej widać, że równoważność jest przemienna, czyli wszystko jedno którą cześć zdania nazwiemy p a którą q.
Algebra Kubusia to algebra symboliczna. W implikacji przeszliśmy z naturalnego języka mówionego do definicji operatorowej po czym do definicji symbolicznej na końcu lądując w tabeli zero-jedynkowej. Tym razem zrobimy dokładnie odwrotnie.
Przechodzimy z powyższą tabelą do symbolicznej definicji równoważności przyjmując:
p=1, ~p=0
q=1, ~q=0
Symboliczna definicja równoważności:
Kod: |
p q p<=>q
p q 1
p ~q 0
~p ~q 1
~p q 0
|
Dla linii z jedynkami w wyniku układamy równanie algebry Boole’a
Definicja równoważności w równaniu algebry Boole’a:
A: p<=>q = p*q+~p*~q
Bardzo łatwo udowodnić poprawność równoważnych definicji równoważności, wynikających z przemienności argumentów oraz powyższej definicji:
B:~p<=>~q
C:q<=>p
D:~q<=>~p
Udowodnimy tylko B bo pozostałe dowody są analogiczne.
Korzystamy z definicji równoważności A:
E: ~p<=>~q = (~p)*(~q) + ~(~p)*~(~q) = ~p*~q + p*q = p*q + ~p*~q
Prawe strony równań A: i E: są identyczne, zatem są to równoważne definicje.
Z pierwszej linii definicji symbolicznej widać, że jeśli zajdzie p to „musi” => zajść q bo druga linia tabeli jest fałszem. Podobnie z trzeciej linii widać, że jeśli zajdzie ~p to „musi” => zajść ~q bo ostatnia linia jest fałszem.
Stąd pełna definicja operatorowa równoważności przybierze postać:
Kod: |
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
Mamy tu zatem doskonale nam znane z definicji implikacji warunki wystarczające zachodzące między p i q oraz między ~p i ~q.
Stąd operatorowa definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) =1*1 =1
gdzie:
p=>q - warunek wystarczający między p i q, nigdy implikacja prosta p=>q
~p=>~q - warunek wystarczający między ~p i ~q, nigdy implikacja prosta ~p=>~q
Dlaczego powyższe zapisy nie mogą być implikacją ?
Wynika to z prawa Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawo Kubusia dla powyższej tabeli:
p=>q = ~p~>~q
czyli w implikacji musi zachodzić warunek konieczny między ~p i ~q, natomiast w równoważności między ~p i ~q zachodzi warunek wystarczający.
Przykład:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Bycie psem jest wystarczające aby mieć cztery łapy, zatem jest to implikacja prosta prawdziwa
Definicja operatorowa dla powyższego zdania:
Kod: |
P=>4L =1
P=>~4L=0
~P~>~4L=1
~P~~>4L=1
|
Aby w powyższej tabeli ostatnia linia wyzerowała się, musiałaby być prawdziwa implikacja prosta:
~P=>~4L
czyli:
Jeśli zwierzę nie jest psem to na pewno => nie ma czterech łap
~p=>~4L=0 - oczywisty fałsz bo słoń
Zatem równoważność nie może być iloczynem dwóch implikacji prostych p=>q i ~p=>~q bo takowe są niemożliwe do zaistnienia.
Można to udowodnić jeszcze prościej ….
Oczywistym jest na podstawie definicji implikacji prostej => że:
p=>q=~p+q # ~p=>~q= ~(~p)+(~q) = p+~q
To jest algebra Boole’a, zatem:
Jeśli implikacja prosta p=>q=1 to implikacja prosta ~p=>~q=0 bo:
p=>q # ~p=>~q
Stąd definicja równoważności nie może być iloczynem logicznym dwóch implikacji prostych bo:
p<=>q = (p=>q)*(~p=>~q) = 1*0=0
Wniosek:
Twierdzenie co niektórych dzisiejszych matematyków jakoby równoważność była iloczynem dwóch implikacji prostych można między bajki włożyć.
CND
Dowód nie wprost:
Zauważmy, że gdyby to była prawda matematyczna to przekształcenia musiałyby być odwracalne, czyli dowolną równoważność można by rozbić na dwie implikacje proste, co jest oczywistą bzdurą. Kamikaze mogą próbować.
6.10 Kwadrat logiczny równoważności
Narysujmy kwadrat logiczny równoważności analogiczny do kwadratu logicznego implikacji.
Kod: |
A1: p=>q=1 B1: q=>p=1
A2: ~p=>~q=1 B2: ~q=>~p=1
|
Argumenty w równoważności są przemienne, zatem wszystko jedno którą część zdania nazwiemy p a którą q. Tu możemy na stałe przywiązać p do jednej strony równoważności, zaś q do drugiej.
Stąd zapisy: p=>q i q=>p.
Oczywiście we wszystkich rogach kwadratu równoważności mamy twarde jedynki wynikające ze spełnionego warunku wystarczającego (to nie są implikacje!), zatem:
p=>q = q=>p = ~p=>~q = ~q=>~p
Stąd mamy znane w matematyce prawo kontrapozycji:
p=>q = ~q=>~p
Prawo kontrapozycji jest prawdziwe w równoważności i fałszywe w implikacji.
analogicznie:
Prawa Kubusia są prawdziwe w implikacji i fałszywe w równoważności.
Definicja równoważności to iloczyn logiczny warunków wystarczających (nie implikacji !) wzdłuż dowolnego boku kwadratu logicznego równoważności.
Najpopularniejsze definicje to:
A.
p<=>q = (p=>q)*(~p=>~q)
i
p<=>q = (p=>q)*(q=>p)
Skąd wzięło się ostatnie równanie ?
Definicja implikacji prostej plus prawo Kubusia:
p=>q = ~p~>~q = ~p+q
Definicja implikacji odwrotnej:
p~>q = ~p=>~q = p+~q
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(p~>q) = (~p+q)*(p+~q) = ~p*p + ~p*~q + q*p + q*~q = p*q + ~p*~q
bo:
A*~A=0 - prawo algebry Boole’a
stąd:
~p*p = q*~q =0
Argumenty w równoważności są przemienne, dlatego w ostatnim kroku dopuszczalna jest zamiana p i q w iloczynie logicznym oraz zamiana sumy logicznej. W implikacji takich manewrów nie wolno robić, bo tu argumenty nie są przemienne.
Absolutnie ciekawy jest tu zapis:
A.
p<=>q = (p=>q)*(p~>q)
Jak to zinterpretować ?
W równoważności argumenty są przemienne zatem tu poprawne jest równanie z którego wynika, że implikacja odwrotna p~>q jest zbędna.
p~>q = p+~q = ~q+p = q=>p
czyli:
B.
p~>q = q=>p - poprawne w równoważności
Podstawiając to do A mamy:
p<=>q = (p=>q)*(q=>p)
W implikacji brak przemienności argumentów przenosi się na brak przemienności argumentów w implikacyjnej sumie logicznej i tu poprawne jest:
p~>q = p+~q # ~q+p = q=>p
p~>q # q=>p - poprawne w implikacji
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Kodowanie zdań ze spójnikiem „Jeśli…to…”:
Implikacja prosta:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
p musi być wystarczające dla q
Stwierdzenie warunku wystarczającego w p=>q determinuje zdanie prawdziwe które może być:
1.
Implikacją prostą p=>q jeśli po stronie ~p stwierdzimy warunek konieczny czyli:
~p~>~q
Czasami prościej jest wykluczyć warunek wystarczający w stronę ~p=>~q, to wystarczy aby udowodnić że zdanie p=>q jest implikacją prostą.
2.
Równoważnością p<=>q, gdy po stronie ~p również stwierdzimy warunek wystarczający czyli
~p=>~q.
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)=1*1=1
3.
Jeśli zdanie jest implikacją prostą to w stronę p=>q zachodzi warunek wystarczający, natomiast w stronę q~>p musi zachodzić warunek konieczny. Jeśli w stronę q=>p stwierdzimy warunek wystarczający to zdanie jest na pewno równoważnością, nigdy implikacją.
Definicja równoważna równoważności:
p<=>q = (p=>q)*(q=>p) = 1*1=1
Stąd mamy kolejną możliwość stwierdzenia czy zdanie jest implikacją. Po stwierdzeniu warunku wystarczającego w stronę p=>q wystarczy wykluczyć warunek wystarczający w stronę q=>p.
Implikacja odwrotna:
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
Stwierdzenie warunku koniecznego w p~>q determinuje implikację odwrotną:
p~>q
ale ….
Zdanie może być prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) i nie być implikacją odwrotną np.
Jeśli liczba jest podzielna przez 8 to może ~~> być podzielna przez 3
P8~~>P3 =1 bo 24
P8 nie jest konieczne dla P3 bo 3, nie jest to zatem implikacja odwrotna.
Koniec, to jest cała filozofia kodowania zdań ze spójnikiem „Jeśli…to…”
Zauważmy coś bardzo ciekawego.
A.
Jeśli trójkąt ma boki równe to na pewno => jest równoboczny
BR=>R =1
B.
Jeśli trójkąt nie ma boków równych to na pewno => nie jest równoboczny
~BR=>~R =1
Stąd na podstawie definicji równoważności możemy zapisać:
C.
Trójkąt ma boki równe wtedy i tylko wtedy gdy jest równoboczny
BR<=>R = (BR=>R)*(~BR=>~R) = 1*1=1 - ewidentna równoważność
Aby stwierdzić równoważność musimy zapisać i zbadać czy zachodzą warunki wystarczające jak wyżej w A i B. Wszystkie trzy zdania są matematycznie poprawne bowiem w definicji równoważności chodzi tylko i wyłącznie o warunki wystarczające, nigdy o implikacje (dowód pkt. 6.9)
Zauważmy, że gdybyśmy nie mieli prawa zapisać zdań A i B jako prawdziwych to niemożliwe byłoby stwierdzenie równoważności !
W zdaniach A, B i C nie ma niejednoznaczności bo:
1.
Fizycznie niemożliwym jest zrobienie implikacji z równoważności (zdania A i B) i odwrotnie (dowód pkt. 6.9)
2.
Twierdzenia matematyczne zwykle ujęte są w spójnik „Jeśli…to…”, pomimo że praktycznie 100% twierdzeń to równoważności. W twierdzeniach matematycznych spójnik „Jeśli…to…” jest domyślną równoważnością.
3.
Zdania A, B i C można zakodować superprecyzyjnie jako:
BR<=>R
To jest oczywistość mimo zapisania jej w formie A lub B.
Wniosek:
Zdanie „Jeśli … to …” może być implikacją prostą, implikacją odwrotną lub równoważnością co zależy od treści zdania.
Inny przykład:
Twierdzenie Pitagorasa.
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
TP=>SK =1 - pewny warunek wystarczający (nie implikacja !)
Jeśli trójkąt nie jest prostokątny to nie jest spełniona suma kwadratów.
~TP=>~SK=1 - również pewny warunek wystarczający
Twierdzenie Pitagorasa jest równoważnością bo:
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1 =1
Aby stwierdzić czy zdanie „Jeśli…to…” jest równoważnością musimy stwierdzić warunki wystarczające jak wyżej. Wtedy i tylko wtedy zdanie jest równoważnością.
Wynika z tego, że ten sam symbol => może oznaczać implikacje prostą albo warunek wystarczający =>.
Więcej na temat tego problemiku tu:
Nadmierna precyzja
7.1 Prawo Tygryska
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p)
Prawo Tygryska:
Zdanie „Jeśli…to…” jest równoważnością wtedy i tylko wtedy gdy zachodzą warunki wystarczające między p=>q i ~p=>~q lub między p=>q i q=>p, nie są to implikacje.
Wynika to bezpośrednio z prawa Kłapouchego (pkt.6.6) i definicji równoważności (pkt.6.9).
Przykład wyżej.
8.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
8.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
A:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
B:
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
C:
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
Matematycznie oznacza to:
Jeśli nie będziesz grzeczny to „możesz” ~> nie dostać czekolady
~G~>~C =1
Implikacja odwrotna prawdziwa bo bycie niegrzecznym jest warunkiem koniecznym nie dostania czekolady. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca zgodnie ze swoim „widzi mi się” czyli wolna wolą.
LUB
D:
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jeden taki przypadek)
Prawdziwość zdania D określa wzór:
(~G~~>C)+(~G~>C) = 1+0=1
gdzie:
~G~>C=0 - implikacja odwrotna fałszywa
~G~~>C=1 - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Dlaczego zdanie D nie może być implikacją odwrotną ?
Dowód nie wprost;
Załóżmy że zdanie D: ~G~>C jest implikacją odwrotną, obowiązują zatem prawa Kubusia.
~G~>C = G=>~C
Prawa strona jest twardym fałszem na mocy B:, zatem zdanie D: nie może być implikacją odwrotną
CND
Uwaga:
W groźbach (zdanie C) naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
Y=G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
Y=G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~Y=~(G=>C) = G*~C - skłamię
Synku, skłamię (~Y=1) jeśli będziesz grzeczny i nie dostaniesz czekolady.
~Y=G*~C
Jaś:
Mama, a czy może się zdarzyć, że będę grzeczny i nie dostanę czekolady ?
Negujemy powyższe równanie dwustronnie:
Y=~(G*~C)
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
Stąd gwarancja:
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
A:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
B:
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~>, nie jest to implikacja odwrotna.
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
C:
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
~B => ~L =1 - twarda prawda (gwarancja)
LUB
D:
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
~B => L =0 - twardy fałsz
Dlaczego zdanie B nie może być implikacja odwrotną ?
Dowód nie wprost:
Załóżmy że zdanie B: B~>~L jest implikacja odwrotną.
Obowiązuje wówczas prawo Kubusia:
B: B~>~L = D: ~B=>L
Zdanie D: jest oczywistym fałszem, zatem zdanie B nie może być implikacją odwrotną prawdziwą.
Prawdziwość zdania B: określa wzór:
(B~~>~L)+(B~>~L) = 1+0 =1
B~~>~L - nadawca ma prawo do darowania dowolnej kary (akt łaski)
Jedyne sensowne przejście z operatora implikacji odwrotnej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
Y=B~>L
Jaś:
… tata, a kiedy skłamiesz ?
Y=B~>L = B+~L = ~(~B*L) - dotrzymam słowa
Negujemy dwustronnie:
~Y=~(B~>L) = ~B*L - skłamię
Skłamię (~Y=1), jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie (z powodu czystych spodni !)
~Y=~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Y=~(~Y) - prawo podwójnego przeczenia, stąd:
Y=~(~B*L)
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
Y=~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.3 „Równoważność” w obietnicach i groźbach
Obietnice i groźby to przyszłość której nikt nie zna. Równoważność na mocy definicji pozbawia człowieka „wolnej woli” czyli w obietnicy prawa do darowania nagrody przy nie spełnionym warunku nagrody (akt miłości), zaś w groźbie prawa do darowania kary przy spełnionym warunku kary (akt łaski).
Obietnica:
Kupię ci komputer tylko wtedy jak zdasz egzamin
Równoważna implikacja prosta:
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Wypowiadając obietnicę w formie równoważności nadawca daje do zrozumienia, iż wystąpi bardzo małe prawdopodobieństwo wręczenia obiecanej nagrody jeśli warunek nagrody nie zostanie spełniony, nic więcej.
Groźba:
Zapłacę ci za ułożenie kafelków tylko wtedy gdy skończysz do soboty
Równoważna implikacja odwrotna:
Jeśli nie skończysz układania kafelków do soboty to ci nie zapłacę
~K~>~Z
Prawo Kubusia:
~K~>~Z = K=>Z
Jeśli ułożysz kafelki do soboty to ci zapłacę
K=>Z
Nadawca może grozić w dowolnie ostrej formie, jednak ma prawo do darowania dowolnej kary zależnej od niego (akt łaski), inaczej jego wolna wola leży w gruzach.
9.0 Geneza klęski dzisiejszej logiki w obszarze implikacji
Weźmy teraz najsłynniejszą tabelkę zero-jedynkową dzisiejszej logiki, przyczynę jej klęski w poszukiwaniu implikacji, którą posługuje się człowiek.
Kod: |
p q p=>q q=>p p~>q
1 1 1 1 1
1 0 0 1 1
0 1 1 0 0
0 0 1 1 1
|
Z tabeli tej odczytujemy że:
q=>p = p~>q
Powyższe równanie jest poprawne tylko i wyłącznie w równoważności bo tu zachodzi przemienność argumentów która przenosi się na implikacyjna sumę logiczną.
q=>p = ~q+p = p+~q = p~>q
czyli:
q=>p = p~>q
Oczywiście z tego równania wynika, że implikacja odwrotna p~>q jest zbędna w równoważności, co jest oczywistością bo w równoważności interesują nas tylko i wyłącznie warunki wystarczające.
W implikacji mamy do czynienia z brakiem przemienności argumentów (pkt.6.1) co przenosi się na brak przemienności argumentów w sumie logicznej czyli:
q=>p = ~q+p # p+~q = p~>q
Mamy tu zatem paradoks.
Z tabeli zero-jedynkowej wynika że:
q=>p = p~>q
natomiast z równań algebry Boole’a wynika że:
q=>p # p~>q
Jak z tego wybrnąć ?
Rozwiązanie tego paradoksu jest bardzo proste. W implikacji nie zachodzi przemienność argumentów. Przepiszmy zatem powyższą tabelę umieszczając wszędzie p z lewej strony zaś q z prawej strony.
Kod: |
p q p=>q p<=q p~>q
1 1 1 1 1
1 0 0 1 1
0 1 1 0 0
0 0 1 1 1
|
Od strony matematycznej to zabieg czysto kosmetyczny, niczego nie zmieniający.
Na podstawie definicji implikacji odwrotnej mamy teraz:
p<=q = p~>q = p+~q - definicja implikacji odwrotnej
gdzie na mocy definicji:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
czyli:
~> = <= - jeśli operator <= będzie czytany przeciwnie do strzałki jako spójnik „może” z warunkiem koniecznym.
… i po bólu, koniec pozornego paradoksu.
Oczywiście funkcja implikacji prostej p=>q na mocy definicji to zupełnie co innego niż funkcja implikacji odwrotnej p~>q, zatem wprowadzenie nowego operatora ~> jest tu konieczne, aby nie było potwornego bałaganu i możliwych niejednoznaczności np.
P8=>P2 = P2<=P8
Powyżej nie wiadomo o co chodzi bo to może być zarówno operator implikacji prostej (czytamy zgodnie ze strzałką jako „musi”), jak i operator implikacji odwrotnej (czytamy przeciwnie do strzałki jako „może”), natomiast niżej mamy 100% matematyczną jednoznaczność:
P2~>P8 = P8<~P2
tu bez problemu odczytamy zapisane symbolicznie zdanie:
Jeśli liczba jest podzielna przez 2 to może ~> być podzielna przez 8
P2~>P8 = P8<~P2
Implikacja odwrotna prawdziwa bo P2 jest konieczne dla P8.
Bardzo ciekawa jest interpretacja operatora implikacji odwrotnej <= czytanego przeciwnie do strzałki w groźbach i obietnicach.
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N - implikacja prosta, bo dobrowolnych obietnic musimy dotrzymywać
Definicja groźby:
Jeśli dowolny warunek to kara
W<=K - implikacja odwrotna, bo każdą karę nadawca ma prawo darować
Mamy zatem:
W=>N - ja tego chcę, biegnę do nagrody
W<=K - ja tego nie chcę, uciekam od kary
czyli są to dwie przeciwstawne logiki, jedna dodatnia druga ujemna, która jest która to rzecz gustu. Karę od nagrody każde żywe stworzenie musi odróżniać bo to warunek przetrwania.
Zauważmy, że bez implikacji odwrotnej <= będziemy mieli tak:
W=>N - ja tego chcę, biegnę do nagrody
W=>K - ja tego chcę, biegnę do kary
W przełożeniu na świat przyrody będzie to oznaczało że np. foka nie będzie odróżniała ryby (pożywienie) od śmiertelnego wroga (rekina), do obu tych stworzeń będzie sobie płynęła merdając ogonkiem.
Na zakończenie przypomnijmy sobie gwarancję z implikacji o piesku i jego czterech łapach.
G1.
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Implikacja prosta prawdziwa bo bycie psem jest wystarczające aby mieć cztery łapy
Na podstawie prawa Kubusia mamy:
P=>4L = ~P~>~4L = ~P+4L = ~(P*~4L)
Gwarantowane zwierzę to pies, który na pewno ma cztery łapy, poza gwarancja wszystko może się zdarzyć czyli jeśli zwierze nie jest psem to może nie mieć czterech łap (np. mrówka), albo może mieć cztery łapy (np. słoń) … czyli mamy rzucanie monetą.
G2.
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Implikacja odwrotna prawdziwa bo cztery łapy są warunkiem koniecznym dla psa
Gwarancja wynika tu z prawa Kubusia:
4L~>P = ~4L=~>~P = 4L+~P = ~(~4L*P)
Gwarantowane są zwierzaki które nie mają czterech łap czyli: mrówka, wąż, kura … te na pewno nie są psami, poza gwarancja wszystko może się zdarzyć czyli jeśli zwierzę ma cztery łapy to może być psem (tu pies), albo może nie być psem (np. słoń) … czyli znów mamy rzucanie monetą.
Zauważmy, że gwarancje wynikające z prawa Kubusia są identyczne w każdej literce, natomiast gwarancja G1 jest fundamentalnie inna niż G2, zatem mamy na przykładzie dowód iż nie zachodzi przemienność implikacyjnej sumy logicznej wynikłej z definicji operatorów => i ~> oraz że:
P=>4L # 4L~>P - bo kompletnie inne gwarancje
czyli:
p=>q # p~>q
Dla lewej strony mamy:
p=P i q=4L
natomiast dla prawej strony nierówności mamy:
p=4L i q=P
czyli różne znaczenie parametrów formalnych po stronie lewej i prawej.
Literki p i q są tu wstawiane prawidłowo na mocy odpowiednich definicji.
Definicja implikacji prostej:
P=>4L
p=>q
Jeśli zajdzie p to musi => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
4L~>P
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
CND
9.1 Kwantyfikatory w implikacji są nieporozumieniem
Kwantyfikatory w implikacji są nieporozumieniem, wynikiem fałszywej definicji implikacji materialnej.
Poprawne są tylko i wyłącznie takie definicje implikacji.
Definicja implikacji prostej:
p=>q = ~p+q
p musi być warunkiem wystarczającym dla q
Definicja implikacji odwrotnej:
p~>q = p+~q
p musi być warunkiem koniecznym dla q
Warunki wystarczający w implikacji prostej => i konieczny w implikacji odwrotnej ~> wynikają bezpośrednio z dziewiczych definicji zero-jedynkowych tych implikacji.
Kwantyfikator „dla każdego” wynika z warunku wystarczającego p=>q, czyli nowej definicji implikacji.
W dzisiejszej logice jest dokładnie odwrotnie bo ludzie nie znają poprawnych definicji implikacji jak wyżej, czyli warunek wystarczający wynika z kwantyfikatora, czyli warunek wystarczający to zdanie pod kwantyfikatorem ogólnym „dla każdego”.
Nie da się opisać implikacji odwrotnej czyli warunku koniecznego kwantyfikatorem szczegółowym „istnieje” bo zdanie może być prawdziwe (naturalne „może” ~~>), ale nie musi być implikacja odwrotną.
Wniosek:
Kwantyfikatory są do kitu w implikacji. Od biedy mogą być w równoważności bo tu mamy do czynienia wyłącznie z warunkiem wystarczającym.
10.0 Podsumowanie
Ten punkt zawiera esencję wszystkiego co należy zapamiętać, dalej mamy logikę przedszkolaka.
Z przymrużeniem oka … czyli matematyczna historia powstania naszego Wszechświata.
Na początku było:
1=1
i stał się cud:
(p+~p)=(q+~q)
p+~p=1 - prawo algebry Boole’a
czyli:
p=>(q+~q)
~p=>(~q+q)
Równoważność:
Kod: |
p q p<=>q
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
W naszym Wszechświecie zdecydowanie przeważa implikacja, zatem ostatnie dwie linie ulegają rozczepieniu:
Operatorowa definicja implikacji prostej:
Kod: |
p q p=>q
p=> q =1
p=>~q =0
~p~>~q =1
~p~~>q =1
|
lub pierwsze dwie linie z definicji równoważności ulegają rozczepieniu:
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
p~> q =1
p~~>~q =1
~p=> ~q =1
~p=> q =0
|
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
10.1 Geneza zero-jedynkowych tabel operatorów logicznych
Zero-jedynkowe tabele operatorów logicznych generuje naturalna logika człowieka, nigdy odwrotnie. Błędem jest zatem twierdzenie dzisiejszych logików (KRZ), jakoby logika polegała na analizie wszystkich możliwych śmieci i dopasowywaniu do nich tabel zero-jedynkowych.
Dowód:
W definicjach operatorowych opuszczamy operatory oraz przyjmujemy:
p=1, ~p=0
q=1, ~q=o
stąd otrzymujemy.
Zero-jedynkowa definicja równoważności:
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
CND
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Pon 20:35, 10 Sie 2009 Temat postu: |
|
|
Beta 6.0
Narzędzia, których próbujemy używać, język lub notacja których używamy do wyrażenia lub rejestrowania naszych myśli, są głównymi czynnikami określającymi to, co w ogóle możemy myśleć lub wyrazić.
E.W. Dijkstra, pionier informatyki
Algebra Kubusia
Matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
Kim jest Kubuś ?
Kubuś to Miś kosmita, wysłannik obcej cywilizacji, którego zadaniem było przekazanie ludziom tajemnicy implikacji. W mniemaniu Kubusia zadanie zostało wykonane, ale wcale nie jest pewne czy ludzie to załapią … cóż, będzie co ma być, niebo albo piekło.
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Fizyk (ateista.pl), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), NoBody (ateista.pl), Rafał3006 (sfinia), Rogal (matematyka.pl), Uczy (wolny), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za decydującą o wszystkim dyskusję
… wszystko, co chcecie, żeby ludzie wam czynili, wy też im podobnie czyńcie …
Ewangelia Mateusza 7:12
To jest podręcznik, przy pomocy którego chciałbym poznać fundamenty logiki człowieka, gdybym miał znowu 16 lat
Kubuś
Spis treści:
1.0 Notacja
1.1 Fundament logiki klasycznej w pigułce
1.1.1 Funkcja logiczna
1.1.2 Definicja logiki ujemnej
1.1.3 Definicja implikacji prostej
1.1.4 Definicja implikacji odwrotnej
1.1.5 Spójniki zdaniowe
1.2 Najważniejsze prawa algebry Boole’a
1.2.1 Operatory AND i OR
1.3 Implikacja z gwarancją
1.3.1 Prawa Kubusia
1.4 Implikacja bez gwarancji
1.4.1 Prawa kontrapozycji
1.4.2 Prawo kontrapozycji w operatorze ~>
1.4.3 Prawo kontrapozycji w operatorze =>
1.5 Równoważność
1.5.1 Prawo kontrapozycji
1.6 Prawo Sowy
1.7 Algebra Kubusia
1.8 Definicja algebry Kubusia
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
2.1 Podstawowe pojęcia i definicje
2.2 Funkcja logiczna jednej zmiennej
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
2.5 Logika ujemna
2.6 Definicja sumy logicznej
2.7 Prawo Prosiaczka
2.8 Definicja iloczynu logicznego
2.9 Dowody zero-jedynkowe w algebrze Boole’a
2.10 Logika dodatnia i ujemna w bramkach logicznych
2.11 Operatory OR i AND w logice człowieka
3.0 Zero-jedynkowa algebra Boole’a
3.1 Prawa wynikające z definicji iloczynu logicznego
3.2 Prawa wynikające z definicji sumy logicznej
3.3 Najważniejsze prawa algebry Boole’a
3.4 Operatory dodatnie i operatory ujemne
Część II Implikacja
4.0 Notacja szczególna w implikacji
4.1 Rodzaje implikacji
4.2 O co chodzi w implikacji
4.3 Kubuś na tropie implikacji odwrotnej
4.4 Implikacja odwrotna
4.5 Operatorowa definicja implikacji odwrotnej
4.6 Zero-jedynkowa definicja implikacji odwrotnej
4.7 Gwarancja matematyczna w implikacji odwrotnej
5.0 Kubuś na tropie implikacji prostej
5.1 Operatorowa definicja implikacji prostej
5.2 Zero-jedynkowa definicja implikacji prostej
5.3 Gwarancja w implikacji prostej
6.0 Fundamenty algebry Boole’a
6.1 Iloczyn kartezjański i pojęcie funkcji
6.2 Funkcja iloczynu algebraicznego
6.3 Funkcja iloczynu logicznego AND(*)
6.4 Algebra Boole’a i prawo przemienności
6.5 Prawa Kubusia
6.6 Prawo Kłapouchego
6.7 Implikacja w bramkach logicznych
6.8 Kwadrat logiczny implikacji
6.9 Równoważność
6.10 Kwadrat logiczny równoważności
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
7.1 Prawo Tygryska
8.0 Obietnice i groźby
8.1 Obietnice
8.2 Groźby
8.3 „Równoważność” w obietnicach i groźbach
9.0 Podsumowanie
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Wstęp.
Algebra Kubusia to symboliczna algebra Boole’a, odpowiednik języka asemblera ze świata mikroprocesorów. W algebrze Kubusia operujemy przede wszystkim na symbolach, czyli naturalnym języku mówionym, trzymając się możliwie jak najdalej od idiotycznych zer i jedynek. Oczywiście algebra Kubusia ma bezpośrednie i 100% przełożenie na zera i jedynki, co będziemy zawsze udowadniać.
Kubuś to przybysz ze świata techniki dobrze znający techniczną algebrę Boole’a której fundamentem są operatory AND(*) i OR(+). Zaskoczył go fakt, że dzisiejsza logika (KRZ) to rachunek zero-jedynkowy, że cała współczesna algebra Boole’a to mielenie bezsensownych zer i jedynek. W technicznej algebrze Boole’a myślimy naturalną logiką człowieka zapisując symbolicznie to co chcemy uzyskać. Na tym najważniejszym etapie projektowania (poziom algorytmu) zera i jedynki kompletnie nas nie interesują, wszystko zapisujemy w symbolicznych równaniach algebry Boole’a.
Matematycznie istnieją dwie zero-jedynkowe definicje implikacji znane człowiekowi od ponad stu lat, implikacja prosta => i implikacją odwrotna ~>. Definicje implikacji to w jednej połówce pewne wynikanie matematyczne (gwarancja matematyczna), natomiast w drugiej połowie to najzwyklejsze rzucanie monetą, czyli przypadek (pkt.6.6). Z tego powodu implikacja jest bezsensem w świecie techniki. Implikacja opisuje między innymi „wolną wolę” świata martwego i żywego. Oczywiście żaden projektant nie życzy sobie, aby zaprojektowane przez niego urządzenie wykazywało jakiekolwiek oznaki wolnej woli.
Człowiek poszukuje matematycznej wersji implikacji którą posługuje się w naturalnym języku mówionym od 2500 lat, jak do tej pory bezskutecznie. Po trzech latach walki z implikacją Kubuś i przyjaciele wreszcie to wszystko rozszyfrowali.
Łatwo sformułować warunki które musi spełniać poprawna matematycznie teoria języka mówionego.
1.
Teoria musi być niezależna od jakiegokolwiek języka świata
2.
Teoria musi być matematycznie jednoznaczna
3.
Teoria musi opisywać naturalny język mówiony, którym posługują się dzieci w przedszkolu
Symboliczna algebra Kubusia bez problemu spełnia wszystkie trzy warunki. Algebra Kubusia to algebra Boole’a z dołączonymi do definicji poprawnymi definicjami implikacji prostej => i odwrotnej ~>.
Nowe, nieznane człowiekowi definicje implikacji prostej => i odwrotnej ~> (oczywiście chodzi tu o interpretacje tabel zero-jedynkowych) plus prawa Kubusia działają doskonale w matematyce, przyrodzie martwej i żywej, groźbach i obietnicach oraz opisują takie pojęcia jak „wolna wola” czy „dobro-zło”.
KRZ - Klasyczny Rachunek Zdań, dział logiki, w zakresie implikacji oparty na definicji implikacji materialnej. Fundamentem KRZ jest rachunek zero-jedynkowy.
Uwaga:
W tej publikacji używając terminu „dzisiejsza logika” będziemy mieli na myśli KRZ
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
Symboliczna algebra Kubusia:
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
Rachunek zero-jedynkowy:
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków (warunek wystarczający =>)
Miękka prawda/fałsz - może zajść, ale nie musi (warunek konieczny ~>)
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
Matematyczny żargon stosowany w tej publikacji:
Implikacja z gwarancją (zabroniona zamiana p i q), oznacza patrzenie na implikację z punktu odniesienia praw Kubusia.
Implikacja bez gwarancji (zezwolenie na zamianę p i q), oznacza patrzenie na tą samą implikację z punktu odniesienia praw kontrapozycji.
Oczywiście nie ma dwóch różnych implikacji z gwarancją i bez gwarancji, tu chodzi wyłącznie o możliwość zamiany p i q oraz brak takiej możliwości.
Uwaga:
W całym podręczniku pisząc „implikacja” będziemy mieli na myśli domyślnie „implikację z gwarancją”.
W tym miejscu początkujący czytelnicy proszenie są o przeskok do punkt 2.0 gdzie rozpoczyna się elementarz algebry Boole’a od zupełnego zera. Oczywiście można zerknąć na cały rozdział 1.0 ale z pewnością będą to dla początkującego czytelnika nic nie mówiące krzaczki.
1.1 Fundament logiki klasycznej w pigułce
Logika klasyczna zbudowana na zaprezentowanym tu fundamencie to 100%, poprawna algebra Boole’a. Niemożliwe są tu jakiekolwiek paradoksy znane w starej logice klasycznej. W poprawnej matematyce to po prostu niemożliwe.
Algebra Boole’a to algebra bramek logicznych która ma zero wspólnego z matematyką klasyczną np. całki, ekstrema funkcji itp. Prawa tu obowiązujące nie muszą pokrywać się z aksjomatami wyznaczonymi dla matematyki klasycznej,
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych ludziom od prawie 200 lat.
1.1.1 Funkcja logiczna
Definicja:
Funkcja logiczna Y to funkcja n-zmiennych binarnych połączonych operatorami AND(*) lub OR(+):
Y = A+(B*C) ….
1.1.2 Definicja logiki ujemnej
Definicja:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
1.1.3 Definicja implikacji prostej
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
1.1.4 Definicja implikacji odwrotnej
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Warunki wystarczający w implikacji prostej => i konieczny w implikacji odwrotnej ~> wynikają bezpośrednio z dziewiczych definicji zero-jedynkowych tych implikacji.
1.1.5 Spójniki zdaniowe
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
1.2 Najważniejsze prawa algebry Boole’a
Zaprezentowane tu prawa to fundament logiki człowieka:
Logika człowieka = poprawna algebra Boole’a
1.2.1 Operatory AND i OR
Operatory AND i OR - przemienność argumentów zachodzi
OR(+)
Y=p+q
~Y=~p*~q
Y=~(~Y)
stąd:
p+q = ~(~p*~q) - prawo de’Morgana
AND(*)
Y=p*q
~Y=~p+~q
Y=~(~Y)
stąd:
p*q = ~(~p+~q) - prawo de’Morgana
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operatory.
1.3 Implikacja z gwarancją
Implikacja z gwarancją - przemienności argumentów nie zachodzi
Definicja:
Implikacja z gwarancją, to implikacja w której występuje tożsamość gwarancji i nie występuje tożsamość operatorów (prawa Kubusia)
1.3.1 Prawa Kubusia
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
W prawach Kubusia występuje tożsamość gwarancji i nie występuje tożsamość operatorów co widać wyżej.
Dowód:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
~p~>~q = (~p)+~(~q) = ~p+q = p=>q
~p=>~q = ~(~p)+(~q) = p+~q = p~>q
Doskonale widać zachodzące tożsamości w poziomie nie zachodzące ani w pionach, ani po przekątnych.
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operator na przeciwny
Uwaga:
Zachodzące prawa Kubusia są dowodem implikacji z gwarancją.
1.4 Implikacja bez gwarancji
Implikacja bez gwarancji - przemienność argumentów zachodzi
Definicja:
Implikacja bez gwarancji to implikacja, w której występuje tożsamość operatorów i nie występuje tożsamość gwarancji (prawa kontrapozycji).
1.4.1 Prawa kontrapozycji
Prawo Kontrapozycji:
p=>q = ~q=>~p
p~>q = ~q~>~p
W prawach kontrapozycji występuje tożsamość operatorów (co widać wyżej) i nie występuje tożsamość gwarancji.
Dowód:
p=>q =~p~>~q = ~p+q = q+~p = q~>p = ~q=>~p = q+~p = ~p+q
p~>q = ~p=>~q = p+~q = ~q+p = q=>p = ~q~>~p = ~q+p = p+~q
Doskonale widać zachodzące tożsamości w poziomie i nie zachodzące ani w pionach, ani po przekątnych.
gdzie:
p=>q =~p~>~q - prawo Kubusia
Prawo przejścia do logiki przeciwnej:
Zamieniamy zanegowane argumenty bez zmiany operatorów
1.4.2 Prawo kontrapozycji w operatorze ~>
Prawo kontrapozycji w operatorze ~>:
p~>q = ~q~>~p
Zachodzące prawo kontrapozycji w operatorze ~> jest dowodem implikacji z gwarancją. Zauważmy jednak, że już samo zapisanie implikacji p~>q prawdziwej czyli z zachodzącym warunkiem koniecznym, jest dowodem zachodzenia prawa kontrapozycji w operatorze ~>. W mowie potocznej człowiek praktycznie nie korzysta z implikacji bez gwarancji co nie oznacza, że 5-cio latek miałby tu jakiekolwiek problemy.
Sens prawa kontrapozycji w implikacji odwrotnej ~>
Wystarczy udowodnić warunek konieczny zachodzący po dowolnej stronie tożsamości, aby mieć pewność, że zachodzi po drugiej stronie. W implikacji zdecydowanie łatwiej jest udowodnić warunek konieczny w p~>q.
Przykład:
A
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
Cztery łapy są konieczne aby być psem, zatem jest to implikacja odwrotna prawdziwa
Prawo kontrapozycji:
4L~>P = ~P~>~4L - gwarancje różne
B.
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L = 4L~>P
Gwarancja w implikacji odwrotnej wynika z prawa Kubusia, zawsze jest nią warunek wystarczający =>.
Zdanie A:
Prawo Kubusia:
4L~>P = ~4L=>~P - gwarancje po obu stronach identyczne
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P
Gwarancja:
mrówka, stonoga, wąż - na pewno nie są psami
Zdanie B.
Prawo Kubusia:
~P~>~4L = P=>4L - gwarancje po obu stronach identyczne
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarancja:
Pies, który na pewno ma cztery łapy
Zauważmy, że gwarancje w zdaniach A i B są różne zatem prawo kontrapozycji nie zachowuje gwarancji w implikacji.
4L~>P = ~P~>~4L - gwarancje różne
CND
1.4.3 Prawo kontrapozycji w operatorze =>
Zastosowanie tego prawa to głównie matematyka.
Prawo kontrapozycji w operatorze =>:
p=>q = ~q=>~p
Zachodzące prawo kontrapozycji w operatorze => jest dowodem, że zdanie może być albo równoważnością albo implikacją, nie sposób tu rozstrzygnąć czym jest na prawdę.
Sens prawa kontrapozycji w operatorze =>
Wystarczy udowodnić warunek wystarczający zachodzący po dowolnej stronie, aby mieć pewność warunku wystarczającego z drugiej strony.
Przykład z implikacji:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Prawo Kubusia:
P8=>P2 = ~P8~>~P2 - gwarancje po obu stronach identyczne
8,16,, = 8,16 .. - tu jest wszystko w porządku !
Prawo kontrapozycji:
P8=>P2 = ~P2=>~P8 - gwarancje po obu stronach różne
8,16 .. # 1,3 ..
Powyższe zbiory nie są swoim dopełnieniem bo istnieje trzeci zbiór 2,4,6 …
Przykład z równoważności:
Jeśli trójkąt ma boki równe to jest równoboczny.
BR=>R
Prawo kontrapozycji:
BR=>R = ~R=>~BR - gwarancje po obu stronach identyczne
W tym przypadku zbiór trójkątów po lewej stronie jest dopełnieniem zbioru trójkątów po prawej stronie
Pytanie zatem czy nie powinna być odwrotna kolejność, czyli najpierw rozstrzygamy czy coś jest implikacją/równoważnością a dopiero później stosujemy prawa Kubusia (implikacja) albo prawa kontrapozycji (równoważność).
1.5 Równoważność
Zero-jedynkowa definicja równoważności:
p<=>q = p*q+~p*~q
Znaczy się równanie algebry Boole’a opisujące tabelę zero-jedynkową.
Wszelkie tabele zero-jedynkowe w logice to epoka dinozaurów … czemu nikt nie zauważył iż żyjemy w XXI wieku, epoce komputerów i Internetu ?
Definicja operatorowa równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p) - definicja operatorowa równoważności
gdzie:
p=>q, ~p=>~q, q=>p - zachodzące warunki wystarczające, nie są to implikacje
Dowód:
W równoważności zachodzi przemienność argumentów zatem:
~p=>~q = p~>q = p+~q = ~q+p = q=>p
gdzie:
~p=>~q = p~>q - prawo Kubusia
W twierdzeniach matematycznych zdecydowanie łatwiejsza jest definicja:
p<=>q = (p=>q)*(~p=>~q)
Oczywiście, udowodnienie równoważności z wykorzystaniem powyższej definicji, jest dowodem zachodzącego warunku wystarczającego w stronę q=>p czyli pewne jest że:
p<=>q = (p=>q)*(q=>p)
1.5.1 Prawo kontrapozycji
Prawo kontrapozycji:
p=>q = ~q=>~p
Dowód:
W równoważności zachodzi przemienność argumentów zatem:
~q=>~p = q~>p = q+~p = ~p+q = p=>q
gdzie:
~q=>~p = q~>p - prawo Kubusia
1.6 Prawo Sowy
Prawo Sowy
W algebrze Boole’a jeśli coś jest implikacją to nie może być równoważnością
W algebrze Boole’a jeśli coś jest równoważnością to nie może być implikacją
Implikacja i równoważność to dwa oddzielne światy matematyczne pomiędzy którymi nie zachodzą żadne związki matematyczne.
1.7 Algebra Kubusia
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych ludziom od prawie 200 lat.
Iloczyn kartezjański i pojęcie funkcji (pkt. 6.1) to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w operatorach AND(*), OR(+), równoważności <=> i XOR oraz brak przemienności argumentów w operatorach implikacji prostej => i implikacji odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacji przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z definicji tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
czyli:
p=>q # q~>p
p~>q # q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacji do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Zauważmy coś fundamentalnie ważnego:
W operatorach AND(*) i OR(+) można się obejść bez jednego z tych operatorów na podstawie praw de’Morgana:
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Wydawać by się mogło, że na tej samej zasadzie zbędna jest implikacja odwrotna ~>, bo prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikacje prostą =>
Nic bardziej błędnego !
Prawa Kubusia działają bowiem w obrębie jednej i tej samej definicji zero-jedynkowej. Niemożliwe jest zatem istnienie implikacji prostej => (pewne wynikanie) bez implikacji odwrotnej ~> (rzucanie monetą) i odwrotnie - patrz prawo Kłapouchego pkt. 6.6.
1.8 Definicja algebry Kubusia
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
Zmienna binarna - zmienna przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Funkcja logiczna (Y) - to funkcja zmiennych binarnych połączonych operatorami logicznymi AND(*) lub OR(+) przyjmująca w osi czasu wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Przykładowa funkcja logiczna:
Y=A+(B*~C)
gdzie:
Y - funkcja logiczna (typowe oznaczenie rodem z teorii układów logicznych)
A,B,C … - zmienne binarne
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Lista legalnych operatorów logicznych w postaci zero-jedynkowej:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Za operatory dodatnie przyjęto te, które człowiek używa w naturalnym języku mówionym. Wyjątkiem jest tu operator XOR, w języku mówionym spójnik „albo”.
Operator ujemny to zanegowany operator dodatni, co doskonale widać w powyższej tabeli.
Operator dodatni to zanegowany operator ujemny, co również widać wyżej.
Kod: |
Definicje operatorów ujemnych:
pNORq = ~(p+q)
pNANDq = ~(p*q)
pXORq = ~(p<=>q)
pN(=>)q = ~(p=>q)
pN(~>)q = ~(p~>q)
pNOPq = ~(pFILLq)
pNPq = ~(pPq)
pNQq = ~(pQq)
|
W języku mówionym operatory ujemne nie są używane, ponieważ łatwo je zastąpić operatorami dodatnimi plus negacją co widać w powyższej tabeli.
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
Pewnego razu Kubuś, leżąc na polance w stumilowym lesie doznał olśnienia. A gdyby tak wyzerować sobie mózg, czyli założyć że moja matematyczna wiedza wstępna jest na poziomie ucznia I klasy LO który nie ma pojęcia o algebrze Boole’a i napisać podręcznik logiki dla samego siebie ?
Hmm… to całkiem niezły pomysł, pomyślał Kubuś.
Fundamentem dzisiejszej logiki (KRZ) jest rachunek zero-jedynkowy, będący przyczyną jej klęski w poszukiwaniu logiki człowieka. Po prostu praktycznie nie da się dojść od zer i jedynek do poziomu naturalnej logiki człowieka. Do problemu trzeba podejść dokładnie z drugiej strony, czyli myśleć logicznie jak dziecko w przedszkolu zapisując swoje myślenie w postaci równań algebry Boole’a.
2.1 Podstawowe pojęcia i definicje
Pewne jest, że algebrą Kubusia doskonale posługują się wszystkie dzieci w przedszkolu. Zacznijmy zatem myśleć logicznie jak 5-letnie dziecko i przelewajmy wszystko na papier. Oczywiście aby to robić musimy znać fundamentalne pojęcia i definicje z zakresu logiki. Aparatu matematycznego nie potrzebujemy w ogóle gdyż mamy go w głowie - to nasz mózg.
+ - suma logiczna, spójnik „lub” (OR) w naturalnym języku mówionym
* - iloczyn logiczny, spójnik „i” (AND) w naturalnym języku mówionym
~ - przeczenie „NIE”
K - kino
~K - nie kino
T - teatr
~T - nie teatr
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
~(…) - nieprawda że …, nie może się zdarzyć że …
Znaczenie symboli w logice:
K, T - zmienne binarne, mogące przyjmować w osi czasu wyłącznie wartości 0 albo 1
Y - funkcja logiczna zmiennych binarnych np.
Y = K+T
Y = Kino lub (+) Teatr
Definicja zmiennej binarnej:
Zmienna binarna to zmienna mogąca przyjmować w osi czasu wyłącznie wartości 0 albo 1
Definicja funkcji logicznej:
Funkcja logiczna to funkcja zmiennych binarnych połączonych operatorami OR(+) lub AND(*) przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Prawo podwójnego przeczenia:
Y=~(~Y)
prawda = nieprawda, że nieprawda
Dowód na przykładzie:
U= jestem uczciwy
~U = jestem nieuczciwy
U=~(~U)
Nieprawdą jest, że jestem nieuczciwy
czyli:
Jestem uczciwy = Nieprawdą jest że jestem nieuczciwy
W dzisiejszej logice (KRZ), której fundamentem jest rachunek zero-jedynkowy, zwyczajowo przyjmuje się logikę dodatnią gdzie:
1 = prawda, dotrzymam słowa
0 = fałsz, skłamię
… i niech tak zostanie, choć oczywiście możliwy jest standard przeciwny, czyli logika ujemna w stosunku do przyjętego standardu.
Poprawna logika nie powinna zależeć od przyjętego standardu jak wyżej. Każdy człowiek, od przedszkolaka po profesora doskonale posługuje się algebrą Kubusia na poziomie symbolicznym. Absolutnie nikt nie myśli logicznie przy pomocy zer i jedynek poza dinozaurami logiki, fanatykami rachunku zero-jedynkowego.
Identycznie jest w technice mikroprocesorowej. Człowiek myślał tu w kodzie maszynowym czyli zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wymyślił symboliczny język asemblera mający bezpośrednie przełożenie na kod maszynowy programu … czyli skopiował działanie własnego mózgu.
Z punktu odniesienia mikroprocesora mamy świat w 100% binarny czyli mikroprocesor zna wyłącznie zera i jedynki. Z punktu odniesienia człowieka mamy zupełnie inną rzeczywistość. Wszyscy wiemy, że komputery potrafią liczyć, rysować, malować, sterować fabryką bez ludzi itd.
Jak zatem działa program napisany przez człowieka w symbolicznym języku asemblera skoro mikroprocesory znają wyłącznie dwie cyferki 0 i 1 ?
Oczywiście konieczny jest tu translator języka symbolicznego na kod maszynowy programu czyli na zera i jedynki. Translator to również napisany przez człowieka program komputerowy, nic więcej.
Fundamentalnym językiem symbolicznym każdego mikroprocesora jest język asemblera, to fundament wszelkich innych języków wysokiego poziomu. Język asemblera jest jeden (to algebra Boole’a), natomiast języków wysokiego poziomu może być nieskończenie wiele.
Zacznijmy teraz myśleć logicznie jak 5-cio letnie dziecko zapisując wszystko w równaniach algebry Boole’a.
2.2 Funkcja logiczna jednej zmiennej
Jutro idę do kina
Y=K
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina (K)
Y=K
Kiedy zostanę kłamcą ?
Skłamię (~Y), jeśli jutro nie pójdę do kina
~Y = ~K
Zauważmy, że po prostu zanegowaliśmy dwustronnie równanie Y=K
Inne zdanie:
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
Jutro pójdę do kina lub do teatru
Y=K+T
czyli matematycznie:
Dotrzymam słowa (Y), jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Oczywiście zatrudniliśmy tu aparat matematyczny wbudowany w mózg każdego człowieka.
… czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru
Y=~(~K*~T)
Ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
A: Y=K+T
B: ~Y=~K*~T
C: Y=~(~Y) - prawo podwójnego przeczenia
Stąd po podstawieniu A i B do C mamy prawo de’Morgana:
K+T = ~(~K*~T) - prawo zamiany operatora OR(+) na AND(*)
Czyli zdanie równoważne do Y będzie brzmiało:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
~(~K*~T) = K+T
Ostatnie zdanie używane jest niezwykle rzadko. Nasz mózg optymalizuje odpowiedzi, czyli jeśli to samo można wyrazić prościej to preferuje tą odpowiedź (tu K+T)
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
Jutro pójdę do kina i do teatru
Y=K*T
czyli matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y = ~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru.
Y=~(~K+~T)
Oczywiście ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
Mamy wyżej:
A: Y=K*T
B: ~Y=~K+~T
Prawo podwójnego przeczenia:
C: Y=~(~Y)
Podstawiając A i B do C mamy prawo de’Morgana:
K*T = ~(~K+~T) - prawo zamiany operatora AND(*) na OR(+)
2.5 Logika ujemna
Popatrzmy jeszcze raz na matematykę, którą posługuje się każdy przedszkolak.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Koniec !
To jest cała matematyka, którą każdy człowiek od przedszkolaka po profesora używa milion razy na dobę. Jak widać mózg przedszkolaka na pytanie „Kiedy skłamię ?” odpowiada w logice ujemnej.
Definicja logiki ujemnej:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
Nietrudno zauważyć, jak mózg dziecka przechodzi z logiki dodatniej (Y) do logiki ujemnej (~Y), po prostu neguje wszystkie zmienne i wymienia operator na przeciwny. Nietrudno też się domyśleć, że to jest poprawny sposób przejścia do logiki ujemnej dla dowolnie długiej funkcji logicznej.
Metoda przedszkolaka:
Przejście z logiki dodatniej (Y)do ujemnej (~Y) lub odwrotnie uzyskujemy negując wszystkie zmienne i wymieniając operatory na przeciwne.
Przykład:
A: Y=A+(~B*C)
Przejście do logiki ujemnej poprzez negację zmiennych i wymianę operatorów na przeciwne:
B: ~Y = ~A*(B+~C)
Oczywiście zachodzi:
C: Y=~(~Y) - prawo podwójnego przeczenia
Podstawiając A i B do C mamy prawo de’Morgana.
A+(~B*C) = ~[~A*(B+~C)]
Łatwo zauważyć, że z prawa de’Morgana mózg dziecka praktycznie nigdy nie korzysta … no, chyba że w fazie poznawania języka, kiedy to dwulatek zadaje wszelkie możliwe pytania.
Popatrzmy na to jeszcze raz, delektując się genialną matematyką która posługuje się każde dziecko.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Już dziecko pięcioletnie nie będzie zadawało więcej pytań bo wszystko jest jasne, dwulatek może jednak kontynuować.
… a czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Ostatnie zdanie w dialogu:
~Y=~K*~T
Negujemy dwustronnie i mamy odpowiedź na temat, czyli zgodną z zadanym pytaniem.
Y=~(~K*~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
Na powyższe pytanie można odpowiedzieć inaczej:
Jutro na pewno pójdę do kina lub do teatru
Y=K+T
Jednak nie będzie to ścisła odpowiedź na zadane pytanie, dlatego mało kto tak odpowie.
2.6 Definicja sumy logicznej
Powyżej użyliśmy niezawodnego aparatu matematycznego, mózgu 5-cio latka, do rozszyfrowania operatorów OR(+) i AND(*). Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych. Powszechnie przyjętym zwyczajem jest, że zmienne formalne w algebrze Boole’a oznaczamy literkami p i q. Dla konkretnego przypadku pod zmienne formalne p i q podstawiamy zmienne aktualne.
Y=p+q - formalny zapis sumy logicznej
Jutro pójdę do kina lub do teatru.
Y=K+T - aktualny zapis sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
Y = A1+A2+… An =0 <=> A1=0, A2=0 …An=0
Definicja równoważna:
Suma logiczna n-zmiennych binarnych jest równa jeden gdy którakolwiek ze zmiennych jest równa jeden.
Zajrzyjmy ponownie do przedszkola ….
Pani do dzieci w przedszkolu:
Słuchajcie dzieci, obiecuję wam że jutro pójdziemy do kina lub do teatru
Y=K+T
Które z was powie mi kiedy dotrzymam słowa ?
Odpowiedzi 5-cio letniego Jasia zapiszemy w formie tabeli:
K*T = Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i do teatru
K*~T =Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i nie pójdziemy do teatru
~K*T =Y - dotrzymam słowa (Y) jeśli nie pójdziemy do kina i pójdziemy do teatru
Oczywiście wyłącznie jeden z powyższych przypadków może jutro wystąpić, czyli używamy definicji sumy logicznej aby z powyższego wygenerować równanie algebry Boole’a.
Y=K*T + K*~T + ~K*T
Pani dotrzyma słowa wtedy i tylko wtedy gdy wystąpi którykolwiek z powyższych przypadków.
Bardzo dobrze Jasiu, a teraz które z was powie kiedy skłamię ?
Zuzia:
Pani skłamie (~Y) jeśli jutro nie pójdziemy do kina i nie pójdziemy do teatru
~K*~T =~Y
Zauważmy, że wyżej mamy zapisane wszystkie przypadki dla zmiennych K i T jakie w przyszłości mogą wystąpić. Możemy to nazwać „matrycą przyszłości”, nic poza tą matrycą nie ma prawa się wydarzyć.
Zapiszmy to wszystko razem w formie tabeli:
Kod: |
K T = Y
K ~T = Y
~K T = Y
~K ~T =~Y
|
Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych.
Przyjmijmy zatem:
p=K i q=T
i przepiszmy powyższą tabelkę.
Kod: |
p q = Y=p+q
p q = Y
p ~q = Y
~p q = Y
~p ~q =~Y
|
Zauważmy, że do tej pory analizujemy sobie poczynania mózgu 5-cio latka w postaci symbolicznej. Nadszedł czas, aby z powyższego zapisu symbolicznego wygenerować kod maszynowy czyli definicje zero-jedynkową sumy logicznej.
Przyjmujemy logikę dodatnią:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
i mamy to co fanatycy zer i jedynek lubią najbardziej.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Zauważmy, że w powyższej tabeli mamy pełną zgodność z definicją logiki dodatniej i ujemnej. W logice dodatniej (Y=1) mamy odpowiedź na pytanie kiedy wystąpi prawda, zaś w logice ujemnej (~Y=1) mamy odpowiedź na pytanie kiedy wystąpi fałsz.
W tabeli widać też znaczenie kolumny wynikowej w logice dodatniej (Y):
Y=1 - dotrzymam słowa
Y=0 - skłamię
Znaczenie kolumny wynikowej w logice ujemnej (~Y):
~Y=0 - dotrzymam słowa
~Y=1 - skłamię
Matematycznie wszystko musi się zgadzać czyli:
Y=~(~Y) =1 - dotrzymam słowa w logice dodatniej
Y=~(~Y)=0 - skłamię w logice dodatniej
Oczywiście matematycznie zachodzi:
Y=~(~Y) - prawo podwójnego przeczenia
oraz:
Y#~Y
czyli jedynka w logice dodatniej (Y) to zupełnie co innego niż jedynka w logice ujemnej (~Y).
Oczywiście wszystko musi się tu zgadzać czyli:
Y=~(~Y)=Y - oczywistość w powyższej tabeli
oraz:
~Y=1 czyli Y=0 - sprowadzenie fałszu w logice ujemnej (~Y=1) do fałszu w logice dodatniej (Y=0).
2.7 Prawo Prosiaczka
Prawo Prosiaczka mówi o sposobie przejścia z tabeli zero-jedynkowej n-elementowej do równania algebry Boole’a opisującego tą tabelę.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Kubuś, nauczyciel logiki w I klasie LO w stumilowym lesie:
Kto potrafi z powyższej tabeli zero-jedynkowej wygenerować równanie algebry Boole’a ?
Wszystkie ręce w górze, do tablicy podchodzi Jaś:
W ostatniej linii w wyniku mamy samotne zero, zatem dla tej linii możemy zapisać najprostsze równanie.
Z tabeli widzimy że:
A.
Y=0 <=> p=0 i q=0
Przejście z takiego zapisu do równań algebry Boole’a jest banalne. Należy skorzystać z definicji iloczynu logicznego sprowadzając wszystkie zmienne do jedynki albo z definicji sumy logicznej sprowadzając wszystkie zmienne do zera.
Sposób I.
Sprowadzam wszystkie zmienne do jedynki:
B.
Y=0 czyli ~Y=1
p=0 czyli ~p=1
q=0 czyli ~q=1
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Korzystając z A i B na podstawie tej definicji mamy:
~Y = ~p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując wszystkie zmienne i wymieniając operator AND(*) na OR(+):
Y = p+q
Sposób II
Sprowadzamy wszystkie zmienne do zera i stosujemy definicję sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
W równaniu A wszystkie zmienne są równe zeru, zatem tu nic nie musimy robić, od razu mamy równanie algebry Boole’a dla powyższej tabeli zero-jedynkowej.
Y=p+q
Kubuś:
Jasiu, zapisałeś równanie algebry Boole’a wyłącznie dla ostatniej linii, skąd wiesz jakie będą wartości logiczne w pozostałych liniach, nie opisanych tym równaniem ?
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
2.8 Definicja iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Y=A1*A2* … *An =1 <=> A1=1, A2=1 … An=1
Definicja równoważna:
Iloczyn logiczny jest równy zeru jeśli którakolwiek zmienna jest równa zeru.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej metodą przedszkolaka, negujemy zmienne i wymieniamy operator.
Skłamię (~Y) jeśli jutro nie pójdę do kina lub nie pójdę teatru
~Y=~K+~T
Oczywiście dotrzymam słowa wtedy i tylko wtedy gdy pójdę do kina i do teatru, w przeciwnym przypadku skłamię. Rozpiszmy szczegółowo te przypadki.
K*T=Y - dotrzymam słowa jeśli pójdę do kina i do teatru
W przeciwnym przypadku skłamię czyli uzupełniamy pozostałe możliwości:
K*~T=~Y - skłamię (~Y) jeśli pójdę do kina i nie pójdę do teatru
~K*~T=~Y - skłamię (~Y) jeśli nie pójdę do kina i nie pójdę do teatru
~K*T =~Y - skłamię (~Y) jeśli nie pójdę do kina i pójdę do teatru
Oczywiście skłamię jeśli wystąpi którykolwiek z powyższych przypadków czyli:
~Y = K*~T + ~K*~T + ~K*T
Na podstawie powyższego budujemy tabelę prawdy dla iloczyny logicznego
Kod: |
K T = Y=K*T
K ~T =~Y
~K ~T =~Y
~K T =~Y
|
Przechodzimy teraz na zapis symboliczny przy użyciu parametrów formalnych p i q podstawiając:
p=K, q=T
stąd mamy symboliczną definicje iloczynu logicznego:
Kod: |
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Zauważmy, że tu również uzyskaliśmy pełną definicję iloczynu logicznego na poziomie symbolicznym czyli absolutne zero styczności z kodem maszynowym, zerami i jedynkami.
Równania algebry Boole’a najłatwiej utworzyć korzystając z definicji symbolicznej.
Z pierwszej linii otrzymujemy najprostsze równanie:
A1: Y=p*q - dotrzymam słowa
Z kolejnych trzech linii mamy:
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
W sumie na podstawie powyższych równań możemy ułożyć aż osiem różnych zdań, cztery z nich (matematycznie równoważne) będą mówiły kiedy dotrzymam słowa (Y), zaś kolejne cztery (także równoważne) kiedy skłamię (~Y).
A1: Y=p*q - dotrzymam słowa
Dotrzymam słowa (Y), jeśli jutro pójdę do kina i do teatru
Y=K*T
Negujemy równania dwustronnie:
A2: ~Y=~(p*q) - skłamię
Skłamię (~Y), jeśli nie zdarzy się ~(…) że jutro pójdę do kina i do teatru
~Y=~(K*T)
Przechodzimy z równaniem A1 do logiki ujemnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne:
A3: ~Y=~p+~q - skłamię
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
Negujemy dwustronnie równanie A3:
A4: Y=~(~p+~q) - dotrzymam słowa
Dotrzymam słowa (Y), jeśli nie zdarzy się ~(…) że jutro nie pójdę do kina lub nie pójdę do teatru
Y=~(~K+~T)
To co wyżej to najczęstsze zdania w języku mówionym. Zdania serii B są zdecydowanie rzadsze bo bardziej złożone.
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
~Y=(K*~T)+(~K*~T)+(~K*T)
Skłamię (~Y), jeśli zdarzy się którykolwiek z powyższych przypadków.
Negujemy dwustronnie:
B2: Y=~[(p*~q) + (~p*~q) + (~p*q)] - dotrzymam słowa
Przechodzimy z równaniem B1 do logiki przeciwnej negując zmienne i wymieniając operatory na przeciwne:
B3: Y=(~p+q)*(p+q)*(p+~q) - dotrzymam słowa
Negujemy dwustronnie:
B4: ~Y=~[(~p+q)*(p+q)*(p+~q)] - skłamię
W sumie mamy fantastyczną właściwość języka mówionego czyli powiedzenie tego samego na wiele różnych sposobów. Zauważmy, że nigdzie wyżej nie mamy styczności z kodem maszynowym języka czyli idiotycznymi zerami i jedynkami. Taki związek oczywiście istnieje i jest łatwy do pokazania.
Przechodzimy do zero-jedynkowej definicji iloczynu logicznego w logice dodatniej przyjmując:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
Zero jedynkowa definicja iloczynu logicznego:
Kod: |
p q Y=p*q ~Y=~(p*q)
1 1 =1 0
1 0 =0 1
0 0 =0 1
0 1 =0 1
|
Tu również mamy doskonałą zgodność z definicją logiki dodatniej i ujemnej.
Dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy p*q czyli:
Y=p*q - dotrzymam słowa
Skłamię (~Y=1) gdy:
~Y=p*~q + ~p*~q + ~p*q - skłamię
Załóżmy teraz, że mamy wyłącznie tabelę zero-jedynkową jak wyżej. Jak dla takiej tabeli ułożyć równanie algebry Boole’a. Oczywiście najprostsze równanie uzyskamy z pierwszej linii bo mamy tu samotną jedynkę w wyniku. Na podstawie tej linii możemy ułożyć równanie na dwa sposoby.
Dla powyższej tabeli możemy zapisać:
A.
Y=1 <=> p=1 i q=1 - na podstawie pierwszej linii
Sposób I
Sprowadzamy wszystkie sygnały do jedynki i korzystamy z definicji iloczynu logicznego.
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden gdy wszystkie składniki iloczynu są równe jeden
Wszystkie sygnały w równaniu A są jedynkami zatem tylko je przepisujemy, nic nie musimy negować.
Y=p*q
Sposób II
Sprowadzamy wszystkie sygnały do zera i korzystamy z definicji sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru gdy wszystkie składniki sumy są równe zeru
Sprowadzamy sygnały A do zera:
Y=1 czyli ~Y=0
p=1 czyli ~p=0
q=1 czyli ~q=0
Stąd na podstawie definicji sumy logicznej mamy:
~Y = ~p+~q
Oczywiście przechodzimy do logiki dodatniej ponieważ człowiek używa logiki ujemnej wyłącznie w przeczeniach. Negujemy sygnały i wymieniamy operatory na przeciwne.
Y=p*q
Na zakończenie zabawy z operatorami typu AND(*) i OR(+) pokażemy dowód prawa de’Morgana metodą zero-jedynkową.
2.9 Dowody zero-jedynkowe w algebrze Boole’a
Dowody zero-jedynkowe w algebrze Boole’a są równoważne do odpowiednich dowodów w równaniach matematycznych które wykonywaliśmy do tej pory. Dowody te są zdecydowanie bardziej czasochłonne i w wielu przypadkach nie wiadomo o co chodzi np. zasługą dowodów zero-jedynkowych jest fakt, że człowiek do tej pory nie był w stanie zlokalizować implikacji którą się posługuje.
Prawo de’Morgana:
p*q=~(~p+~q)
Dowód zero-jedynkowy:
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Jak widać rozpatrujemy tu wszystkie możliwe przypadki dla zmiennych p i q. Równość kolumn trzeciej i ostatniej wskazuje na poprawność prawa de’Morgana. Kluczową różnicą tabeli wyżej w stosunku do identycznej tabeli znanej matematykom jest rozróżnianie logiki dodatniej (Y) od logiki ujemnej (~Y). Zdanie p*q w logice dodatniej (Y) to zupełnie co innego niże zdanie ~p+~q w logice ujemnej (~Y).
Zobaczmy po raz n-ty jak genialnie prosto przechodzi mózg przedszkolaka z logiki dodatniej do ujemnej.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
A: Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów na przeciwne:
~Y=~K+~T
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie:
B: Y=~(~K+~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru
~(~K+~T)
Z równań A i B mamy prawo de’Morgana:
K*T = ~(~K+~T)
Jak widzimy w języku mówionym każdy człowiek stosuje podświadomie prawa de’Morgana ….potrafi to robić nawet przedszkolak, naturalny ekspert algebry Kubusia.
Na zakończenie pokażemy dowód prawa de’Morgana w bramkach logicznych. Bramki logiczne to graficzna ilustracja skomplikowanych niekiedy przekształceń matematycznych. Dzięki nim łatwiej zorientować się „o co tu chodzi”.
2.10 Logika dodatnia i ujemna w bramkach logicznych
Podstawowe pojęcia w teorii układów logicznych.
Sygnał cyfrowy (zmienna binarna) to sygnał mogący przyjmować w osi czasu wyłącznie dwa stany 0 albo 1.
Wyjście cyfrowe (funkcja logiczna) to wyjście układu logicznego, dowolnie złożonego, zbudowanego z bramek logicznych typu OR(+) lub AND(*) oraz negatorów.
Bramki logiczne to domena elektroników logików. Już na pierwszym wykładzie z „Teorii układów logicznych” dowiadujemy się, że w dowolną linię układu logicznego zbudowanego na bramkach logicznych możemy wstawić dwa negatory (na schemacie kółka) i nic się nie zmieni zgodnie z prawem podwójnego przeczenia.
A=~(~A)
Kod: |
Negator i prawo podwójnego przeczenia
Y=A ~Y=~A Y=~(~A)=A
-----O-------------O---------
|
Na wejście negatora (na schematach kółko) podajemy sygnał A, na jego wyjściu otrzymujemy sygnał zanegowany ~A który podajemy na kolejny negator. Po drugim negatorze mamy oczywiście sygnał cyfrowy identyczny z A zgodnie z prawem podwójnego przeczenia.
Po drugim wykładzie wiemy już jak zastąpić bramkę OR(+) bramką AND(*) i odwrotnie. Tu korzystamy z praw de’Morgana.
p*q = ~(~p+~q) - prawo zamiany bramki AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany bramki OR(+) na AND(*)
Przy pomocy negatora możemy symbolicznie pokazać obsługę zdań prostych.
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Negujemy dwustronnie.
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
Kod: |
-------
| |
Y=~K ----------| ~ |O----------> ~Y=K
| |
-------
|
W technice cyfrowej symbolem negacji jest kółko, nie musimy rysować całego negatora jak wyżej. Ze schematu widać że, na wejście negatora podajemy sygnał (funkcję logiczną) Y=~K, zaś na wyjściu otrzymujemy sygnał zanegowany ~Y=K.
Oczywiście mamy:
Y#~Y
czyli sygnał na wejściu negatora to zupełnie co innego niż sygnał na jego wyjściu.
Łatwo się o tym przekonać biorąc do ręki rzeczywisty negator np. układ scalony 7404. Jeśli na wejście rzeczywistego negatora podamy cyfrowy sygnał zero-jedynkowy (zmienny w czasie) to na jego wyjściu otrzymamy lustrzane odbicie sygnału wejściowego, co łatwo można zaobserwować na oscyloskopie, przyrządzie służącym do wizualizacji przebiegów zmiennych.
Zwarcie kabelkiem wejścia negatora z wyjściem, czyli wymuszenie:
Y=~Y
grozi oczywiście wybuchem czyli dużo dymu i smrodu.
Podstawowe schematy elektroniczne bramek OR(+) i AND(*) są następujące.
Kod: |
Bramka OR i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| OR | | AND |
------- -------
| O
| |
Y=p+q = Y=~(~p*~q)
|
Z powyższego wynika, że bramkę OR możemy zastąpić bramką AND plus trzema negatorami wstawionymi w linie wejściowe p i q oraz linię wyjściową Y.
Kod: |
Bramka AND i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| AND | | OR |
------- -------
| O
| |
Y=p*q = Y=~(~p+~q)
|
Podobnie bramkę AND możemy zastąpić bramką OR plus trzema negatorami. Fizycznie oznacza to, że możemy zbudować dwa układy jak wyżej (w technice cyfrowej to banał) a następnie połączyć sygnały p-p, q-q, Y-Y i wszystko będzie dalej pięknie działało.
Powróćmy jeszcze raz do dowodu praw de’Morgana uwzględniającego logikę dodatnią i ujemną by zobaczyć na bramkach logicznych skąd się to bierze.
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Równość kolumn trzeciej i ostatniej jest dowodem poprawności prawa de’Morgana. Ten sam dowód krok po kroku w bramkach logicznych.
Na początku była bramka AND(*) ….
Kod: |
p q p q p q
| | | | | |
| | O O O O
| | |~p |~q |~p |~q
| | O O | |
| | |p |q | |
------- ------- -------
| | = | | = | |
| AND | | AND | | OR |
------- ------- -------
| |Y=p*q |
| O |
| |~Y=~(p*q) |~Y=~p+~q
| O O
| | |
Y=p*q = Y=p*q Y=~(~p+~q)
A B C
|
Schemat A:
Bramka AND rodem z teorii układów logicznych, realizująca funkcję logiczną Y=p*q.
Schemat B:
Na rysunku B wstawiliśmy w każdą linię wejściową bramki po dwie negacje oraz w linię wyjściową Y również dwie negacje.
Taki układ oczywiście nie zmieni się bo:
A=~(~A) - prawo podwójnego przeczenia.
W linii wejściowej p po minięciu pierwszego negatora otrzymamy sygnał ~p ale po minięciu drugiego negatora będziemy mieli sygnał p, identyczny jak na wejściu. Identycznie mamy w linii wejściowej q. Na wyjściu bramki AND mamy sygnał Y=p*q, po minięciu pierwszego negatora mamy ten sam sygnał w logice ujemnej ~Y=~(p*q), zaś po minięciu kolejnego negatora mamy sygnał identyczny jak bezpośrednio na wyjściu bramki AND czyli Y=p*q
Schemat C:
Ten schemat różni się od B wyłącznie tym, że zastosowaliśmy układ zastępczy bramki AND z zanegowanymi wejściami i zanegowanym wyjściem, którym jest po prostu bramka OR. Oczywiście na wyjściu ~Y mamy teraz ~Y=~p+~q zgodnie ze schematem ideowym, zaś po minięciu negatora na wyjściu (negujemy dwustronnie) mamy Y=~(~p+~q).
W matematyce wszystko musi się zgadzać.
Dla rysunków B i C mamy dla wyjścia ~Y:
~Y=~Y
czyli:
~(p*q) = ~p+~q - prawo de’Morgana w równoważnym zapisie
Zaś dla wyjścia Y:
Y=Y
czyli:
p*q = ~(~p+~q) - prawo de’Morgana w najpopularniejszym zapisie
Jak widzimy wyżej, przedszkolak przechodząc z logiki dodatniej do ujemnej w genialnie prosty sposób nie robi nic nadzwyczajnego.
Y=p*q
przejście do logiki ujemnej poprzez negację sygnałów i wymianę operatorów na przeciwne:
~Y=~p+~q
Wszystko jest tu w 100% zgodne z teorią bramek logicznych, czyli algebrą Boole’a. Mam nadzieję, że wszyscy rozumieją teraz dlaczego w nowatorskiej tabeli zero-jedynkowego dowodu prawa de’Morgana wyżej widnieje zapis ~Y=~p+~q a nie jak to jest w dzisiejszej matematyce gołe ~p+~q, które nie wiadomo czym jest.
Oczywiście sygnały w punktach Y i ~Y to zupełnie co innego, gdybyśmy je połączyli kabelkiem na powyższym schemacie (czyli wymusili Y=~Y) byłoby dużo dymu i smrodu, wszystko wyleciałoby w powietrze.
Przykład:
Jutro pójdę do kina i do teatru
Y=K+T
Matematycznie oznacza to:
Dotrzymam słowa (Y=1), jeśli jutro pójdę do kina i do teatru
Y=K*T
gdzie: Y=1 - zdanie prawdziwe
…. a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów.
~Y=~K+~T
Skłamię (~Y=1), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
gdzie: ~Y=1 - zdanie prawdziwe
Mamy tu do czynienia ze zdaniami prawdziwymi, ale nie równoważnymi bowiem występującymi w przeciwnych logikach.
2.11 Operatory AND i OR w logice człowieka
W algebrze Boole’a z operatorami AND i OR da się wypowiedzieć cztery różne zdania, a po uwzględnieniu praw de’Morgana nawet osiem.
p*q = ~(~p+~q)
p+q = ~(~p*~q)
~(p*q) = ~p+~q
~(p+q) = ~p*~q
W języku mówionym w zdaniach prostych przedrostek dotrzymam słowa (Y) jest domyślny czyli:
Jutro pójdę do kina lub do teatru
Y=K+T
matematycznie oznacza:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Przechodzimy z powyższym do logiki przeciwnej metodą przedszkolaka czyli negujemy zmienne i odwracamy operatory.
~Y=~K*~T
Skłamię (~Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y=~K*~T
Przedrostek skłamię (~Y) nie jest domyślny i musi zostać wypowiedziany czyli:
Skłamię (~Y), jeśli jutro pójdę do kina lub do teatru
~Y=K+T
… a kiedy powiem prawdę ?
Przechodzimy z powyższym do logiki przeciwnej czyli negujemy zmienne i odwracamy operatory.
Y=~K*~T
czyli:
Dotrzymam słowa (Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
Y=~K*~T
Oczywiście zdanie w logice dodatniej (Y) nie jest równoważne zdaniu w logice ujemnej (~Y) mimo że oba zdania są prawdziwe, tak wiec prawdziwość zdania nie oznacza automatycznie równoważności zdania.
3.0 Zero-jedynkowa algebra Boole’a
Algebra Kubusia, matematyka języka mówionego, jest algebrą symboliczną mającą 100% przełożenie na kod maszynowy czyli zera i jedynki, co pokazaliśmy wyżej.
Klasyczna, zero-jedynkowa algebra Boole’a to w dniu dzisiejszym zabytek klasy zerowej. Algebra ta jest co prawda fundamentem działania wszelkich komputerów (i całego naszego Wszechświata) ale człowiek myślał w zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wynalazł język symboliczny zwany asemblerem izolując się od kodu maszynowego … czyli skopiował działanie własnego mózgu. Żaden programista pisząc programy nie myśli w zerach i jedynkach bo to po prostu horror. Klasyczna algebra Boole’a jest zupełnie nieprzydatna w technice bowiem nikt nie projektuje już automatów cyfrowych na bramkach logicznych, jak to miało miejsce przed wynalezieniem mikroprocesora. Pierwszy przyzwoity mikroprocesor (Intel 8080) pojawił się w roku 1974, ale już przed nim algebra Boole’a załamała się na układach cyfrowych średniej skali integracji (liczniki, rejestry, multipleksery itp.).
Oczywiście algebra Boole’a w najprostszej postaci będzie w technice przydatna zawsze, ale już nikt nigdy nie będzie używał bramek logicznych do projektowania złożonych automatów cyfrowych, tu królują mikroprocesory.
Fundamentalne prawa algebry Boole’a musi znać każdy programista piszący programy w dowolnym języku programowania … ale normalni ludzie nie muszą, tak wiec wszyscy których nie interesuje pisanie programów mogą ten rozdział pominąć.
3.1 Prawa wynikające z definicji iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Definicja równoważna:
Iloczyn logiczny jest równy zeru gdy którakolwiek zmienna jest równa zeru.
Prawa wynikające bezpośrednio z definicji:
1*0=0
1*1=1
A*0=0
A*1=A
A*A=A
A*~A=0
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.2 Prawa wynikające z definicji sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zminnych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Definicja równoważna:
Suma logiczna jest równa jeden gdy którakolwiek zmienna jest równa 1
Prawa wynikające bezpośrednio z definicji:
1+0=1
0+0=0
A+1=1
A+0=A
A+A=A
A+~A=1
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.3 Najważniejsze prawa algebry Boole’a
W języku mówionym prawa łączności i przemienności to oczywistość, natomiast absorpcja, rozdzielność i pochłanianie są przydatne jedynie w technice cyfrowej.
Łączność:
A+(B+C) = (A+B)+C
A*(B*C)=(A*B)*C
Przemienność:
A+B=B+C
A*B=B*C
Absorbcja:
A+(A*B)=A
Dowód:
Jeśli A=1 to A+(A*B)=1+(A*B)=1
Jeśli A=0 to A+(A*B)=0+(0*B)=0+0=0
niezależnie od wartości B
CND
A*(A+B)=A
Dowód:
Jeśli A=1 to A*(A+B)= 1*(1+B)=1*1=1
Jeśli A=0 to A*(A+B)=0*(A+B)=0
niezależnie od wartości B.
CND
Rozdzielność:
A+(B*C) = (A+B)*(A+C)
A*(B+C)=(A*B)+(B*C)
Pochłanianie:
A*~A=0
A+~A=1
3.4 Operatory dodatnie i operatory ujemne
Tabela legalnych operatorów logicznych typu AND(*) I OR(+)
Kod: |
Tabela A
p q Y=p+q ~Y=pNORq Y=p*q ~Y=pNANDq
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
OR(+), AND(*) - operatory w logice dodatniej
NOR, NAND - operatory w logice ujemnej
Porównajmy powyższą tabele z tabelą używaną przez nas do tej pory.
Kod: |
Tabela B
p q Y=p+q ~Y=~(p+q) Y=p*q ~Y=~(p*q)
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
Z powyższych tabel wynikają definicje operatorów NOR i NAND:
pNORq = ~(p+q) = ~p*~q - na podstawie prawa de’Morgana
pNANDq = ~(p*q) = ~p+~q - na podstawie prawa de’Morgana
bo:
~Y=~Y
Stąd w katalogach układów cyfrowych znajdziemy takie definicje bramek NOR i NAND.
Funkcja logiczna realizowana przez bramkę NOR:
Y=~(p+q)
Funkcja logiczna realizowana przez bramkę NAND:
Y=~(p*q)
Zauważmy, że po takim manewrze operatorów ujemnych NAND i NOR nie wolno mieszać z operatorami dodatnimi AND i OR ponieważ zachodzi.
Y(NAND, NOR) # Y(AND, OR)
co doskonale widać na bramkach logicznych.
Kod: |
Bramka AND i bramka NAND
p q p q
| | | |
| | | |
------- -------
| | = | |
| AND | | NAND|
------- -------
| O
| |
|Y=p*q | Y=pNANDq=~(p*q)
O O
| |
|~Y=~(p*q) |~Y=~(pNANDq)=p*q
A B
|
A - punkt odniesienia, operator AND(*)
B - punkt odniesienia, operator NAND
Oczywistym jest, że zwarcie pozornie identycznych sygnałów:
Y=Y lub ~Y=~Y
grozi wysadzeniem bramki w powietrze.
Na powyższym schemacie zachodzą tożsamości po przekątnych czyli absolutna bzdura z punktu widzenia algebry Boole’a bo wtedy mamy:
Y=~Y
czyli:
Y=p*q <=> ~Y=~(pNANDq) = p*q
Wniosek:
Można myśleć logicznie albo w operatorach dodatnich AND i OR, albo w operatorach ujemnych NAND i NOR. Mieszanie tych operatorów w jednej logice to głupota.
Punkt odniesienia, operatory dodatnie AND i OR:
Y=prawda
~Y=fałsz
Punkt odniesienia, operatory ujemne NAND i NOR:
Y=fałsz
~Y=prawda
Wróćmy do symbolicznej definicji bramki AND.
Kod: |
Tabela A
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Dla punktu odniesienia AND i OR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=1(prawda), ~Y=0(Fałsz)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia AND(*) i OR(+):
Kod: |
p q Y=p*q=~(pNANDq) ~Y=~(p*q)=pNANDq
1 1 1 0
1 0 0 1
0 0 0 1
0 1 0 1
|
stąd:
Definicja operatora AND:
Y=1 <=> p=1 i q=1
Dla punktu odniesienia NAND i NOR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=0(fałsz), ~Y=1(prawda)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia NAND i NOR:
Kod: |
p q Y=pNANDq=~(p*q) ~Y=~(pNANDq)=p*q
1 1 0 1
1 0 1 0
0 0 1 0
0 1 1 0
|
stąd:
Definicja operatora NAND:
Y=0 <=> p=1 i q=1
Podsumowanie:
Można myśleć w logice dodatniej (operatory OR i AND) albo w ujemnej (operatory NOR i NAND). Mieszanie operatorów dodatnich i ujemnych w naturalnym języku mówionym człowieka to jeżdżenie samochodem po Anglii prawą stroną, żaden normalny człowiek tego nie zrozumie.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Pon 20:36, 10 Sie 2009 Temat postu: |
|
|
Część II Implikacja
4.0 Notacja szczególna w implikacji
W implikacji dla uproszczenia używać będziemy bezwzględnych zer i jedynek wyłącznie dla określenia prawdziwości zdania:
1 - zdanie prawdziwe
0 - zdanie fałszywe
To „uproszczenie” wynika tylko i wyłącznie z przyzwyczajeń przeciętnego człowieka do powyższego standardu. Elegancja w matematyce polega na wyprowadzeniu wzoru ogólnego i dopiero na końcu na podstawieniu danych.
Gdybyśmy w tej publikacji użyli symboli w 100% czyli zastosowali:
Y - zdanie prawdziwe
~Y - zdanie fałszywe
to otrzymalibyśmy w pełni symboliczne tabele operatorowe implikacji prostej, implikacji odwrotnej i równoważności czyli zero styczności z zerami i jedynkami.
4.1 Rodzaje implikacji
Istnieją dwa rodzaje implikacji, implikacja z gwarancją (prawa Kubusia) i implikacja bez gwarancji (prawa kontrapozycji). Wyprzedzimy trochę czas, nie należy się przejmować jeśli poniższe definicje i prawa nie będą zrozumiałe. Można spokojnie przejść do następnego punktu.
Definicja:
Implikacja z gwarancją, to implikacja w której występuje tożsamość gwarancji i nie występuje tożsamość operatorów (w prawach Kubusia).
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
W prawach Kubusia po obu stronach zachowana jest tożsamość gwarancji, oczywisty brak tożsamości operatorów widać doskonale.
Definicja:
Implikacja bez gwarancji to implikacja, w której występuje tożsamość operatorów bez zachowania tożsamości gwarancji (w prawach kontrapozycji).
Prawo Kontrapozycji:
p=>q = ~q=>~p
p~>q = ~q~>~p
W prawach kontrapozycji zachowana jest tożsamość operatorów co widać wyżej, ale nie jest zachowana tożsamość gwarancji o czym dowiemy się … w swoim czasie.
Uwaga:
W całym podręczniku pisząc „implikacja” będziemy mieli na myśli domyślnie „implikację z gwarancją”.
4.2 O co chodzi w implikacji
Implikacja to zdanie złożone warunkowe typu „Jeśli…to…”
W dzisiejszej matematyce funkcjonuje taka definicja implikacji:
Jeśli p to q
gdzie:
p - poprzednik
q - następnik
Koniec, absolutne zero jakiegokolwiek komentarza czyli kompletnie nie wiadomo o co chodzi.
Matematycznie istnieją dwie różne tabele zero-jedynkowe implikacji.
p=>q - implikacja prosta
p~>q - implikacja odwrotna
Oczywiście dzisiejsza matematyka akceptuje fakt że:
p=>q # p~>q
Jednak z powodu fałszywej interpretacji zer i jedynek w definicjach implikacji wychodzi jej że implikacja odwrotna jest zbędna. Poprawne definicje implikacji prostej i odwrotnej są wyżej.
Ujmując rzecz całą ściśle matematycznie można udowodnić, że wszystkie operatory logiczne są zbędne za wyjątkiem jednego, NOR albo NAND … nie o to jednak chodzi.
Twierdzenie Kubusia:
W logice niezbędne są tylko i wyłącznie te operatory których człowiek używa w naturalnym języku mówionym czyli: AND(*), OR(+), implikacja prosta =>, implikacja odwrotna ~> plus negacja (~).
Powyższego zestawu operatorów nie należy ani skracać, ani też rozszerzać bo wyjdzie z tego logika-potworek nie mająca nic wspólnego z nieprawdopodobnie prostą i doskonałą, logiką człowieka.
Implikacja to przede wszystkim matematyczny opis przyszłości, dzięki niej człowiek z góry wie kiedy w przyszłości zostanie kłamcą a kiedy nie.
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Oczywiście jeśli zdam egzamin do mam gwarantowany komputer. Jeśli nie zdam to wszystko może się zdarzyć wedle „widzi mi się” czyli wolnej woli ojca … mamy rzucanie monetą.
Implikacja to również matematyczny opis przyszłości świata martwego.
Jeśli jutro będzie padać to na pewno będzie pochmurno
P=>CH
Jeśli będzie padać to na pewno będzie pochmurno. Jeśli nie będzie padać, to może być pochmurno lub nie być, wedle „wolnej woli” pogody, czyli rzucanie monetą.
Implikacja występuje również w przyrodzie i matematyce. Wszelkie twierdzenia matematyczne to równoważności, implikacja jest tu niezwykle rzadkim wyjątkiem.
Jeśli zwierzę jest psem to ma cztery łapy
Jeśli wylosowane w przyszłości zwierzę będzie psem to na pewno będzie mieć cztery łapy
P=>4L
Matematycznie to dwa równoważne zdania. Oczywiście wszystkie psy mają cztery łapy, ale jeśli wylosowane zwierzę nie będzie psem to może mieć cztery łapy (słoń) albo nie mieć czterech łap (mrówka), czyli rzucanie monetą.
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
Jeśli wylosowana w przyszłości liczba będzie podzielna przez 8 to będzie podzielna przez 2
P8=>P2
Matematycznie to dwa równoważne zdania. Oczywiście każda liczba podzielna przez 8 jest podzielna przez 2, ale jeśli wylosowana liczba nie będzie podzielna przez 8 to może być podzielna przez 2 (2,4,6..) albo nie (3,5,7…), czyli rzucanie monetą.
Jak widać wyżej każda implikacja prosta => jest w pierwszej części zdeterminowana, tu mamy pewność, ale w drugiej części definicji to najzwyklejsze rzucanie monetą.
W implikacji odwrotnej ~> mamy dokładnie odwrotnie. Tu w pierwszej części definicji mamy przypadek czyli rzucanie monetą zaś w drugiej części mamy pewność.
Jeśli zwierzę ma cztery łapy to może być psem
Jeśli wylosowane w przyszłości zwierzę będzie mieć cztery łapy to może być psem
4L~>P
Oba zdania są matematycznie równoważne. Ta implikacja jest prawdziwa bo spełnia definicję implikacji odwrotnej ~>. Jeśli zwierzę ma cztery łapy to może być psem albo nie być (np.słoń). W pierwszej części definicji implikacji odwrotnej mamy rzucanie monetą, ale w drugiej części mamy pewność, czyli jeśli zwierzę nie ma czterech łap to na pewno nie jest psem.
Matematycznie obie implikacje, prosta => i odwrotna ~> są równie cenne bowiem w obu występuje gwarancja matematyczna.
Zdanie bez żadnej gwarancji jest po prostu śmieciem np.
Jeśli księżyc świeci to pies ma cztery łapy
KS=>4L
Implikacja oczywiście fałszywa bo brak związku poprzednika z następnikiem, nie możemy tu mówić o jakiejkolwiek gwarancji. Świecenie księżyca nie gwarantuje czterech łap u psa … no, chyba że suczka zaszła w ciążę przy pełni księżyca i dlatego pies ma cztery łapy ?
Implikacja jest implikacją prawdziwą, jeśli spełnia odpowiednią definicję implikacji. W matematyce występują dwie definicje implikacji: implikacja prosta => oraz implikacja odwrotna ~>. Logika każdego człowieka to przechodzenie z jednej implikacji do drugiej milion razy na dobę zgodnie z prawami Kubusia.
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na prostą =>
Przyczyną klęski dzisiejszej logiki w poszukiwaniu logiki człowieka są fałszywe interpretacje zero-jedynkowych definicji implikacji prostej => i odwrotnej ~> uniemożliwiające stosowanie praw Kubusia.
4.3 Kubuś na tropie implikacji odwrotnej
Udajmy się do przedszkola, aby upewnić się czy dzieciaki znają algebrę Kubusia. Zadaniem dzieci będzie określenie które z wypowiedzianych zdań jest prawdziwe a które fałszywe. Zdania oczywiście będą tendencyjne, bo wymawia je Kubuś. Na początek Kubuś postanowił sprawdzić jak reagują dzieci na implikację odwrotną. Poprosił je, aby przy określaniu czy zdanie jest prawdziwe/fałszywe brały pod uwagę wyłącznie psy zdrowe, z czterema łapami.
Kubuś:
A1:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P = 1 - zdanie prawdziwe bo pies, tu żaden przedszkolak nie miał wątpliwości.
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
A2:
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P = 1 - zdanie prawdziwe bo słoń, koń, kot, lis, hipopotam …. przekrzykiwały się dzieci
Kubuś:
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Dzieciaki:
A3:
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P =1 - zdanie oczywiście prawdziwe
Kubuś:
A4:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
~4L=>P = 0 - kłamstwo, fałsz, bo każdy pies ma cztery łapy … zgodnym chórem krzyknęły dzieci
Hmm … pomyślał Kubuś, dzieciaki doskonale znają matematyczną wersję implikacji odwrotnej, aby upewnić się czy to prawda, zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci ani razu nie popełniły błędu !
Zauważmy, że w zdaniu A1 cztery łapy są konieczne aby być psem, zatem jeśli zwierzę nie ma czterech łap to na pewno nie jest psem. Mamy tu bezpośredni dowód prawa Kubusia.
A1: 4L~>P= A3: ~4L=>~P
Zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) ale na pewno nie jest implikacją.
Dlaczego ?
Wyrocznią są tu prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności).
Dowód nie wprost.
Załóżmy, że zdanie A2: 4L~>~P jest implikacją odwrotną prawdziwą.
Prawo Kubusia:
A2: 4L~>~P = A4: ~4L=>P
czyli:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
A4: ~4L=>P
Zdanie A4 jest na pewno fałszywe, zatem wobec zachodzącej tożsamości implikacja A2 musi być także fałszywa, czyli nie zachodzi tu warunek konieczny.
Prawdziwość zdania A2 opisuje wzór:
(4L~>~P) +( 4L~~>~P) = 0+1=1
Implikacja odwrotna (4L~>~P) na mocy prawa Kubusia jest tu oczywiście fałszywa, ale zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda, tu np. słoń).
4.4 Operatorowa definicja implikacji odwrotnej
Zapiszmy teraz powyższe zdania wyłącznie w postaci operatorowej, czyli przy pomocy operatorów „musi” (=>) i „może” (~> lub ~~>)
Kod: |
4L P Y=4L~>P ~Y=~(4L~>P)
4L ~> P = 1 0
4L~~>~P = 1 0
~4L=> ~P = 1 0
~4L => P = 0 1
|
gdzie:
1 - zdanie prawdziwe
0 - zdanie fałszywe
W matematyce nie operujemy na konkretnych przykładach, lecz na zapisach formalnych. Powszechnie przyjętym standardem są w implikacji literki p i q.
Jeśli p to q
p - poprzednik
q - następnik
Przepiszmy zatem powyższą tabelę podstawiając:
4L=p, P=q
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Zauważmy, że w implikacji odwrotnej p musi być konieczne dla q, inaczej pierwsza linia definicji operatorowej jest twardym fałszem, zdanie na pewno nie jest implikacją odwrotną.
Przykład:
Jeśli zwierzę ma skrzydła to może być psem
S~>P=0
Oczywisty twardy fałsz bo skrzydła nie są warunkiem koniecznym dla psa.
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji odwrotnej .
Symboliczna definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p q = 1 0
p ~q = 1 0
~p ~q = 1 0
~p q = 0 1
|
Najprostszą definicję implikacji odwrotnej w równaniu algebry Boole’a otrzymujemy z ostatniej linii tabeli.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie ~p i zajdzie q.
~Y= ~p*q
Kiedy wystąpi prawda ?
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+).
Y=p+~q
stąd:
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y= p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Wystąpi prawda (Y=1) wtedy i tylko wtedy gdy nie zdarzy się ~(…), że zajdzie ~p i zajdzie q.
4.5 Zero-jedynkowa definicja implikacji odwrotnej
Zero jedynkowa definicja implikacji odwrotnej to w dniu dzisiejszym zabytek klasy zerowej. Wszyscy ludzie na ziemi od przedszkolaka po profesora posługują się biegle operatorową definicją implikacji odwrotnej. Nie ma potrzeby przechodzenia do zero-jedynkowej definicji implikacji odwrotnej.
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja odwrotna to w pierwszej części rzucanie monetą p~>q, zaś w drugiej części pewne wynikanie ~p=>~q.
Zero-jedynkową definicję implikacji odwrotnej otrzymujemy opuszczając operatory oraz przyjmując:
p=1, ~p=0
q=1, ~q=0
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Najprostsze równanie algebry Boole’a zapiszemy dla ostatniej linii bo tu w wyniku mamy samotne zero (Y=0).
Y=0 <=> p=0 i q=1
Przejście z takiego zapisu do równania algebry Boole’a możemy uzyskać na dwa sposoby.
Sposób 1
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych równy jest jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0, ~Y=1
p=0, ~p=1
q=1
Sprowadzamy wszystkie sygnały do jedynki i stosujemy definicję iloczynu logicznego.
~Y=~p*q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne
Y = p+~q
Sposób 2
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0
p=0
q=1,~q=0
Sprowadzamy wszystkie sygnały do zera i stosujemy definicję sumy logicznej.
Y=p+~q
Jak widać, w tym przypadku końcowe równanie implikacji odwrotnej mamy natychmiast.
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y = p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było samotne zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Definicja zero-jedynkowa implikacji odwrotnej przybierze zatem postać końcową.
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q=p+~q=~(~p*q) ~Y=~(p~>q)=~[~(~p*q)]=~p*q
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie ~p i q
Wystąpi fałsz (~Y=1) jeśli zajdzie ~p i q
4.6 Gwarancja matematyczna w implikacji odwrotnej
Istotą implikacji jest gwarancja matematyczna. Poza gwarancją wszystko może się zdarzyć czyli mamy rzucanie monetą.
Gwarancją w implikacji odwrotnej jest wynikająca z prawa Kubusia implikacja prosta:
Y=p~>q = ~p=>~q
Gwarancja:
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
Y=4L~>P
Gwarancja:
Y=4L~>P = ~4L=>~P - prawo Kubusia
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Gwarancja dotyczy zwierząt które nie mają czterech łap, te na pewno nie są psami, poza tą gwarancją wszystko może się zdarzyć czyli jeśli zwierzę ma cztery łapy to może być psem (tu pies), lub nie być psem (np. słoń) czyli mamy tu rzucanie monetą.
Gwarancję równoważną otrzymujemy z definicji implikacji odwrotnej zapisanej w równaniu algebry Boole’a.
Definicja implikacji odwrotnej:
Y=p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
stąd:
Y=4L~>P = ~(~4L*P)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę nie ma czterech łap i jest psem
Y=~(~4L*P)
Oczywiście gwarantowane zwierzaki to kura, mrówka, stonoga, wąż … - te na pewno nie są psami.
… a kiedy wystąpi fałsz ?
Negujemy powyższe równanie dwustronnie:
~Y=~4L*P
Wystąpi fałsz (~Y) jeśli zwierzę nie będzie miało czterech łap i będzie psem.
Zauważmy coś bardzo ważnego. Człowiek mając do wybory dwie równoważne gwarancje G1 i G2 praktycznie na 100% zawsze wybierze G1 bo ta jest zdecydowanie bardziej klarowna.
Wniosek:
W naturalnym języku mówionym człowiek posługuje się przede wszystkim operatorową definicją implikacji odwrotnej.
Z definicji równoważnej, zapisanej w równaniu algebry Boole’a:
p~>q = ~p=>~q = ~(~p*q)
w praktyce nikt nie korzysta, co nie oznacza że przedszkolak miałby tu jakiekolwiek kłopoty.
Jaś:
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Kubuś:
… a czy może się zdarzyć że zwierzę nie ma czterech łap i jest psem ?
p~>q = ~p=>~q = p+~q = ~(~p*q) - na podstawie prawa Kubusia i definicji implikacji odwrotnej
stąd:
~4L=>~P = ~(~4L*P)
Jaś:
Nie może się zdarzyć, że zwierzę nie ma czterech łap i jest psem
~(~4L*P)
Zauważmy, że przeanalizowaliśmy implikację odwrotną:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
na wszelkie możliwe sposoby wyłącznie w symbolicznej algebrze Kubusia nie mając bezpośredniej styczności z kodem maszynowym czyli zerami i jedynkami po stronie p i q.
5.0 Kubuś na tropie implikacji prostej
Dzieci w przedszkolu są doskonałym testerem dowolnej logiki roszczącej sobie miano matematycznego opisu języka mówionego. Nowa, nieznana człowiekowi definicja implikacji odwrotnej ~> przeszła taki test bez najmniejszego problemu. Kubuś postanowił sprawdzić czy również nowa definicja implikacji prostej => przejdzie „test przedszkolaka”.
Druga wizyta Kubusia w przedszkolu.
Drogie dzieci, będę wypowiadał różne zdania o piesku i jego czterech łapach. Waszym zadaniem będzie rozstrzygnięcie czy zdanie jest prawdziwe/fałszywe. Proszę Was, abyście uwzględniali wyłącznie pieski zdrowe które mają cztery łapy.
B1:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L=1
Zdanie prawdziwe, zgodnym chórem krzyknęły dzieci, bo każdy pies ma cztery łapy.
Implikacja prosta prawdziwa bo bycie psem jest wystarczające, aby mieć cztery łapy.
B2:
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L=0
Fałsz, kłamstwo, bo każdy pies ma cztery łapy, żaden przedszkolak nie miał tu wątpliwości
Jaś:
… a jeśli zwierzę nie jest psem ?
Prawo Kubusia:
P=>4L = ~P~>~4L
Kubuś:
B3:
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~>~4L=1
Prawda czy fałsz ?
Dzieci:
Prawda bo mrówka, stonoga, kura, wąż ….
lub
B4:
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L=1
Prawda bo koń, słoń, wilk, hipopotam … przekrzykiwały się dzieci
Na wszelki wypadek by upewnić się czy nowa teoria matematyczna jest prawdziwa Kubuś zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci nie pomyliły się ani razu !
Nie ma zatem wątpliwości, symboliczna algebra Kubusia przeszła „test przedszkolaka” pomyślnie.
Zauważmy, że zdanie B4 nie może być implikacją odwrotną.
Dlaczego ?
Najprostszą wyrocznią jest tu oczywiście prawo Kubusia.
Dowód nie wprost.
Załóżmy że B4 jest implikacją odwrotną, wtedy musi być spełnione prawo Kubusia:
B4: ~P~>4L = B2: P=>~4L
Prawa strona tożsamości:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz, zatem fałszywa musi być tez implikacja po lewej stronie czyli:
B4: ~P~>4L=0
Prawdziwość zdania B4 określa wzór:
(~P~>4L)+(~P~~>4L) = 0+1 =1
gdzie:
~~> - naturalny spójnik „może”, wystarczy jedna prawda (tu np. koń), na pewno nie jest to implikacja odwrotna.
5.1 Operatorowa definicja implikacji prostej
Przepiszmy powyższy przykład wyłącznie w postaci operatorowej.
Kod: |
P 4L Y=(P=>4L) ~Y=~(P=>4L)
B1: P=> 4L = 1 0
B2: P=>~4L = 0 1
B3:~P~>~4L = 1 0
B4:~p~~>4L = 1 0
|
Prawo Kubusia:
P=>4L = ~P~>~4L
Oczywiście w matematyce nie operujemy na konkretnym przykładzie lecz na parametrach formalnych którymi w implikacji są literki p i q.
Podstawiamy zatem:
P=p i 4L=q
i otrzymujemy operatorową definicję implikacji prostej.
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji prostej.
Symboliczna definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p q = 1 0
p ~q = 0 1
~p ~q = 1 0
~p q = 1 0
|
Stąd dla drugiej linii zapisujemy najprostsze równanie algebry Boole’a.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie p i ~q
czyli:
~Y=p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+):
Y=~p+q
stąd:
Definicja implikacji prostej w równaniu algebry Boole’a
Y = p=>q = ~p+q = ~(p*~q) - na podstawie prawa de’Morgana
5.2 Zero-jedynkowa definicja implikacji prostej
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja prosta to w pierwszej części pewne wynikanie p=>q, natomiast w drugiej części to najzwyklejsze rzucanie monetą ~p~>~q.
Po opuszczeniu operatorów w operatorowej definicji implikacji prostej i przyjęciu:
p=1, ~p=0
q=1, ~q=0
otrzymujemy …
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=(p=>q)=~p+q=~(p*~q) ~Y=~(p=>q)=~[~(p*~q)]=p*~q
1 1 1 0
1 0 0 1
0 0 1 0
0 1 1 0
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie p i ~q
Wystąpi fałsz (~Y=1) jeśli zajdzie p i ~q
5.3 Gwarancja w implikacji prostej
Na mocy definicji gwarancją jest sama definicja implikacji prostej ….
G1:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarantowany zwierzak to pies, który na pewno ma cztery łapy … poza tym wszystko może się zdarzyć czyli jeśli zwierzę nie jest psem to może nie mieć czterech łap (np. mrówka) lub jeśli zwierzę nie jest psem to może mieć cztery łapy (np. słoń).
Równoważną gwarancję, lecz w praktyce nigdy nie używaną mamy z równań algebry Boole’a.
Definicja implikacji prostej w równaniu algebry Boole’a.
Y = p=>q = ~p~>~q =~p+q = ~(p*~q) - na podstawie prawa de’Morgana
stąd:
P=>4L = ~P~>~4L = ~(P*~4L)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap
~(P*~4L)
Gwarantowany zwierzak to pies, poza tym wszystko może się zdarzyć.
Oczywiście nie oznacza to że przedszkolak będzie miał jakiekolwiek problemy z wypowiedzeniem gwarancji G2 … jeśli się go do tego zmusi.
Jaś:
Jeśli zwierze jest psem to na pewno ma cztery łapy
P=>4L
Kubuś:
… a czy może się zdarzyć że zwierze jest psem i nie ma czterech łap ?
P=>4L = ~(P*~4L) - na mocy definicji implikacji prostej
Jaś:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap.
6.0 Fundamenty algebry Boole’a
Matematycznym fundamentem algebry Boole’a jest definicja iloczynu kartezjańskiego i pojęcie funkcji.
6.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
6.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
6.3 Funkcja iloczynu logicznego AND(*)
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Tabela zero-jedynkowa iloczynu logicznego:
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
6.4 Algebra Boole’a i prawo przemienności
Wyżej udowodniliśmy, iż operator iloczynu logicznego AND(*) jest przemienny. Sprawdźmy teraz pozostałe kluczowe operatory (pkt.1.3) czyli te, które człowiek używa w naturalnym języku mówionym.
Kod: |
p q p+q q+p p=>q q=>p p~>q q~>p p<=>q q<=>p
1 1 1 1 1 1 1 1 1 1
1 0 1 1 0 1 1 0 0 0
0 0 0 0 1 1 1 1 1 1
0 1 1 1 1 0 0 1 0 0
|
p=>q=0 <=> p=1 i q=0
p~>q=0 <=> p=0 i q=1
Doskonale widać, że operatory OR(+) i <=> są przemienne, natomiast operatory implikacji nie są przemienne bo kolumny wynikowe są różne:
p=>q # q=>p
p~>q # q~>p
Oczywistym jest, że implikacja jest implikacją prawdziwą wtedy i tylko wtedy gdy spełnia odpowiednią tabelę zero-jedynkową.
Wynika z tego że:
Jeśli p=>q=1 to q=>p=0
Jeśli p~>q=1 to q~>p=0
… bo to jest algebra Boole’a.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Brak przemienności argumentów w implikacji przenosi się oczywiście na brak przemienności implikacyjnej sumy logicznej wynikającej z odpowiednich definicji.
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
6.5 Prawa Kubusia
Jako pierwszy prawa Kubusia zapisał i udowodnił metodą zero-jedynkową Kubuś po wielomiesięcznych zmaganiach z matematyczną obsługą wszelkich gróźb i obietnic. Właśnie w tym obszarze po raz pierwszy prawa Kubusia zaczęły fenomenalnie działać. To był jednak dopiero początek wojny o całkowite rozszyfrowanie implikacji.
Dowód prawa Kubusia metoda zero-jedynkową.
Definicja implikacji prostej:
Kod: |
p q p=>q
1 1 1
1 0 0
0 0 1
0 1 1
|
p=>q=0 wtedy i tylko wtedy gdy p=1 i q=0
Definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 1
1 0 1
0 0 1
0 1 0
|
p~>q=0 wtedy i tylko wtedy gdy p=0 i q=1
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>.
Dowód metodą zero-jedynkową:
Kod: |
p q p=>q ~p ~q ~p~>~q
1 1 1 0 0 1
1 0 0 0 1 0
0 0 1 1 1 1
0 1 1 1 0 1
|
Równość kolumn wynikowych trzeciej i ostatniej jest dowodem poprawności prawa Kubusia.
Najbardziej elegancki dowód praw Kubusia zaprezentował Wuj Zbój:
A.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Dla prawej strony korzystamy z definicji implikacji odwrotnej:
B.
~p~>~q = (~p)+~(~q) = ~p+q
bo:
~(~q)=q - prawo podwójnego przeczenia
Prawe strony równań A i B są identyczne zatem prawo Kubusia jest prawdziwe.
CND
Jako ostatni, metodą nie wprost, udowodnił prawa Kubusia Zbanowany Uczy.
6.6 Prawo Kłapouchego
Prawo Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności) to wyrocznia rozstrzygająca czy zdanie „Jeśli…to…” jest implikacją.
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na równoważną implikację prostą =>
Operatorowa definicja implikacji prostej:
Kod: |
Tabela A
p q = Y=p=>q
p=> q = 1
p=> ~q = 0
~p~> ~q = 1
~p~~> q = 1
|
Prawo Kubusia:
p=>q = ~p~>~q
Jak widać, w pierwszej części definicji mamy pewne wynikanie p=>q, natomiast w drugiej części mamy najzwyklejsze rzucanie monetą ~p~>~q.
Po stronie ~p może zajść:
~p~>~q
lub
~p~~>q
czyli:
~p=>(~q+q)
Jeśli zajdzie ~p to na pewno => zajdzie ~q lub q
Oczywiście:
~q+q =1 - prawo algebry Boole’a
Ostatnie zdanie jest tautologią, czyli wiem, że nic nie wiem.
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji linie w powyższej tabeli możemy sobie dowolnie przestawiać. Przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji odwrotnej dla parametrów ~p i ~q.
Kod: |
Tabela B
p q = Y=~p~>~q
~p~> ~q = 1
~p~~> q = 1
p=> q = 1
p=> ~q = 0
|
Prawo Kubusia:
~p~>~q = p=>q
Dzisiejszy matematyk mówi tak (autentyczne z matematyki.pl):
Tabela A jest dobra bo ma prawidłowy nagłówek, natomiast tabela B jest kompletnie nieprzydatna w matematyce wiec wyrzucam ja do kosza, precz z Kubusiem który usiłuje wmówić nam co innego.
Czy każdy widzi nonsens takiego rozumowania ?
Z matematyką się nie dyskutuje
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
Tam gdzie mamy operator => tam mamy pewne wynikanie matematyczne, warunek wystarczający.
Tam gdzie mamy operator ~> mamy rzucanie monetą, warunek konieczny
Tożsamość to tożsamość, jak kto obali matematykę to wtedy może twierdzić że pewne wynikanie => jest lepsze od „rzucania monetą” czyli ~>.
Twierdzenie Sowy:
W prawach Kubusia implikacje po obu stronach tożsamości mają IDENTYCZNĄ wartość matematyczną.
CND
Zero-jedynkową definicję implikacji prostej otrzymujemy z tabeli A opuszczając operatory i przyjmując:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Operatorowa definicja implikacji odwrotnej:
Kod: |
Tabela C
p q = Y=p~>q
p ~> q = 1
p~~>~q = 1
~p=> ~q = 1
~p => q = 0
|
Prawo Kubusia:
p~>q = ~p=>~q
W implikacji odwrotnej w pierwszej części mamy rzucanie monetą p~>q, natomiast w drugiej mamy pewne wynikanie ~p=>~q.
W pierwszej części mamy tautologię:
p~>q =1
LUB
p~~>~q=1
czyli:
p=>(q+~q)
bo:
q+~q=1
Jeśli zajdzie p to na pewno => zajdzie q lub ~q, czyli wiem, że nic nie wiem.
Tu również linie w powyższej definicji możemy dowolnie przedstawiać, przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji prostej dla parametrów ~p i ~q.
Kod: |
Tabela D
p q = Y=~p=>~q
~p=> ~q = 1
~p => q = 0
p ~> q = 1
p~~>~q = 1
|
Prawo Kubusia:
~p=>~q = p~>q
Dla tabeli C przyjmujemy:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Podsumowanie:
W dowolnej implikacji, prostej => lub odwrotnej ~> mamy w jednej połówce pewne wynikanie matematyczne =>, natomiast w drugiej połowie mamy do czynienia z najzwyklejszym rzucaniem monetą ~>, z tego względu implikacja jest bezsensem w świecie techniki.
Wniosek:
Implikacja prosta => nie może istnieć bez implikacji odwrotnej ~> i odwrotnie.
6.7 Implikacja w bramkach logicznych
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
| | |~p |~q | | |~p |~q | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
gdzie:
O - w technice cyfrowej kółko jest symbolem negacji
Układ A.
Definicja implikacji prostej:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy niezanegowaną linię q.
Układ C:
Definicja implikacji odwrotnej:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy zanegowana linie q.
Startujemy od bramki implikacji prostej p=>q, układ A.
Na schemacie B wprowadzamy po jednej negacji w linie wejściowe p i q. Oczywiście bramki A i B będą różne bo wprowadziliśmy tylko po jednej negacji.
p=>q=~p+q (układ A) # ~p=>~q (układ B) = ~(~p)+(~q) = p+~q = p~>q (układ C) - na mocy definicji bramki p~>q
Układ C jest identyczny jak układ B, bowiem nie wprowadziliśmy tu żadnych zewnętrznych negacji. Sztuczka polega na tym, że negacje w układzie B wpychamy do środka układu scalonego. Negacja w linii p zniknie na mocy prawa podwójnego przeczenia p=~(~p), pojawi się natomiast negacja w linii q bo tu uprzednio nie było żadnej negacji. Na mocy definicji bramka C to po prostu dziewicza definicja implikacji odwrotnej. Doskonale to również widać w przekształceniach matematycznych wyżej.
Startujemy teraz od bramki implikacji odwrotnej p~>q, układ C
Na schemacie D wprowadzamy po jednej negacji w linie p i q. Oczywiście układ ulegnie zmianie w stosunku do układu C.
p~>q = p+~q (układ C) # ~p~>~q (układ D) = (~p)+~(~q) = ~p+q = p=>q (układ E) - na mocy definicji bramki p=>q
Układ E jest identyczny jak układ D bowiem nie wprowadziliśmy tu żadnej zewnętrznej negacji. Nasza stara sztuczka to wepchnięcie zewnętrznych negacji z układu D do środka układu scalonego E. Tym razem zniosą się negacje w linii q na mocy prawa podwójnego przeczenia q=~(~q), oczywiście pojawi się negacja w linii p bo tu nic nie było przed przekształceniem.
Zauważmy, że w sumie poczynając od układu A wprowadziliśmy po dwie negacje w linie wejściowe. Taki układ nie ma prawa ulec zmianie na mocy prawa podwójnego przeczenia A=~(~A) co widać na schemacie. Oczywiście układ A = układ E.
6.8 Kwadrat logiczny implikacji
Kwadrat logiczny implikacji w wersji z parametrami formalnymi:
Kod: |
p=>q=~p+q p~>q=p+~q
~p~>~q=~p+q ~p=>~q=p+~q
|
Oczywiście w pionach mamy tu prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~>na =>
Między pionami nie zachodzą żadne zależności matematyczne co widać w prawych stronach tożsamości. Zapiszmy teraz kwadrat logiczny dla naszego sztandarowego przykładu o piesku i jego czterech łapach.
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Stąd otrzymujemy kwadrat logiczny dla konkretnego przykładu:
Kod: |
p=>q =~p+q p~>q=p+~q
P=>4L=~P+4L 4L~>P=4L+~P
~p~>~q=~p+q ~p=>~q=p+~q
~P~>~4L=~P+4L ~4L=>~P=4L+~P
|
Kubuś celowo pozostawił zapis formalny, abyśmy zauważyli coś bardzo ciekawego.
Zauważmy, że dla zapisu formalnego mamy:
p=>q=~p+q # p~>q=p+~q
natomiast dla zapisu aktualnego:
P=>4L=~P+4L # 4L~>P=4L+~P
Mamy tu zatem inne znaczenie parametrów formalnych p i q po lewej i prawej stronie nierówności.
Lewa strona:
p=P i q=4L
Prawa strona:
p=4L i q=P
O implikacji prostej prawdziwej decyduje warunek wystarczający między podstawą a strzałką wektora =>, natomiast o implikacji odwrotnej prawdziwej decyduje warunek konieczny między podstawą a strzałką wektora ~>.
Literki p i q są tu wstawiane prawidłowo na mocy odpowiednich definicji.
Definicja implikacji prostej:
P=>4L
p=>q
Jeśli zajdzie p to musi => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
4L~>P
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
CND
Algebra Boole’a to nie algebra dziesiętna, reguły rządzące tymi algebrami nie muszą pokrywać się w 100%.
6.9 Równoważność
Dziewicza tabela zero-jedynkowa równoważności:
Kod: |
p q p<=>q
1 1 1
1 0 0
0 0 1
0 1 0
|
Z tabeli zero-jedynkowej widać, że równoważność jest przemienna, czyli wszystko jedno którą cześć zdania nazwiemy p a którą q.
Algebra Kubusia to algebra symboliczna. W implikacji przeszliśmy z naturalnego języka mówionego do definicji operatorowej po czym do definicji symbolicznej na końcu lądując w tabeli zero-jedynkowej. Tym razem zrobimy dokładnie odwrotnie.
Przechodzimy z powyższą tabelą do symbolicznej definicji równoważności przyjmując:
p=1, ~p=0
q=1, ~q=0
Symboliczna definicja równoważności:
Kod: |
p q p<=>q
p q 1
p ~q 0
~p ~q 1
~p q 0
|
Dla linii z jedynkami w wyniku układamy równanie algebry Boole’a
Definicja równoważności w równaniu algebry Boole’a:
A: p<=>q = p*q+~p*~q
Bardzo łatwo udowodnić poprawność równoważnych definicji równoważności, wynikających z przemienności argumentów oraz powyższej definicji:
B:~p<=>~q
C:q<=>p
D:~q<=>~p
Udowodnimy tylko B bo pozostałe dowody są analogiczne.
Korzystamy z definicji równoważności A:
E: ~p<=>~q = (~p)*(~q) + ~(~p)*~(~q) = ~p*~q + p*q = p*q + ~p*~q
Prawe strony równań A: i E: są identyczne, zatem są to równoważne definicje.
Z pierwszej linii definicji symbolicznej widać, że jeśli zajdzie p to „musi” => zajść q bo druga linia tabeli jest fałszem. Podobnie z trzeciej linii widać, że jeśli zajdzie ~p to „musi” => zajść ~q bo ostatnia linia jest fałszem.
Stąd pełna definicja operatorowa równoważności przybierze postać:
Kod: |
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
Mamy tu zatem doskonale nam znane z definicji implikacji warunki wystarczające zachodzące między p i q oraz między ~p i ~q.
Stąd operatorowa definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) =1*1 =1
gdzie:
p=>q - warunek wystarczający między p i q, nigdy implikacja prosta p=>q
~p=>~q - warunek wystarczający między ~p i ~q, nigdy implikacja prosta ~p=>~q
Dlaczego powyższe zapisy nie mogą być implikacją ?
Wynika to z prawa Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawo Kubusia dla powyższej tabeli:
p=>q = ~p~>~q
czyli w implikacji musi zachodzić warunek konieczny między ~p i ~q, natomiast w równoważności między ~p i ~q zachodzi warunek wystarczający.
Przykład:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Bycie psem jest wystarczające aby mieć cztery łapy, zatem jest to implikacja prosta prawdziwa
Definicja operatorowa dla powyższego zdania:
Kod: |
P=>4L =1
P=>~4L=0
~P~>~4L=1
~P~~>4L=1
|
Aby w powyższej tabeli ostatnia linia wyzerowała się, musiałaby być prawdziwa implikacja prosta:
~P=>~4L
czyli:
Jeśli zwierzę nie jest psem to na pewno => nie ma czterech łap
~p=>~4L=0 - oczywisty fałsz bo słoń
Zatem równoważność nie może być iloczynem dwóch implikacji prostych p=>q i ~p=>~q bo takowe są niemożliwe do zaistnienia.
Można to udowodnić jeszcze prościej ….
Oczywistym jest na podstawie definicji implikacji prostej => że:
p=>q=~p+q # ~p=>~q= ~(~p)+(~q) = p+~q
To jest algebra Boole’a, zatem:
Jeśli implikacja prosta p=>q=1 to implikacja prosta ~p=>~q=0 bo:
p=>q # ~p=>~q
Stąd definicja równoważności nie może być iloczynem logicznym dwóch implikacji prostych bo:
p<=>q = (p=>q)*(~p=>~q) = 1*0=0
Wniosek:
Twierdzenie co niektórych dzisiejszych matematyków jakoby równoważność była iloczynem dwóch implikacji prostych można między bajki włożyć.
CND
Dowód nie wprost:
Zauważmy, że gdyby to była prawda matematyczna to przekształcenia musiałyby być odwracalne, czyli dowolną równoważność można by rozbić na dwie implikacje proste, co jest oczywistą bzdurą. Kamikaze mogą próbować.
6.10 Kwadrat logiczny równoważności
Narysujmy kwadrat logiczny równoważności analogiczny do kwadratu logicznego implikacji.
Kod: |
A1: p=>q=1 B1: q=>p=1
A2: ~p=>~q=1 B2: ~q=>~p=1
|
Argumenty w równoważności są przemienne, zatem wszystko jedno którą część zdania nazwiemy p a którą q. Tu możemy na stałe przywiązać p do jednej strony równoważności, zaś q do drugiej.
Stąd zapisy: p=>q i q=>p.
Oczywiście we wszystkich rogach kwadratu równoważności mamy twarde jedynki wynikające ze spełnionego warunku wystarczającego (to nie są implikacje!), zatem:
p=>q = q=>p = ~p=>~q = ~q=>~p
Stąd mamy znane w matematyce prawo kontrapozycji:
p=>q = ~q=>~p
Prawo kontrapozycji jest poprawne zarówno w równoważności jak i implikacji. W matematyce jest przydatne, to fundament dowodu nie wprost. W implikacji natomiast, czyli przede wszystkim w naturalnym języku człowieka, używane jest bardzo rzadko co nie oznacza że 5-cio latek miałby tu jakiekolwiek problemy (szczegóły pkt. 1.4 i 1.5)
Definicja równoważności to iloczyn logiczny warunków wystarczających (nie implikacji !) wzdłuż dowolnego boku kwadratu logicznego równoważności.
Najpopularniejsze definicje to:
A.
p<=>q = (p=>q)*(~p=>~q)
i
p<=>q = (p=>q)*(q=>p)
Skąd wzięło się ostatnie równanie ?
Definicja implikacji prostej plus prawo Kubusia:
p=>q = ~p~>~q = ~p+q
Definicja implikacji odwrotnej:
p~>q = ~p=>~q = p+~q
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(p~>q) = (~p+q)*(p+~q) = ~p*p + ~p*~q + q*p + q*~q = p*q + ~p*~q
bo:
A*~A=0 - prawo algebry Boole’a
stąd:
~p*p = q*~q =0
Argumenty w równoważności są przemienne, dlatego w ostatnim kroku dopuszczalna jest zamiana p i q w iloczynie logicznym oraz zamiana sumy logicznej. W implikacji takich manewrów nie wolno robić, bo tu argumenty nie są przemienne.
Absolutnie ciekawy jest tu zapis:
A.
p<=>q = (p=>q)*(p~>q)
Jak to zinterpretować ?
W równoważności argumenty są przemienne zatem tu poprawne jest równanie z którego wynika, że implikacja odwrotna p~>q jest zbędna.
p~>q = p+~q = ~q+p = q=>p
czyli:
B.
p~>q = q=>p - poprawne w równoważności
Podstawiając to do A mamy:
p<=>q = (p=>q)*(q=>p)
W implikacji brak przemienności argumentów przenosi się na brak przemienności argumentów w implikacyjnej sumie logicznej i tu poprawne jest:
p~>q = p+~q # ~q+p = q=>p
p~>q # q=>p - poprawne w implikacji
6.11 Prawa kontrapozycji[/b
[b]7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Kodowanie zdań ze spójnikiem „Jeśli…to…”:
Implikacja prosta:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
p musi być wystarczające dla q
Stwierdzenie warunku wystarczającego w p=>q determinuje zdanie prawdziwe które może być:
1.
Implikacją prostą p=>q jeśli po stronie ~p stwierdzimy warunek konieczny czyli:
~p~>~q
Czasami prościej jest wykluczyć warunek wystarczający w stronę ~p=>~q, to wystarczy aby udowodnić że zdanie p=>q jest implikacją prostą.
2.
Równoważnością p<=>q, gdy po stronie ~p również stwierdzimy warunek wystarczający czyli
~p=>~q.
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)=1*1=1
3.
Jeśli zdanie jest implikacją prostą to w stronę p=>q zachodzi warunek wystarczający, natomiast w stronę q~>p musi zachodzić warunek konieczny. Jeśli w stronę q=>p stwierdzimy warunek wystarczający to zdanie jest na pewno równoważnością, nigdy implikacją.
Definicja równoważna równoważności:
p<=>q = (p=>q)*(q=>p) = 1*1=1
Stąd mamy kolejną możliwość stwierdzenia czy zdanie jest implikacją. Po stwierdzeniu warunku wystarczającego w stronę p=>q wystarczy wykluczyć warunek wystarczający w stronę q=>p.
Implikacja odwrotna:
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
Stwierdzenie warunku koniecznego w p~>q determinuje implikację odwrotną:
p~>q
ale ….
Zdanie może być prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) i nie być implikacją odwrotną np.
Jeśli liczba jest podzielna przez 8 to może ~~> być podzielna przez 3
P8~~>P3 =1 bo 24
P8 nie jest konieczne dla P3 bo 3, nie jest to zatem implikacja odwrotna.
Koniec, to jest cała filozofia kodowania zdań ze spójnikiem „Jeśli…to…”
Zauważmy coś bardzo ciekawego.
A.
Jeśli trójkąt ma boki równe to na pewno => jest równoboczny
BR=>R =1
B.
Jeśli trójkąt nie ma boków równych to na pewno => nie jest równoboczny
~BR=>~R =1
Stąd na podstawie definicji równoważności możemy zapisać:
C.
Trójkąt ma boki równe wtedy i tylko wtedy gdy jest równoboczny
BR<=>R = (BR=>R)*(~BR=>~R) = 1*1=1 - ewidentna równoważność
Aby stwierdzić równoważność musimy zapisać i zbadać czy zachodzą warunki wystarczające jak wyżej w A i B. Wszystkie trzy zdania są matematycznie poprawne bowiem w definicji równoważności chodzi tylko i wyłącznie o warunki wystarczające, nigdy o implikacje (dowód pkt. 6.9)
Zauważmy, że gdybyśmy nie mieli prawa zapisać zdań A i B jako prawdziwych to niemożliwe byłoby stwierdzenie równoważności !
W zdaniach A, B i C nie ma niejednoznaczności bo:
1.
Fizycznie niemożliwym jest zrobienie implikacji z równoważności (zdania A i B) i odwrotnie (dowód pkt. 6.9)
2.
Twierdzenia matematyczne zwykle ujęte są w spójnik „Jeśli…to…”, pomimo że praktycznie 100% twierdzeń to równoważności. W twierdzeniach matematycznych spójnik „Jeśli…to…” jest domyślną równoważnością.
3.
Zdania A, B i C można zakodować superprecyzyjnie jako:
BR<=>R
To jest oczywistość mimo zapisania jej w formie A lub B.
Wniosek:
Zdanie „Jeśli … to …” może być implikacją prostą, implikacją odwrotną lub równoważnością co zależy od treści zdania.
Inny przykład:
Twierdzenie Pitagorasa.
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
TP=>SK =1 - pewny warunek wystarczający (nie implikacja !)
Jeśli trójkąt nie jest prostokątny to nie jest spełniona suma kwadratów.
~TP=>~SK=1 - również pewny warunek wystarczający
Twierdzenie Pitagorasa jest równoważnością bo:
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1 =1
Aby stwierdzić czy zdanie „Jeśli…to…” jest równoważnością musimy stwierdzić warunki wystarczające jak wyżej. Wtedy i tylko wtedy zdanie jest równoważnością.
Wynika z tego, że ten sam symbol => może oznaczać implikacje prostą albo warunek wystarczający =>.
Więcej na temat tego problemiku tu:
Nadmierna precyzja
7.1 Prawo Tygryska
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p)
Prawo Tygryska:
Zdanie „Jeśli…to…” jest równoważnością wtedy i tylko wtedy gdy zachodzą warunki wystarczające między p=>q i ~p=>~q lub między p=>q i q=>p, nie są to implikacje.
Wynika to bezpośrednio z prawa Kłapouchego (pkt.6.6) i definicji równoważności (pkt.6.9).
Przykład wyżej.
8.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
8.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
A:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
B:
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
C:
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
Matematycznie oznacza to:
Jeśli nie będziesz grzeczny to „możesz” ~> nie dostać czekolady
~G~>~C =1
Implikacja odwrotna prawdziwa bo bycie niegrzecznym jest warunkiem koniecznym nie dostania czekolady. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca zgodnie ze swoim „widzi mi się” czyli wolna wolą.
LUB
D:
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jeden taki przypadek)
Prawdziwość zdania D określa wzór:
(~G~~>C)+(~G~>C) = 1+0=1
gdzie:
~G~>C=0 - implikacja odwrotna fałszywa
~G~~>C=1 - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Dlaczego zdanie D nie może być implikacją odwrotną ?
Dowód nie wprost;
Załóżmy że zdanie D: ~G~>C jest implikacją odwrotną, obowiązują zatem prawa Kubusia.
~G~>C = G=>~C
Prawa strona jest twardym fałszem na mocy B:, zatem zdanie D: nie może być implikacją odwrotną
CND
Uwaga:
W groźbach (zdanie C) naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
Y=G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
Y=G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~Y=~(G=>C) = G*~C - skłamię
Synku, skłamię (~Y=1) jeśli będziesz grzeczny i nie dostaniesz czekolady.
~Y=G*~C
Jaś:
Mama, a czy może się zdarzyć, że będę grzeczny i nie dostanę czekolady ?
Negujemy powyższe równanie dwustronnie:
Y=~(G*~C)
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
Stąd gwarancja:
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
A:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
B:
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~>, nie jest to implikacja odwrotna.
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
C:
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
~B => ~L =1 - twarda prawda (gwarancja)
LUB
D:
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
~B => L =0 - twardy fałsz
Dlaczego zdanie B nie może być implikacja odwrotną ?
Dowód nie wprost:
Załóżmy że zdanie B: B~>~L jest implikacja odwrotną.
Obowiązuje wówczas prawo Kubusia:
B: B~>~L = D: ~B=>L
Zdanie D: jest oczywistym fałszem, zatem zdanie B nie może być implikacją odwrotną prawdziwą.
Prawdziwość zdania B: określa wzór:
(B~~>~L)+(B~>~L) = 1+0 =1
B~~>~L - nadawca ma prawo do darowania dowolnej kary (akt łaski)
Jedyne sensowne przejście z operatora implikacji odwrotnej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
Y=B~>L
Jaś:
… tata, a kiedy skłamiesz ?
Y=B~>L = B+~L = ~(~B*L) - dotrzymam słowa
Negujemy dwustronnie:
~Y=~(B~>L) = ~B*L - skłamię
Skłamię (~Y=1), jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie (z powodu czystych spodni !)
~Y=~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Y=~(~Y) - prawo podwójnego przeczenia, stąd:
Y=~(~B*L)
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
Y=~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.3 „Równoważność” w obietnicach i groźbach
Obietnice i groźby to przyszłość której nikt nie zna. Równoważność na mocy definicji pozbawia człowieka „wolnej woli” czyli w obietnicy prawa do darowania nagrody przy nie spełnionym warunku nagrody (akt miłości), zaś w groźbie prawa do darowania kary przy spełnionym warunku kary (akt łaski).
Obietnica:
Kupię ci komputer tylko wtedy jak zdasz egzamin
Równoważna implikacja prosta:
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Wypowiadając obietnicę w formie równoważności nadawca daje do zrozumienia, iż wystąpi bardzo małe prawdopodobieństwo wręczenia obiecanej nagrody jeśli warunek nagrody nie zostanie spełniony, nic więcej.
Groźba:
Zapłacę ci za ułożenie kafelków tylko wtedy gdy skończysz do soboty
Równoważna implikacja odwrotna:
Jeśli nie skończysz układania kafelków do soboty to ci nie zapłacę
~K~>~Z
Prawo Kubusia:
~K~>~Z = K=>Z
Jeśli ułożysz kafelki do soboty to ci zapłacę
K=>Z
Nadawca może grozić w dowolnie ostrej formie, jednak ma prawo do darowania dowolnej kary zależnej od niego (akt łaski), inaczej jego wolna wola leży w gruzach.
9.0 Podsumowanie
Ten punkt zawiera esencję wszystkiego co należy zapamiętać, dalej mamy logikę przedszkolaka.
Z przymrużeniem oka … czyli matematyczna historia powstania naszego Wszechświata.
Na początku było:
1=1
i stał się cud:
(p+~p)=(q+~q)
p+~p=1 - prawo algebry Boole’a
czyli:
p=>(q+~q)
~p=>(~q+q)
Równoważność:
Kod: |
p q p<=>q
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
W naszym Wszechświecie zdecydowanie przeważa implikacja, zatem ostatnie dwie linie ulegają rozczepieniu:
Operatorowa definicja implikacji prostej:
Kod: |
p q p=>q
p=> q =1
p=>~q =0
~p~>~q =1
~p~~>q =1
|
lub pierwsze dwie linie z definicji równoważności ulegają rozczepieniu:
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
p~> q =1
p~~>~q =1
~p=> ~q =1
~p=> q =0
|
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Zero-jedynkowe tabele operatorów logicznych generuje naturalna logika człowieka, nigdy odwrotnie. Błędem jest zatem twierdzenie dzisiejszych logików (KRZ), jakoby logika polegała na analizie wszystkich możliwych śmieci i dopasowywaniu do nich tabel zero-jedynkowych.
Dowód:
W definicjach operatorowych opuszczamy operatory oraz przyjmujemy:
p=1, ~p=0
q=1, ~q=o
stąd otrzymujemy.
Zero-jedynkowa definicja równoważności:
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
CND
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Śro 18:45, 12 Sie 2009 Temat postu: |
|
|
Beta 7.0
Narzędzia, których próbujemy używać, język lub notacja których używamy do wyrażenia lub rejestrowania naszych myśli, są głównymi czynnikami określającymi to, co w ogóle możemy myśleć lub wyrazić.
E.W. Dijkstra
Algebra Kubusia
Matematyka języka mówionego
Autor: Kubuś - wirtualny Internetowy Miś
Kim jest Kubuś ?
Kubuś to Miś kosmita, wysłannik obcej cywilizacji, którego zadaniem było przekazanie ludziom tajemnicy implikacji. W mniemaniu Kubusia zadanie zostało wykonane, ale wcale nie jest pewne czy ludzie to załapią … cóż, będzie co ma być, niebo albo piekło.
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Fizyk (ateista.pl), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), NoBody (ateista.pl), Rafał3006 (sfinia), Rogal (matematyka.pl), Uczy (wolny), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za decydującą o wszystkim dyskusję
… wszystko, co chcecie, żeby ludzie wam czynili, wy też im podobnie czyńcie …
Ewangelia Mateusza 7:12
To jest podręcznik, przy pomocy którego chciałbym poznać fundamenty logiki człowieka, gdybym miał znowu 16 lat
Kubuś
Spis treści:
1.0 Notacja
1.1 Fundament logiki klasycznej w pigułce
1.1.1 Funkcja logiczna
1.1.2 Definicja logiki ujemnej
1.1.3 Definicja implikacji prostej
1.1.4 Definicja implikacji odwrotnej
1.1.5 Spójniki zdaniowe
1.2 Najważniejsze prawa algebry Boole’a
1.2.1 Operatory AND i OR
1.3 Implikacja
1.3.1 Prawa Kubusia
1.4 Równoważność
1.4.1 Prawo kontrapozycji
1.5 Prawo Sowy
1.6 Prawa kontrapozycji w implikacji
1.7 Algebra Kubusia
1.8 Definicja algebry Kubusia
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
2.1 Podstawowe pojęcia i definicje
2.2 Funkcja logiczna jednej zmiennej
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
2.5 Logika ujemna
2.6 Definicja sumy logicznej
2.7 Prawo Prosiaczka
2.8 Definicja iloczynu logicznego
2.9 Dowody zero-jedynkowe w algebrze Boole’a
2.10 Logika dodatnia i ujemna w bramkach logicznych
2.11 Operatory OR i AND w logice człowieka
3.0 Zero-jedynkowa algebra Boole’a
3.1 Prawa wynikające z definicji iloczynu logicznego
3.2 Prawa wynikające z definicji sumy logicznej
3.3 Najważniejsze prawa algebry Boole’a
3.4 Operatory dodatnie i operatory ujemne
Część II Implikacja
4.0 Notacja szczególna w implikacji
4.1 Rodzaje implikacji
4.2 O co chodzi w implikacji
4.3 Kubuś na tropie implikacji odwrotnej
4.4 Implikacja odwrotna
4.5 Operatorowa definicja implikacji odwrotnej
4.6 Zero-jedynkowa definicja implikacji odwrotnej
4.7 Gwarancja matematyczna w implikacji odwrotnej
5.0 Kubuś na tropie implikacji prostej
5.1 Operatorowa definicja implikacji prostej
5.2 Zero-jedynkowa definicja implikacji prostej
5.3 Gwarancja w implikacji prostej
6.0 Fundamenty algebry Boole’a
6.1 Iloczyn kartezjański i pojęcie funkcji
6.2 Funkcja iloczynu algebraicznego
6.3 Funkcja iloczynu logicznego AND(*)
6.4 Algebra Boole’a i prawo przemienności
6.5 Prawa Kubusia
6.6 Prawo Kłapouchego
6.7 Implikacja w bramkach logicznych
6.8 Kwadrat logiczny implikacji
6.9 Równoważność
6.10 Kwadrat logiczny równoważności
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
7.1 Prawo Tygryska
8.0 Obietnice i groźby
8.1 Obietnice
8.2 Groźby
8.3 „Równoważność” w obietnicach i groźbach
9.0 Podsumowanie
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Wstęp.
Algebra Kubusia to symboliczna algebra Boole’a, odpowiednik języka asemblera ze świata mikroprocesorów. W algebrze Kubusia operujemy przede wszystkim na symbolach, czyli naturalnym języku mówionym, trzymając się możliwie jak najdalej od idiotycznych zer i jedynek. Oczywiście algebra Kubusia ma bezpośrednie i 100% przełożenie na zera i jedynki, co będziemy zawsze udowadniać.
Kubuś to przybysz ze świata techniki dobrze znający techniczną algebrę Boole’a której fundamentem są operatory AND(*) i OR(+). Zaskoczył go fakt, że dzisiejsza logika (KRZ) to rachunek zero-jedynkowy, że cała współczesna algebra Boole’a to mielenie bezsensownych zer i jedynek. W technicznej algebrze Boole’a myślimy naturalną logiką człowieka zapisując symbolicznie to co chcemy uzyskać. Na tym najważniejszym etapie projektowania (poziom algorytmu) zera i jedynki kompletnie nas nie interesują, wszystko zapisujemy w symbolicznych równaniach algebry Boole’a.
Matematycznie istnieją dwie zero-jedynkowe definicje implikacji znane człowiekowi od ponad stu lat, implikacja prosta => i implikacją odwrotna ~>. Definicje implikacji to w jednej połówce pewne wynikanie matematyczne (gwarancja matematyczna), natomiast w drugiej połowie to najzwyklejsze rzucanie monetą, czyli przypadek (pkt.6.6). Z tego powodu implikacja jest bezsensem w świecie techniki. Implikacja opisuje między innymi „wolną wolę” świata martwego i żywego. Oczywiście żaden projektant nie życzy sobie, aby zaprojektowane przez niego urządzenie wykazywało jakiekolwiek oznaki wolnej woli.
Człowiek poszukuje matematycznej wersji implikacji którą posługuje się w naturalnym języku mówionym od 2500 lat, jak do tej pory bezskutecznie. Po trzech latach walki z implikacją Kubuś i przyjaciele wreszcie to wszystko rozszyfrowali.
Łatwo sformułować warunki które musi spełniać poprawna matematycznie teoria języka mówionego.
1.
Teoria musi być niezależna od jakiegokolwiek języka świata
2.
Teoria musi być matematycznie jednoznaczna
3.
Teoria musi opisywać naturalny język mówiony, którym posługują się dzieci w przedszkolu
Symboliczna algebra Kubusia bez problemu spełnia wszystkie trzy warunki. Algebra Kubusia to algebra Boole’a z dołączonymi do definicji poprawnymi definicjami implikacji prostej => i odwrotnej ~>.
Nowe, nieznane człowiekowi definicje implikacji prostej => i odwrotnej ~> (oczywiście chodzi tu o interpretacje tabel zero-jedynkowych) plus prawa Kubusia działają doskonale w matematyce, przyrodzie martwej i żywej, groźbach i obietnicach oraz opisują takie pojęcia jak „wolna wola” czy „dobro-zło”.
KRZ - Klasyczny Rachunek Zdań, dział logiki, w zakresie implikacji oparty na definicji implikacji materialnej. Fundamentem KRZ jest rachunek zero-jedynkowy.
Uwaga:
W tej publikacji używając terminu „dzisiejsza logika” będziemy mieli na myśli KRZ
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
Symboliczna algebra Kubusia:
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
Rachunek zero-jedynkowy:
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków (warunek wystarczający =>)
Miękka prawda/fałsz - może zajść, ale nie musi (warunek konieczny ~>)
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
W tym miejscu początkujący czytelnicy proszeni są o przeskok do punkt 2.0 gdzie rozpoczyna się elementarz algebry Boole’a od zupełnego zera. Rozdział 1.0 to streszczenie całego podręcznika w pigułce, oczywiście można na to zerknąć, ale z pewnością będą to dla początkującego czytelnika nic nie mówiące krzaczki.
1.1 Fundament logiki klasycznej w pigułce
Logika klasyczna zbudowana na zaprezentowanym tu fundamencie to 100%, poprawna algebra Boole’a. Niemożliwe są tu jakiekolwiek paradoksy znane w starej logice klasycznej. W poprawnej matematyce to po prostu niemożliwe.
Algebra Boole’a to algebra bramek logicznych która ma zero wspólnego z matematyką klasyczną np. całki, ekstrema funkcji itp. Prawa tu obowiązujące nie muszą pokrywać się z aksjomatami wyznaczonymi dla matematyki klasycznej,
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych od prawie 200 lat.
1.1.1 Funkcja logiczna
Definicja:
Funkcja logiczna Y to funkcja n-zmiennych binarnych połączonych operatorami AND(*) lub OR(+):
Y = A+(B*C) ….
1.1.2 Definicja logiki ujemnej
Definicja:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
1.1.3 Definicja implikacji prostej
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
1.1.4 Definicja implikacji odwrotnej
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Warunki wystarczający w implikacji prostej => i konieczny w implikacji odwrotnej ~> wynikają bezpośrednio z dziewiczych definicji zero-jedynkowych tych implikacji.
1.1.5 Spójniki zdaniowe
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
1.2 Najważniejsze prawa algebry Boole’a
Zaprezentowane tu prawa to fundament logiki człowieka:
Logika człowieka = poprawna algebra Boole’a
1.2.1 Operatory AND i OR
Operatory AND i OR - przemienność argumentów zachodzi
OR(+)
Y=p+q
~Y=~p*~q
Y=~(~Y)
stąd:
p+q = ~(~p*~q) - prawo de’Morgana
AND(*)
Y=p*q
~Y=~p+~q
Y=~(~Y)
stąd:
p*q = ~(~p+~q) - prawo de’Morgana
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operatory.
1.3 Implikacja
Implikacja - przemienności argumentów nie zachodzi
Dowód pkt. 6.1
1.3.1 Prawa Kubusia
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
W prawach Kubusia występuje tożsamość gwarancji.
Dowód:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
~p~>~q = (~p)+~(~q) = ~p+q = p=>q
~p=>~q = ~(~p)+(~q) = p+~q = p~>q
Doskonale widać zachodzące tożsamości w poziomie nie zachodzące ani w pionach, ani po przekątnych.
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operator na przeciwny
Uwaga:
Zachodzące prawa Kubusia są dowodem implikacji z gwarancją.
1.4 Równoważność
Zero-jedynkowa definicja równoważności:
p<=>q = p*q+~p*~q
Znaczy się równanie algebry Boole’a opisujące tabelę zero-jedynkową.
Wszelkie tabele zero-jedynkowe w logice to epoka dinozaurów … czemu nikt nie zauważył iż żyjemy w XXI wieku, epoce komputerów i Internetu ?
Definicja operatorowa równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p) - definicja operatorowa równoważności
gdzie:
p=>q, ~p=>~q, q=>p - zachodzące warunki wystarczające, nie są to implikacje
Dowód:
W równoważności zachodzi przemienność argumentów zatem:
~p=>~q = p~>q = p+~q = ~q+p = q=>p
gdzie:
~p=>~q = p~>q - prawo Kubusia
W twierdzeniach matematycznych zdecydowanie łatwiejsza jest definicja:
p<=>q = (p=>q)*(~p=>~q)
Oczywiście, udowodnienie równoważności z wykorzystaniem powyższej definicji, jest dowodem zachodzącego warunku wystarczającego w stronę q=>p czyli pewne jest że:
p<=>q = (p=>q)*(q=>p)
1.4.1 Prawo kontrapozycji
Prawo kontrapozycji:
p=>q = ~q=>~p
Dowód:
W równoważności zachodzi przemienność argumentów zatem:
~q=>~p = q~>p = q+~p = ~p+q = p=>q
gdzie:
~q=>~p = q~>p - prawo Kubusia
1.5 Prawo Sowy
Prawo Sowy
W algebrze Boole’a jeśli coś jest implikacją to nie może być równoważnością
W algebrze Boole’a jeśli coś jest równoważnością to nie może być implikacją
Implikacja i równoważność to dwa oddzielne światy matematyczne pomiędzy którymi nie zachodzą żadne związki matematyczne.
1.6 Prawa kontrapozycji w implikacji
Prawa kontrapozycji w implikacji są fałszywe.
Prawa kontrapozycji działają w matematyce doskonale bo praktycznie wszystkie twierdzenia matematyczne to równoważności, dlatego działają. Twierdzeń implikacyjnych typu „Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2” jest w matematyce zdecydowania mniej. Definicja implikacji to zawsze w jednej połowie „rzucanie monetą” (dowód pkt. 6.6).
Dowód nie wprost.
Załóżmy, że w implikacji występuje przemienność argumentów p i q co jest sprzeczne z punktem 6.1.
Zachodzą wówczas prawa kontrapozycji.
Prawo Kontrapozycji:
p=>q = ~q=>~p
p~>q = ~q~>~p
Przemienność argumentów przenosi się na przemienność implikacyjnej sumy logicznej zatem:
p=>q =~p~>~q = ~p+q = q+~p = q~>p = ~q=>~p = q+~p = ~p+q
p~>q = ~p=>~q = p+~q = ~q+p = q=>p = ~q~>~p = ~q+p = p+~q
Doskonale widać zachodzące tożsamości w poziomie i nie zachodzące ani w pionach, ani po przekątnych.
gdzie:
p=>q =~p~>~q - prawo Kubusia
Prawo przejścia do logiki przeciwnej:
Zamieniamy zanegowane argumenty bez zmiany operatorów
Prawo kontrapozycji w operatorze ~>
p~>q = ~q~>~p
Sens prawa kontrapozycji w implikacji odwrotnej ~>
Wystarczy udowodnić warunek konieczny zachodzący po dowolnej stronie tożsamości, aby mieć pewność, że zachodzi po drugiej stronie. W implikacji zdecydowanie łatwiej jest udowodnić warunek konieczny w p~>q.
Przykład:
A
Jeśli zwierzę ma cztery łapy to może ~> być psem
4L~>P
Cztery łapy są konieczne aby być psem, zatem jest to implikacja odwrotna prawdziwa
Prawo kontrapozycji:
4L~>P = ~P~>~4L - gwarancje różne
B.
Jeśli zwierzę nie jest psem to może ~> nie mieć czterech łap
~P~>~4L = 4L~>P
Tu jak widać warunek konieczny dowodzi się zdecydowanie trudniej.
Gwarancja w implikacji odwrotnej wynika z prawa Kubusia, zawsze jest nią warunek wystarczający =>.
Zdanie A:
Prawo Kubusia:
4L~>P = ~4L=>~P - gwarancje po obu stronach identyczne
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
~4L=>~P
Gwarancja:
mrówka, stonoga, wąż - na pewno nie są psami
Zdanie B.
Prawo Kubusia:
~P~>~4L = P=>4L - gwarancje po obu stronach identyczne
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarancja:
Pies, który na pewno ma cztery łapy
Zauważmy, że gwarancje w zdaniach A i B są różne zatem prawo kontrapozycji nie zachowuje gwarancji w implikacji.
4L~>P = ~P~>~4L - gwarancje różne
Poza powyższym równaniem jest zbiór zwierzaków które mają cztery łapy i nie są psami czyli koń, słoń, hipopotam … dlatego gwarancje są różne. Zauważmy, że w prawie Kubusia po obu stronach mamy identyczne zbiory, zatem tu jest wszystko w porządku.
Istotą implikacji jest gwarancja matematyczna, wszystko inne jest bez znaczenia. Oczywiście prawo matematyczne które nie zachowuje gwarancji jest w implikacji fałszywe. Oznacza to, że prawo kontrapozycji jest fałszywe w operatorze ~>
CND
Prawo kontrapozycji w operatorze =>
p=>q = ~q=>~p
Zachodzące prawo kontrapozycji w operatorze => jest dowodem, że zdanie może być albo równoważnością albo implikacją, nie sposób tu rozstrzygnąć czym jest na prawdę. Gdyby prawo kontrapozycji było prawdziwe w implikacji to mielibyśmy wprowadzenie do logiki elementu losowości … na szczęście nie jest.
Sens prawa kontrapozycji w operatorze =>
Wystarczy udowodnić warunek wystarczający zachodzący po dowolnej stronie, aby mieć pewność warunku wystarczającego z drugiej strony.
Przykład z implikacji:
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
P8=>P2
Prawo Kubusia:
P8=>P2 = ~P8~>~P2 - gwarancje po obu stronach identyczne
8,16,, = 8,16 .. - tu jest wszystko w porządku !
Prawo kontrapozycji:
P8=>P2 = ~P2=>~P8 - gwarancje po obu stronach różne
8,16 .. # 1,3 ..
Powyższe zbiory nie są swoim dopełnieniem bo istnieje trzeci zbiór 2,4,6 …
Jak widać prawo kontrapozycji jest fałszywe w implikacji również w operatorze => bo nie zachowuje istoty implikacji, gwarancji matematycznej.
Przykład z równoważności:
Jeśli trójkąt ma boki równe to jest równoboczny.
BR=>R
Prawo kontrapozycji:
BR=>R = ~R=>~BR - gwarancje po obu stronach identyczne
W tym przypadku zbiór trójkątów po lewej stronie jest dopełnieniem zbioru trójkątów po prawej stronie, zatem w równoważności prawo kontrapozycji działa doskonale.
Zauważmy coś fundamentalnego i trywialnego zarazem.
W równoważności zawsze mamy do czynienia z dwoma zbiorami, zbiorem podstawowym i jego dopełnieniem, dlatego tu działają prawa kontrapozycji.
W implikacji zawsze mamy do czynienia z trzema zbiorami, czyli po obu stronach prawa Kubusia muszą być dokładnie te same zbiory aby zachodziła tożsamość … i są te same !
To jest algebra Boole’a i nie może być w implikacji dobre prawo kontrapozycji gdzie po obu stronach mamy różne zbiory, zaś trzeci jest poza opisem.
Wszystko jest tu zgodne z naturalną logiką. Równoważność i implikacja to dwa różne światy pomiędzy którymi nie zachodzą żadne związki matematyczne, czyli nie mogą obowiązywać wspólne prawa matematyczne.
Z powyższego wynika że:
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Prawa kontrapozycji są poprawne w równoważności i fałszywe w implikacji
1.7 Algebra Kubusia
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych ludziom od prawie 200 lat.
Iloczyn kartezjański i pojęcie funkcji (pkt. 6.1) to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w operatorach AND(*), OR(+), równoważności <=> i XOR oraz brak przemienności argumentów w operatorach implikacji prostej => i implikacji odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacji przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z definicji tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
czyli:
p=>q # q~>p
p~>q # q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacji do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Zauważmy coś fundamentalnie ważnego:
W operatorach AND(*) i OR(+) można się obejść bez jednego z tych operatorów na podstawie praw de’Morgana:
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Wydawać by się mogło, że na tej samej zasadzie zbędna jest implikacja odwrotna ~>, bo prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikacje prostą =>
Nic bardziej błędnego !
Prawa Kubusia działają bowiem w obrębie jednej i tej samej definicji zero-jedynkowej. Niemożliwe jest zatem istnienie implikacji prostej => (pewne wynikanie) bez implikacji odwrotnej ~> (rzucanie monetą) i odwrotnie - patrz prawo Kłapouchego pkt. 6.6.
1.8 Definicja algebry Kubusia
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
Zmienna binarna - zmienna przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Funkcja logiczna (Y) - to funkcja zmiennych binarnych połączonych operatorami logicznymi AND(*) lub OR(+) przyjmująca w osi czasu wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Przykładowa funkcja logiczna:
Y=A+(B*~C)
gdzie:
Y - funkcja logiczna (typowe oznaczenie rodem z teorii układów logicznych)
A,B,C … - zmienne binarne
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Lista legalnych operatorów logicznych w postaci zero-jedynkowej:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Za operatory dodatnie przyjęto te, które człowiek używa w naturalnym języku mówionym. Wyjątkiem jest tu operator XOR, w języku mówionym spójnik „albo”.
Operator ujemny to zanegowany operator dodatni, co doskonale widać w powyższej tabeli.
Operator dodatni to zanegowany operator ujemny, co również widać wyżej.
Kod: |
Definicje operatorów ujemnych:
pNORq = ~(p+q)
pNANDq = ~(p*q)
pXORq = ~(p<=>q)
pN(=>)q = ~(p=>q)
pN(~>)q = ~(p~>q)
pNOPq = ~(pFILLq)
pNPq = ~(pPq)
pNQq = ~(pQq)
|
W języku mówionym operatory ujemne nie są używane, ponieważ łatwo je zastąpić operatorami dodatnimi plus negacją co widać w powyższej tabeli.
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
Pewnego razu Kubuś, leżąc na polance w stumilowym lesie doznał olśnienia. A gdyby tak wyzerować sobie mózg, czyli założyć że moja matematyczna wiedza wstępna jest na poziomie ucznia I klasy LO który nie ma pojęcia o algebrze Boole’a i napisać podręcznik logiki dla samego siebie ?
Hmm… to całkiem niezły pomysł, pomyślał Kubuś.
Fundamentem dzisiejszej logiki (KRZ) jest rachunek zero-jedynkowy, będący przyczyną jej klęski w poszukiwaniu logiki człowieka. Po prostu praktycznie nie da się dojść od zer i jedynek do poziomu naturalnej logiki człowieka. Do problemu trzeba podejść dokładnie z drugiej strony, czyli myśleć logicznie jak dziecko w przedszkolu zapisując swoje myślenie w postaci równań algebry Boole’a.
2.1 Podstawowe pojęcia i definicje
Pewne jest, że algebrą Kubusia doskonale posługują się wszystkie dzieci w przedszkolu. Zacznijmy zatem myśleć logicznie jak 5-letnie dziecko i przelewajmy wszystko na papier. Oczywiście aby to robić musimy znać fundamentalne pojęcia i definicje z zakresu logiki. Aparatu matematycznego nie potrzebujemy w ogóle gdyż mamy go w głowie - to nasz mózg.
+ - suma logiczna, spójnik „lub” (OR) w naturalnym języku mówionym
* - iloczyn logiczny, spójnik „i” (AND) w naturalnym języku mówionym
~ - przeczenie „NIE”
K - kino
~K - nie kino
T - teatr
~T - nie teatr
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
~(…) - nieprawda że …, nie może się zdarzyć że …
Znaczenie symboli w logice:
K, T - zmienne binarne, mogące przyjmować w osi czasu wyłącznie wartości 0 albo 1
Y - funkcja logiczna zmiennych binarnych np.
Y = K+T
Y = Kino lub (+) Teatr
Definicja zmiennej binarnej:
Zmienna binarna to zmienna mogąca przyjmować w osi czasu wyłącznie wartości 0 albo 1
Definicja funkcji logicznej:
Funkcja logiczna to funkcja zmiennych binarnych połączonych operatorami OR(+) lub AND(*) przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Prawo podwójnego przeczenia:
Y=~(~Y)
prawda = nieprawda, że nieprawda
Dowód na przykładzie:
U= jestem uczciwy
~U = jestem nieuczciwy
U=~(~U)
Nieprawdą jest, że jestem nieuczciwy
czyli:
Jestem uczciwy = Nieprawdą jest że jestem nieuczciwy
W dzisiejszej logice (KRZ), której fundamentem jest rachunek zero-jedynkowy, zwyczajowo przyjmuje się logikę dodatnią gdzie:
1 = prawda, dotrzymam słowa
0 = fałsz, skłamię
… i niech tak zostanie, choć oczywiście możliwy jest standard przeciwny, czyli logika ujemna w stosunku do przyjętego standardu.
Poprawna logika nie powinna zależeć od przyjętego standardu jak wyżej. Każdy człowiek, od przedszkolaka po profesora doskonale posługuje się algebrą Kubusia na poziomie symbolicznym. Absolutnie nikt nie myśli logicznie przy pomocy zer i jedynek poza dinozaurami logiki, fanatykami rachunku zero-jedynkowego.
Identycznie jest w technice mikroprocesorowej. Człowiek myślał tu w kodzie maszynowym czyli zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wymyślił symboliczny język asemblera mający bezpośrednie przełożenie na kod maszynowy programu … czyli skopiował działanie własnego mózgu.
Z punktu odniesienia mikroprocesora mamy świat w 100% binarny czyli mikroprocesor zna wyłącznie zera i jedynki. Z punktu odniesienia człowieka mamy zupełnie inną rzeczywistość. Wszyscy wiemy, że komputery potrafią liczyć, rysować, malować, sterować fabryką bez ludzi itd.
Jak zatem działa program napisany przez człowieka w symbolicznym języku asemblera skoro mikroprocesory znają wyłącznie dwie cyferki 0 i 1 ?
Oczywiście konieczny jest tu translator języka symbolicznego na kod maszynowy programu czyli na zera i jedynki. Translator to również napisany przez człowieka program komputerowy, nic więcej.
Fundamentalnym językiem symbolicznym każdego mikroprocesora jest język asemblera, to fundament wszelkich innych języków wysokiego poziomu. Język asemblera jest jeden (to algebra Boole’a), natomiast języków wysokiego poziomu może być nieskończenie wiele.
Zacznijmy teraz myśleć logicznie jak 5-cio letnie dziecko zapisując wszystko w równaniach algebry Boole’a.
2.2 Funkcja logiczna jednej zmiennej
Jutro idę do kina
Y=K
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina (K)
Y=K
Kiedy zostanę kłamcą ?
Skłamię (~Y), jeśli jutro nie pójdę do kina
~Y = ~K
Zauważmy, że po prostu zanegowaliśmy dwustronnie równanie Y=K
Inne zdanie:
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
Jutro pójdę do kina lub do teatru
Y=K+T
czyli matematycznie:
Dotrzymam słowa (Y), jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Oczywiście zatrudniliśmy tu aparat matematyczny wbudowany w mózg każdego człowieka.
… czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru
Y=~(~K*~T)
Ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
A: Y=K+T
B: ~Y=~K*~T
C: Y=~(~Y) - prawo podwójnego przeczenia
Stąd po podstawieniu A i B do C mamy prawo de’Morgana:
K+T = ~(~K*~T) - prawo zamiany operatora OR(+) na AND(*)
Czyli zdanie równoważne do Y będzie brzmiało:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
~(~K*~T) = K+T
Ostatnie zdanie używane jest niezwykle rzadko. Nasz mózg optymalizuje odpowiedzi, czyli jeśli to samo można wyrazić prościej to preferuje tą odpowiedź (tu K+T)
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
Jutro pójdę do kina i do teatru
Y=K*T
czyli matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y = ~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru.
Y=~(~K+~T)
Oczywiście ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
Mamy wyżej:
A: Y=K*T
B: ~Y=~K+~T
Prawo podwójnego przeczenia:
C: Y=~(~Y)
Podstawiając A i B do C mamy prawo de’Morgana:
K*T = ~(~K+~T) - prawo zamiany operatora AND(*) na OR(+)
2.5 Logika ujemna
Popatrzmy jeszcze raz na matematykę, którą posługuje się każdy przedszkolak.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Koniec !
To jest cała matematyka, którą każdy człowiek od przedszkolaka po profesora używa milion razy na dobę. Jak widać mózg przedszkolaka na pytanie „Kiedy skłamię ?” odpowiada w logice ujemnej.
Definicja logiki ujemnej:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
Nietrudno zauważyć, jak mózg dziecka przechodzi z logiki dodatniej (Y) do logiki ujemnej (~Y), po prostu neguje wszystkie zmienne i wymienia operator na przeciwny. Nietrudno też się domyśleć, że to jest poprawny sposób przejścia do logiki ujemnej dla dowolnie długiej funkcji logicznej.
Metoda przedszkolaka:
Przejście z logiki dodatniej (Y)do ujemnej (~Y) lub odwrotnie uzyskujemy negując wszystkie zmienne i wymieniając operatory na przeciwne.
Przykład:
A: Y=A+(~B*C)
Przejście do logiki ujemnej poprzez negację zmiennych i wymianę operatorów na przeciwne:
B: ~Y = ~A*(B+~C)
Oczywiście zachodzi:
C: Y=~(~Y) - prawo podwójnego przeczenia
Podstawiając A i B do C mamy prawo de’Morgana.
A+(~B*C) = ~[~A*(B+~C)]
Łatwo zauważyć, że z prawa de’Morgana mózg dziecka praktycznie nigdy nie korzysta … no, chyba że w fazie poznawania języka, kiedy to dwulatek zadaje wszelkie możliwe pytania.
Popatrzmy na to jeszcze raz, delektując się genialną matematyką która posługuje się każde dziecko.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Już dziecko pięcioletnie nie będzie zadawało więcej pytań bo wszystko jest jasne, dwulatek może jednak kontynuować.
… a czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Ostatnie zdanie w dialogu:
~Y=~K*~T
Negujemy dwustronnie i mamy odpowiedź na temat, czyli zgodną z zadanym pytaniem.
Y=~(~K*~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
Na powyższe pytanie można odpowiedzieć inaczej:
Jutro na pewno pójdę do kina lub do teatru
Y=K+T
Jednak nie będzie to ścisła odpowiedź na zadane pytanie, dlatego mało kto tak odpowie.
2.6 Definicja sumy logicznej
Powyżej użyliśmy niezawodnego aparatu matematycznego, mózgu 5-cio latka, do rozszyfrowania operatorów OR(+) i AND(*). Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych. Powszechnie przyjętym zwyczajem jest, że zmienne formalne w algebrze Boole’a oznaczamy literkami p i q. Dla konkretnego przypadku pod zmienne formalne p i q podstawiamy zmienne aktualne.
Y=p+q - formalny zapis sumy logicznej
Jutro pójdę do kina lub do teatru.
Y=K+T - aktualny zapis sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
Y = A1+A2+… An =0 <=> A1=0, A2=0 …An=0
Definicja równoważna:
Suma logiczna n-zmiennych binarnych jest równa jeden gdy którakolwiek ze zmiennych jest równa jeden.
Zajrzyjmy ponownie do przedszkola ….
Pani do dzieci w przedszkolu:
Słuchajcie dzieci, obiecuję wam że jutro pójdziemy do kina lub do teatru
Y=K+T
Które z was powie mi kiedy dotrzymam słowa ?
Odpowiedzi 5-cio letniego Jasia zapiszemy w formie tabeli:
K*T = Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i do teatru
K*~T =Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i nie pójdziemy do teatru
~K*T =Y - dotrzymam słowa (Y) jeśli nie pójdziemy do kina i pójdziemy do teatru
Oczywiście wyłącznie jeden z powyższych przypadków może jutro wystąpić, czyli używamy definicji sumy logicznej aby z powyższego wygenerować równanie algebry Boole’a.
Y=K*T + K*~T + ~K*T
Pani dotrzyma słowa wtedy i tylko wtedy gdy wystąpi którykolwiek z powyższych przypadków.
Bardzo dobrze Jasiu, a teraz które z was powie kiedy skłamię ?
Zuzia:
Pani skłamie (~Y) jeśli jutro nie pójdziemy do kina i nie pójdziemy do teatru
~K*~T =~Y
Zauważmy, że wyżej mamy zapisane wszystkie przypadki dla zmiennych K i T jakie w przyszłości mogą wystąpić. Możemy to nazwać „matrycą przyszłości”, nic poza tą matrycą nie ma prawa się wydarzyć.
Zapiszmy to wszystko razem w formie tabeli:
Kod: |
K T = Y
K ~T = Y
~K T = Y
~K ~T =~Y
|
Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych.
Przyjmijmy zatem:
p=K i q=T
i przepiszmy powyższą tabelkę.
Kod: |
p q = Y=p+q
p q = Y
p ~q = Y
~p q = Y
~p ~q =~Y
|
Zauważmy, że do tej pory analizujemy sobie poczynania mózgu 5-cio latka w postaci symbolicznej. Nadszedł czas, aby z powyższego zapisu symbolicznego wygenerować kod maszynowy czyli definicje zero-jedynkową sumy logicznej.
Przyjmujemy logikę dodatnią:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
i mamy to co fanatycy zer i jedynek lubią najbardziej.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Zauważmy, że w powyższej tabeli mamy pełną zgodność z definicją logiki dodatniej i ujemnej. W logice dodatniej (Y=1) mamy odpowiedź na pytanie kiedy wystąpi prawda, zaś w logice ujemnej (~Y=1) mamy odpowiedź na pytanie kiedy wystąpi fałsz.
W tabeli widać też znaczenie kolumny wynikowej w logice dodatniej (Y):
Y=1 - dotrzymam słowa
Y=0 - skłamię
Znaczenie kolumny wynikowej w logice ujemnej (~Y):
~Y=0 - dotrzymam słowa
~Y=1 - skłamię
Matematycznie wszystko musi się zgadzać czyli:
Y=~(~Y) =1 - dotrzymam słowa w logice dodatniej
Y=~(~Y)=0 - skłamię w logice dodatniej
Oczywiście matematycznie zachodzi:
Y=~(~Y) - prawo podwójnego przeczenia
oraz:
Y#~Y
czyli jedynka w logice dodatniej (Y) to zupełnie co innego niż jedynka w logice ujemnej (~Y).
Oczywiście wszystko musi się tu zgadzać czyli:
Y=~(~Y)=Y - oczywistość w powyższej tabeli
oraz:
~Y=1 czyli Y=0 - sprowadzenie fałszu w logice ujemnej (~Y=1) do fałszu w logice dodatniej (Y=0).
2.7 Prawo Prosiaczka
Prawo Prosiaczka mówi o sposobie przejścia z tabeli zero-jedynkowej n-elementowej do równania algebry Boole’a opisującego tą tabelę.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Kubuś, nauczyciel logiki w I klasie LO w stumilowym lesie:
Kto potrafi z powyższej tabeli zero-jedynkowej wygenerować równanie algebry Boole’a ?
Wszystkie ręce w górze, do tablicy podchodzi Jaś:
W ostatniej linii w wyniku mamy samotne zero, zatem dla tej linii możemy zapisać najprostsze równanie.
Z tabeli widzimy że:
A.
Y=0 <=> p=0 i q=0
Przejście z takiego zapisu do równań algebry Boole’a jest banalne. Należy skorzystać z definicji iloczynu logicznego sprowadzając wszystkie zmienne do jedynki albo z definicji sumy logicznej sprowadzając wszystkie zmienne do zera.
Sposób I.
Sprowadzam wszystkie zmienne do jedynki:
B.
Y=0 czyli ~Y=1
p=0 czyli ~p=1
q=0 czyli ~q=1
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Korzystając z A i B na podstawie tej definicji mamy:
~Y = ~p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując wszystkie zmienne i wymieniając operator AND(*) na OR(+):
Y = p+q
Sposób II
Sprowadzamy wszystkie zmienne do zera i stosujemy definicję sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
W równaniu A wszystkie zmienne są równe zeru, zatem tu nic nie musimy robić, od razu mamy równanie algebry Boole’a dla powyższej tabeli zero-jedynkowej.
Y=p+q
Kubuś:
Jasiu, zapisałeś równanie algebry Boole’a wyłącznie dla ostatniej linii, skąd wiesz jakie będą wartości logiczne w pozostałych liniach, nie opisanych tym równaniem ?
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
2.8 Definicja iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Y=A1*A2* … *An =1 <=> A1=1, A2=1 … An=1
Definicja równoważna:
Iloczyn logiczny jest równy zeru jeśli którakolwiek zmienna jest równa zeru.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej metodą przedszkolaka, negujemy zmienne i wymieniamy operator.
Skłamię (~Y) jeśli jutro nie pójdę do kina lub nie pójdę teatru
~Y=~K+~T
Oczywiście dotrzymam słowa wtedy i tylko wtedy gdy pójdę do kina i do teatru, w przeciwnym przypadku skłamię. Rozpiszmy szczegółowo te przypadki.
K*T=Y - dotrzymam słowa jeśli pójdę do kina i do teatru
W przeciwnym przypadku skłamię czyli uzupełniamy pozostałe możliwości:
K*~T=~Y - skłamię (~Y) jeśli pójdę do kina i nie pójdę do teatru
~K*~T=~Y - skłamię (~Y) jeśli nie pójdę do kina i nie pójdę do teatru
~K*T =~Y - skłamię (~Y) jeśli nie pójdę do kina i pójdę do teatru
Oczywiście skłamię jeśli wystąpi którykolwiek z powyższych przypadków czyli:
~Y = K*~T + ~K*~T + ~K*T
Na podstawie powyższego budujemy tabelę prawdy dla iloczyny logicznego
Kod: |
K T = Y=K*T
K ~T =~Y
~K ~T =~Y
~K T =~Y
|
Przechodzimy teraz na zapis symboliczny przy użyciu parametrów formalnych p i q podstawiając:
p=K, q=T
stąd mamy symboliczną definicje iloczynu logicznego:
Kod: |
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Zauważmy, że tu również uzyskaliśmy pełną definicję iloczynu logicznego na poziomie symbolicznym czyli absolutne zero styczności z kodem maszynowym, zerami i jedynkami.
Równania algebry Boole’a najłatwiej utworzyć korzystając z definicji symbolicznej.
Z pierwszej linii otrzymujemy najprostsze równanie:
A1: Y=p*q - dotrzymam słowa
Z kolejnych trzech linii mamy:
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
W sumie na podstawie powyższych równań możemy ułożyć aż osiem różnych zdań, cztery z nich (matematycznie równoważne) będą mówiły kiedy dotrzymam słowa (Y), zaś kolejne cztery (także równoważne) kiedy skłamię (~Y).
A1: Y=p*q - dotrzymam słowa
Dotrzymam słowa (Y), jeśli jutro pójdę do kina i do teatru
Y=K*T
Negujemy równania dwustronnie:
A2: ~Y=~(p*q) - skłamię
Skłamię (~Y), jeśli nie zdarzy się ~(…) że jutro pójdę do kina i do teatru
~Y=~(K*T)
Przechodzimy z równaniem A1 do logiki ujemnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne:
A3: ~Y=~p+~q - skłamię
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
Negujemy dwustronnie równanie A3:
A4: Y=~(~p+~q) - dotrzymam słowa
Dotrzymam słowa (Y), jeśli nie zdarzy się ~(…) że jutro nie pójdę do kina lub nie pójdę do teatru
Y=~(~K+~T)
To co wyżej to najczęstsze zdania w języku mówionym. Zdania serii B są zdecydowanie rzadsze bo bardziej złożone.
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
~Y=(K*~T)+(~K*~T)+(~K*T)
Skłamię (~Y), jeśli zdarzy się którykolwiek z powyższych przypadków.
Negujemy dwustronnie:
B2: Y=~[(p*~q) + (~p*~q) + (~p*q)] - dotrzymam słowa
Przechodzimy z równaniem B1 do logiki przeciwnej negując zmienne i wymieniając operatory na przeciwne:
B3: Y=(~p+q)*(p+q)*(p+~q) - dotrzymam słowa
Negujemy dwustronnie:
B4: ~Y=~[(~p+q)*(p+q)*(p+~q)] - skłamię
W sumie mamy fantastyczną właściwość języka mówionego czyli powiedzenie tego samego na wiele różnych sposobów. Zauważmy, że nigdzie wyżej nie mamy styczności z kodem maszynowym języka czyli idiotycznymi zerami i jedynkami. Taki związek oczywiście istnieje i jest łatwy do pokazania.
Przechodzimy do zero-jedynkowej definicji iloczynu logicznego w logice dodatniej przyjmując:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
Zero jedynkowa definicja iloczynu logicznego:
Kod: |
p q Y=p*q ~Y=~(p*q)
1 1 =1 0
1 0 =0 1
0 0 =0 1
0 1 =0 1
|
Tu również mamy doskonałą zgodność z definicją logiki dodatniej i ujemnej.
Dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy p*q czyli:
Y=p*q - dotrzymam słowa
Skłamię (~Y=1) gdy:
~Y=p*~q + ~p*~q + ~p*q - skłamię
Załóżmy teraz, że mamy wyłącznie tabelę zero-jedynkową jak wyżej. Jak dla takiej tabeli ułożyć równanie algebry Boole’a. Oczywiście najprostsze równanie uzyskamy z pierwszej linii bo mamy tu samotną jedynkę w wyniku. Na podstawie tej linii możemy ułożyć równanie na dwa sposoby.
Dla powyższej tabeli możemy zapisać:
A.
Y=1 <=> p=1 i q=1 - na podstawie pierwszej linii
Sposób I
Sprowadzamy wszystkie sygnały do jedynki i korzystamy z definicji iloczynu logicznego.
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden gdy wszystkie składniki iloczynu są równe jeden
Wszystkie sygnały w równaniu A są jedynkami zatem tylko je przepisujemy, nic nie musimy negować.
Y=p*q
Sposób II
Sprowadzamy wszystkie sygnały do zera i korzystamy z definicji sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru gdy wszystkie składniki sumy są równe zeru
Sprowadzamy sygnały A do zera:
Y=1 czyli ~Y=0
p=1 czyli ~p=0
q=1 czyli ~q=0
Stąd na podstawie definicji sumy logicznej mamy:
~Y = ~p+~q
Oczywiście przechodzimy do logiki dodatniej ponieważ człowiek używa logiki ujemnej wyłącznie w przeczeniach. Negujemy sygnały i wymieniamy operatory na przeciwne.
Y=p*q
Na zakończenie zabawy z operatorami typu AND(*) i OR(+) pokażemy dowód prawa de’Morgana metodą zero-jedynkową.
2.9 Dowody zero-jedynkowe w algebrze Boole’a
Dowody zero-jedynkowe w algebrze Boole’a są równoważne do odpowiednich dowodów w równaniach matematycznych które wykonywaliśmy do tej pory. Dowody te są zdecydowanie bardziej czasochłonne i w wielu przypadkach nie wiadomo o co chodzi np. zasługą dowodów zero-jedynkowych jest fakt, że człowiek do tej pory nie był w stanie zlokalizować implikacji którą się posługuje.
Prawo de’Morgana:
p*q=~(~p+~q)
Dowód zero-jedynkowy:
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Jak widać rozpatrujemy tu wszystkie możliwe przypadki dla zmiennych p i q. Równość kolumn trzeciej i ostatniej wskazuje na poprawność prawa de’Morgana. Kluczową różnicą tabeli wyżej w stosunku do identycznej tabeli znanej matematykom jest rozróżnianie logiki dodatniej (Y) od logiki ujemnej (~Y). Zdanie p*q w logice dodatniej (Y) to zupełnie co innego niże zdanie ~p+~q w logice ujemnej (~Y).
Zobaczmy po raz n-ty jak genialnie prosto przechodzi mózg przedszkolaka z logiki dodatniej do ujemnej.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
A: Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów na przeciwne:
~Y=~K+~T
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie:
B: Y=~(~K+~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru
~(~K+~T)
Z równań A i B mamy prawo de’Morgana:
K*T = ~(~K+~T)
Jak widzimy w języku mówionym każdy człowiek stosuje podświadomie prawa de’Morgana ….potrafi to robić nawet przedszkolak, naturalny ekspert algebry Kubusia.
Na zakończenie pokażemy dowód prawa de’Morgana w bramkach logicznych. Bramki logiczne to graficzna ilustracja skomplikowanych niekiedy przekształceń matematycznych. Dzięki nim łatwiej zorientować się „o co tu chodzi”.
2.10 Logika dodatnia i ujemna w bramkach logicznych
Podstawowe pojęcia w teorii układów logicznych.
Sygnał cyfrowy (zmienna binarna) to sygnał mogący przyjmować w osi czasu wyłącznie dwa stany 0 albo 1.
Wyjście cyfrowe (funkcja logiczna) to wyjście układu logicznego, dowolnie złożonego, zbudowanego z bramek logicznych typu OR(+) lub AND(*) oraz negatorów.
Bramki logiczne to domena elektroników logików. Już na pierwszym wykładzie z „Teorii układów logicznych” dowiadujemy się, że w dowolną linię układu logicznego zbudowanego na bramkach logicznych możemy wstawić dwa negatory (na schemacie kółka) i nic się nie zmieni zgodnie z prawem podwójnego przeczenia.
A=~(~A)
Kod: |
Negator i prawo podwójnego przeczenia
Y=A ~Y=~A Y=~(~A)=A
-----O-------------O---------
|
Na wejście negatora (na schematach kółko) podajemy sygnał A, na jego wyjściu otrzymujemy sygnał zanegowany ~A który podajemy na kolejny negator. Po drugim negatorze mamy oczywiście sygnał cyfrowy identyczny z A zgodnie z prawem podwójnego przeczenia.
Po drugim wykładzie wiemy już jak zastąpić bramkę OR(+) bramką AND(*) i odwrotnie. Tu korzystamy z praw de’Morgana.
p*q = ~(~p+~q) - prawo zamiany bramki AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany bramki OR(+) na AND(*)
Przy pomocy negatora możemy symbolicznie pokazać obsługę zdań prostych.
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Negujemy dwustronnie.
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
Kod: |
-------
| |
Y=~K ----------| ~ |O----------> ~Y=K
| |
-------
|
W technice cyfrowej symbolem negacji jest kółko, nie musimy rysować całego negatora jak wyżej. Ze schematu widać że, na wejście negatora podajemy sygnał (funkcję logiczną) Y=~K, zaś na wyjściu otrzymujemy sygnał zanegowany ~Y=K.
Oczywiście mamy:
Y#~Y
czyli sygnał na wejściu negatora to zupełnie co innego niż sygnał na jego wyjściu.
Łatwo się o tym przekonać biorąc do ręki rzeczywisty negator np. układ scalony 7404. Jeśli na wejście rzeczywistego negatora podamy cyfrowy sygnał zero-jedynkowy (zmienny w czasie) to na jego wyjściu otrzymamy lustrzane odbicie sygnału wejściowego, co łatwo można zaobserwować na oscyloskopie, przyrządzie służącym do wizualizacji przebiegów zmiennych.
Zwarcie kabelkiem wejścia negatora z wyjściem, czyli wymuszenie:
Y=~Y
grozi oczywiście wybuchem czyli dużo dymu i smrodu.
Podstawowe schematy elektroniczne bramek OR(+) i AND(*) są następujące.
Kod: |
Bramka OR i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| OR | | AND |
------- -------
| O
| |
Y=p+q = Y=~(~p*~q)
|
Z powyższego wynika, że bramkę OR możemy zastąpić bramką AND plus trzema negatorami wstawionymi w linie wejściowe p i q oraz linię wyjściową Y.
Kod: |
Bramka AND i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| AND | | OR |
------- -------
| O
| |
Y=p*q = Y=~(~p+~q)
|
Podobnie bramkę AND możemy zastąpić bramką OR plus trzema negatorami. Fizycznie oznacza to, że możemy zbudować dwa układy jak wyżej (w technice cyfrowej to banał) a następnie połączyć sygnały p-p, q-q, Y-Y i wszystko będzie dalej pięknie działało.
Powróćmy jeszcze raz do dowodu praw de’Morgana uwzględniającego logikę dodatnią i ujemną by zobaczyć na bramkach logicznych skąd się to bierze.
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Równość kolumn trzeciej i ostatniej jest dowodem poprawności prawa de’Morgana. Ten sam dowód krok po kroku w bramkach logicznych.
Na początku była bramka AND(*) ….
Kod: |
p q p q p q
| | | | | |
| | O O O O
| | |~p |~q |~p |~q
| | O O | |
| | |p |q | |
------- ------- -------
| | = | | = | |
| AND | | AND | | OR |
------- ------- -------
| |Y=p*q |
| O |
| |~Y=~(p*q) |~Y=~p+~q
| O O
| | |
Y=p*q = Y=p*q Y=~(~p+~q)
A B C
|
Schemat A:
Bramka AND rodem z teorii układów logicznych, realizująca funkcję logiczną Y=p*q.
Schemat B:
Na rysunku B wstawiliśmy w każdą linię wejściową bramki po dwie negacje oraz w linię wyjściową Y również dwie negacje.
Taki układ oczywiście nie zmieni się bo:
A=~(~A) - prawo podwójnego przeczenia.
W linii wejściowej p po minięciu pierwszego negatora otrzymamy sygnał ~p ale po minięciu drugiego negatora będziemy mieli sygnał p, identyczny jak na wejściu. Identycznie mamy w linii wejściowej q. Na wyjściu bramki AND mamy sygnał Y=p*q, po minięciu pierwszego negatora mamy ten sam sygnał w logice ujemnej ~Y=~(p*q), zaś po minięciu kolejnego negatora mamy sygnał identyczny jak bezpośrednio na wyjściu bramki AND czyli Y=p*q
Schemat C:
Ten schemat różni się od B wyłącznie tym, że zastosowaliśmy układ zastępczy bramki AND z zanegowanymi wejściami i zanegowanym wyjściem, którym jest po prostu bramka OR. Oczywiście na wyjściu ~Y mamy teraz ~Y=~p+~q zgodnie ze schematem ideowym, zaś po minięciu negatora na wyjściu (negujemy dwustronnie) mamy Y=~(~p+~q).
W matematyce wszystko musi się zgadzać.
Dla rysunków B i C mamy dla wyjścia ~Y:
~Y=~Y
czyli:
~(p*q) = ~p+~q - prawo de’Morgana w równoważnym zapisie
Zaś dla wyjścia Y:
Y=Y
czyli:
p*q = ~(~p+~q) - prawo de’Morgana w najpopularniejszym zapisie
Jak widzimy wyżej, przedszkolak przechodząc z logiki dodatniej do ujemnej w genialnie prosty sposób nie robi nic nadzwyczajnego.
Y=p*q
przejście do logiki ujemnej poprzez negację sygnałów i wymianę operatorów na przeciwne:
~Y=~p+~q
Wszystko jest tu w 100% zgodne z teorią bramek logicznych, czyli algebrą Boole’a. Mam nadzieję, że wszyscy rozumieją teraz dlaczego w nowatorskiej tabeli zero-jedynkowego dowodu prawa de’Morgana wyżej widnieje zapis ~Y=~p+~q a nie jak to jest w dzisiejszej matematyce gołe ~p+~q, które nie wiadomo czym jest.
Oczywiście sygnały w punktach Y i ~Y to zupełnie co innego, gdybyśmy je połączyli kabelkiem na powyższym schemacie (czyli wymusili Y=~Y) byłoby dużo dymu i smrodu, wszystko wyleciałoby w powietrze.
Przykład:
Jutro pójdę do kina i do teatru
Y=K+T
Matematycznie oznacza to:
Dotrzymam słowa (Y=1), jeśli jutro pójdę do kina i do teatru
Y=K*T
gdzie: Y=1 - zdanie prawdziwe
…. a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów.
~Y=~K+~T
Skłamię (~Y=1), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
gdzie: ~Y=1 - zdanie prawdziwe
Mamy tu do czynienia ze zdaniami prawdziwymi, ale nie równoważnymi bowiem występującymi w przeciwnych logikach.
2.11 Operatory AND i OR w logice człowieka
W algebrze Boole’a z operatorami AND i OR da się wypowiedzieć cztery różne zdania, a po uwzględnieniu praw de’Morgana nawet osiem.
p*q = ~(~p+~q)
p+q = ~(~p*~q)
~(p*q) = ~p+~q
~(p+q) = ~p*~q
W języku mówionym w zdaniach prostych przedrostek dotrzymam słowa (Y) jest domyślny czyli:
Jutro pójdę do kina lub do teatru
Y=K+T
matematycznie oznacza:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Przechodzimy z powyższym do logiki przeciwnej metodą przedszkolaka czyli negujemy zmienne i odwracamy operatory.
~Y=~K*~T
Skłamię (~Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y=~K*~T
Przedrostek skłamię (~Y) nie jest domyślny i musi zostać wypowiedziany czyli:
Skłamię (~Y), jeśli jutro pójdę do kina lub do teatru
~Y=K+T
… a kiedy powiem prawdę ?
Przechodzimy z powyższym do logiki przeciwnej czyli negujemy zmienne i odwracamy operatory.
Y=~K*~T
czyli:
Dotrzymam słowa (Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
Y=~K*~T
Oczywiście zdanie w logice dodatniej (Y) nie jest równoważne zdaniu w logice ujemnej (~Y) mimo że oba zdania są prawdziwe, tak wiec prawdziwość zdania nie oznacza automatycznie równoważności zdania.
3.0 Zero-jedynkowa algebra Boole’a
Algebra Kubusia, matematyka języka mówionego, jest algebrą symboliczną mającą 100% przełożenie na kod maszynowy czyli zera i jedynki, co pokazaliśmy wyżej.
Klasyczna, zero-jedynkowa algebra Boole’a to w dniu dzisiejszym zabytek klasy zerowej. Algebra ta jest co prawda fundamentem działania wszelkich komputerów (i całego naszego Wszechświata) ale człowiek myślał w zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wynalazł język symboliczny zwany asemblerem izolując się od kodu maszynowego … czyli skopiował działanie własnego mózgu. Żaden programista pisząc programy nie myśli w zerach i jedynkach bo to po prostu horror. Klasyczna algebra Boole’a jest zupełnie nieprzydatna w technice bowiem nikt nie projektuje już automatów cyfrowych na bramkach logicznych, jak to miało miejsce przed wynalezieniem mikroprocesora. Pierwszy przyzwoity mikroprocesor (Intel 8080) pojawił się w roku 1974, ale już przed nim algebra Boole’a załamała się na układach cyfrowych średniej skali integracji (liczniki, rejestry, multipleksery itp.).
Oczywiście algebra Boole’a w najprostszej postaci będzie w technice przydatna zawsze, ale już nikt nigdy nie będzie używał bramek logicznych do projektowania złożonych automatów cyfrowych, tu królują mikroprocesory.
Fundamentalne prawa algebry Boole’a musi znać każdy programista piszący programy w dowolnym języku programowania … ale normalni ludzie nie muszą, tak wiec wszyscy których nie interesuje pisanie programów mogą ten rozdział pominąć.
3.1 Prawa wynikające z definicji iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Definicja równoważna:
Iloczyn logiczny jest równy zeru gdy którakolwiek zmienna jest równa zeru.
Prawa wynikające bezpośrednio z definicji:
1*0=0
1*1=1
A*0=0
A*1=A
A*A=A
A*~A=0
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.2 Prawa wynikające z definicji sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zminnych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Definicja równoważna:
Suma logiczna jest równa jeden gdy którakolwiek zmienna jest równa 1
Prawa wynikające bezpośrednio z definicji:
1+0=1
0+0=0
A+1=1
A+0=A
A+A=A
A+~A=1
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.3 Najważniejsze prawa algebry Boole’a
W języku mówionym prawa łączności i przemienności to oczywistość, natomiast absorpcja, rozdzielność i pochłanianie są przydatne jedynie w technice cyfrowej.
Łączność:
A+(B+C) = (A+B)+C
A*(B*C)=(A*B)*C
Przemienność:
A+B=B+C
A*B=B*C
Absorbcja:
A+(A*B)=A
Dowód:
Jeśli A=1 to A+(A*B)=1+(A*B)=1
Jeśli A=0 to A+(A*B)=0+(0*B)=0+0=0
niezależnie od wartości B
CND
A*(A+B)=A
Dowód:
Jeśli A=1 to A*(A+B)= 1*(1+B)=1*1=1
Jeśli A=0 to A*(A+B)=0*(A+B)=0
niezależnie od wartości B.
CND
Rozdzielność:
A+(B*C) = (A+B)*(A+C)
A*(B+C)=(A*B)+(B*C)
Pochłanianie:
A*~A=0
A+~A=1
3.4 Operatory dodatnie i operatory ujemne
Tabela legalnych operatorów logicznych typu AND(*) I OR(+)
Kod: |
Tabela A
p q Y=p+q ~Y=pNORq Y=p*q ~Y=pNANDq
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
OR(+), AND(*) - operatory w logice dodatniej
NOR, NAND - operatory w logice ujemnej
Porównajmy powyższą tabele z tabelą używaną przez nas do tej pory.
Kod: |
Tabela B
p q Y=p+q ~Y=~(p+q) Y=p*q ~Y=~(p*q)
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
Z powyższych tabel wynikają definicje operatorów NOR i NAND:
pNORq = ~(p+q) = ~p*~q - na podstawie prawa de’Morgana
pNANDq = ~(p*q) = ~p+~q - na podstawie prawa de’Morgana
bo:
~Y=~Y
Stąd w katalogach układów cyfrowych znajdziemy takie definicje bramek NOR i NAND.
Funkcja logiczna realizowana przez bramkę NOR:
Y=~(p+q)
Funkcja logiczna realizowana przez bramkę NAND:
Y=~(p*q)
Zauważmy, że po takim manewrze operatorów ujemnych NAND i NOR nie wolno mieszać z operatorami dodatnimi AND i OR ponieważ zachodzi.
Y(NAND, NOR) # Y(AND, OR)
co doskonale widać na bramkach logicznych.
Kod: |
Bramka AND i bramka NAND
p q p q
| | | |
| | | |
------- -------
| | = | |
| AND | | NAND|
------- -------
| O
| |
|Y=p*q | Y=pNANDq=~(p*q)
O O
| |
|~Y=~(p*q) |~Y=~(pNANDq)=p*q
A B
|
A - punkt odniesienia, operator AND(*)
B - punkt odniesienia, operator NAND
Oczywistym jest, że zwarcie pozornie identycznych sygnałów:
Y=Y lub ~Y=~Y
grozi wysadzeniem bramki w powietrze.
Na powyższym schemacie zachodzą tożsamości po przekątnych czyli absolutna bzdura z punktu widzenia algebry Boole’a bo wtedy mamy:
Y=~Y
czyli:
Y=p*q <=> ~Y=~(pNANDq) = p*q
Wniosek:
Można myśleć logicznie albo w operatorach dodatnich AND i OR, albo w operatorach ujemnych NAND i NOR. Mieszanie tych operatorów w jednej logice to głupota.
Punkt odniesienia, operatory dodatnie AND i OR:
Y=prawda
~Y=fałsz
Punkt odniesienia, operatory ujemne NAND i NOR:
Y=fałsz
~Y=prawda
Wróćmy do symbolicznej definicji bramki AND.
Kod: |
Tabela A
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Dla punktu odniesienia AND i OR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=1(prawda), ~Y=0(Fałsz)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia AND(*) i OR(+):
Kod: |
p q Y=p*q=~(pNANDq) ~Y=~(p*q)=pNANDq
1 1 1 0
1 0 0 1
0 0 0 1
0 1 0 1
|
stąd:
Definicja operatora AND:
Y=1 <=> p=1 i q=1
Dla punktu odniesienia NAND i NOR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=0(fałsz), ~Y=1(prawda)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia NAND i NOR:
Kod: |
p q Y=pNANDq=~(p*q) ~Y=~(pNANDq)=p*q
1 1 0 1
1 0 1 0
0 0 1 0
0 1 1 0
|
stąd:
Definicja operatora NAND:
Y=0 <=> p=1 i
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Śro 18:47, 12 Sie 2009 Temat postu: |
|
|
Część II Implikacja
4.0 Notacja szczególna w implikacji
W implikacji dla uproszczenia używać będziemy bezwzględnych zer i jedynek wyłącznie dla określenia prawdziwości zdania:
1 - zdanie prawdziwe
0 - zdanie fałszywe
To „uproszczenie” wynika tylko i wyłącznie z przyzwyczajeń przeciętnego człowieka do powyższego standardu. Elegancja w matematyce polega na wyprowadzeniu wzoru ogólnego i dopiero na końcu na podstawieniu danych.
Gdybyśmy w tej publikacji użyli symboli w 100% czyli zastosowali:
Y - zdanie prawdziwe
~Y - zdanie fałszywe
to otrzymalibyśmy w pełni symboliczne tabele operatorowe implikacji prostej, implikacji odwrotnej i równoważności czyli zero styczności z zerami i jedynkami.
4.1 Rodzaje implikacji
Istnieją dwa rodzaje implikacji, implikacja z gwarancją (prawa Kubusia) i implikacja bez gwarancji (prawa kontrapozycji). Wyprzedzimy trochę czas, nie należy się przejmować jeśli poniższe definicje i prawa nie będą zrozumiałe. Można spokojnie przejść do następnego punktu.
Definicja:
Implikacja z gwarancją, to implikacja w której występuje tożsamość gwarancji i nie występuje tożsamość operatorów (w prawach Kubusia).
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
W prawach Kubusia po obu stronach zachowana jest tożsamość gwarancji, oczywisty brak tożsamości operatorów widać doskonale.
Definicja:
Implikacja bez gwarancji to implikacja, w której występuje tożsamość operatorów bez zachowania tożsamości gwarancji (w prawach kontrapozycji).
Prawo Kontrapozycji:
p=>q = ~q=>~p
p~>q = ~q~>~p
W prawach kontrapozycji zachowana jest tożsamość operatorów co widać wyżej, ale nie jest zachowana tożsamość gwarancji o czym dowiemy się … w swoim czasie.
Uwaga:
W całym podręczniku pisząc „implikacja” będziemy mieli na myśli domyślnie „implikację z gwarancją”.
4.2 O co chodzi w implikacji
Implikacja to zdanie złożone warunkowe typu „Jeśli…to…”
W dzisiejszej matematyce funkcjonuje taka definicja implikacji:
Jeśli p to q
gdzie:
p - poprzednik
q - następnik
Koniec, absolutne zero jakiegokolwiek komentarza czyli kompletnie nie wiadomo o co chodzi.
Matematycznie istnieją dwie różne tabele zero-jedynkowe implikacji.
p=>q - implikacja prosta
p~>q - implikacja odwrotna
Oczywiście dzisiejsza matematyka akceptuje fakt że:
p=>q # p~>q
Jednak z powodu fałszywej interpretacji zer i jedynek w definicjach implikacji wychodzi jej że implikacja odwrotna jest zbędna. Poprawne definicje implikacji prostej i odwrotnej są wyżej.
Ujmując rzecz całą ściśle matematycznie można udowodnić, że wszystkie operatory logiczne są zbędne za wyjątkiem jednego, NOR albo NAND … nie o to jednak chodzi.
Twierdzenie Kubusia:
W logice niezbędne są tylko i wyłącznie te operatory których człowiek używa w naturalnym języku mówionym czyli: AND(*), OR(+), implikacja prosta =>, implikacja odwrotna ~> plus negacja (~).
Powyższego zestawu operatorów nie należy ani skracać, ani też rozszerzać bo wyjdzie z tego logika-potworek nie mająca nic wspólnego z nieprawdopodobnie prostą i doskonałą, logiką człowieka.
Implikacja to przede wszystkim matematyczny opis przyszłości, dzięki niej człowiek z góry wie kiedy w przyszłości zostanie kłamcą a kiedy nie.
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Oczywiście jeśli zdam egzamin do mam gwarantowany komputer. Jeśli nie zdam to wszystko może się zdarzyć wedle „widzi mi się” czyli wolnej woli ojca … mamy rzucanie monetą.
Implikacja to również matematyczny opis przyszłości świata martwego.
Jeśli jutro będzie padać to na pewno będzie pochmurno
P=>CH
Jeśli będzie padać to na pewno będzie pochmurno. Jeśli nie będzie padać, to może być pochmurno lub nie być, wedle „wolnej woli” pogody, czyli rzucanie monetą.
Implikacja występuje również w przyrodzie i matematyce. Wszelkie twierdzenia matematyczne to równoważności, implikacja jest tu niezwykle rzadkim wyjątkiem.
Jeśli zwierzę jest psem to ma cztery łapy
Jeśli wylosowane w przyszłości zwierzę będzie psem to na pewno będzie mieć cztery łapy
P=>4L
Matematycznie to dwa równoważne zdania. Oczywiście wszystkie psy mają cztery łapy, ale jeśli wylosowane zwierzę nie będzie psem to może mieć cztery łapy (słoń) albo nie mieć czterech łap (mrówka), czyli rzucanie monetą.
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
Jeśli wylosowana w przyszłości liczba będzie podzielna przez 8 to będzie podzielna przez 2
P8=>P2
Matematycznie to dwa równoważne zdania. Oczywiście każda liczba podzielna przez 8 jest podzielna przez 2, ale jeśli wylosowana liczba nie będzie podzielna przez 8 to może być podzielna przez 2 (2,4,6..) albo nie (3,5,7…), czyli rzucanie monetą.
Jak widać wyżej każda implikacja prosta => jest w pierwszej części zdeterminowana, tu mamy pewność, ale w drugiej części definicji to najzwyklejsze rzucanie monetą.
W implikacji odwrotnej ~> mamy dokładnie odwrotnie. Tu w pierwszej części definicji mamy przypadek czyli rzucanie monetą zaś w drugiej części mamy pewność.
Jeśli zwierzę ma cztery łapy to może być psem
Jeśli wylosowane w przyszłości zwierzę będzie mieć cztery łapy to może być psem
4L~>P
Oba zdania są matematycznie równoważne. Ta implikacja jest prawdziwa bo spełnia definicję implikacji odwrotnej ~>. Jeśli zwierzę ma cztery łapy to może być psem albo nie być (np.słoń). W pierwszej części definicji implikacji odwrotnej mamy rzucanie monetą, ale w drugiej części mamy pewność, czyli jeśli zwierzę nie ma czterech łap to na pewno nie jest psem.
Matematycznie obie implikacje, prosta => i odwrotna ~> są równie cenne bowiem w obu występuje gwarancja matematyczna.
Zdanie bez żadnej gwarancji jest po prostu śmieciem np.
Jeśli księżyc świeci to pies ma cztery łapy
KS=>4L
Implikacja oczywiście fałszywa bo brak związku poprzednika z następnikiem, nie możemy tu mówić o jakiejkolwiek gwarancji. Świecenie księżyca nie gwarantuje czterech łap u psa … no, chyba że suczka zaszła w ciążę przy pełni księżyca i dlatego pies ma cztery łapy ?
Implikacja jest implikacją prawdziwą, jeśli spełnia odpowiednią definicję implikacji. W matematyce występują dwie definicje implikacji: implikacja prosta => oraz implikacja odwrotna ~>. Logika każdego człowieka to przechodzenie z jednej implikacji do drugiej milion razy na dobę zgodnie z prawami Kubusia.
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na prostą =>
Przyczyną klęski dzisiejszej logiki w poszukiwaniu logiki człowieka są fałszywe interpretacje zero-jedynkowych definicji implikacji prostej => i odwrotnej ~> uniemożliwiające stosowanie praw Kubusia.
4.3 Kubuś na tropie implikacji odwrotnej
Udajmy się do przedszkola, aby upewnić się czy dzieciaki znają algebrę Kubusia. Zadaniem dzieci będzie określenie które z wypowiedzianych zdań jest prawdziwe a które fałszywe. Zdania oczywiście będą tendencyjne, bo wymawia je Kubuś. Na początek Kubuś postanowił sprawdzić jak reagują dzieci na implikację odwrotną. Poprosił je, aby przy określaniu czy zdanie jest prawdziwe/fałszywe brały pod uwagę wyłącznie psy zdrowe, z czterema łapami.
Kubuś:
A1:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P = 1 - zdanie prawdziwe bo pies, tu żaden przedszkolak nie miał wątpliwości.
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
A2:
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P = 1 - zdanie prawdziwe bo słoń, koń, kot, lis, hipopotam …. przekrzykiwały się dzieci
Kubuś:
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Dzieciaki:
A3:
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P =1 - zdanie oczywiście prawdziwe
Kubuś:
A4:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
~4L=>P = 0 - kłamstwo, fałsz, bo każdy pies ma cztery łapy … zgodnym chórem krzyknęły dzieci
Hmm … pomyślał Kubuś, dzieciaki doskonale znają matematyczną wersję implikacji odwrotnej, aby upewnić się czy to prawda, zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci ani razu nie popełniły błędu !
Zauważmy, że w zdaniu A1 cztery łapy są konieczne aby być psem, zatem jeśli zwierzę nie ma czterech łap to na pewno nie jest psem. Mamy tu bezpośredni dowód prawa Kubusia.
A1: 4L~>P= A3: ~4L=>~P
Zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) ale na pewno nie jest implikacją.
Dlaczego ?
Wyrocznią są tu prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności).
Dowód nie wprost.
Załóżmy, że zdanie A2: 4L~>~P jest implikacją odwrotną prawdziwą.
Prawo Kubusia:
A2: 4L~>~P = A4: ~4L=>P
czyli:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
A4: ~4L=>P
Zdanie A4 jest na pewno fałszywe, zatem wobec zachodzącej tożsamości implikacja A2 musi być także fałszywa, czyli nie zachodzi tu warunek konieczny.
Prawdziwość zdania A2 opisuje wzór:
(4L~>~P) +( 4L~~>~P) = 0+1=1
Implikacja odwrotna (4L~>~P) na mocy prawa Kubusia jest tu oczywiście fałszywa, ale zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda, tu np. słoń).
4.4 Operatorowa definicja implikacji odwrotnej
Zapiszmy teraz powyższe zdania wyłącznie w postaci operatorowej, czyli przy pomocy operatorów „musi” (=>) i „może” (~> lub ~~>)
Kod: |
4L P Y=4L~>P ~Y=~(4L~>P)
4L ~> P = 1 0
4L~~>~P = 1 0
~4L=> ~P = 1 0
~4L => P = 0 1
|
gdzie:
1 - zdanie prawdziwe
0 - zdanie fałszywe
W matematyce nie operujemy na konkretnych przykładach, lecz na zapisach formalnych. Powszechnie przyjętym standardem są w implikacji literki p i q.
Jeśli p to q
p - poprzednik
q - następnik
Przepiszmy zatem powyższą tabelę podstawiając:
4L=p, P=q
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Zauważmy, że w implikacji odwrotnej p musi być konieczne dla q, inaczej pierwsza linia definicji operatorowej jest twardym fałszem, zdanie na pewno nie jest implikacją odwrotną.
Przykład:
Jeśli zwierzę ma skrzydła to może być psem
S~>P=0
Oczywisty twardy fałsz bo skrzydła nie są warunkiem koniecznym dla psa.
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji odwrotnej .
Symboliczna definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p q = 1 0
p ~q = 1 0
~p ~q = 1 0
~p q = 0 1
|
Najprostszą definicję implikacji odwrotnej w równaniu algebry Boole’a otrzymujemy z ostatniej linii tabeli.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie ~p i zajdzie q.
~Y= ~p*q
Kiedy wystąpi prawda ?
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+).
Y=p+~q
stąd:
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y= p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Wystąpi prawda (Y=1) wtedy i tylko wtedy gdy nie zdarzy się ~(…), że zajdzie ~p i zajdzie q.
4.5 Zero-jedynkowa definicja implikacji odwrotnej
Zero jedynkowa definicja implikacji odwrotnej to w dniu dzisiejszym zabytek klasy zerowej. Wszyscy ludzie na ziemi od przedszkolaka po profesora posługują się biegle operatorową definicją implikacji odwrotnej. Nie ma potrzeby przechodzenia do zero-jedynkowej definicji implikacji odwrotnej.
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja odwrotna to w pierwszej części rzucanie monetą p~>q, zaś w drugiej części pewne wynikanie ~p=>~q.
Zero-jedynkową definicję implikacji odwrotnej otrzymujemy opuszczając operatory oraz przyjmując:
p=1, ~p=0
q=1, ~q=0
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Najprostsze równanie algebry Boole’a zapiszemy dla ostatniej linii bo tu w wyniku mamy samotne zero (Y=0).
Y=0 <=> p=0 i q=1
Przejście z takiego zapisu do równania algebry Boole’a możemy uzyskać na dwa sposoby.
Sposób 1
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych równy jest jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0, ~Y=1
p=0, ~p=1
q=1
Sprowadzamy wszystkie sygnały do jedynki i stosujemy definicję iloczynu logicznego.
~Y=~p*q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne
Y = p+~q
Sposób 2
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0
p=0
q=1,~q=0
Sprowadzamy wszystkie sygnały do zera i stosujemy definicję sumy logicznej.
Y=p+~q
Jak widać, w tym przypadku końcowe równanie implikacji odwrotnej mamy natychmiast.
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y = p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było samotne zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Definicja zero-jedynkowa implikacji odwrotnej przybierze zatem postać końcową.
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q=p+~q=~(~p*q) ~Y=~(p~>q)=~[~(~p*q)]=~p*q
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie ~p i q
Wystąpi fałsz (~Y=1) jeśli zajdzie ~p i q
4.6 Gwarancja matematyczna w implikacji odwrotnej
Istotą implikacji jest gwarancja matematyczna. Poza gwarancją wszystko może się zdarzyć czyli mamy rzucanie monetą.
Gwarancją w implikacji odwrotnej jest wynikająca z prawa Kubusia implikacja prosta:
Y=p~>q = ~p=>~q
Gwarancja:
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
Y=4L~>P
Gwarancja:
Y=4L~>P = ~4L=>~P - prawo Kubusia
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Gwarancja dotyczy zwierząt które nie mają czterech łap, te na pewno nie są psami, poza tą gwarancją wszystko może się zdarzyć czyli jeśli zwierzę ma cztery łapy to może być psem (tu pies), lub nie być psem (np. słoń) czyli mamy tu rzucanie monetą.
Gwarancję równoważną otrzymujemy z definicji implikacji odwrotnej zapisanej w równaniu algebry Boole’a.
Definicja implikacji odwrotnej:
Y=p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
stąd:
Y=4L~>P = ~(~4L*P)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę nie ma czterech łap i jest psem
Y=~(~4L*P)
Oczywiście gwarantowane zwierzaki to kura, mrówka, stonoga, wąż … - te na pewno nie są psami.
… a kiedy wystąpi fałsz ?
Negujemy powyższe równanie dwustronnie:
~Y=~4L*P
Wystąpi fałsz (~Y) jeśli zwierzę nie będzie miało czterech łap i będzie psem.
Zauważmy coś bardzo ważnego. Człowiek mając do wybory dwie równoważne gwarancje G1 i G2 praktycznie na 100% zawsze wybierze G1 bo ta jest zdecydowanie bardziej klarowna.
Wniosek:
W naturalnym języku mówionym człowiek posługuje się przede wszystkim operatorową definicją implikacji odwrotnej.
Z definicji równoważnej, zapisanej w równaniu algebry Boole’a:
p~>q = ~p=>~q = ~(~p*q)
w praktyce nikt nie korzysta, co nie oznacza że przedszkolak miałby tu jakiekolwiek kłopoty.
Jaś:
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Kubuś:
… a czy może się zdarzyć że zwierzę nie ma czterech łap i jest psem ?
p~>q = ~p=>~q = p+~q = ~(~p*q) - na podstawie prawa Kubusia i definicji implikacji odwrotnej
stąd:
~4L=>~P = ~(~4L*P)
Jaś:
Nie może się zdarzyć, że zwierzę nie ma czterech łap i jest psem
~(~4L*P)
Zauważmy, że przeanalizowaliśmy implikację odwrotną:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
na wszelkie możliwe sposoby wyłącznie w symbolicznej algebrze Kubusia nie mając bezpośredniej styczności z kodem maszynowym czyli zerami i jedynkami po stronie p i q.
5.0 Kubuś na tropie implikacji prostej
Dzieci w przedszkolu są doskonałym testerem dowolnej logiki roszczącej sobie miano matematycznego opisu języka mówionego. Nowa, nieznana człowiekowi definicja implikacji odwrotnej ~> przeszła taki test bez najmniejszego problemu. Kubuś postanowił sprawdzić czy również nowa definicja implikacji prostej => przejdzie „test przedszkolaka”.
Druga wizyta Kubusia w przedszkolu.
Drogie dzieci, będę wypowiadał różne zdania o piesku i jego czterech łapach. Waszym zadaniem będzie rozstrzygnięcie czy zdanie jest prawdziwe/fałszywe. Proszę Was, abyście uwzględniali wyłącznie pieski zdrowe które mają cztery łapy.
B1:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L=1
Zdanie prawdziwe, zgodnym chórem krzyknęły dzieci, bo każdy pies ma cztery łapy.
Implikacja prosta prawdziwa bo bycie psem jest wystarczające, aby mieć cztery łapy.
B2:
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L=0
Fałsz, kłamstwo, bo każdy pies ma cztery łapy, żaden przedszkolak nie miał tu wątpliwości
Jaś:
… a jeśli zwierzę nie jest psem ?
Prawo Kubusia:
P=>4L = ~P~>~4L
Kubuś:
B3:
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~>~4L=1
Prawda czy fałsz ?
Dzieci:
Prawda bo mrówka, stonoga, kura, wąż ….
lub
B4:
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L=1
Prawda bo koń, słoń, wilk, hipopotam … przekrzykiwały się dzieci
Na wszelki wypadek by upewnić się czy nowa teoria matematyczna jest prawdziwa Kubuś zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci nie pomyliły się ani razu !
Nie ma zatem wątpliwości, symboliczna algebra Kubusia przeszła „test przedszkolaka” pomyślnie.
Zauważmy, że zdanie B4 nie może być implikacją odwrotną.
Dlaczego ?
Najprostszą wyrocznią jest tu oczywiście prawo Kubusia.
Dowód nie wprost.
Załóżmy że B4 jest implikacją odwrotną, wtedy musi być spełnione prawo Kubusia:
B4: ~P~>4L = B2: P=>~4L
Prawa strona tożsamości:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz, zatem fałszywa musi być tez implikacja po lewej stronie czyli:
B4: ~P~>4L=0
Prawdziwość zdania B4 określa wzór:
(~P~>4L)+(~P~~>4L) = 0+1 =1
gdzie:
~~> - naturalny spójnik „może”, wystarczy jedna prawda (tu np. koń), na pewno nie jest to implikacja odwrotna.
5.1 Operatorowa definicja implikacji prostej
Przepiszmy powyższy przykład wyłącznie w postaci operatorowej.
Kod: |
P 4L Y=(P=>4L) ~Y=~(P=>4L)
B1: P=> 4L = 1 0
B2: P=>~4L = 0 1
B3:~P~>~4L = 1 0
B4:~p~~>4L = 1 0
|
Prawo Kubusia:
P=>4L = ~P~>~4L
Oczywiście w matematyce nie operujemy na konkretnym przykładzie lecz na parametrach formalnych którymi w implikacji są literki p i q.
Podstawiamy zatem:
P=p i 4L=q
i otrzymujemy operatorową definicję implikacji prostej.
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji prostej.
Symboliczna definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p q = 1 0
p ~q = 0 1
~p ~q = 1 0
~p q = 1 0
|
Stąd dla drugiej linii zapisujemy najprostsze równanie algebry Boole’a.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie p i ~q
czyli:
~Y=p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+):
Y=~p+q
stąd:
Definicja implikacji prostej w równaniu algebry Boole’a
Y = p=>q = ~p+q = ~(p*~q) - na podstawie prawa de’Morgana
5.2 Zero-jedynkowa definicja implikacji prostej
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja prosta to w pierwszej części pewne wynikanie p=>q, natomiast w drugiej części to najzwyklejsze rzucanie monetą ~p~>~q.
Po opuszczeniu operatorów w operatorowej definicji implikacji prostej i przyjęciu:
p=1, ~p=0
q=1, ~q=0
otrzymujemy …
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=(p=>q)=~p+q=~(p*~q) ~Y=~(p=>q)=~[~(p*~q)]=p*~q
1 1 1 0
1 0 0 1
0 0 1 0
0 1 1 0
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie p i ~q
Wystąpi fałsz (~Y=1) jeśli zajdzie p i ~q
5.3 Gwarancja w implikacji prostej
Na mocy definicji gwarancją jest sama definicja implikacji prostej ….
G1:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarantowany zwierzak to pies, który na pewno ma cztery łapy … poza tym wszystko może się zdarzyć czyli jeśli zwierzę nie jest psem to może nie mieć czterech łap (np. mrówka) lub jeśli zwierzę nie jest psem to może mieć cztery łapy (np. słoń).
Równoważną gwarancję, lecz w praktyce nigdy nie używaną mamy z równań algebry Boole’a.
Definicja implikacji prostej w równaniu algebry Boole’a.
Y = p=>q = ~p~>~q =~p+q = ~(p*~q) - na podstawie prawa de’Morgana
stąd:
P=>4L = ~P~>~4L = ~(P*~4L)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap
~(P*~4L)
Gwarantowany zwierzak to pies, poza tym wszystko może się zdarzyć.
Oczywiście nie oznacza to że przedszkolak będzie miał jakiekolwiek problemy z wypowiedzeniem gwarancji G2 … jeśli się go do tego zmusi.
Jaś:
Jeśli zwierze jest psem to na pewno ma cztery łapy
P=>4L
Kubuś:
… a czy może się zdarzyć że zwierze jest psem i nie ma czterech łap ?
P=>4L = ~(P*~4L) - na mocy definicji implikacji prostej
Jaś:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap.
6.0 Fundamenty algebry Boole’a
Matematycznym fundamentem algebry Boole’a jest definicja iloczynu kartezjańskiego i pojęcie funkcji.
6.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
6.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
6.3 Funkcja iloczynu logicznego AND(*)
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Tabela zero-jedynkowa iloczynu logicznego:
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
6.4 Algebra Boole’a i prawo przemienności
Wyżej udowodniliśmy, iż operator iloczynu logicznego AND(*) jest przemienny. Sprawdźmy teraz pozostałe kluczowe operatory (pkt.1.3) czyli te, które człowiek używa w naturalnym języku mówionym.
Kod: |
p q p+q q+p p=>q q=>p p~>q q~>p p<=>q q<=>p
1 1 1 1 1 1 1 1 1 1
1 0 1 1 0 1 1 0 0 0
0 0 0 0 1 1 1 1 1 1
0 1 1 1 1 0 0 1 0 0
|
p=>q=0 <=> p=1 i q=0
p~>q=0 <=> p=0 i q=1
Doskonale widać, że operatory OR(+) i <=> są przemienne, natomiast operatory implikacji nie są przemienne bo kolumny wynikowe są różne:
p=>q # q=>p
p~>q # q~>p
Oczywistym jest, że implikacja jest implikacją prawdziwą wtedy i tylko wtedy gdy spełnia odpowiednią tabelę zero-jedynkową.
Wynika z tego że:
Jeśli p=>q=1 to q=>p=0
Jeśli p~>q=1 to q~>p=0
… bo to jest algebra Boole’a.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Brak przemienności argumentów w implikacji przenosi się oczywiście na brak przemienności implikacyjnej sumy logicznej wynikającej z odpowiednich definicji.
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
6.5 Prawa Kubusia
Jako pierwszy prawa Kubusia zapisał i udowodnił metodą zero-jedynkową Kubuś po wielomiesięcznych zmaganiach z matematyczną obsługą wszelkich gróźb i obietnic. Właśnie w tym obszarze po raz pierwszy prawa Kubusia zaczęły fenomenalnie działać. To był jednak dopiero początek wojny o całkowite rozszyfrowanie implikacji.
Dowód prawa Kubusia metoda zero-jedynkową.
Definicja implikacji prostej:
Kod: |
p q p=>q
1 1 1
1 0 0
0 0 1
0 1 1
|
p=>q=0 wtedy i tylko wtedy gdy p=1 i q=0
Definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 1
1 0 1
0 0 1
0 1 0
|
p~>q=0 wtedy i tylko wtedy gdy p=0 i q=1
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>.
Dowód metodą zero-jedynkową:
Kod: |
p q p=>q ~p ~q ~p~>~q
1 1 1 0 0 1
1 0 0 0 1 0
0 0 1 1 1 1
0 1 1 1 0 1
|
Równość kolumn wynikowych trzeciej i ostatniej jest dowodem poprawności prawa Kubusia.
Najbardziej elegancki dowód praw Kubusia zaprezentował Wuj Zbój:
A.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Dla prawej strony korzystamy z definicji implikacji odwrotnej:
B.
~p~>~q = (~p)+~(~q) = ~p+q
bo:
~(~q)=q - prawo podwójnego przeczenia
Prawe strony równań A i B są identyczne zatem prawo Kubusia jest prawdziwe.
CND
Jako ostatni, metodą nie wprost, udowodnił prawa Kubusia Zbanowany Uczy.
6.6 Prawo Kłapouchego
Prawo Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności) to wyrocznia rozstrzygająca czy zdanie „Jeśli…to…” jest implikacją.
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na równoważną implikację prostą =>
Operatorowa definicja implikacji prostej:
Kod: |
Tabela A
p q = Y=p=>q
p=> q = 1
p=> ~q = 0
~p~> ~q = 1
~p~~> q = 1
|
Prawo Kubusia:
p=>q = ~p~>~q
Jak widać, w pierwszej części definicji mamy pewne wynikanie p=>q, natomiast w drugiej części mamy najzwyklejsze rzucanie monetą ~p~>~q.
Po stronie ~p może zajść:
~p~>~q
lub
~p~~>q
czyli:
~p=>(~q+q)
Jeśli zajdzie ~p to na pewno => zajdzie ~q lub q
Oczywiście:
~q+q =1 - prawo algebry Boole’a
Ostatnie zdanie jest tautologią, czyli wiem, że nic nie wiem.
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji linie w powyższej tabeli możemy sobie dowolnie przestawiać. Przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji odwrotnej dla parametrów ~p i ~q.
Kod: |
Tabela B
p q = Y=~p~>~q
~p~> ~q = 1
~p~~> q = 1
p=> q = 1
p=> ~q = 0
|
Prawo Kubusia:
~p~>~q = p=>q
Dzisiejszy matematyk mówi tak (autentyczne z matematyki.pl):
Tabela A jest dobra bo ma prawidłowy nagłówek, natomiast tabela B jest kompletnie nieprzydatna w matematyce wiec wyrzucam ja do kosza, precz z Kubusiem który usiłuje wmówić nam co innego.
Czy każdy widzi nonsens takiego rozumowania ?
Z matematyką się nie dyskutuje
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
Tam gdzie mamy operator => tam mamy pewne wynikanie matematyczne, warunek wystarczający.
Tam gdzie mamy operator ~> mamy rzucanie monetą, warunek konieczny
Tożsamość to tożsamość, jak kto obali matematykę to wtedy może twierdzić że pewne wynikanie => jest lepsze od „rzucania monetą” czyli ~>.
Twierdzenie Sowy:
W prawach Kubusia implikacje po obu stronach tożsamości mają IDENTYCZNĄ wartość matematyczną.
CND
Zero-jedynkową definicję implikacji prostej otrzymujemy z tabeli A opuszczając operatory i przyjmując:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Operatorowa definicja implikacji odwrotnej:
Kod: |
Tabela C
p q = Y=p~>q
p ~> q = 1
p~~>~q = 1
~p=> ~q = 1
~p => q = 0
|
Prawo Kubusia:
p~>q = ~p=>~q
W implikacji odwrotnej w pierwszej części mamy rzucanie monetą p~>q, natomiast w drugiej mamy pewne wynikanie ~p=>~q.
W pierwszej części mamy tautologię:
p~>q =1
LUB
p~~>~q=1
czyli:
p=>(q+~q)
bo:
q+~q=1
Jeśli zajdzie p to na pewno => zajdzie q lub ~q, czyli wiem, że nic nie wiem.
Tu również linie w powyższej definicji możemy dowolnie przedstawiać, przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji prostej dla parametrów ~p i ~q.
Kod: |
Tabela D
p q = Y=~p=>~q
~p=> ~q = 1
~p => q = 0
p ~> q = 1
p~~>~q = 1
|
Prawo Kubusia:
~p=>~q = p~>q
Dla tabeli C przyjmujemy:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Podsumowanie:
W dowolnej implikacji, prostej => lub odwrotnej ~> mamy w jednej połówce pewne wynikanie matematyczne =>, natomiast w drugiej połowie mamy do czynienia z najzwyklejszym rzucaniem monetą ~>, z tego względu implikacja jest bezsensem w świecie techniki.
Wniosek:
Implikacja prosta => nie może istnieć bez implikacji odwrotnej ~> i odwrotnie.
6.7 Implikacja w bramkach logicznych
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
| | |~p |~q | | |~p |~q | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
gdzie:
O - w technice cyfrowej kółko jest symbolem negacji
Układ A.
Definicja implikacji prostej:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy niezanegowaną linię q.
Układ C:
Definicja implikacji odwrotnej:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy zanegowana linie q.
Startujemy od bramki implikacji prostej p=>q, układ A.
Na schemacie B wprowadzamy po jednej negacji w linie wejściowe p i q. Oczywiście bramki A i B będą różne bo wprowadziliśmy tylko po jednej negacji.
p=>q=~p+q (układ A) # ~p=>~q (układ B) = ~(~p)+(~q) = p+~q = p~>q (układ C) - na mocy definicji bramki p~>q
Układ C jest identyczny jak układ B, bowiem nie wprowadziliśmy tu żadnych zewnętrznych negacji. Sztuczka polega na tym, że negacje w układzie B wpychamy do środka układu scalonego. Negacja w linii p zniknie na mocy prawa podwójnego przeczenia p=~(~p), pojawi się natomiast negacja w linii q bo tu uprzednio nie było żadnej negacji. Na mocy definicji bramka C to po prostu dziewicza definicja implikacji odwrotnej. Doskonale to również widać w przekształceniach matematycznych wyżej.
Startujemy teraz od bramki implikacji odwrotnej p~>q, układ C
Na schemacie D wprowadzamy po jednej negacji w linie p i q. Oczywiście układ ulegnie zmianie w stosunku do układu C.
p~>q = p+~q (układ C) # ~p~>~q (układ D) = (~p)+~(~q) = ~p+q = p=>q (układ E) - na mocy definicji bramki p=>q
Układ E jest identyczny jak układ D bowiem nie wprowadziliśmy tu żadnej zewnętrznej negacji. Nasza stara sztuczka to wepchnięcie zewnętrznych negacji z układu D do środka układu scalonego E. Tym razem zniosą się negacje w linii q na mocy prawa podwójnego przeczenia q=~(~q), oczywiście pojawi się negacja w linii p bo tu nic nie było przed przekształceniem.
Zauważmy, że w sumie poczynając od układu A wprowadziliśmy po dwie negacje w linie wejściowe. Taki układ nie ma prawa ulec zmianie na mocy prawa podwójnego przeczenia A=~(~A) co widać na schemacie. Oczywiście układ A = układ E.
6.8 Kwadrat logiczny implikacji
Kwadrat logiczny implikacji w wersji z parametrami formalnymi:
Kod: |
p=>q=~p+q p~>q=p+~q
~p~>~q=~p+q ~p=>~q=p+~q
|
Oczywiście w pionach mamy tu prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~>na =>
Między pionami nie zachodzą żadne zależności matematyczne co widać w prawych stronach tożsamości. Zapiszmy teraz kwadrat logiczny dla naszego sztandarowego przykładu o piesku i jego czterech łapach.
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Stąd otrzymujemy kwadrat logiczny dla konkretnego przykładu:
Kod: |
p=>q =~p+q p~>q=p+~q
P=>4L=~P+4L 4L~>P=4L+~P
~p~>~q=~p+q ~p=>~q=p+~q
~P~>~4L=~P+4L ~4L=>~P=4L+~P
|
Kubuś celowo pozostawił zapis formalny, abyśmy zauważyli coś bardzo ciekawego.
Zauważmy, że dla zapisu formalnego mamy:
p=>q=~p+q # p~>q=p+~q
natomiast dla zapisu aktualnego:
P=>4L=~P+4L # 4L~>P=4L+~P
Mamy tu zatem inne znaczenie parametrów formalnych p i q po lewej i prawej stronie nierówności.
Lewa strona:
p=P i q=4L
Prawa strona:
p=4L i q=P
O implikacji prostej prawdziwej decyduje warunek wystarczający między podstawą a strzałką wektora =>, natomiast o implikacji odwrotnej prawdziwej decyduje warunek konieczny między podstawą a strzałką wektora ~>.
Literki p i q są tu wstawiane prawidłowo na mocy odpowiednich definicji.
Definicja implikacji prostej:
P=>4L
p=>q
Jeśli zajdzie p to musi => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
4L~>P
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
CND
Algebra Boole’a to nie algebra dziesiętna, reguły rządzące tymi algebrami nie muszą pokrywać się w 100%.
6.9 Równoważność
Dziewicza tabela zero-jedynkowa równoważności:
Kod: |
p q p<=>q
1 1 1
1 0 0
0 0 1
0 1 0
|
Z tabeli zero-jedynkowej widać, że równoważność jest przemienna, czyli wszystko jedno którą cześć zdania nazwiemy p a którą q.
Algebra Kubusia to algebra symboliczna. W implikacji przeszliśmy z naturalnego języka mówionego do definicji operatorowej po czym do definicji symbolicznej na końcu lądując w tabeli zero-jedynkowej. Tym razem zrobimy dokładnie odwrotnie.
Przechodzimy z powyższą tabelą do symbolicznej definicji równoważności przyjmując:
p=1, ~p=0
q=1, ~q=0
Symboliczna definicja równoważności:
Kod: |
p q p<=>q
p q 1
p ~q 0
~p ~q 1
~p q 0
|
Dla linii z jedynkami w wyniku układamy równanie algebry Boole’a
Definicja równoważności w równaniu algebry Boole’a:
A: p<=>q = p*q+~p*~q
Bardzo łatwo udowodnić poprawność równoważnych definicji równoważności, wynikających z przemienności argumentów oraz powyższej definicji:
B:~p<=>~q
C:q<=>p
D:~q<=>~p
Udowodnimy tylko B bo pozostałe dowody są analogiczne.
Korzystamy z definicji równoważności A:
E: ~p<=>~q = (~p)*(~q) + ~(~p)*~(~q) = ~p*~q + p*q = p*q + ~p*~q
Prawe strony równań A: i E: są identyczne, zatem są to równoważne definicje.
Z pierwszej linii definicji symbolicznej widać, że jeśli zajdzie p to „musi” => zajść q bo druga linia tabeli jest fałszem. Podobnie z trzeciej linii widać, że jeśli zajdzie ~p to „musi” => zajść ~q bo ostatnia linia jest fałszem.
Stąd pełna definicja operatorowa równoważności przybierze postać:
Kod: |
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
Mamy tu zatem doskonale nam znane z definicji implikacji warunki wystarczające zachodzące między p i q oraz między ~p i ~q.
Stąd operatorowa definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) =1*1 =1
gdzie:
p=>q - warunek wystarczający między p i q, nigdy implikacja prosta p=>q
~p=>~q - warunek wystarczający między ~p i ~q, nigdy implikacja prosta ~p=>~q
Dlaczego powyższe zapisy nie mogą być implikacją ?
Wynika to z prawa Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawo Kubusia dla powyższej tabeli:
p=>q = ~p~>~q
czyli w implikacji musi zachodzić warunek konieczny między ~p i ~q, natomiast w równoważności między ~p i ~q zachodzi warunek wystarczający.
Przykład:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Bycie psem jest wystarczające aby mieć cztery łapy, zatem jest to implikacja prosta prawdziwa
Definicja operatorowa dla powyższego zdania:
Kod: |
P=>4L =1
P=>~4L=0
~P~>~4L=1
~P~~>4L=1
|
Aby w powyższej tabeli ostatnia linia wyzerowała się, musiałaby być prawdziwa implikacja prosta:
~P=>~4L
czyli:
Jeśli zwierzę nie jest psem to na pewno => nie ma czterech łap
~p=>~4L=0 - oczywisty fałsz bo słoń
Zatem równoważność nie może być iloczynem dwóch implikacji prostych p=>q i ~p=>~q bo takowe są niemożliwe do zaistnienia.
Można to udowodnić jeszcze prościej ….
Oczywistym jest na podstawie definicji implikacji prostej => że:
p=>q=~p+q # ~p=>~q= ~(~p)+(~q) = p+~q
To jest algebra Boole’a, zatem:
Jeśli implikacja prosta p=>q=1 to implikacja prosta ~p=>~q=0 bo:
p=>q # ~p=>~q
Stąd definicja równoważności nie może być iloczynem logicznym dwóch implikacji prostych bo:
p<=>q = (p=>q)*(~p=>~q) = 1*0=0
Wniosek:
Twierdzenie co niektórych dzisiejszych matematyków jakoby równoważność była iloczynem dwóch implikacji prostych można między bajki włożyć.
CND
Dowód nie wprost:
Zauważmy, że gdyby to była prawda matematyczna to przekształcenia musiałyby być odwracalne, czyli dowolną równoważność można by rozbić na dwie implikacje proste, co jest oczywistą bzdurą. Kamikaze mogą próbować.
6.10 Kwadrat logiczny równoważności
Narysujmy kwadrat logiczny równoważności analogiczny do kwadratu logicznego implikacji.
Kod: |
A1: p=>q=1 B1: q=>p=1
A2: ~p=>~q=1 B2: ~q=>~p=1
|
Argumenty w równoważności są przemienne, zatem wszystko jedno którą część zdania nazwiemy p a którą q. Tu możemy na stałe przywiązać p do jednej strony równoważności, zaś q do drugiej.
Stąd zapisy: p=>q i q=>p.
Oczywiście we wszystkich rogach kwadratu równoważności mamy twarde jedynki wynikające ze spełnionego warunku wystarczającego (to nie są implikacje!), zatem:
p=>q = q=>p = ~p=>~q = ~q=>~p
Stąd mamy znane w matematyce prawo kontrapozycji:
p=>q = ~q=>~p
Prawo kontrapozycji jest poprawne w równoważności i fałszywe w implikacji (dowód pkt.1.6)
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Definicja równoważności to iloczyn logiczny warunków wystarczających (nie implikacji !) wzdłuż dowolnego boku kwadratu logicznego równoważności.
Najpopularniejsze definicje to:
A.
p<=>q = (p=>q)*(~p=>~q)
i
p<=>q = (p=>q)*(q=>p)
Skąd wzięło się ostatnie równanie ?
Definicja implikacji prostej plus prawo Kubusia:
p=>q = ~p~>~q = ~p+q
Definicja implikacji odwrotnej:
p~>q = ~p=>~q = p+~q
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(p~>q) = (~p+q)*(p+~q) = ~p*p + ~p*~q + q*p + q*~q = p*q + ~p*~q
bo:
A*~A=0 - prawo algebry Boole’a
stąd:
~p*p = q*~q =0
Argumenty w równoważności są przemienne, dlatego w ostatnim kroku dopuszczalna jest zamiana p i q w iloczynie logicznym oraz zamiana sumy logicznej. W implikacji takich manewrów nie wolno robić, bo tu argumenty nie są przemienne.
Absolutnie ciekawy jest tu zapis:
A.
p<=>q = (p=>q)*(p~>q)
Jak to zinterpretować ?
W równoważności argumenty są przemienne zatem tu poprawne jest równanie z którego wynika, że implikacja odwrotna p~>q jest zbędna.
p~>q = p+~q = ~q+p = q=>p
czyli:
B.
p~>q = q=>p - poprawne w równoważności
Podstawiając to do A mamy:
p<=>q = (p=>q)*(q=>p)
W implikacji brak przemienności argumentów przenosi się na brak przemienności argumentów w implikacyjnej sumie logicznej i tu poprawne jest:
p~>q = p+~q # ~q+p = q=>p
p~>q # q=>p - poprawne w implikacji
6.11 Prawa kontrapozycji[/b
[b]7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Kodowanie zdań ze spójnikiem „Jeśli…to…”:
Implikacja prosta:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
p musi być wystarczające dla q
Stwierdzenie warunku wystarczającego w p=>q determinuje zdanie prawdziwe które może być:
1.
Implikacją prostą p=>q jeśli po stronie ~p stwierdzimy warunek konieczny czyli:
~p~>~q
Czasami prościej jest wykluczyć warunek wystarczający w stronę ~p=>~q, to wystarczy aby udowodnić że zdanie p=>q jest implikacją prostą.
2.
Równoważnością p<=>q, gdy po stronie ~p również stwierdzimy warunek wystarczający czyli
~p=>~q.
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)=1*1=1
3.
Jeśli zdanie jest implikacją prostą to w stronę p=>q zachodzi warunek wystarczający, natomiast w stronę q~>p musi zachodzić warunek konieczny. Jeśli w stronę q=>p stwierdzimy warunek wystarczający to zdanie jest na pewno równoważnością, nigdy implikacją.
Definicja równoważna równoważności:
p<=>q = (p=>q)*(q=>p) = 1*1=1
Stąd mamy kolejną możliwość stwierdzenia czy zdanie jest implikacją. Po stwierdzeniu warunku wystarczającego w stronę p=>q wystarczy wykluczyć warunek wystarczający w stronę q=>p.
Implikacja odwrotna:
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
Stwierdzenie warunku koniecznego w p~>q determinuje implikację odwrotną:
p~>q
ale ….
Zdanie może być prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) i nie być implikacją odwrotną np.
Jeśli liczba jest podzielna przez 8 to może ~~> być podzielna przez 3
P8~~>P3 =1 bo 24
P8 nie jest konieczne dla P3 bo 3, nie jest to zatem implikacja odwrotna.
Koniec, to jest cała filozofia kodowania zdań ze spójnikiem „Jeśli…to…”
Zauważmy coś bardzo ciekawego.
A.
Jeśli trójkąt ma boki równe to na pewno => jest równoboczny
BR=>R =1
B.
Jeśli trójkąt nie ma boków równych to na pewno => nie jest równoboczny
~BR=>~R =1
Stąd na podstawie definicji równoważności możemy zapisać:
C.
Trójkąt ma boki równe wtedy i tylko wtedy gdy jest równoboczny
BR<=>R = (BR=>R)*(~BR=>~R) = 1*1=1 - ewidentna równoważność
Aby stwierdzić równoważność musimy zapisać i zbadać czy zachodzą warunki wystarczające jak wyżej w A i B. Wszystkie trzy zdania są matematycznie poprawne bowiem w definicji równoważności chodzi tylko i wyłącznie o warunki wystarczające, nigdy o implikacje (dowód pkt. 6.9)
Zauważmy, że gdybyśmy nie mieli prawa zapisać zdań A i B jako prawdziwych to niemożliwe byłoby stwierdzenie równoważności !
W zdaniach A, B i C nie ma niejednoznaczności bo:
1.
Fizycznie niemożliwym jest zrobienie implikacji z równoważności (zdania A i B) i odwrotnie (dowód pkt. 6.9)
2.
Twierdzenia matematyczne zwykle ujęte są w spójnik „Jeśli…to…”, pomimo że praktycznie 100% twierdzeń to równoważności. W twierdzeniach matematycznych spójnik „Jeśli…to…” jest domyślną równoważnością.
3.
Zdania A, B i C można zakodować superprecyzyjnie jako:
BR<=>R
To jest oczywistość mimo zapisania jej w formie A lub B.
Wniosek:
Zdanie „Jeśli … to …” może być implikacją prostą, implikacją odwrotną lub równoważnością co zależy od treści zdania.
Inny przykład:
Twierdzenie Pitagorasa.
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
TP=>SK =1 - pewny warunek wystarczający (nie implikacja !)
Jeśli trójkąt nie jest prostokątny to nie jest spełniona suma kwadratów.
~TP=>~SK=1 - również pewny warunek wystarczający
Twierdzenie Pitagorasa jest równoważnością bo:
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1 =1
Aby stwierdzić czy zdanie „Jeśli…to…” jest równoważnością musimy stwierdzić warunki wystarczające jak wyżej. Wtedy i tylko wtedy zdanie jest równoważnością.
Wynika z tego, że ten sam symbol => może oznaczać implikacje prostą albo warunek wystarczający =>.
Więcej na temat tego problemiku tu:
Nadmierna precyzja
7.1 Prawo Tygryska
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p)
Prawo Tygryska:
Zdanie „Jeśli…to…” jest równoważnością wtedy i tylko wtedy gdy zachodzą warunki wystarczające między p=>q i ~p=>~q lub między p=>q i q=>p, nie są to implikacje.
Wynika to bezpośrednio z prawa Kłapouchego (pkt.6.6) i definicji równoważności (pkt.6.9).
Przykład wyżej.
8.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
8.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
A:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
B:
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
C:
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
Matematycznie oznacza to:
Jeśli nie będziesz grzeczny to „możesz” ~> nie dostać czekolady
~G~>~C =1
Implikacja odwrotna prawdziwa bo bycie niegrzecznym jest warunkiem koniecznym nie dostania czekolady. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca zgodnie ze swoim „widzi mi się” czyli wolna wolą.
LUB
D:
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jeden taki przypadek)
Prawdziwość zdania D określa wzór:
(~G~~>C)+(~G~>C) = 1+0=1
gdzie:
~G~>C=0 - implikacja odwrotna fałszywa
~G~~>C=1 - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Dlaczego zdanie D nie może być implikacją odwrotną ?
Dowód nie wprost;
Załóżmy że zdanie D: ~G~>C jest implikacją odwrotną, obowiązują zatem prawa Kubusia.
~G~>C = G=>~C
Prawa strona jest twardym fałszem na mocy B:, zatem zdanie D: nie może być implikacją odwrotną
CND
Uwaga:
W groźbach (zdanie C) naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
Y=G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
Y=G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~Y=~(G=>C) = G*~C - skłamię
Synku, skłamię (~Y=1) jeśli będziesz grzeczny i nie dostaniesz czekolady.
~Y=G*~C
Jaś:
Mama, a czy może się zdarzyć, że będę grzeczny i nie dostanę czekolady ?
Negujemy powyższe równanie dwustronnie:
Y=~(G*~C)
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
Stąd gwarancja:
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
A:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
B:
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~>, nie jest to implikacja odwrotna.
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
C:
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
~B => ~L =1 - twarda prawda (gwarancja)
LUB
D:
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
~B => L =0 - twardy fałsz
Dlaczego zdanie B nie może być implikacja odwrotną ?
Dowód nie wprost:
Załóżmy że zdanie B: B~>~L jest implikacja odwrotną.
Obowiązuje wówczas prawo Kubusia:
B: B~>~L = D: ~B=>L
Zdanie D: jest oczywistym fałszem, zatem zdanie B nie może być implikacją odwrotną prawdziwą.
Prawdziwość zdania B: określa wzór:
(B~~>~L)+(B~>~L) = 1+0 =1
B~~>~L - nadawca ma prawo do darowania dowolnej kary (akt łaski)
Jedyne sensowne przejście z operatora implikacji odwrotnej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
Y=B~>L
Jaś:
… tata, a kiedy skłamiesz ?
Y=B~>L = B+~L = ~(~B*L) - dotrzymam słowa
Negujemy dwustronnie:
~Y=~(B~>L) = ~B*L - skłamię
Skłamię (~Y=1), jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie (z powodu czystych spodni !)
~Y=~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Y=~(~Y) - prawo podwójnego przeczenia, stąd:
Y=~(~B*L)
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
Y=~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.3 „Równoważność” w obietnicach i groźbach
Obietnice i groźby to przyszłość której nikt nie zna. Równoważność na mocy definicji pozbawia człowieka „wolnej woli” czyli w obietnicy prawa do darowania nagrody przy nie spełnionym warunku nagrody (akt miłości), zaś w groźbie prawa do darowania kary przy spełnionym warunku kary (akt łaski).
Obietnica:
Kupię ci komputer tylko wtedy jak zdasz egzamin
Równoważna implikacja prosta:
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Wypowiadając obietnicę w formie równoważności nadawca daje do zrozumienia, iż wystąpi bardzo małe prawdopodobieństwo wręczenia obiecanej nagrody jeśli warunek nagrody nie zostanie spełniony, nic więcej.
Groźba:
Zapłacę ci za ułożenie kafelków tylko wtedy gdy skończysz do soboty
Równoważna implikacja odwrotna:
Jeśli nie skończysz układania kafelków do soboty to ci nie zapłacę
~K~>~Z
Prawo Kubusia:
~K~>~Z = K=>Z
Jeśli ułożysz kafelki do soboty to ci zapłacę
K=>Z
Nadawca może grozić w dowolnie ostrej formie, jednak ma prawo do darowania dowolnej kary zależnej od niego (akt łaski), inaczej jego wolna wola leży w gruzach.
9.0 Podsumowanie
Ten punkt zawiera esencję wszystkiego co należy zapamiętać, dalej mamy logikę przedszkolaka.
Z przymrużeniem oka … czyli matematyczna historia powstania naszego Wszechświata.
Na początku było:
1=1
i stał się cud:
(p+~p)=(q+~q)
p+~p=1 - prawo algebry Boole’a
czyli:
p=>(q+~q)
~p=>(~q+q)
Równoważność:
Kod: |
p q p<=>q
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
W naszym Wszechświecie zdecydowanie przeważa implikacja, zatem ostatnie dwie linie ulegają rozczepieniu:
Operatorowa definicja implikacji prostej:
Kod: |
p q p=>q
p=> q =1
p=>~q =0
~p~>~q =1
~p~~>q =1
|
lub pierwsze dwie linie z definicji równoważności ulegają rozczepieniu:
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
p~> q =1
p~~>~q =1
~p=> ~q =1
~p=> q =0
|
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Zero-jedynkowe tabele operatorów logicznych generuje naturalna logika człowieka, nigdy odwrotnie. Błędem jest zatem twierdzenie dzisiejszych logików (KRZ), jakoby logika polegała na analizie wszystkich możliwych śmieci i dopasowywaniu do nich tabel zero-jedynkowych.
Dowód:
W definicjach operatorowych opuszczamy operatory oraz przyjmujemy:
p=1, ~p=0
q=1, ~q=o
stąd otrzymujemy.
Zero-jedynkowa definicja równoważności:
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
CND
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Śro 18:47, 12 Sie 2009 Temat postu: |
|
|
Beta 7.0
Narzędzia, których próbujemy używać, język lub notacja których używamy do wyrażenia lub rejestrowania naszych myśli, są głównymi czynnikami określającymi to, co w ogóle możemy myśleć lub wyrazić.
E.W. Dijkstra
Algebra Kubusia
Matematyka języka mówionego
Artykuł związany z publikacją:
Pytania do matematyków całego świata
Autor: Kubuś - wirtualny Internetowy Miś
Kim jest Kubuś ?
Kubuś to Miś kosmita, wysłannik obcej cywilizacji, którego zadaniem było przekazanie ludziom tajemnicy implikacji. W mniemaniu Kubusia zadanie zostało wykonane, ale wcale nie jest pewne czy ludzie to załapią … cóż, będzie co ma być, niebo albo piekło.
W pracach nad teorią implikacji bezcennej pomocy udzielili Kubusiowi przyjaciele:
Emde (sfinia), Fizyk (ateista.pl), Irbisol (sfinia), Macjan (sfinia), Miki (sfinia), NoBody (ateista.pl), Rafał3006 (sfinia), Rogal (matematyka.pl), Uczy (wolny), Volrath (sfinia), WujZbój (sfinia)
Wielkie dzięki !
Szczególne podziękowania Wujowi Zbójowi za jego nieskończoną cierpliwość w dyskusjach z Kubusiem oraz Vorathowi za decydującą o wszystkim dyskusję
… wszystko, co chcecie, żeby ludzie wam czynili, wy też im podobnie czyńcie …
Ewangelia Mateusza 7:12
To jest podręcznik, przy pomocy którego chciałbym poznać fundamenty logiki człowieka, gdybym miał znowu 16 lat
Kubuś
Spis treści:
1.0 Notacja
1.1 Fundament logiki klasycznej w pigułce
1.1.1 Funkcja logiczna
1.1.2 Definicja logiki ujemnej
1.1.3 Definicja implikacji prostej
1.1.4 Definicja implikacji odwrotnej
1.1.5 Spójniki zdaniowe
1.2 Najważniejsze prawa algebry Boole’a
1.2.1 Operatory AND i OR
1.3 Implikacja
1.3.1 Prawa Kubusia
1.4 Równoważność
1.4.1 Prawo kontrapozycji
1.5 Prawo Sowy
1.6 Prawa kontrapozycji w implikacji
1.7 Algebra Kubusia
1.8 Definicja algebry Kubusia
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
2.1 Podstawowe pojęcia i definicje
2.2 Funkcja logiczna jednej zmiennej
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
2.5 Logika ujemna
2.6 Definicja sumy logicznej
2.7 Prawo Prosiaczka
2.8 Definicja iloczynu logicznego
2.9 Dowody zero-jedynkowe w algebrze Boole’a
2.10 Logika dodatnia i ujemna w bramkach logicznych
2.11 Operatory OR i AND w logice człowieka
3.0 Zero-jedynkowa algebra Boole’a
3.1 Prawa wynikające z definicji iloczynu logicznego
3.2 Prawa wynikające z definicji sumy logicznej
3.3 Najważniejsze prawa algebry Boole’a
3.4 Operatory dodatnie i operatory ujemne
Część II Implikacja
4.0 Notacja szczególna w implikacji
4.1 Rodzaje implikacji
4.2 O co chodzi w implikacji
4.3 Kubuś na tropie implikacji odwrotnej
4.4 Implikacja odwrotna
4.5 Operatorowa definicja implikacji odwrotnej
4.6 Zero-jedynkowa definicja implikacji odwrotnej
4.7 Gwarancja matematyczna w implikacji odwrotnej
5.0 Kubuś na tropie implikacji prostej
5.1 Operatorowa definicja implikacji prostej
5.2 Zero-jedynkowa definicja implikacji prostej
5.3 Gwarancja w implikacji prostej
6.0 Fundamenty algebry Boole’a
6.1 Iloczyn kartezjański i pojęcie funkcji
6.2 Funkcja iloczynu algebraicznego
6.3 Funkcja iloczynu logicznego AND(*)
6.4 Algebra Boole’a i prawo przemienności
6.5 Prawa Kubusia
6.6 Prawo Kłapouchego
6.7 Implikacja w bramkach logicznych
6.8 Kwadrat logiczny implikacji
6.9 Równoważność
6.10 Kwadrat logiczny równoważności
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
7.1 Prawo Tygryska
8.0 Obietnice i groźby
8.1 Obietnice
8.2 Groźby
8.3 Znaczenie operatora implikacji odwrotnej ~>
8.4 „Równoważność” w obietnicach i groźbach
9.0 Podsumowanie
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Wstęp.
Algebra Kubusia to symboliczna algebra Boole’a, odpowiednik języka asemblera ze świata mikroprocesorów, z nowymi definicjami implikacji prostej => i odwrotnej ~>, fundamentalnie różnymi od wszelkich znanych człowiekowi delicji implikacji np. materialna, logiczna, ścisła etc. Oczywiście chodzi tu o nową interpretację tabel zero-jedynkowych, znanych ludziom od 200 lat.
Kubuś to przybysz ze świata techniki dobrze znający techniczną algebrę Boole’a której fundamentem są operatory AND(*) i OR(+). Zaskoczył go fakt, że dzisiejsza logika (KRZ) to rachunek zero-jedynkowy, że cała współczesna algebra Boole’a to mielenie bezsensownych zer i jedynek. W technicznej algebrze Boole’a myślimy naturalną logiką człowieka zapisując symbolicznie to co chcemy uzyskać. Na tym najważniejszym etapie projektowania (poziom algorytmu) zera i jedynki kompletnie nas nie interesują, wszystko zapisujemy w symbolicznych równaniach algebry Boole’a.
Człowiek poszukuje matematycznej wersji implikacji którą posługuje się w naturalnym języku mówionym od 2500 lat, jak do tej pory bezskutecznie. Po trzech latach walki z implikacją Kubuś i przyjaciele wreszcie to wszystko rozszyfrowali.
Łatwo sformułować warunki które musi spełniać poprawna matematycznie teoria języka mówionego.
1.
Teoria musi być niezależna od jakiegokolwiek języka świata
2.
Teoria musi być matematycznie jednoznaczna
3.
Teoria musi opisywać naturalny język mówiony, którym posługują się dzieci w przedszkolu
Symboliczna algebra Kubusia bez problemu spełnia wszystkie trzy warunki. Algebra Kubusia to algebra Boole’a z dołączonymi do definicji poprawnymi definicjami implikacji prostej => i odwrotnej ~>.
Nowe, nieznane człowiekowi definicje implikacji prostej => i odwrotnej ~> (oczywiście chodzi tu o interpretacje tabel zero-jedynkowych) plus prawa Kubusia działają doskonale w matematyce, przyrodzie martwej i żywej, groźbach i obietnicach oraz opisują takie pojęcia jak „wolna wola” czy „dobro-zło”. Najśmieszniejszy w całej tej historii jest fakt, że człowiek nie musi się uczyć matematycznej wersji swojej logiki, po prostu ma ją wyssaną z mlekiem matki, wystarczy że będzie logicznie myślał i zapisywał swoje myśli w postaci równań algebry Kubusia w przełożeniu 1/1.
KRZ - Klasyczny Rachunek Zdań, dział logiki, w zakresie implikacji oparty na definicji implikacji materialnej. Fundamentem KRZ jest rachunek zero-jedynkowy.
Uwaga:
W tej publikacji używając terminu „dzisiejsza logika” będziemy mieli na myśli KRZ
1.0 Notacja
Notacja w algebrze Kubusia jest identyczna jak notacja technicznej algebry Boole’a czyli tej, której używają praktycy.
Symboliczna algebra Kubusia:
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
Rachunek zero-jedynkowy:
1 = prawda
0 = fałsz
Twarda prawda/fałsz - zachodzi zawsze, bez żadnych wyjątków (warunek wystarczający =>)
Miękka prawda/fałsz - może zajść, ale nie musi (warunek konieczny ~>)
# - różne
* - symbol iloczynu logicznego (AND), w mowie potocznej spójnik 'i'
+ - symbol sumy logicznej (OR), w mowie potocznej spójnik "lub"
~ - przeczenie, negacja (NOT), w mowie potocznej "NIE"
~(...) - w mowie potocznej "nie może się zdarzyć że ...", "nie prawdą jest że ..."
<=> - symbol równoważności
W tym miejscu początkujący czytelnicy proszeni są o przeskok do punkt 2.0 gdzie rozpoczyna się elementarz algebry Boole’a od zupełnego zera. Rozdział 1.0 to streszczenie całego podręcznika w pigułce, oczywiście można na to zerknąć, ale z pewnością będą to dla początkującego czytelnika nic nie mówiące krzaczki.
1.1 Fundament logiki klasycznej w pigułce
Logika klasyczna zbudowana na zaprezentowanym tu fundamencie to 100%, poprawna algebra Boole’a. Niemożliwe są tu jakiekolwiek paradoksy znane w starej logice klasycznej. W poprawnej matematyce to po prostu niemożliwe.
Algebra Boole’a to algebra bramek logicznych która ma zero wspólnego z matematyką klasyczną np. całki, ekstrema funkcji itp. Prawa tu obowiązujące nie muszą pokrywać się z aksjomatami wyznaczonymi dla matematyki klasycznej,
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych od prawie 200 lat.
1.1.1 Funkcja logiczna
Definicja:
Funkcja logiczna Y to funkcja n-zmiennych binarnych połączonych operatorami AND(*) lub OR(+):
Y = A+(B*C) ….
1.1.2 Definicja logiki ujemnej
Definicja:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
1.1.3 Definicja implikacji prostej
Implikacja prosta - przemienność argumentów nie występuje
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być warunkiem wystarczającym dla q
=> - operator implikacji prostej, spójnik „musi” ze spełnionym warunkiem wystarczającym
Operatorowa definicja implikacji prostej:
Kod: |
Tabela A
p q p=>q
A: p=> q = 1
B: p=>~q = 0
C:~p~>~q = 1
D:~p~~>q = 1
|
Prawo Kubusia:
p=>q = ~p~>~q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Zdanie D nie może być implikacją prostą, ponieważ prawo Kubusia zostałoby zgwałcone.
Dowód nie wprost.
Załóżmy, że D jest implikacja prostą, obowiązuje wówczas prawo Kubusia.
D: ~p~>q = B: p=>~q =0
Zdanie B jest fałszem na mocy definicji implikacji prostej, zatem D nie może być implikacją odwrotną.
CND
Prawdziwość zdania D określa wzór:
(~p~>q) + (~p~~>q) = 0 +1 =1
Zdanie D jest prawdziwe na mocy naturalnego spójnika „może” ~~>, wystarczy jedna prawda.
Z powyższej definicji po podstawieniu:
p=1, ~p=0
q=1, ~q=1
Otrzymujemy zero-jedynkową definicję implikacji prostej:
Kod: |
Tabela C
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
1.1.4 Definicja implikacji odwrotnej
Implikacja odwrotna - przemienność argumentów nie występuje
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być warunkiem koniecznym dla q
~> - operator implikacji odwrotnej, spójnik „może” ze spełnionym warunkiem koniecznym
Operatorowa definicja implikacji odwrotnej:
Kod: |
Tabela A
p q p~>q
A: p ~> q = 1
B: p~~>~q = 1
C:~p=> ~q = 1
D:~p => q = 0
|
Prawo Kubusia:
p~>q = ~p=>~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Zdanie B nie może być implikacją odwrotną, gdyż zgwałcone zostałoby prawo Kubusia.
Dowód nie wprost.
Załóżmy, że B jest implikacją odwrotną.
Prawo Kubusia:
B: p~>~q = D:~p=>q =0
Zdanie D jest twardym fałszem, zatem B nie może być implikacją odwrotną
CND
Prawdziwość zdania B określa wzór:
(p~>~q) + (p~~>~q) = 0+1=1
Zdanie B jest prawdziwe na mocy naturalnego spójnika „może” ~~>, wystarczy jedna prawda.
Z powyższej definicji po podstawieniu:
p=1, ~p=0
q=1, ~q=1
Otrzymujemy zero-jedynkową definicję implikacji odwrotnej:
Kod: |
Tabela B
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
1.1.5 Spójniki zdaniowe
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
1.2 Najważniejsze prawa algebry Boole’a
Zaprezentowane tu prawa to fundament logiki człowieka:
Logika człowieka = poprawna algebra Boole’a
1.2.1 Operatory AND i OR
Operatory AND i OR - przemienność argumentów zachodzi
OR(+)
Y=p+q
~Y=~p*~q
Y=~(~Y)
stąd:
p+q = ~(~p*~q) - prawo de’Morgana
AND(*)
Y=p*q
~Y=~p+~q
Y=~(~Y)
stąd:
p*q = ~(~p+~q) - prawo de’Morgana
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operatory.
1.3 Implikacja
Implikacja - przemienności argumentów nie zachodzi
1.3.1 Prawa Kubusia
Prawa Kubusia:
p=>q = ~p~>~q - zamiana operatora => na ~>
p~>q = ~p=>~q - zamiana operatora ~> na =>
Prawa Kubusia zostały udowodnione przez:
Kubuś - zero-jedynkowo
Wuj Zbój - równania algebry Boole’a
Zbanowany Uczy - metodą nie wprost
Prawa Kobusia to ścisły odpowiednik praw de’Morgana z operatorów AND i OR. W mowie potocznej każdy człowiek korzysta z nich milion razy na dobę, to fundament matematyczny naturalnego języka mówionego
Dowód:
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
~p~>~q = (~p)+~(~q) = ~p+q = p=>q
~p=>~q = ~(~p)+(~q) = p+~q = p~>q
Doskonale widać zachodzące tożsamości w poziomie nie zachodzące ani w pionach, ani po przekątnych.
Prawo przejścia do logiki przeciwnej:
Negujemy argumenty i wymieniamy operator na przeciwny
Uwaga:
Zachodzące prawa Kubusia są dowodem implikacji.
1.4 Równoważność
Równoważność - przemienność argumentów zachodzi
Definicja równoważności:
p<=>q = p*q+~p*~q
p zajdzie wtedy i tylko wtedy gdy zajdzie q
Operatorowa definicja równoważności:
Kod: |
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
Po podstawieniu:
p=1, ~p=0
q=1, ~q=0
Otrzymujemy zero-jedynkową definicję równoważności:
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Bezpośrednio z tabeli zero-jedynkowej otrzymujemy definicje równoważności w operatorach AND(*) i OR(*).
p<=>q = p*q+~p*~q
Podstawowa definicja operatorowa równoważności, wynikająca z powyższej definicji operatorowej (także z zero-jedynkowej):
A.
p<=>q = (p=>q)*(~p=>~q) = 1*1 =1
gdzie:
p=>q, ~p=>~q, q=>p - zachodzące warunki wystarczające, nie są to implikacje
Dowód nie wprost:
Załóżmy, że p=>q jest definicją implikacji prostej.
Obowiązuje wówczas prawo Kubusia:
p=>q = ~p~>~q
czyli w trzeciej linii otrzymaliśmy sprzeczność:
~p=>~q # ~p~>~q
Zatem w zapisach p=>q i ~p=>~q mamy do czynienia wyłącznie z warunkami wystarczającymi, nie mogą to być implikacje.
CND
W matematyce wykorzystywana jest definicja równoważności:
p<=>q = (p=>q)*(q=>p)
będąca odpryskiem definicji podstawowej jak wyżej.
Dowód:
p=>q = ~p+q - definicja implikacji prostej
W równoważności zachodzi przemienność argumentów zatem:
~p=>~q = ~(~p)+(~q) = p+~q = ~q+p = q=>p
Po podstawieniu do A mamy:
p<=>q = (p=>q)*(q=>p)
W twierdzeniach matematycznych często łatwiejsza jest definicja:
p<=>q = (p=>q)*(~p=>~q)
Oczywiście, udowodnienie równoważności z wykorzystaniem powyższej definicji, jest dowodem zachodzącego warunku wystarczającego w stronę q=>p czyli pewne jest że:
p<=>q = (p=>q)*(q=>p)
1.4.1 Prawo kontrapozycji
Prawo kontrapozycji:
p=>q = ~q=>~p
Dowód:
p=>q = ~p+q - definicja implikacji prostej
W równoważności zachodzi przemienność argumentów zatem:
~q=>~p = ~(~q)+(~p) = q+~p = ~p+q = p=>q
bo:
~(~q)=q
1.5 Prawo Sowy
Prawo Sowy
W algebrze Boole’a jeśli coś jest implikacją (jakąkolwiek) to nie może być równoważnością
W algebrze Boole’a jeśli coś jest równoważnością to nie może być implikacją (jakąkolwiek)
Prawo Sowy wynika bezpośrednio z definicji równoważności czyli z występujących w tej definicji warunków wystarczających p=>q, ~p=>~q, q=>p - to nie są implikacje !
Implikacja i równoważność to dwa oddzielne światy matematyczne pomiędzy którymi nie zachodzą żadne związki matematyczne.
1.6 Prawa kontrapozycji w implikacji
W implikacji zabroniona jest zamiana argumentów, natomiast prawo kontrapozycji wymusza zamianę argumentów.
Definicja zero-jedynkowa implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Jeśli przemienność argumentów ma zachodzić to w ostatniej linii musimy wymusić zero. Zróbmy to !
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Oczywiście wylądowaliśmy w bezdyskusyjnej równoważności gdzie prawa kontrapozycji są oczywiście poprawne.
Prawo Hipcia:
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Prawa kontrapozycji są poprawne w równoważności i fałszywe w implikacji
CND
Mit, jakoby prawo kontrapozycji było prawdziwe w implikacji można więc między bajki włożyć.
Dowód alternatywny nie wprost jest w pkt. 5.0 tu:
Pytania do matematyków całego świata
1.7 Algebra Kubusia
Algebra Kubusia to symboliczna algebra Boole’a której fundamentem w obszarze implikacji są nieznane ludziom, definicje implikacji prostej => i odwrotnej ~>. Oczywiście chodzi tu o interpretacje odpowiednich tabel zero-jedynkowych, znanych ludziom od prawie 200 lat.
Iloczyn kartezjański i pojęcie funkcji (pkt. 6.1) to fundament matematyczny algebry Boole’a. Bezpośrednio z tych pojęć wynika przemienność argumentów w operatorach AND(*), OR(+), równoważności <=> i XOR oraz brak przemienności argumentów w operatorach implikacji prostej => i implikacji odwrotnej ~>.
Brak przemienności argumentów w operatorach implikacji przenosi się oczywiście na brak przemienności w implikacyjnych AND(*) i OR(+) wynikających z definicji tych operatorów czyli:
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
czyli:
p=>q # q~>p
p~>q # q=>p
To jest fundamentalna różnica wymuszająca włączenie operatorów implikacji do poprawnej definicji algebry Boole’a. Oczywiście algebrę Boole’a uzupełnioną w definicji o operatory implikacji prostej => i implikacji odwrotnej ~> mamy prawo nazwać, niech to będzie algebra Kubusia.
W algebrze Kubusia operator implikacji odwrotnej ~> ma równe prawa z implikacją prostą => i jest niezbędny, bowiem implikacja w naturalnym języku mówionym to zmiana operatora z => na ~> lub odwrotnie milion razy na dobę.
Zauważmy coś fundamentalnie ważnego:
W operatorach AND(*) i OR(+) można się obejść bez jednego z tych operatorów na podstawie praw de’Morgana:
p+q = ~(~p*~q) - prawo zamiany operatora OR(+) na AND(*)
p*q = ~(~p+~q) - prawo zamiany operatora AND(*) na OR(+)
Wydawać by się mogło, że na tej samej zasadzie zbędna jest implikacja odwrotna ~>, bo prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na implikacje prostą =>
Nic bardziej błędnego !
Prawa Kubusia działają bowiem w obrębie jednej i tej samej definicji zero-jedynkowej. Niemożliwe jest zatem istnienie implikacji prostej => (pewne wynikanie) bez implikacji odwrotnej ~> (rzucanie monetą) i odwrotnie - patrz prawo Kłapouchego pkt. 6.6.
1.8 Definicja algebry Kubusia
Definicja algebry Kubusia:
Dwuelementowa algebra Kubusia (wyłącznie cyfry 0 i 1) to algebra legalnych operatorów logicznych z których najważniejsze to OR(+), AND(*), implikacja prosta =>, implikacja odwrotna ~> plus definicja negacji (~) oraz pojęcie zmiennej binarnej i funkcji logicznej.
Definicja negacji:
1=~0
0=~1
Zmienna binarna - zmienna przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Funkcja logiczna (Y) - to funkcja zmiennych binarnych połączonych operatorami logicznymi AND(*) lub OR(+) przyjmująca w osi czasu wartości wyłącznie 0 albo 1 w zależności od aktualnych wartości tych zmiennych.
Przykładowa funkcja logiczna:
Y=A+(B*~C)
gdzie:
Y - funkcja logiczna (typowe oznaczenie rodem z teorii układów logicznych)
A,B,C … - zmienne binarne
Wszelkie prawa logiczne tylko i wyłącznie z powyższej definicji wynikają.
Lista legalnych operatorów logicznych w postaci zero-jedynkowej:
Kod: |
p q OR NOR AND NAND <=> XOR => N(=>) ~> N(~>) FILL NOP P NP Q NQ
0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1
0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
|
Kod: |
Logika dodatnia Logika ujemna
OR NOR
AND NAND
<=> XOR
=> N(=>)
~> N(~>)
FILL NOP
P NP
Q NQ
|
Wszystkich możliwych operatorów logicznych jest 16 z czego człowiek zna poprawne znaczenie zaledwie sześciu: AND, NAND, OR, NOR, <=>, XOR. Za operatory dodatnie przyjęto te, które człowiek używa w naturalnym języku mówionym. Wyjątkiem jest tu operator XOR, w języku mówionym spójnik „albo”.
Operator ujemny to zanegowany operator dodatni, co doskonale widać w powyższej tabeli.
Operator dodatni to zanegowany operator ujemny, co również widać wyżej.
Kod: |
Definicje operatorów ujemnych:
pNORq = ~(p+q)
pNANDq = ~(p*q)
pXORq = ~(p<=>q)
pN(=>)q = ~(p=>q)
pN(~>)q = ~(p~>q)
pNOPq = ~(pFILLq)
pNPq = ~(pPq)
pNQq = ~(pQq)
|
W języku mówionym operatory ujemne nie są używane, ponieważ łatwo je zastąpić operatorami dodatnimi plus negacją co widać w powyższej tabeli.
Część I Operatory AND i OR
2.0 Kubuś na tropie logiki człowieka
Pewnego razu Kubuś, leżąc na polance w stumilowym lesie doznał olśnienia. A gdyby tak wyzerować sobie mózg, czyli założyć że moja matematyczna wiedza wstępna jest na poziomie ucznia I klasy LO który nie ma pojęcia o algebrze Boole’a i napisać podręcznik logiki dla samego siebie ?
Hmm… to całkiem niezły pomysł, pomyślał Kubuś.
Fundamentem dzisiejszej logiki (KRZ) jest rachunek zero-jedynkowy, będący przyczyną jej klęski w poszukiwaniu logiki człowieka. Po prostu praktycznie nie da się dojść od zer i jedynek do poziomu naturalnej logiki człowieka. Do problemu trzeba podejść dokładnie z drugiej strony, czyli myśleć logicznie jak dziecko w przedszkolu zapisując swoje myślenie w postaci równań algebry Boole’a.
2.1 Podstawowe pojęcia i definicje
Pewne jest, że algebrą Kubusia doskonale posługują się wszystkie dzieci w przedszkolu. Zacznijmy zatem myśleć logicznie jak 5-letnie dziecko i przelewajmy wszystko na papier. Oczywiście aby to robić musimy znać fundamentalne pojęcia i definicje z zakresu logiki. Aparatu matematycznego nie potrzebujemy w ogóle gdyż mamy go w głowie - to nasz mózg.
+ - suma logiczna, spójnik „lub” (OR) w naturalnym języku mówionym
* - iloczyn logiczny, spójnik „i” (AND) w naturalnym języku mówionym
~ - przeczenie „NIE”
K - kino
~K - nie kino
T - teatr
~T - nie teatr
Y - prawda, dotrzymam słowa
~Y - fałsz, kłamstwo
~(…) - nieprawda że …, nie może się zdarzyć że …
Znaczenie symboli w logice:
K, T - zmienne binarne, mogące przyjmować w osi czasu wyłącznie wartości 0 albo 1
Y - funkcja logiczna zmiennych binarnych np.
Y = K+T
Y = Kino lub (+) Teatr
Definicja zmiennej binarnej:
Zmienna binarna to zmienna mogąca przyjmować w osi czasu wyłącznie wartości 0 albo 1
Definicja funkcji logicznej:
Funkcja logiczna to funkcja zmiennych binarnych połączonych operatorami OR(+) lub AND(*) przyjmująca w osi czasu wyłącznie wartości 0 albo 1
Prawo podwójnego przeczenia:
Y=~(~Y)
prawda = nieprawda, że nieprawda
Dowód na przykładzie:
U= jestem uczciwy
~U = jestem nieuczciwy
U=~(~U)
Nieprawdą jest, że jestem nieuczciwy
czyli:
Jestem uczciwy = Nieprawdą jest że jestem nieuczciwy
W dzisiejszej logice (KRZ), której fundamentem jest rachunek zero-jedynkowy, zwyczajowo przyjmuje się logikę dodatnią gdzie:
1 = prawda, dotrzymam słowa
0 = fałsz, skłamię
… i niech tak zostanie, choć oczywiście możliwy jest standard przeciwny, czyli logika ujemna w stosunku do przyjętego standardu.
Poprawna logika nie powinna zależeć od przyjętego standardu jak wyżej. Każdy człowiek, od przedszkolaka po profesora doskonale posługuje się algebrą Kubusia na poziomie symbolicznym. Absolutnie nikt nie myśli logicznie przy pomocy zer i jedynek poza dinozaurami logiki, fanatykami rachunku zero-jedynkowego.
Identycznie jest w technice mikroprocesorowej. Człowiek myślał tu w kodzie maszynowym czyli zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wymyślił symboliczny język asemblera mający bezpośrednie przełożenie na kod maszynowy programu … czyli skopiował działanie własnego mózgu.
Z punktu odniesienia mikroprocesora mamy świat w 100% binarny czyli mikroprocesor zna wyłącznie zera i jedynki. Z punktu odniesienia człowieka mamy zupełnie inną rzeczywistość. Wszyscy wiemy, że komputery potrafią liczyć, rysować, malować, sterować fabryką bez ludzi itd.
Jak zatem działa program napisany przez człowieka w symbolicznym języku asemblera skoro mikroprocesory znają wyłącznie dwie cyferki 0 i 1 ?
Oczywiście konieczny jest tu translator języka symbolicznego na kod maszynowy programu czyli na zera i jedynki. Translator to również napisany przez człowieka program komputerowy, nic więcej.
Fundamentalnym językiem symbolicznym każdego mikroprocesora jest język asemblera, to fundament wszelkich innych języków wysokiego poziomu. Język asemblera jest jeden (to algebra Boole’a), natomiast języków wysokiego poziomu może być nieskończenie wiele.
Zacznijmy teraz myśleć logicznie jak 5-cio letnie dziecko zapisując wszystko w równaniach algebry Boole’a.
2.2 Funkcja logiczna jednej zmiennej
Jutro idę do kina
Y=K
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina (K)
Y=K
Kiedy zostanę kłamcą ?
Skłamię (~Y), jeśli jutro nie pójdę do kina
~Y = ~K
Zauważmy, że po prostu zanegowaliśmy dwustronnie równanie Y=K
Inne zdanie:
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
2.3 Funkcja logiczna dwu zmiennych - suma logiczna
Jutro pójdę do kina lub do teatru
Y=K+T
czyli matematycznie:
Dotrzymam słowa (Y), jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Oczywiście zatrudniliśmy tu aparat matematyczny wbudowany w mózg każdego człowieka.
… czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru
Y=~(~K*~T)
Ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
A: Y=K+T
B: ~Y=~K*~T
C: Y=~(~Y) - prawo podwójnego przeczenia
Stąd po podstawieniu A i B do C mamy prawo de’Morgana:
K+T = ~(~K*~T) - prawo zamiany operatora OR(+) na AND(*)
Czyli zdanie równoważne do Y będzie brzmiało:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
~(~K*~T) = K+T
Ostatnie zdanie używane jest niezwykle rzadko. Nasz mózg optymalizuje odpowiedzi, czyli jeśli to samo można wyrazić prościej to preferuje tą odpowiedź (tu K+T)
2.4 Funkcja logiczna dwu zmiennych - iloczyn logiczny
Jutro pójdę do kina i do teatru
Y=K*T
czyli matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
… a kiedy skłamię ?
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y = ~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie i mamy odpowiedź:
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru.
Y=~(~K+~T)
Oczywiście ostatnie zdanie wynika też z prawa de’Morgana dla sumy logicznej.
Mamy wyżej:
A: Y=K*T
B: ~Y=~K+~T
Prawo podwójnego przeczenia:
C: Y=~(~Y)
Podstawiając A i B do C mamy prawo de’Morgana:
K*T = ~(~K+~T) - prawo zamiany operatora AND(*) na OR(+)
2.5 Logika ujemna
Popatrzmy jeszcze raz na matematykę, którą posługuje się każdy przedszkolak.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Koniec !
To jest cała matematyka, którą każdy człowiek od przedszkolaka po profesora używa milion razy na dobę. Jak widać mózg przedszkolaka na pytanie „Kiedy skłamię ?” odpowiada w logice ujemnej.
Definicja logiki ujemnej:
Logika dodatnia (Y) to odpowiedź na pytanie kiedy dotrzymam słowa (wystąpi prawda), zaś logika ujemna (~Y) to odpowiedź na pytanie kiedy skłamię (wystąpi fałsz).
Związek logiki dodatniej z logika ujemną opisuje równanie:
Y = ~(~Y) - prawo podwójnego przeczenia
Nietrudno zauważyć, jak mózg dziecka przechodzi z logiki dodatniej (Y) do logiki ujemnej (~Y), po prostu neguje wszystkie zmienne i wymienia operator na przeciwny. Nietrudno też się domyśleć, że to jest poprawny sposób przejścia do logiki ujemnej dla dowolnie długiej funkcji logicznej.
Metoda przedszkolaka:
Przejście z logiki dodatniej (Y)do ujemnej (~Y) lub odwrotnie uzyskujemy negując wszystkie zmienne i wymieniając operatory na przeciwne.
Przykład:
A: Y=A+(~B*C)
Przejście do logiki ujemnej poprzez negację zmiennych i wymianę operatorów na przeciwne:
B: ~Y = ~A*(B+~C)
Oczywiście zachodzi:
C: Y=~(~Y) - prawo podwójnego przeczenia
Podstawiając A i B do C mamy prawo de’Morgana.
A+(~B*C) = ~[~A*(B+~C)]
Łatwo zauważyć, że z prawa de’Morgana mózg dziecka praktycznie nigdy nie korzysta … no, chyba że w fazie poznawania języka, kiedy to dwulatek zadaje wszelkie możliwe pytania.
Popatrzmy na to jeszcze raz, delektując się genialną matematyką która posługuje się każde dziecko.
Jutro pójdę do kina lub do teatru
Y=K+T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru.
Y=K+T
… a kiedy skłamię ?
Skłamię (~Y) jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y = ~K*~T
Już dziecko pięcioletnie nie będzie zadawało więcej pytań bo wszystko jest jasne, dwulatek może jednak kontynuować.
… a czy może się zdarzyć, że jutro nie pójdę do kina i nie pójdę do teatru ?
Ostatnie zdanie w dialogu:
~Y=~K*~T
Negujemy dwustronnie i mamy odpowiedź na temat, czyli zgodną z zadanym pytaniem.
Y=~(~K*~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina i nie pójdę do teatru
Na powyższe pytanie można odpowiedzieć inaczej:
Jutro na pewno pójdę do kina lub do teatru
Y=K+T
Jednak nie będzie to ścisła odpowiedź na zadane pytanie, dlatego mało kto tak odpowie.
2.6 Definicja sumy logicznej
Powyżej użyliśmy niezawodnego aparatu matematycznego, mózgu 5-cio latka, do rozszyfrowania operatorów OR(+) i AND(*). Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych. Powszechnie przyjętym zwyczajem jest, że zmienne formalne w algebrze Boole’a oznaczamy literkami p i q. Dla konkretnego przypadku pod zmienne formalne p i q podstawiamy zmienne aktualne.
Y=p+q - formalny zapis sumy logicznej
Jutro pójdę do kina lub do teatru.
Y=K+T - aktualny zapis sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
Y = A1+A2+… An =0 <=> A1=0, A2=0 …An=0
Definicja równoważna:
Suma logiczna n-zmiennych binarnych jest równa jeden gdy którakolwiek ze zmiennych jest równa jeden.
Zajrzyjmy ponownie do przedszkola ….
Pani do dzieci w przedszkolu:
Słuchajcie dzieci, obiecuję wam że jutro pójdziemy do kina lub do teatru
Y=K+T
Które z was powie mi kiedy dotrzymam słowa ?
Odpowiedzi 5-cio letniego Jasia zapiszemy w formie tabeli:
K*T = Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i do teatru
K*~T =Y - dotrzymam słowa (Y) jeśli pójdziemy do kina i nie pójdziemy do teatru
~K*T =Y - dotrzymam słowa (Y) jeśli nie pójdziemy do kina i pójdziemy do teatru
Oczywiście wyłącznie jeden z powyższych przypadków może jutro wystąpić, czyli używamy definicji sumy logicznej aby z powyższego wygenerować równanie algebry Boole’a.
Y=K*T + K*~T + ~K*T
Pani dotrzyma słowa wtedy i tylko wtedy gdy wystąpi którykolwiek z powyższych przypadków.
Bardzo dobrze Jasiu, a teraz które z was powie kiedy skłamię ?
Zuzia:
Pani skłamie (~Y) jeśli jutro nie pójdziemy do kina i nie pójdziemy do teatru
~K*~T =~Y
Zauważmy, że wyżej mamy zapisane wszystkie przypadki dla zmiennych K i T jakie w przyszłości mogą wystąpić. Możemy to nazwać „matrycą przyszłości”, nic poza tą matrycą nie ma prawa się wydarzyć.
Zapiszmy to wszystko razem w formie tabeli:
Kod: |
K T = Y
K ~T = Y
~K T = Y
~K ~T =~Y
|
Oczywiście w matematyce nie operujemy na przykładach, lecz na zapisach formalnych.
Przyjmijmy zatem:
p=K i q=T
i przepiszmy powyższą tabelkę.
Kod: |
p q = Y=p+q
p q = Y
p ~q = Y
~p q = Y
~p ~q =~Y
|
Zauważmy, że do tej pory analizujemy sobie poczynania mózgu 5-cio latka w postaci symbolicznej. Nadszedł czas, aby z powyższego zapisu symbolicznego wygenerować kod maszynowy czyli definicje zero-jedynkową sumy logicznej.
Przyjmujemy logikę dodatnią:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
i mamy to co fanatycy zer i jedynek lubią najbardziej.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Zauważmy, że w powyższej tabeli mamy pełną zgodność z definicją logiki dodatniej i ujemnej. W logice dodatniej (Y=1) mamy odpowiedź na pytanie kiedy wystąpi prawda, zaś w logice ujemnej (~Y=1) mamy odpowiedź na pytanie kiedy wystąpi fałsz.
W tabeli widać też znaczenie kolumny wynikowej w logice dodatniej (Y):
Y=1 - dotrzymam słowa
Y=0 - skłamię
Znaczenie kolumny wynikowej w logice ujemnej (~Y):
~Y=0 - dotrzymam słowa
~Y=1 - skłamię
Matematycznie wszystko musi się zgadzać czyli:
Y=~(~Y) =1 - dotrzymam słowa w logice dodatniej
Y=~(~Y)=0 - skłamię w logice dodatniej
Oczywiście matematycznie zachodzi:
Y=~(~Y) - prawo podwójnego przeczenia
oraz:
Y#~Y
czyli jedynka w logice dodatniej (Y) to zupełnie co innego niż jedynka w logice ujemnej (~Y).
Oczywiście wszystko musi się tu zgadzać czyli:
Y=~(~Y)=Y - oczywistość w powyższej tabeli
oraz:
~Y=1 czyli Y=0 - sprowadzenie fałszu w logice ujemnej (~Y=1) do fałszu w logice dodatniej (Y=0).
2.7 Prawo Prosiaczka
Prawo Prosiaczka mówi o sposobie przejścia z tabeli zero-jedynkowej n-elementowej do równania algebry Boole’a opisującego tą tabelę.
Definicja zero-jedynkowa sumy logicznej:
Kod: |
p q Y=p+q ~Y=~(p+q)
1 1 =1 0
1 0 =1 0
0 1 =1 0
0 0 =0 1
|
Kubuś, nauczyciel logiki w I klasie LO w stumilowym lesie:
Kto potrafi z powyższej tabeli zero-jedynkowej wygenerować równanie algebry Boole’a ?
Wszystkie ręce w górze, do tablicy podchodzi Jaś:
W ostatniej linii w wyniku mamy samotne zero, zatem dla tej linii możemy zapisać najprostsze równanie.
Z tabeli widzimy że:
A.
Y=0 <=> p=0 i q=0
Przejście z takiego zapisu do równań algebry Boole’a jest banalne. Należy skorzystać z definicji iloczynu logicznego sprowadzając wszystkie zmienne do jedynki albo z definicji sumy logicznej sprowadzając wszystkie zmienne do zera.
Sposób I.
Sprowadzam wszystkie zmienne do jedynki:
B.
Y=0 czyli ~Y=1
p=0 czyli ~p=1
q=0 czyli ~q=1
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Korzystając z A i B na podstawie tej definicji mamy:
~Y = ~p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując wszystkie zmienne i wymieniając operator AND(*) na OR(+):
Y = p+q
Sposób II
Sprowadzamy wszystkie zmienne do zera i stosujemy definicję sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru wtedy i tylko wtedy gdy wszystkie składniki sumy są równe zeru
W równaniu A wszystkie zmienne są równe zeru, zatem tu nic nie musimy robić, od razu mamy równanie algebry Boole’a dla powyższej tabeli zero-jedynkowej.
Y=p+q
Kubuś:
Jasiu, zapisałeś równanie algebry Boole’a wyłącznie dla ostatniej linii, skąd wiesz jakie będą wartości logiczne w pozostałych liniach, nie opisanych tym równaniem ?
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
2.8 Definicja iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Y=A1*A2* … *An =1 <=> A1=1, A2=1 … An=1
Definicja równoważna:
Iloczyn logiczny jest równy zeru jeśli którakolwiek zmienna jest równa zeru.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej metodą przedszkolaka, negujemy zmienne i wymieniamy operator.
Skłamię (~Y) jeśli jutro nie pójdę do kina lub nie pójdę teatru
~Y=~K+~T
Oczywiście dotrzymam słowa wtedy i tylko wtedy gdy pójdę do kina i do teatru, w przeciwnym przypadku skłamię. Rozpiszmy szczegółowo te przypadki.
K*T=Y - dotrzymam słowa jeśli pójdę do kina i do teatru
W przeciwnym przypadku skłamię czyli uzupełniamy pozostałe możliwości:
K*~T=~Y - skłamię (~Y) jeśli pójdę do kina i nie pójdę do teatru
~K*~T=~Y - skłamię (~Y) jeśli nie pójdę do kina i nie pójdę do teatru
~K*T =~Y - skłamię (~Y) jeśli nie pójdę do kina i pójdę do teatru
Oczywiście skłamię jeśli wystąpi którykolwiek z powyższych przypadków czyli:
~Y = K*~T + ~K*~T + ~K*T
Na podstawie powyższego budujemy tabelę prawdy dla iloczyny logicznego
Kod: |
K T = Y=K*T
K ~T =~Y
~K ~T =~Y
~K T =~Y
|
Przechodzimy teraz na zapis symboliczny przy użyciu parametrów formalnych p i q podstawiając:
p=K, q=T
stąd mamy symboliczną definicje iloczynu logicznego:
Kod: |
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Zauważmy, że tu również uzyskaliśmy pełną definicję iloczynu logicznego na poziomie symbolicznym czyli absolutne zero styczności z kodem maszynowym, zerami i jedynkami.
Równania algebry Boole’a najłatwiej utworzyć korzystając z definicji symbolicznej.
Z pierwszej linii otrzymujemy najprostsze równanie:
A1: Y=p*q - dotrzymam słowa
Z kolejnych trzech linii mamy:
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
W sumie na podstawie powyższych równań możemy ułożyć aż osiem różnych zdań, cztery z nich (matematycznie równoważne) będą mówiły kiedy dotrzymam słowa (Y), zaś kolejne cztery (także równoważne) kiedy skłamię (~Y).
A1: Y=p*q - dotrzymam słowa
Dotrzymam słowa (Y), jeśli jutro pójdę do kina i do teatru
Y=K*T
Negujemy równania dwustronnie:
A2: ~Y=~(p*q) - skłamię
Skłamię (~Y), jeśli nie zdarzy się ~(…) że jutro pójdę do kina i do teatru
~Y=~(K*T)
Przechodzimy z równaniem A1 do logiki ujemnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne:
A3: ~Y=~p+~q - skłamię
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
Negujemy dwustronnie równanie A3:
A4: Y=~(~p+~q) - dotrzymam słowa
Dotrzymam słowa (Y), jeśli nie zdarzy się ~(…) że jutro nie pójdę do kina lub nie pójdę do teatru
Y=~(~K+~T)
To co wyżej to najczęstsze zdania w języku mówionym. Zdania serii B są zdecydowanie rzadsze bo bardziej złożone.
B1: ~Y=(p*~q) + (~p*~q) + (~p*q) - skłamię
~Y=(K*~T)+(~K*~T)+(~K*T)
Skłamię (~Y), jeśli zdarzy się którykolwiek z powyższych przypadków.
Negujemy dwustronnie:
B2: Y=~[(p*~q) + (~p*~q) + (~p*q)] - dotrzymam słowa
Przechodzimy z równaniem B1 do logiki przeciwnej negując zmienne i wymieniając operatory na przeciwne:
B3: Y=(~p+q)*(p+q)*(p+~q) - dotrzymam słowa
Negujemy dwustronnie:
B4: ~Y=~[(~p+q)*(p+q)*(p+~q)] - skłamię
W sumie mamy fantastyczną właściwość języka mówionego czyli powiedzenie tego samego na wiele różnych sposobów. Zauważmy, że nigdzie wyżej nie mamy styczności z kodem maszynowym języka czyli idiotycznymi zerami i jedynkami. Taki związek oczywiście istnieje i jest łatwy do pokazania.
Przechodzimy do zero-jedynkowej definicji iloczynu logicznego w logice dodatniej przyjmując:
p=1, ~p=0
q=1, ~q=0
Y=1, ~Y=0
Zero jedynkowa definicja iloczynu logicznego:
Kod: |
p q Y=p*q ~Y=~(p*q)
1 1 =1 0
1 0 =0 1
0 0 =0 1
0 1 =0 1
|
Tu również mamy doskonałą zgodność z definicją logiki dodatniej i ujemnej.
Dotrzymam słowa (Y=1) wtedy i tylko wtedy gdy p*q czyli:
Y=p*q - dotrzymam słowa
Skłamię (~Y=1) gdy:
~Y=p*~q + ~p*~q + ~p*q - skłamię
Załóżmy teraz, że mamy wyłącznie tabelę zero-jedynkową jak wyżej. Jak dla takiej tabeli ułożyć równanie algebry Boole’a. Oczywiście najprostsze równanie uzyskamy z pierwszej linii bo mamy tu samotną jedynkę w wyniku. Na podstawie tej linii możemy ułożyć równanie na dwa sposoby.
Dla powyższej tabeli możemy zapisać:
A.
Y=1 <=> p=1 i q=1 - na podstawie pierwszej linii
Sposób I
Sprowadzamy wszystkie sygnały do jedynki i korzystamy z definicji iloczynu logicznego.
Definicja iloczynu logicznego:
Iloczyn logiczny jest równy jeden gdy wszystkie składniki iloczynu są równe jeden
Wszystkie sygnały w równaniu A są jedynkami zatem tylko je przepisujemy, nic nie musimy negować.
Y=p*q
Sposób II
Sprowadzamy wszystkie sygnały do zera i korzystamy z definicji sumy logicznej.
Definicja sumy logicznej:
Suma logiczna jest równa zeru gdy wszystkie składniki sumy są równe zeru
Sprowadzamy sygnały A do zera:
Y=1 czyli ~Y=0
p=1 czyli ~p=0
q=1 czyli ~q=0
Stąd na podstawie definicji sumy logicznej mamy:
~Y = ~p+~q
Oczywiście przechodzimy do logiki dodatniej ponieważ człowiek używa logiki ujemnej wyłącznie w przeczeniach. Negujemy sygnały i wymieniamy operatory na przeciwne.
Y=p*q
Na zakończenie zabawy z operatorami typu AND(*) i OR(+) pokażemy dowód prawa de’Morgana metodą zero-jedynkową.
2.9 Dowody zero-jedynkowe w algebrze Boole’a
Dowody zero-jedynkowe w algebrze Boole’a są równoważne do odpowiednich dowodów w równaniach matematycznych które wykonywaliśmy do tej pory. Dowody te są zdecydowanie bardziej czasochłonne i w wielu przypadkach nie wiadomo o co chodzi np. zasługą dowodów zero-jedynkowych jest fakt, że człowiek do tej pory nie był w stanie zlokalizować implikacji którą się posługuje.
Prawo de’Morgana:
p*q=~(~p+~q)
Dowód zero-jedynkowy:
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Jak widać rozpatrujemy tu wszystkie możliwe przypadki dla zmiennych p i q. Równość kolumn trzeciej i ostatniej wskazuje na poprawność prawa de’Morgana. Kluczową różnicą tabeli wyżej w stosunku do identycznej tabeli znanej matematykom jest rozróżnianie logiki dodatniej (Y) od logiki ujemnej (~Y). Zdanie p*q w logice dodatniej (Y) to zupełnie co innego niże zdanie ~p+~q w logice ujemnej (~Y).
Zobaczmy po raz n-ty jak genialnie prosto przechodzi mózg przedszkolaka z logiki dodatniej do ujemnej.
Jutro pójdę do kina i do teatru
Y=K*T
Matematycznie oznacza to:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina i do teatru
A: Y=K*T
… a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów na przeciwne:
~Y=~K+~T
Skłamię (~Y), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
… a czy może się zdarzyć, że jutro nie pójdę do kina lub nie pójdę do teatru ?
Negujemy powyższe równanie dwustronnie:
B: Y=~(~K+~T)
Nie może się zdarzyć ~(…), że jutro nie pójdę do kina lub nie pójdę do teatru
~(~K+~T)
Z równań A i B mamy prawo de’Morgana:
K*T = ~(~K+~T)
Jak widzimy w języku mówionym każdy człowiek stosuje podświadomie prawa de’Morgana ….potrafi to robić nawet przedszkolak, naturalny ekspert algebry Kubusia.
Na zakończenie pokażemy dowód prawa de’Morgana w bramkach logicznych. Bramki logiczne to graficzna ilustracja skomplikowanych niekiedy przekształceń matematycznych. Dzięki nim łatwiej zorientować się „o co tu chodzi”.
2.10 Logika dodatnia i ujemna w bramkach logicznych
Podstawowe pojęcia w teorii układów logicznych.
Sygnał cyfrowy (zmienna binarna) to sygnał mogący przyjmować w osi czasu wyłącznie dwa stany 0 albo 1.
Wyjście cyfrowe (funkcja logiczna) to wyjście układu logicznego, dowolnie złożonego, zbudowanego z bramek logicznych typu OR(+) lub AND(*) oraz negatorów.
Bramki logiczne to domena elektroników logików. Już na pierwszym wykładzie z „Teorii układów logicznych” dowiadujemy się, że w dowolną linię układu logicznego zbudowanego na bramkach logicznych możemy wstawić dwa negatory (na schemacie kółka) i nic się nie zmieni zgodnie z prawem podwójnego przeczenia.
A=~(~A)
Kod: |
Negator i prawo podwójnego przeczenia
Y=A ~Y=~A Y=~(~A)=A
-----O-------------O---------
|
Na wejście negatora (na schematach kółko) podajemy sygnał A, na jego wyjściu otrzymujemy sygnał zanegowany ~A który podajemy na kolejny negator. Po drugim negatorze mamy oczywiście sygnał cyfrowy identyczny z A zgodnie z prawem podwójnego przeczenia.
Po drugim wykładzie wiemy już jak zastąpić bramkę OR(+) bramką AND(*) i odwrotnie. Tu korzystamy z praw de’Morgana.
p*q = ~(~p+~q) - prawo zamiany bramki AND(*) na OR(+)
p+q = ~(~p*~q) - prawo zamiany bramki OR(+) na AND(*)
Przy pomocy negatora możemy symbolicznie pokazać obsługę zdań prostych.
Jutro nie pójdę do kina
Y=~K
czyli matematycznie:
Dotrzyma słowa (Y), jeśli jutro nie pójdę do kina
Y=~K
Kiedy skłamię ?
Negujemy dwustronnie.
Skłamię (~Y), jeśli jutro pójdę do kina
~Y=~(~K)=K
Zastosowaliśmy tu prawo podwójnego przeczenia K=~(~K)
Kod: |
-------
| |
Y=~K ----------| ~ |O----------> ~Y=K
| |
-------
|
W technice cyfrowej symbolem negacji jest kółko, nie musimy rysować całego negatora jak wyżej. Ze schematu widać że, na wejście negatora podajemy sygnał (funkcję logiczną) Y=~K, zaś na wyjściu otrzymujemy sygnał zanegowany ~Y=K.
Oczywiście mamy:
Y#~Y
czyli sygnał na wejściu negatora to zupełnie co innego niż sygnał na jego wyjściu.
Łatwo się o tym przekonać biorąc do ręki rzeczywisty negator np. układ scalony 7404. Jeśli na wejście rzeczywistego negatora podamy cyfrowy sygnał zero-jedynkowy (zmienny w czasie) to na jego wyjściu otrzymamy lustrzane odbicie sygnału wejściowego, co łatwo można zaobserwować na oscyloskopie, przyrządzie służącym do wizualizacji przebiegów zmiennych.
Zwarcie kabelkiem wejścia negatora z wyjściem, czyli wymuszenie:
Y=~Y
grozi oczywiście wybuchem czyli dużo dymu i smrodu.
Podstawowe schematy elektroniczne bramek OR(+) i AND(*) są następujące.
Kod: |
Bramka OR i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| OR | | AND |
------- -------
| O
| |
Y=p+q = Y=~(~p*~q)
|
Z powyższego wynika, że bramkę OR możemy zastąpić bramką AND plus trzema negatorami wstawionymi w linie wejściowe p i q oraz linię wyjściową Y.
Kod: |
Bramka AND i jej schemat zastępczy wynikający z prawa de’Morgana
p q p q
| | | |
| | O O
------- -------
| | = | |
| AND | | OR |
------- -------
| O
| |
Y=p*q = Y=~(~p+~q)
|
Podobnie bramkę AND możemy zastąpić bramką OR plus trzema negatorami. Fizycznie oznacza to, że możemy zbudować dwa układy jak wyżej (w technice cyfrowej to banał) a następnie połączyć sygnały p-p, q-q, Y-Y i wszystko będzie dalej pięknie działało.
Powróćmy jeszcze raz do dowodu praw de’Morgana uwzględniającego logikę dodatnią i ujemną by zobaczyć na bramkach logicznych skąd się to bierze.
Kod: |
p q Y=p*q ~p ~q ~Y=~p+~q Y=~(~p+~q)
1 1 1 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 1 0
0 1 0 1 0 1 0
|
Równość kolumn trzeciej i ostatniej jest dowodem poprawności prawa de’Morgana. Ten sam dowód krok po kroku w bramkach logicznych.
Na początku była bramka AND(*) ….
Kod: |
p q p q p q
| | | | | |
| | O O O O
| | |~p |~q |~p |~q
| | O O | |
| | |p |q | |
------- ------- -------
| | = | | = | |
| AND | | AND | | OR |
------- ------- -------
| |Y=p*q |
| O |
| |~Y=~(p*q) |~Y=~p+~q
| O O
| | |
Y=p*q = Y=p*q Y=~(~p+~q)
A B C
|
Schemat A:
Bramka AND rodem z teorii układów logicznych, realizująca funkcję logiczną Y=p*q.
Schemat B:
Na rysunku B wstawiliśmy w każdą linię wejściową bramki po dwie negacje oraz w linię wyjściową Y również dwie negacje.
Taki układ oczywiście nie zmieni się bo:
A=~(~A) - prawo podwójnego przeczenia.
W linii wejściowej p po minięciu pierwszego negatora otrzymamy sygnał ~p ale po minięciu drugiego negatora będziemy mieli sygnał p, identyczny jak na wejściu. Identycznie mamy w linii wejściowej q. Na wyjściu bramki AND mamy sygnał Y=p*q, po minięciu pierwszego negatora mamy ten sam sygnał w logice ujemnej ~Y=~(p*q), zaś po minięciu kolejnego negatora mamy sygnał identyczny jak bezpośrednio na wyjściu bramki AND czyli Y=p*q
Schemat C:
Ten schemat różni się od B wyłącznie tym, że zastosowaliśmy układ zastępczy bramki AND z zanegowanymi wejściami i zanegowanym wyjściem, którym jest po prostu bramka OR. Oczywiście na wyjściu ~Y mamy teraz ~Y=~p+~q zgodnie ze schematem ideowym, zaś po minięciu negatora na wyjściu (negujemy dwustronnie) mamy Y=~(~p+~q).
W matematyce wszystko musi się zgadzać.
Dla rysunków B i C mamy dla wyjścia ~Y:
~Y=~Y
czyli:
~(p*q) = ~p+~q - prawo de’Morgana w równoważnym zapisie
Zaś dla wyjścia Y:
Y=Y
czyli:
p*q = ~(~p+~q) - prawo de’Morgana w najpopularniejszym zapisie
Jak widzimy wyżej, przedszkolak przechodząc z logiki dodatniej do ujemnej w genialnie prosty sposób nie robi nic nadzwyczajnego.
Y=p*q
przejście do logiki ujemnej poprzez negację sygnałów i wymianę operatorów na przeciwne:
~Y=~p+~q
Wszystko jest tu w 100% zgodne z teorią bramek logicznych, czyli algebrą Boole’a. Mam nadzieję, że wszyscy rozumieją teraz dlaczego w nowatorskiej tabeli zero-jedynkowego dowodu prawa de’Morgana wyżej widnieje zapis ~Y=~p+~q a nie jak to jest w dzisiejszej matematyce gołe ~p+~q, które nie wiadomo czym jest.
Oczywiście sygnały w punktach Y i ~Y to zupełnie co innego, gdybyśmy je połączyli kabelkiem na powyższym schemacie (czyli wymusili Y=~Y) byłoby dużo dymu i smrodu, wszystko wyleciałoby w powietrze.
Przykład:
Jutro pójdę do kina i do teatru
Y=K+T
Matematycznie oznacza to:
Dotrzymam słowa (Y=1), jeśli jutro pójdę do kina i do teatru
Y=K*T
gdzie: Y=1 - zdanie prawdziwe
…. a kiedy skłamię ?
Przejście do logiki ujemnej poprzez negacje zmiennych i wymianę operatorów.
~Y=~K+~T
Skłamię (~Y=1), jeśli jutro nie pójdę do kina lub nie pójdę do teatru
~Y=~K+~T
gdzie: ~Y=1 - zdanie prawdziwe
Mamy tu do czynienia ze zdaniami prawdziwymi, ale nie równoważnymi bowiem występującymi w przeciwnych logikach.
2.11 Operatory AND i OR w logice człowieka
W algebrze Boole’a z operatorami AND i OR da się wypowiedzieć cztery różne zdania, a po uwzględnieniu praw de’Morgana nawet osiem.
p*q = ~(~p+~q)
p+q = ~(~p*~q)
~(p*q) = ~p+~q
~(p+q) = ~p*~q
W języku mówionym w zdaniach prostych przedrostek dotrzymam słowa (Y) jest domyślny czyli:
Jutro pójdę do kina lub do teatru
Y=K+T
matematycznie oznacza:
Dotrzymam słowa (Y) jeśli jutro pójdę do kina lub do teatru
Y=K+T
… a kiedy skłamię ?
Przechodzimy z powyższym do logiki przeciwnej metodą przedszkolaka czyli negujemy zmienne i odwracamy operatory.
~Y=~K*~T
Skłamię (~Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
~Y=~K*~T
Przedrostek skłamię (~Y) nie jest domyślny i musi zostać wypowiedziany czyli:
Skłamię (~Y), jeśli jutro pójdę do kina lub do teatru
~Y=K+T
… a kiedy powiem prawdę ?
Przechodzimy z powyższym do logiki przeciwnej czyli negujemy zmienne i odwracamy operatory.
Y=~K*~T
czyli:
Dotrzymam słowa (Y), jeśli jutro nie pójdę do kina i nie pójdę do teatru
Y=~K*~T
Oczywiście zdanie w logice dodatniej (Y) nie jest równoważne zdaniu w logice ujemnej (~Y) mimo że oba zdania są prawdziwe, tak wiec prawdziwość zdania nie oznacza automatycznie równoważności zdania.
3.0 Zero-jedynkowa algebra Boole’a
Algebra Kubusia, matematyka języka mówionego, jest algebrą symboliczną mającą 100% przełożenie na kod maszynowy czyli zera i jedynki, co pokazaliśmy wyżej.
Klasyczna, zero-jedynkowa algebra Boole’a to w dniu dzisiejszym zabytek klasy zerowej. Algebra ta jest co prawda fundamentem działania wszelkich komputerów (i całego naszego Wszechświata) ale człowiek myślał w zerach i jedynkach zaledwie przez mgnienie oka. Natychmiast wynalazł język symboliczny zwany asemblerem izolując się od kodu maszynowego … czyli skopiował działanie własnego mózgu. Żaden programista pisząc programy nie myśli w zerach i jedynkach bo to po prostu horror. Klasyczna algebra Boole’a jest zupełnie nieprzydatna w technice bowiem nikt nie projektuje już automatów cyfrowych na bramkach logicznych, jak to miało miejsce przed wynalezieniem mikroprocesora. Pierwszy przyzwoity mikroprocesor (Intel 8080) pojawił się w roku 1974, ale już przed nim algebra Boole’a załamała się na układach cyfrowych średniej skali integracji (liczniki, rejestry, multipleksery itp.).
Oczywiście algebra Boole’a w najprostszej postaci będzie w technice przydatna zawsze, ale już nikt nigdy nie będzie używał bramek logicznych do projektowania złożonych automatów cyfrowych, tu królują mikroprocesory.
Fundamentalne prawa algebry Boole’a musi znać każdy programista piszący programy w dowolnym języku programowania … ale normalni ludzie nie muszą, tak wiec wszyscy których nie interesuje pisanie programów mogą ten rozdział pominąć.
3.1 Prawa wynikające z definicji iloczynu logicznego
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Definicja równoważna:
Iloczyn logiczny jest równy zeru gdy którakolwiek zmienna jest równa zeru.
Prawa wynikające bezpośrednio z definicji:
1*0=0
1*1=1
A*0=0
A*1=A
A*A=A
A*~A=0
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.2 Prawa wynikające z definicji sumy logicznej
Definicja sumy logicznej:
Suma logiczna n-zminnych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Definicja równoważna:
Suma logiczna jest równa jeden gdy którakolwiek zmienna jest równa 1
Prawa wynikające bezpośrednio z definicji:
1+0=1
0+0=0
A+1=1
A+0=A
A+A=A
A+~A=1
W języku mówionym powyższe prawa nie są używane, przydają się jedynie w technice cyfrowej.
3.3 Najważniejsze prawa algebry Boole’a
W języku mówionym prawa łączności i przemienności to oczywistość, natomiast absorpcja, rozdzielność i pochłanianie są przydatne jedynie w technice cyfrowej.
Łączność:
A+(B+C) = (A+B)+C
A*(B*C)=(A*B)*C
Przemienność:
A+B=B+C
A*B=B*C
Absorbcja:
A+(A*B)=A
Dowód:
Jeśli A=1 to A+(A*B)=1+(A*B)=1
Jeśli A=0 to A+(A*B)=0+(0*B)=0+0=0
niezależnie od wartości B
CND
A*(A+B)=A
Dowód:
Jeśli A=1 to A*(A+B)= 1*(1+B)=1*1=1
Jeśli A=0 to A*(A+B)=0*(A+B)=0
niezależnie od wartości B.
CND
Rozdzielność:
A+(B*C) = (A+B)*(A+C)
A*(B+C)=(A*B)+(B*C)
Pochłanianie:
A*~A=0
A+~A=1
3.4 Operatory dodatnie i operatory ujemne
Tabela legalnych operatorów logicznych typu AND(*) I OR(+)
Kod: |
Tabela A
p q Y=p+q ~Y=pNORq Y=p*q ~Y=pNANDq
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
OR(+), AND(*) - operatory w logice dodatniej
NOR, NAND - operatory w logice ujemnej
Porównajmy powyższą tabele z tabelą używaną przez nas do tej pory.
Kod: |
Tabela B
p q Y=p+q ~Y=~(p+q) Y=p*q ~Y=~(p*q)
0 0 0 1 0 1
0 1 1 0 0 1
1 0 1 0 0 1
1 1 1 0 1 0
|
Z powyższych tabel wynikają definicje operatorów NOR i NAND:
pNORq = ~(p+q) = ~p*~q - na podstawie prawa de’Morgana
pNANDq = ~(p*q) = ~p+~q - na podstawie prawa de’Morgana
bo:
~Y=~Y
Stąd w katalogach układów cyfrowych znajdziemy takie definicje bramek NOR i NAND.
Funkcja logiczna realizowana przez bramkę NOR:
Y=~(p+q)
Funkcja logiczna realizowana przez bramkę NAND:
Y=~(p*q)
Zauważmy, że po takim manewrze operatorów ujemnych NAND i NOR nie wolno mieszać z operatorami dodatnimi AND i OR ponieważ zachodzi.
Y(NAND, NOR) # Y(AND, OR)
co doskonale widać na bramkach logicznych.
Kod: |
Bramka AND i bramka NAND
p q p q
| | | |
| | | |
------- -------
| | = | |
| AND | | NAND|
------- -------
| O
| |
|Y=p*q | Y=pNANDq=~(p*q)
O O
| |
|~Y=~(p*q) |~Y=~(pNANDq)=p*q
A B
|
A - punkt odniesienia, operator AND(*)
B - punkt odniesienia, operator NAND
Oczywistym jest, że zwarcie pozornie identycznych sygnałów:
Y=Y lub ~Y=~Y
grozi wysadzeniem bramki w powietrze.
Na powyższym schemacie zachodzą tożsamości po przekątnych czyli absolutna bzdura z punktu widzenia algebry Boole’a bo wtedy mamy:
Y=~Y
czyli:
Y=p*q <=> ~Y=~(pNANDq) = p*q
Wniosek:
Można myśleć logicznie albo w operatorach dodatnich AND i OR, albo w operatorach ujemnych NAND i NOR. Mieszanie tych operatorów w jednej logice to głupota.
Punkt odniesienia, operatory dodatnie AND i OR:
Y=prawda
~Y=fałsz
Punkt odniesienia, operatory ujemne NAND i NOR:
Y=fałsz
~Y=prawda
Wróćmy do symbolicznej definicji bramki AND.
Kod: |
Tabela A
p q = Y=p*q
p q = Y
p ~q =~Y
~p ~q =~Y
~p q =~Y
|
Dla punktu odniesienia AND i OR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=1(prawda), ~Y=0(Fałsz)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia AND(*) i OR(+):
Kod: |
p q Y=p*q=~(pNANDq) ~Y=~(p*q)=pNANDq
1 1 1 0
1 0 0 1
0 0 0 1
0 1 0 1
|
stąd:
Definicja operatora AND:
Y=1 <=> p=1 i q=1
Dla punktu odniesienia NAND i NOR w tabeli A przyjmujemy:
p=1, ~p=0
q=1, ~q=0
Y=0(fałsz), ~Y=1(prawda)
Tabela zero jedynkowa iloczynu logicznego dla punktu odniesienia NAND i NOR:
Kod: |
p q Y=pNANDq=~(p*q) ~Y=~(pNANDq)=p*q
1 1 0 1
1 0 1 0
0 0 1 0
0 1 1 0
|
stąd:
Definicja operatora NAND:
Y=0 <=> p=1 i q=1
Ostatnio zmieniony przez rafal3006 dnia Wto 18:43, 25 Sie 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Śro 18:48, 12 Sie 2009 Temat postu: |
|
|
Część II Implikacja
4.0 Notacja szczególna w implikacji
W implikacji dla uproszczenia używać będziemy bezwzględnych zer i jedynek wyłącznie dla określenia prawdziwości zdania:
1 - zdanie prawdziwe
0 - zdanie fałszywe
To „uproszczenie” wynika tylko i wyłącznie z przyzwyczajeń przeciętnego człowieka do powyższego standardu. Elegancja w matematyce polega na wyprowadzeniu wzoru ogólnego i dopiero na końcu na podstawieniu danych.
Gdybyśmy w tej publikacji użyli symboli w 100% czyli zastosowali:
Y - zdanie prawdziwe
~Y - zdanie fałszywe
to otrzymalibyśmy w pełni symboliczne tabele operatorowe implikacji prostej, implikacji odwrotnej i równoważności czyli zero styczności z zerami i jedynkami.
4.1 Rodzaje implikacji
Matematycznie istnieją dwie zero-jedynkowe definicje implikacji.
Definicja implikacji prostej:
p=>q = ~p+q
Jeśli zajdzie p to „musi” => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
p~>q = p+~q
Jeśli zajdzie p to „może” ~> zajść q
p musi być konieczne dla q
4.2 O co chodzi w implikacji
Implikacja to zdanie złożone warunkowe typu „Jeśli…to…”
W dzisiejszej matematyce funkcjonuje taka definicja implikacji:
Jeśli p to q
gdzie:
p - poprzednik
q - następnik
Koniec, absolutne zero jakiegokolwiek komentarza czyli kompletnie nie wiadomo o co chodzi.
Matematycznie istnieją dwie różne tabele zero-jedynkowe implikacji.
p=>q - implikacja prosta
p~>q - implikacja odwrotna
Oczywiście dzisiejsza matematyka akceptuje fakt że:
p=>q # p~>q
Jednak z powodu fałszywej interpretacji zer i jedynek w definicjach implikacji wychodzi jej że implikacja odwrotna jest zbędna. Poprawne definicje implikacji prostej i odwrotnej są wyżej.
Ujmując rzecz całą ściśle matematycznie można udowodnić, że wszystkie operatory logiczne są zbędne za wyjątkiem jednego, NOR albo NAND … nie o to jednak chodzi.
Twierdzenie Kubusia:
W logice niezbędne są tylko i wyłącznie te operatory których człowiek używa w naturalnym języku mówionym czyli: AND(*), OR(+), implikacja prosta =>, implikacja odwrotna ~> plus negacja (~).
Powyższego zestawu operatorów nie należy ani skracać, ani też rozszerzać bo wyjdzie z tego logika-potworek nie mająca nic wspólnego z nieprawdopodobnie prostą i doskonałą, logiką człowieka.
Implikacja to przede wszystkim matematyczny opis przyszłości, dzięki niej człowiek z góry wie kiedy w przyszłości zostanie kłamcą a kiedy nie.
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Oczywiście jeśli zdam egzamin do mam gwarantowany komputer. Jeśli nie zdam to wszystko może się zdarzyć wedle „widzi mi się” czyli wolnej woli ojca … mamy rzucanie monetą.
Implikacja to również matematyczny opis przyszłości świata martwego.
Jeśli jutro będzie padać to na pewno będzie pochmurno
P=>CH
Jeśli będzie padać to na pewno będzie pochmurno. Jeśli nie będzie padać, to może być pochmurno lub nie być, wedle „wolnej woli” pogody, czyli rzucanie monetą.
Implikacja występuje również w przyrodzie i matematyce. Wszelkie twierdzenia matematyczne to równoważności, implikacja jest tu niezwykle rzadkim wyjątkiem.
Jeśli zwierzę jest psem to ma cztery łapy
Jeśli wylosowane w przyszłości zwierzę będzie psem to na pewno będzie mieć cztery łapy
P=>4L
Matematycznie to dwa równoważne zdania. Oczywiście wszystkie psy mają cztery łapy, ale jeśli wylosowane zwierzę nie będzie psem to może mieć cztery łapy (słoń) albo nie mieć czterech łap (mrówka), czyli rzucanie monetą.
Jeśli liczba jest podzielna przez 8 to jest podzielna przez 2
Jeśli wylosowana w przyszłości liczba będzie podzielna przez 8 to będzie podzielna przez 2
P8=>P2
Matematycznie to dwa równoważne zdania. Oczywiście każda liczba podzielna przez 8 jest podzielna przez 2, ale jeśli wylosowana liczba nie będzie podzielna przez 8 to może być podzielna przez 2 (2,4,6..) albo nie (3,5,7…), czyli rzucanie monetą.
Jak widać wyżej każda implikacja prosta => jest w pierwszej części zdeterminowana, tu mamy pewność, ale w drugiej części definicji to najzwyklejsze rzucanie monetą.
W implikacji odwrotnej ~> mamy dokładnie odwrotnie. Tu w pierwszej części definicji mamy przypadek czyli rzucanie monetą zaś w drugiej części mamy pewność.
Jeśli zwierzę ma cztery łapy to może być psem
Jeśli wylosowane w przyszłości zwierzę będzie mieć cztery łapy to może być psem
4L~>P
Oba zdania są matematycznie równoważne. Ta implikacja jest prawdziwa bo spełnia definicję implikacji odwrotnej ~>. Jeśli zwierzę ma cztery łapy to może być psem albo nie być (np.słoń). W pierwszej części definicji implikacji odwrotnej mamy rzucanie monetą, ale w drugiej części mamy pewność, czyli jeśli zwierzę nie ma czterech łap to na pewno nie jest psem.
Matematycznie obie implikacje, prosta => i odwrotna ~> są równie cenne bowiem w obu występuje gwarancja matematyczna.
4.3 Kubuś na tropie implikacji odwrotnej
Udajmy się do przedszkola, aby upewnić się czy dzieciaki znają algebrę Kubusia. Zadaniem dzieci będzie określenie które z wypowiedzianych zdań jest prawdziwe a które fałszywe. Zdania oczywiście będą tendencyjne, bo wymawia je Kubuś. Na początek Kubuś postanowił sprawdzić jak reagują dzieci na implikację odwrotną. Poprosił je, aby przy określaniu czy zdanie jest prawdziwe/fałszywe brały pod uwagę wyłącznie psy zdrowe, z czterema łapami.
Kubuś:
A1:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P = 1 - zdanie prawdziwe bo pies, tu żaden przedszkolak nie miał wątpliwości.
Implikacja odwrotna prawdziwa bo cztery łapy są konieczne dla psa
LUB
A2:
Jeśli zwierzę ma cztery łapy to może nie być psem
4L~~>~P = 1 - zdanie prawdziwe bo słoń, koń, kot, lis, hipopotam …. przekrzykiwały się dzieci
Kubuś:
… a jeśli zwierzę nie ma czterech łap ?
Prawo Kubusia:
4L~>P = ~4L=>~P
Dzieciaki:
A3:
Jeśli zwierzę nie ma czterech łap to na pewno nie jest psem
~4L=>~P =1 - zdanie oczywiście prawdziwe
Kubuś:
A4:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
~4L=>P = 0 - kłamstwo, fałsz, bo każdy pies ma cztery łapy … zgodnym chórem krzyknęły dzieci
Hmm … pomyślał Kubuś, dzieciaki doskonale znają matematyczną wersję implikacji odwrotnej, aby upewnić się czy to prawda, zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci ani razu nie popełniły błędu !
Zauważmy, że w zdaniu A1 cztery łapy są konieczne aby być psem, zatem jeśli zwierzę nie ma czterech łap to na pewno nie jest psem. Mamy tu bezpośredni dowód prawa Kubusia.
A1: 4L~>P= A3: ~4L=>~P
Zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) ale na pewno nie jest implikacją.
Dlaczego ?
Wyrocznią są tu prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności).
Dowód nie wprost.
Załóżmy, że zdanie A2: 4L~>~P jest implikacją odwrotną prawdziwą.
Prawo Kubusia:
A2: 4L~>~P = A4: ~4L=>P
czyli:
Jeśli zwierzę nie ma czterech łap to na pewno jest psem
A4: ~4L=>P
Zdanie A4 jest na pewno fałszywe, zatem wobec zachodzącej tożsamości implikacja A2 musi być także fałszywa, czyli nie zachodzi tu warunek konieczny.
Prawdziwość zdania A2 opisuje wzór:
(4L~>~P) +( 4L~~>~P) = 0+1=1
Implikacja odwrotna (4L~>~P) na mocy prawa Kubusia jest tu oczywiście fałszywa, ale zdanie A2 jest prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda, tu np. słoń).
4.4 Operatorowa definicja implikacji odwrotnej
Zapiszmy teraz powyższe zdania wyłącznie w postaci operatorowej, czyli przy pomocy operatorów „musi” (=>) i „może” (~> lub ~~>)
Kod: |
4L P Y=4L~>P ~Y=~(4L~>P)
4L ~> P = 1 0
4L~~>~P = 1 0
~4L=> ~P = 1 0
~4L => P = 0 1
|
gdzie:
1 - zdanie prawdziwe
0 - zdanie fałszywe
W matematyce nie operujemy na konkretnych przykładach, lecz na zapisach formalnych. Powszechnie przyjętym standardem są w implikacji literki p i q.
Jeśli p to q
p - poprzednik
q - następnik
Przepiszmy zatem powyższą tabelę podstawiając:
4L=p, P=q
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
gdzie:
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
Zauważmy, że w implikacji odwrotnej p musi być konieczne dla q, inaczej pierwsza linia definicji operatorowej jest twardym fałszem, zdanie na pewno nie jest implikacją odwrotną.
Przykład:
Jeśli zwierzę ma skrzydła to może być psem
S~>P=0
Oczywisty twardy fałsz bo skrzydła nie są warunkiem koniecznym dla psa.
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji odwrotnej .
Symboliczna definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p q = 1 0
p ~q = 1 0
~p ~q = 1 0
~p q = 0 1
|
Najprostszą definicję implikacji odwrotnej w równaniu algebry Boole’a otrzymujemy z ostatniej linii tabeli.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie ~p i zajdzie q.
~Y= ~p*q
Kiedy wystąpi prawda ?
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+).
Y=p+~q
stąd:
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y= p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Wystąpi prawda (Y=1) wtedy i tylko wtedy gdy nie zdarzy się ~(…), że zajdzie ~p i zajdzie q.
4.5 Zero-jedynkowa definicja implikacji odwrotnej
Zero jedynkowa definicja implikacji odwrotnej to w dniu dzisiejszym zabytek klasy zerowej. Wszyscy ludzie na ziemi od przedszkolaka po profesora posługują się biegle operatorową definicją implikacji odwrotnej. Nie ma potrzeby przechodzenia do zero-jedynkowej definicji implikacji odwrotnej.
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
p ~> q = 1 0
p~~>~q = 1 0
~p=> ~q = 1 0
~p => q = 0 1
|
Prawo Kubusia:
p~>q = ~p=>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja odwrotna to w pierwszej części rzucanie monetą p~>q, zaś w drugiej części pewne wynikanie ~p=>~q.
Zero-jedynkową definicję implikacji odwrotnej otrzymujemy opuszczając operatory oraz przyjmując:
p=1, ~p=0
q=1, ~q=0
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q ~Y=~(p~>q)
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Najprostsze równanie algebry Boole’a zapiszemy dla ostatniej linii bo tu w wyniku mamy samotne zero (Y=0).
Y=0 <=> p=0 i q=1
Przejście z takiego zapisu do równania algebry Boole’a możemy uzyskać na dwa sposoby.
Sposób 1
Definicja iloczynu logicznego:
Iloczyn logiczny n-zmiennych binarnych równy jest jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0, ~Y=1
p=0, ~p=1
q=1
Sprowadzamy wszystkie sygnały do jedynki i stosujemy definicję iloczynu logicznego.
~Y=~p*q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operatory na przeciwne
Y = p+~q
Sposób 2
Definicja sumy logicznej:
Suma logiczna n-zmiennych binarnych jest równa zeru wtedy i tylko wtedy gdy wszystkie zmienne są równe zeru.
Mamy:
Y=0 <=> p=0 i q=1
czyli:
Y=0
p=0
q=1,~q=0
Sprowadzamy wszystkie sygnały do zera i stosujemy definicję sumy logicznej.
Y=p+~q
Jak widać, w tym przypadku końcowe równanie implikacji odwrotnej mamy natychmiast.
Definicja implikacji odwrotnej w równaniu algebry Boole’a:
Y = p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
Powyżej ułożyliśmy równanie wyłącznie dla ostatniej linii tabeli gdzie w wyniku było samotne zero, wszelkie pozostałe linie, zgodnie z prawem Prosiaczka muszą być jedynkami niezależnie od chciejstwa człowieka … bo to jest matematyka przecież.
Prawo Prosiaczka:
Równania algebry Boole’a dla dowolnej tabeli zero-jedynkowej n-elementowej tworzymy na podstawie linii z tą samą wartością logiczną w wyniku. Wszelkie nie opisane równaniami linie przyjmą wartości przeciwne do linii opisanych.
Definicja zero-jedynkowa implikacji odwrotnej przybierze zatem postać końcową.
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=p~>q=p+~q=~(~p*q) ~Y=~(p~>q)=~[~(~p*q)]=~p*q
1 1 1 0
1 0 1 0
0 0 1 0
0 1 0 1
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie ~p i q
Wystąpi fałsz (~Y=1) jeśli zajdzie ~p i q
4.6 Gwarancja matematyczna w implikacji odwrotnej
Istotą implikacji jest gwarancja matematyczna. Poza gwarancją wszystko może się zdarzyć czyli mamy rzucanie monetą.
Gwarancją w implikacji odwrotnej jest wynikająca z prawa Kubusia implikacja prosta:
Y=p~>q = ~p=>~q
Gwarancja:
Jeśli nie zajdzie p to na pewno nie zajdzie q
~p=>~q
Przykład:
Jeśli zwierzę ma cztery łapy to może być psem
Y=4L~>P
Gwarancja:
Y=4L~>P = ~4L=>~P - prawo Kubusia
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Gwarancja dotyczy zwierząt które nie mają czterech łap, te na pewno nie są psami, poza tą gwarancją wszystko może się zdarzyć czyli jeśli zwierzę ma cztery łapy to może być psem (tu pies), lub nie być psem (np. słoń) czyli mamy tu rzucanie monetą.
Gwarancję równoważną otrzymujemy z definicji implikacji odwrotnej zapisanej w równaniu algebry Boole’a.
Definicja implikacji odwrotnej:
Y=p~>q = p+~q = ~(~p*q) - na podstawie prawa de’Morgana
stąd:
Y=4L~>P = ~(~4L*P)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę nie ma czterech łap i jest psem
Y=~(~4L*P)
Oczywiście gwarantowane zwierzaki to kura, mrówka, stonoga, wąż … - te na pewno nie są psami.
… a kiedy wystąpi fałsz ?
Negujemy powyższe równanie dwustronnie:
~Y=~4L*P
Wystąpi fałsz (~Y) jeśli zwierzę nie będzie miało czterech łap i będzie psem.
Zauważmy coś bardzo ważnego. Człowiek mając do wybory dwie równoważne gwarancje G1 i G2 praktycznie na 100% zawsze wybierze G1 bo ta jest zdecydowanie bardziej klarowna.
Wniosek:
W naturalnym języku mówionym człowiek posługuje się przede wszystkim operatorową definicją implikacji odwrotnej.
Z definicji równoważnej, zapisanej w równaniu algebry Boole’a:
p~>q = ~p=>~q = ~(~p*q)
w praktyce nikt nie korzysta, co nie oznacza że przedszkolak miałby tu jakiekolwiek kłopoty.
Jaś:
G1:
Jeśli zwierzę nie ma czterech łap to na pewno => nie jest psem
Y=~4L=>~P
Kubuś:
… a czy może się zdarzyć że zwierzę nie ma czterech łap i jest psem ?
p~>q = ~p=>~q = p+~q = ~(~p*q) - na podstawie prawa Kubusia i definicji implikacji odwrotnej
stąd:
~4L=>~P = ~(~4L*P)
Jaś:
Nie może się zdarzyć, że zwierzę nie ma czterech łap i jest psem
~(~4L*P)
Zauważmy, że przeanalizowaliśmy implikację odwrotną:
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
na wszelkie możliwe sposoby wyłącznie w symbolicznej algebrze Kubusia nie mając bezpośredniej styczności z kodem maszynowym czyli zerami i jedynkami po stronie p i q.
5.0 Kubuś na tropie implikacji prostej
Dzieci w przedszkolu są doskonałym testerem dowolnej logiki roszczącej sobie miano matematycznego opisu języka mówionego. Nowa, nieznana człowiekowi definicja implikacji odwrotnej ~> przeszła taki test bez najmniejszego problemu. Kubuś postanowił sprawdzić czy również nowa definicja implikacji prostej => przejdzie „test przedszkolaka”.
Druga wizyta Kubusia w przedszkolu.
Drogie dzieci, będę wypowiadał różne zdania o piesku i jego czterech łapach. Waszym zadaniem będzie rozstrzygnięcie czy zdanie jest prawdziwe/fałszywe. Proszę Was, abyście uwzględniali wyłącznie pieski zdrowe które mają cztery łapy.
B1:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L=1
Zdanie prawdziwe, zgodnym chórem krzyknęły dzieci, bo każdy pies ma cztery łapy.
Implikacja prosta prawdziwa bo bycie psem jest wystarczające, aby mieć cztery łapy.
B2:
Jeśli zwierzę jest psem to nie ma czterech łap
P=>~4L=0
Fałsz, kłamstwo, bo każdy pies ma cztery łapy, żaden przedszkolak nie miał tu wątpliwości
Jaś:
… a jeśli zwierzę nie jest psem ?
Prawo Kubusia:
P=>4L = ~P~>~4L
Kubuś:
B3:
Jeśli zwierzę nie jest psem to może nie mieć czterech łap
~P~>~4L=1
Prawda czy fałsz ?
Dzieci:
Prawda bo mrówka, stonoga, kura, wąż ….
lub
B4:
Jeśli zwierzę nie jest psem to może mieć cztery łapy
~P~~>4L=1
Prawda bo koń, słoń, wilk, hipopotam … przekrzykiwały się dzieci
Na wszelki wypadek by upewnić się czy nowa teoria matematyczna jest prawdziwa Kubuś zaczął wypowiadać powyższe zdania w sposób losowy.
Dzieci nie pomyliły się ani razu !
Nie ma zatem wątpliwości, symboliczna algebra Kubusia przeszła „test przedszkolaka” pomyślnie.
Zauważmy, że zdanie B4 nie może być implikacją odwrotną.
Dlaczego ?
Najprostszą wyrocznią jest tu oczywiście prawo Kubusia.
Dowód nie wprost.
Załóżmy że B4 jest implikacją odwrotną, wtedy musi być spełnione prawo Kubusia:
B4: ~P~>4L = B2: P=>~4L
Prawa strona tożsamości:
Jeśli zwierzę jest psem to na pewno => nie ma czterech łap
P=>~4L=0
Oczywisty fałsz, zatem fałszywa musi być tez implikacja po lewej stronie czyli:
B4: ~P~>4L=0
Prawdziwość zdania B4 określa wzór:
(~P~>4L)+(~P~~>4L) = 0+1 =1
gdzie:
~~> - naturalny spójnik „może”, wystarczy jedna prawda (tu np. koń), na pewno nie jest to implikacja odwrotna.
5.1 Operatorowa definicja implikacji prostej
Przepiszmy powyższy przykład wyłącznie w postaci operatorowej.
Kod: |
P 4L Y=(P=>4L) ~Y=~(P=>4L)
B1: P=> 4L = 1 0
B2: P=>~4L = 0 1
B3:~P~>~4L = 1 0
B4:~p~~>4L = 1 0
|
Prawo Kubusia:
P=>4L = ~P~>~4L
Oczywiście w matematyce nie operujemy na konkretnym przykładzie lecz na parametrach formalnych którymi w implikacji są literki p i q.
Podstawiamy zatem:
P=p i 4L=q
i otrzymujemy operatorową definicję implikacji prostej.
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
gdzie:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Po opuszczeniu operatorów w powyższej definicji otrzymujemy symboliczną definicję implikacji prostej.
Symboliczna definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p q = 1 0
p ~q = 0 1
~p ~q = 1 0
~p q = 1 0
|
Stąd dla drugiej linii zapisujemy najprostsze równanie algebry Boole’a.
Wystąpi fałsz (~Y=1) wtedy i tylko wtedy gdy zajdzie p i ~q
czyli:
~Y=p*~q
Przechodzimy do logiki przeciwnej metodą przedszkolaka negując zmienne i wymieniając operator AND(*) na OR(+):
Y=~p+q
stąd:
Definicja implikacji prostej w równaniu algebry Boole’a
Y = p=>q = ~p+q = ~(p*~q) - na podstawie prawa de’Morgana
5.2 Zero-jedynkowa definicja implikacji prostej
Operatorowa definicja implikacji prostej:
Kod: |
p q = Y=(p=>q) ~Y=~(p=>q)
p=> q = 1 0
p=>~q = 0 1
~p~>~q = 1 0
~p~~>q = 1 0
|
Prawo Kubusia:
p=>q = ~p~>~q
Zauważmy, że prawo Kubusia obowiązuje w obrębie samej definicji implikacji, zatem implikacja prosta to w pierwszej części pewne wynikanie p=>q, natomiast w drugiej części to najzwyklejsze rzucanie monetą ~p~>~q.
Po opuszczeniu operatorów w operatorowej definicji implikacji prostej i przyjęciu:
p=1, ~p=0
q=1, ~q=0
otrzymujemy …
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q Y=(p=>q)=~p+q=~(p*~q) ~Y=~(p=>q)=~[~(p*~q)]=p*~q
1 1 1 0
1 0 0 1
0 0 1 0
0 1 1 0
|
Wystąpi prawda (Y=1) jeśli nie zdarzy się ~(…), że zajdzie p i ~q
Wystąpi fałsz (~Y=1) jeśli zajdzie p i ~q
5.3 Gwarancja w implikacji prostej
Na mocy definicji gwarancją jest sama definicja implikacji prostej ….
G1:
Jeśli zwierzę jest psem to na pewno => ma cztery łapy
P=>4L
Gwarantowany zwierzak to pies, który na pewno ma cztery łapy … poza tym wszystko może się zdarzyć czyli jeśli zwierzę nie jest psem to może nie mieć czterech łap (np. mrówka) lub jeśli zwierzę nie jest psem to może mieć cztery łapy (np. słoń).
Równoważną gwarancję, lecz w praktyce nigdy nie używaną mamy z równań algebry Boole’a.
Definicja implikacji prostej w równaniu algebry Boole’a.
Y = p=>q = ~p~>~q =~p+q = ~(p*~q) - na podstawie prawa de’Morgana
stąd:
P=>4L = ~P~>~4L = ~(P*~4L)
czyli:
G2:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap
~(P*~4L)
Gwarantowany zwierzak to pies, poza tym wszystko może się zdarzyć.
Oczywiście nie oznacza to że przedszkolak będzie miał jakiekolwiek problemy z wypowiedzeniem gwarancji G2 … jeśli się go do tego zmusi.
Jaś:
Jeśli zwierze jest psem to na pewno ma cztery łapy
P=>4L
Kubuś:
… a czy może się zdarzyć że zwierze jest psem i nie ma czterech łap ?
P=>4L = ~(P*~4L) - na mocy definicji implikacji prostej
Jaś:
Nie może się zdarzyć ~(…), że zwierzę jest psem i nie ma czterech łap.
6.0 Fundamenty algebry Boole’a
Matematycznym fundamentem algebry Boole’a jest definicja iloczynu kartezjańskiego i pojęcie funkcji.
6.1 Iloczyn kartezjański i pojęcie funkcji
W drugiej klasie szkoły podstawowej Pani na kartkówce zadała uczniom napisanie tabliczki mnożenia do 100. Wszystkie dzieci zrobiły to w sposób uporządkowany, łatwy do sprawdzenia. Jedynie dowcipny Jaś oddał kartkę pozornie bez sensu, bo poszczególne działania poustawiane były w sposób losowy, taki groch z kapustą.
Jak sprawdzić czy Jaś wykonał poprawnie zadanie ?
Oczywiście należy wykreślać po kolei jedno działanie z kartki uporządkowanej, odszukać identyczne w Jasiowym bałaganie i też je skreślić. Jeśli na końcu okaże się że Jaś zapisał wszystkie działania poprawnie i żadnego nie brakuje to Jaś wykonał zadanie poprawnie, powinien dostać 6 za fajny dowcip.
Ogólnie na obu kartkach z tabliczką mnożenia może być dowolny bałagan byleby zawierały wszystkie mnożenia do 100, co wynika z definicji iloczynu kartezjańskiego i pojęcia funkcji. Zobaczmy to na przykładzie budując tabelę mnożenia do dziewięciu.
6.2 Funkcja iloczynu algebraicznego
Iloczynem kartezjańskim zbiorów A = {1, 2, 3} i B = {1, 2, 3} jest zbiór C = AxB składający się z par liczb (a,b), gdzie a jest liczbą ze zbioru A, zaś b jest liczbą ze zbioru B. Innymi słowy, zbiór C wygląda tak: C = {(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}. Wobec tego zadanie, jakie otrzymały dzieci, polegało na tym, żeby każdemu elementowi iloczynu kartezjańskiego zbiorów A i B przyporządkować liczbę całkowitą równą iloczynowi algebraicznemu liczb zawartych w tym elemencie.
Oznaczmy:
* - matematyczny operator iloczynu algebraicznego, funkcja mnożenia algebraicznego (nie mylić z iloczynem logicznym AND !)
Kod: |
a b a*b
1*1 =1
1*1 =2
1*3 =3
2*1 =2
2*2 =4
2*3 =6
3*1 =3
3*2 =6
3*3 =9 |
Jest oczywistym, że linie można dowolnie poprzestawiać i dalej będzie to tabela mnożenia do 9 czyli znajdziemy w niej wynik dowolnego mnożenia.
Pary liczb po lewej stronie znaku „=” tworzą zbiór będący iloczynem kartezjańskim dwóch zbiorów liczb, z których każdy zawiera liczby od 1 do 3, zaś po prawej stronie znaku „=” mamy liczby ze zbioru liczb od 1 do 9, stanowiące wynik odwzorowania tego iloczynu kartezjańskiego (czyli zbioru) w zbiór liczb całkowitych od 1 do 9. Jako ciekawostkę można zauważyć, że niektóre liczby w wyniku pojawiają się tylko jeden raz (1,4,9), niektóre pojawiają się dwukrotnie (2,3,6), a niektóre nie pojawiają się w ogóle (np. liczba 5,7,8). Każdej parze liczb z lewej strony „=” odpowiada jednak tylko jedna liczba z prawej strony „=” (każde mnożenie algebraiczne ma tylko jeden prawidłowy wynik) - takie jednoznaczne odwzorowanie jednego zbioru w drugi zbiór nazywa się funkcją.
Zauważmy, że funkcja iloczynu algebraicznego „*” jest przemienna tzn. można zamieniać argumenty i wynik nie ulegnie zmianie.
a*b = b*a
6.3 Funkcja iloczynu logicznego AND(*)
Weźmy teraz algebrę Boole’a gdzie znane są wyłącznie cyfry 0 i 1. Mamy tu dwa zbiory A=(0,1) i B=(0,1) bo inne cyfry są nielegalne. Iloczyn kartezjański tych zbiorów to C={(0,0), (0,1), (1,0), (1,1)}.
Oczywiście pary cyfr ze zbioru C można dowolnie przestawiać.
Definicja iloczynu logicznego (funkcja logiczna):
Iloczyn logiczny jest równy jeden wtedy i tylko wtedy gdy wszystkie zmienne są równe jeden
Tabela zero-jedynkowa iloczynu logicznego:
Kod: |
Tabela A
p q p*q
1 1 =1
1 0 =0
0 0 =0
0 1 =0 |
gdzie:
* - operator iloczynu logicznego AND(*), funkcja logiczna.
W iloczynie logicznym zachodzi przemienność argumentów
Czyli:
p*q=q*p
Dowód formalny:
Zamieniamy p i q miejscami.
Kod: |
Tabela B
q p q*p
1 1 =1
0 1 =0
0 0 =0
1 0 =0 |
Identyczność kolumn wynikowych tabel A i B jest dowodem przemienności iloczynu logicznego:
p*q = q*p
6.4 Algebra Boole’a i prawo przemienności
Wyżej udowodniliśmy, iż operator iloczynu logicznego AND(*) jest przemienny. Sprawdźmy teraz pozostałe kluczowe operatory (pkt.1.3) czyli te, które człowiek używa w naturalnym języku mówionym.
Kod: |
p q p+q q+p p=>q q=>p p~>q q~>p p<=>q q<=>p
1 1 1 1 1 1 1 1 1 1
1 0 1 1 0 1 1 0 0 0
0 0 0 0 1 1 1 1 1 1
0 1 1 1 1 0 0 1 0 0
|
p=>q=0 <=> p=1 i q=0
p~>q=0 <=> p=0 i q=1
Doskonale widać, że operatory OR(+) i <=> są przemienne, natomiast operatory implikacji nie są przemienne bo kolumny wynikowe są różne:
p=>q # q=>p
p~>q # q~>p
Oczywistym jest, że implikacja jest implikacją prawdziwą wtedy i tylko wtedy gdy spełnia odpowiednią tabelę zero-jedynkową.
Wynika z tego że:
Jeśli p=>q=1 to q=>p=0
Jeśli p~>q=1 to q~>p=0
… bo to jest algebra Boole’a.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Brak przemienności argumentów w implikacji przenosi się oczywiście na brak przemienności implikacyjnej sumy logicznej wynikającej z odpowiednich definicji.
p=>q = ~p+q # q+~p = q~>p
p~>q = p+~q # ~q+p = q=>p
6.5 Prawa Kubusia
Jako pierwszy prawa Kubusia zapisał i udowodnił metodą zero-jedynkową Kubuś po wielomiesięcznych zmaganiach z matematyczną obsługą wszelkich gróźb i obietnic. Właśnie w tym obszarze po raz pierwszy prawa Kubusia zaczęły fenomenalnie działać. To był jednak dopiero początek wojny o całkowite rozszyfrowanie implikacji.
Dowód prawa Kubusia metoda zero-jedynkową.
Definicja implikacji prostej:
Kod: |
p q p=>q
1 1 1
1 0 0
0 0 1
0 1 1
|
p=>q=0 wtedy i tylko wtedy gdy p=1 i q=0
Definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 1
1 0 1
0 0 1
0 1 0
|
p~>q=0 wtedy i tylko wtedy gdy p=0 i q=1
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>.
Dowód metodą zero-jedynkową:
Kod: |
p q p=>q ~p ~q ~p~>~q
1 1 1 0 0 1
1 0 0 0 1 0
0 0 1 1 1 1
0 1 1 1 0 1
|
Równość kolumn wynikowych trzeciej i ostatniej jest dowodem poprawności prawa Kubusia.
Najbardziej elegancki dowód praw Kubusia zaprezentował Wuj Zbój:
A.
p=>q = ~p+q - definicja implikacji prostej
p~>q = p+~q - definicja implikacji odwrotnej
Prawo Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
Dla prawej strony korzystamy z definicji implikacji odwrotnej:
B.
~p~>~q = (~p)+~(~q) = ~p+q
bo:
~(~q)=q - prawo podwójnego przeczenia
Prawe strony równań A i B są identyczne zatem prawo Kubusia jest prawdziwe.
CND
Jako ostatni, metodą nie wprost, udowodnił prawa Kubusia Zbanowany Uczy.
6.6 Prawo Kłapouchego
Prawo Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawa Kubusia, prawdziwe wyłącznie w implikacji (fałszywe w równoważności) to wyrocznia rozstrzygająca czy zdanie „Jeśli…to…” jest implikacją.
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany implikacji prostej => na równoważną implikację odwrotną ~>
p~>q = ~p=>~q - prawo zamiany implikacji odwrotnej ~> na równoważną implikację prostą =>
Operatorowa definicja implikacji prostej:
Kod: |
Tabela A
p q = Y=p=>q
p=> q = 1
p=> ~q = 0
~p~> ~q = 1
~p~~> q = 1
|
Prawo Kubusia:
p=>q = ~p~>~q
Jak widać, w pierwszej części definicji mamy pewne wynikanie p=>q, natomiast w drugiej części mamy najzwyklejsze rzucanie monetą ~p~>~q.
Po stronie ~p może zajść:
~p~>~q
lub
~p~~>q
czyli:
~p=>(~q+q)
Jeśli zajdzie ~p to na pewno => zajdzie ~q lub q
Oczywiście:
~q+q =1 - prawo algebry Boole’a
Ostatnie zdanie jest tautologią, czyli wiem, że nic nie wiem.
Zgodnie z definicją iloczynu kartezjańskiego i pojęciem funkcji linie w powyższej tabeli możemy sobie dowolnie przestawiać. Przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji odwrotnej dla parametrów ~p i ~q.
Kod: |
Tabela B
~p ~q = Y=~p~>~q
~p~> ~q = 1
~p~~> q = 1
p=> q = 1
p=> ~q = 0
|
Prawo Kubusia:
~p~>~q = p=>q
Tabela A i tabela B to jedna i ta sama tabela bo linie wolno nam dowolnie przestawiać. Tabela B to definicja implikacji odwrotnej (tabela C) dla parametrów ~p i ~q.
Z matematyką się nie dyskutuje
Prawa Kubusia:
p=>q = ~p~>~q
p~>q = ~p=>~q
Tam gdzie mamy operator => tam mamy pewne wynikanie matematyczne, warunek wystarczający.
Tam gdzie mamy operator ~> mamy rzucanie monetą, warunek konieczny
Tożsamość to tożsamość, jak kto obali matematykę to wtedy może twierdzić że pewne wynikanie => w implikacji jest lepsze od „rzucania monetą” czyli ~>.
Twierdzenie:
W prawach Kubusia implikacje po obu stronach tożsamości mają IDENTYCZNĄ wartość matematyczną.
CND
Zero-jedynkową definicję implikacji prostej otrzymujemy z tabeli A opuszczając operatory i przyjmując:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Dokładnie to samo rozumowanie możemy powtórzyć dla implikacji odwrotnej
Operatorowa definicja implikacji odwrotnej:
Kod: |
Tabela C
p q = Y=p~>q
p ~> q = 1
p~~>~q = 1
~p=> ~q = 1
~p => q = 0
|
Prawo Kubusia:
p~>q = ~p=>~q
W implikacji odwrotnej w pierwszej części mamy rzucanie monetą p~>q, natomiast w drugiej mamy pewne wynikanie ~p=>~q.
W pierwszej części mamy tautologię:
p~>q =1
LUB
p~~>~q=1
czyli:
p=>(q+~q)
bo:
q+~q=1
Jeśli zajdzie p to na pewno => zajdzie q lub ~q, czyli wiem, że nic nie wiem.
Tu również linie w powyższej definicji możemy dowolnie przedstawiać, przestawmy dwie pierwsze z dwoma ostatnimi.
Operatorowa tabela implikacji prostej dla parametrów ~p i ~q.
Kod: |
Tabela D
~p ~q = Y=~p=>~q
~p=> ~q = 1
~p => q = 0
p ~> q = 1
p~~>~q = 1
|
Prawo Kubusia:
~p=>~q = p~>q
Tabela C i D to jedna i ta sama tabela bo linie możemy dowolnie przestawiać. Tabela D to definicja implikacji prostej (Tabela A) dla parametrów ~p i ~q.
Dla tabeli C przyjmujemy:
p=1, ~p=0
q=1, ~q=0
stąd:
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
Podsumowanie:
W dowolnej implikacji, prostej => lub odwrotnej ~> mamy w jednej połówce pewne wynikanie matematyczne =>, natomiast w drugiej połowie mamy do czynienia z najzwyklejszym rzucaniem monetą ~>, z tego względu implikacja jest bezsensem w świecie techniki.
Wniosek:
Implikacja prosta => nie może istnieć bez implikacji odwrotnej ~> i odwrotnie.
6.7 Implikacja w bramkach logicznych
Kod: |
p q p q p q p q p q
| | | | | | | | | |
| | O O | | O O | |
| | |~p |~q | | |~p |~q | |
------- ------- ------- ------- -------
|O => | # |O => | = | ~> O| # | ~> O| = |O => |
|OR | |OR | |OR | |OR | |OR |
------- ------- ------- ------- -------
| | | | |
A B C D E
p=>q ~p=>~q p~>q ~p~>~q p=>q
|
gdzie:
O - w technice cyfrowej kółko jest symbolem negacji
Układ A.
Definicja implikacji prostej:
p=>q = ~p+q
Stąd bramka logiczna implikacji prostej to układ scalony OR z zanegowaną w środku układu linią p.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy niezanegowaną linię q.
Układ C:
Definicja implikacji odwrotnej:
p~>q = p+~q
stąd bramka implikacji odwrotnej to układ scalony OR z zanegowaną w środku linią q.
Definicja sprzętowa:
Stojąc na przewodzie p (punkt odniesienia) widzimy zanegowana linie q.
Startujemy od bramki implikacji prostej p=>q, układ A.
Na schemacie B wprowadzamy po jednej negacji w linie wejściowe p i q. Oczywiście bramki A i B będą różne bo wprowadziliśmy tylko po jednej negacji.
p=>q=~p+q (układ A) # ~p=>~q (układ B) = ~(~p)+(~q) = p+~q = p~>q (układ C) - na mocy definicji bramki p~>q
Układ C jest identyczny jak układ B, bowiem nie wprowadziliśmy tu żadnych zewnętrznych negacji. Sztuczka polega na tym, że negacje w układzie B wpychamy do środka układu scalonego. Negacja w linii p zniknie na mocy prawa podwójnego przeczenia p=~(~p), pojawi się natomiast negacja w linii q bo tu uprzednio nie było żadnej negacji. Na mocy definicji bramka C to po prostu dziewicza definicja implikacji odwrotnej. Doskonale to również widać w przekształceniach matematycznych wyżej.
Startujemy teraz od bramki implikacji odwrotnej p~>q, układ C
Na schemacie D wprowadzamy po jednej negacji w linie p i q. Oczywiście układ ulegnie zmianie w stosunku do układu C.
p~>q = p+~q (układ C) # ~p~>~q (układ D) = (~p)+~(~q) = ~p+q = p=>q (układ E) - na mocy definicji bramki p=>q
Układ E jest identyczny jak układ D bowiem nie wprowadziliśmy tu żadnej zewnętrznej negacji. Nasza stara sztuczka to wepchnięcie zewnętrznych negacji z układu D do środka układu scalonego E. Tym razem zniosą się negacje w linii q na mocy prawa podwójnego przeczenia q=~(~q), oczywiście pojawi się negacja w linii p bo tu nic nie było przed przekształceniem.
Zauważmy, że w sumie poczynając od układu A wprowadziliśmy po dwie negacje w linie wejściowe. Taki układ nie ma prawa ulec zmianie na mocy prawa podwójnego przeczenia A=~(~A) co widać na schemacie. Oczywiście układ A = układ E.
6.8 Kwadrat logiczny implikacji
Kwadrat logiczny implikacji w wersji z parametrami formalnymi:
Kod: |
p=>q=~p+q p~>q=p+~q
~p~>~q=~p+q ~p=>~q=p+~q
|
Oczywiście w pionach mamy tu prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~>na =>
Między pionami nie zachodzą żadne zależności matematyczne co widać w prawych stronach tożsamości. Zapiszmy teraz kwadrat logiczny dla naszego sztandarowego przykładu o piesku i jego czterech łapach.
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Jeśli zwierzę ma cztery łapy to może być psem
4L~>P
Stąd otrzymujemy kwadrat logiczny dla konkretnego przykładu:
Kod: |
p=>q =~p+q p~>q=p+~q
P=>4L=~P+4L 4L~>P=4L+~P
~p~>~q=~p+q ~p=>~q=p+~q
~P~>~4L=~P+4L ~4L=>~P=4L+~P
|
Kubuś celowo pozostawił zapis formalny, abyśmy zauważyli coś bardzo ciekawego.
Zauważmy, że dla zapisu formalnego mamy:
p=>q=~p+q # p~>q=p+~q
natomiast dla zapisu aktualnego:
P=>4L=~P+4L # 4L~>P=4L+~P
Mamy tu zatem inne znaczenie parametrów formalnych p i q po lewej i prawej stronie nierówności.
Lewa strona:
p=P i q=4L
Prawa strona:
p=4L i q=P
O implikacji prostej prawdziwej decyduje warunek wystarczający między podstawą a strzałką wektora =>, natomiast o implikacji odwrotnej prawdziwej decyduje warunek konieczny między podstawą a strzałką wektora ~>.
Literki p i q są tu wstawiane prawidłowo na mocy odpowiednich definicji.
Definicja implikacji prostej:
P=>4L
p=>q
Jeśli zajdzie p to musi => zajść q
p musi być wystarczające dla q
Definicja implikacji odwrotnej:
4L~>P
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
CND
Algebra Boole’a to nie algebra dziesiętna, reguły rządzące tymi algebrami nie muszą pokrywać się w 100%.
6.9 Równoważność
Dziewicza tabela zero-jedynkowa równoważności:
Kod: |
p q p<=>q
1 1 1
1 0 0
0 0 1
0 1 0
|
Z tabeli zero-jedynkowej widać, że równoważność jest przemienna, czyli wszystko jedno którą cześć zdania nazwiemy p a którą q.
Algebra Kubusia to algebra symboliczna. W implikacji przeszliśmy z naturalnego języka mówionego do definicji operatorowej po czym do definicji symbolicznej na końcu lądując w tabeli zero-jedynkowej. Tym razem zrobimy dokładnie odwrotnie.
Przechodzimy z powyższą tabelą do symbolicznej definicji równoważności przyjmując:
p=1, ~p=0
q=1, ~q=0
Symboliczna definicja równoważności:
Kod: |
p q p<=>q
p q 1
p ~q 0
~p ~q 1
~p q 0
|
Dla linii z jedynkami w wyniku układamy równanie algebry Boole’a
Definicja równoważności w równaniu algebry Boole’a:
A: p<=>q = p*q+~p*~q
Bardzo łatwo udowodnić poprawność równoważnych definicji równoważności, wynikających z przemienności argumentów oraz powyższej definicji:
B:~p<=>~q
C:q<=>p
D:~q<=>~p
Udowodnimy tylko B bo pozostałe dowody są analogiczne.
Korzystamy z definicji równoważności A:
E: ~p<=>~q = (~p)*(~q) + ~(~p)*~(~q) = ~p*~q + p*q = p*q + ~p*~q
Prawe strony równań A: i E: są identyczne, zatem są to równoważne definicje.
Z pierwszej linii definicji symbolicznej widać, że jeśli zajdzie p to „musi” => zajść q bo druga linia tabeli jest fałszem. Podobnie z trzeciej linii widać, że jeśli zajdzie ~p to „musi” => zajść ~q bo ostatnia linia jest fałszem.
Stąd pełna definicja operatorowa równoważności przybierze postać:
Kod: |
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
Mamy tu zatem doskonale nam znane z definicji implikacji warunki wystarczające zachodzące między p i q oraz między ~p i ~q.
Stąd operatorowa definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) =1*1 =1
gdzie:
p=>q - warunek wystarczający między p i q, nigdy implikacja prosta p=>q
~p=>~q - warunek wystarczający między ~p i ~q, nigdy implikacja prosta ~p=>~q
Dlaczego powyższe zapisy nie mogą być implikacją ?
Wynika to z prawa Kłapouchego:
Zdanie „Jeśli…to…” jest implikacją wtedy i tylko wtedy gdy spełnione jest prawo Kubusia
Prawo Kubusia dla powyższej tabeli:
p=>q = ~p~>~q
czyli w implikacji musi zachodzić warunek konieczny między ~p i ~q, natomiast w równoważności między ~p i ~q zachodzi warunek wystarczający.
Przykład:
Jeśli zwierzę jest psem to ma cztery łapy
P=>4L
Bycie psem jest wystarczające aby mieć cztery łapy, zatem jest to implikacja prosta prawdziwa
Definicja operatorowa dla powyższego zdania:
Kod: |
P=>4L =1
P=>~4L=0
~P~>~4L=1
~P~~>4L=1
|
Aby w powyższej tabeli ostatnia linia wyzerowała się, musiałaby być prawdziwa implikacja prosta:
~P=>~4L
czyli:
Jeśli zwierzę nie jest psem to na pewno => nie ma czterech łap
~p=>~4L=0 - oczywisty fałsz bo słoń
Zatem równoważność nie może być iloczynem dwóch implikacji prostych p=>q i ~p=>~q bo takowe są niemożliwe do zaistnienia.
Można to udowodnić jeszcze prościej ….
Oczywistym jest na podstawie definicji implikacji prostej => że:
p=>q=~p+q # ~p=>~q= ~(~p)+(~q) = p+~q
To jest algebra Boole’a, zatem:
Jeśli implikacja prosta p=>q=1 to implikacja prosta ~p=>~q=0 bo:
p=>q # ~p=>~q
Stąd definicja równoważności nie może być iloczynem logicznym dwóch implikacji prostych bo:
p<=>q = (p=>q)*(~p=>~q) = 1*0=0
Wniosek:
Twierdzenie co niektórych dzisiejszych matematyków jakoby równoważność była iloczynem dwóch implikacji prostych można między bajki włożyć.
CND
Dowód nie wprost:
Zauważmy, że gdyby to była prawda matematyczna to przekształcenia musiałyby być odwracalne, czyli dowolną równoważność można by rozbić na dwie implikacje proste, co jest oczywistą bzdurą. Kamikaze mogą próbować.
6.10 Kwadrat logiczny równoważności
Narysujmy kwadrat logiczny równoważności analogiczny do kwadratu logicznego implikacji.
Kod: |
A1: p=>q=1 B1: q=>p=1
A2: ~p=>~q=1 B2: ~q=>~p=1
|
Argumenty w równoważności są przemienne, zatem wszystko jedno którą część zdania nazwiemy p a którą q. Tu możemy na stałe przywiązać p do jednej strony równoważności, zaś q do drugiej.
Stąd zapisy: p=>q i q=>p.
Oczywiście we wszystkich rogach kwadratu równoważności mamy twarde jedynki wynikające ze spełnionego warunku wystarczającego (to nie są implikacje!), zatem:
p=>q = q=>p = ~p=>~q = ~q=>~p
Stąd mamy znane w matematyce prawo kontrapozycji:
p=>q = ~q=>~p
Prawo kontrapozycji jest poprawne w równoważności i fałszywe w implikacji (dowód pkt.1.6)
Prawa Kubusia są poprawne w implikacji i fałszywe w równoważności
Definicja równoważności to iloczyn logiczny warunków wystarczających (nie implikacji !) wzdłuż dowolnego boku kwadratu logicznego równoważności.
Najpopularniejsze definicje to:
A.
p<=>q = (p=>q)*(~p=>~q)
B.
p<=>q = (p=>q)*(q=>p)
Definicja B wynika z A bo prawo kontrapozycji poprawne w równoważności:
~p=>~q = q=>p
Dowód:
p=>q = ~p+q - definicja implikacji prostej
~p=>~q = ~(~p)+(~q) = p+~q = ~q+p = q=>p
W równoważności zachodzi przemienność argumentów która przenosi się na przemienność argumentów w sumie logicznej czyli:
p+~q = ~q+q
7.0 Kodowanie zdań ze spójnikiem „Jeśli…to…”
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Kodowanie zdań ze spójnikiem „Jeśli…to…”:
Implikacja prosta:
p=>q
Jeśli zajdzie p to na pewno => zajdzie q
p musi być wystarczające dla q
Stwierdzenie warunku wystarczającego w p=>q determinuje zdanie prawdziwe które może być:
1.
Implikacją prostą p=>q jeśli po stronie ~p stwierdzimy warunek konieczny czyli:
~p~>~q
Czasami prościej jest wykluczyć warunek wystarczający w stronę ~p=>~q, to wystarczy aby udowodnić że zdanie p=>q jest implikacją prostą.
2.
Równoważnością p<=>q, gdy po stronie ~p również stwierdzimy warunek wystarczający czyli
~p=>~q.
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q)=1*1=1
3.
Jeśli zdanie jest implikacją prostą to w stronę p=>q zachodzi warunek wystarczający, natomiast w stronę q~>p musi zachodzić warunek konieczny. Jeśli w stronę q=>p stwierdzimy warunek wystarczający to zdanie jest na pewno równoważnością, nigdy implikacją.
Definicja równoważna równoważności:
p<=>q = (p=>q)*(q=>p) = 1*1=1
Stąd mamy kolejną możliwość stwierdzenia czy zdanie jest implikacją. Po stwierdzeniu warunku wystarczającego w stronę p=>q wystarczy wykluczyć warunek wystarczający w stronę q=>p.
Implikacja odwrotna:
p~>q
Jeśli zajdzie p to może ~> zajść q
p musi być konieczne dla q
Stwierdzenie warunku koniecznego w p~>q determinuje implikację odwrotną:
p~>q
ale ….
Zdanie może być prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jedna prawda) i nie być implikacją odwrotną np.
Jeśli liczba jest podzielna przez 8 to może ~~> być podzielna przez 3
P8~~>P3 =1 bo 24
P8 nie jest konieczne dla P3 bo 3, nie jest to zatem implikacja odwrotna.
Koniec, to jest cała filozofia kodowania zdań ze spójnikiem „Jeśli…to…”
Zauważmy coś bardzo ciekawego.
A.
Jeśli trójkąt ma boki równe to na pewno => jest równoboczny
BR=>R =1
B.
Jeśli trójkąt nie ma boków równych to na pewno => nie jest równoboczny
~BR=>~R =1
Stąd na podstawie definicji równoważności możemy zapisać:
C.
Trójkąt ma boki równe wtedy i tylko wtedy gdy jest równoboczny
BR<=>R = (BR=>R)*(~BR=>~R) = 1*1=1 - ewidentna równoważność
Aby stwierdzić równoważność musimy zapisać i zbadać czy zachodzą warunki wystarczające jak wyżej w A i B. Wszystkie trzy zdania są matematycznie poprawne bowiem w definicji równoważności chodzi tylko i wyłącznie o warunki wystarczające, nigdy o implikacje (dowód pkt. 6.9)
Zauważmy, że gdybyśmy nie mieli prawa zapisać zdań A i B jako prawdziwych to niemożliwe byłoby stwierdzenie równoważności !
W zdaniach A, B i C nie ma niejednoznaczności bo:
1.
Fizycznie niemożliwym jest zrobienie implikacji z równoważności (zdania A i B) i odwrotnie (dowód pkt. 6.9)
2.
Twierdzenia matematyczne zwykle ujęte są w spójnik „Jeśli…to…”, pomimo że praktycznie 100% twierdzeń to równoważności. W twierdzeniach matematycznych spójnik „Jeśli…to…” jest domyślną równoważnością.
3.
Zdania A, B i C można zakodować superprecyzyjnie jako:
BR<=>R
To jest oczywistość mimo zapisania jej w formie A lub B.
Wniosek:
Zdanie „Jeśli … to …” może być implikacją prostą, implikacją odwrotną lub równoważnością co zależy od treści zdania.
Inny przykład:
Twierdzenie Pitagorasa.
Jeśli trójkąt jest prostokątny to suma kwadratów przyprostokątnych jest równa kwadratowi przeciwprostokątnej.
TP=>SK =1 - pewny warunek wystarczający (nie implikacja !)
Jeśli trójkąt nie jest prostokątny to nie jest spełniona suma kwadratów.
~TP=>~SK=1 - również pewny warunek wystarczający
Twierdzenie Pitagorasa jest równoważnością bo:
TP<=>SK = (TP=>SK)*(~TP=>~SK) = 1*1 =1
Aby stwierdzić czy zdanie „Jeśli…to…” jest równoważnością musimy stwierdzić warunki wystarczające jak wyżej. Wtedy i tylko wtedy zdanie jest równoważnością.
Wynika z tego, że ten sam symbol => może oznaczać implikacje prostą albo warunek wystarczający =>.
Więcej na temat tego problemiku tu:
Nadmierna precyzja
7.1 Prawo Tygryska
Definicja równoważności:
p<=>q = (p=>q)*(~p=>~q) = (p=>q)*(q=>p)
Prawo Tygryska:
Zdanie „Jeśli…to…” jest równoważnością wtedy i tylko wtedy gdy zachodzą warunki wystarczające między p=>q i ~p=>~q lub między p=>q i q=>p, nie są to implikacje.
Wynika to bezpośrednio z prawa Kłapouchego (pkt.6.6) i definicji równoważności (pkt.6.9).
Przykład wyżej.
8.0 Obietnice i groźby
Jednym z przykładów zastosowania implikacji prostej i odwrotnej jest matematyczna obsługa obietnic i gróźb.
8.1 Obietnice
Definicja obietnicy:
Jeśli dowolny warunek to nagroda
W=>N =1 - twarda prawda
Implikacja prosta bo dobrowolnych obietnic musimy dotrzymywać
Spełnienie warunku nagrody jest warunkiem wystarczającym dla otrzymania nagrody
Gwarancja w obietnicy:
Jeśli spełnię warunek nagrody to na pewno => dostanę nagrodę z powodu spełnienia warunku nagrody. Poza tym wszystko może się zdarzyć.
Przykład:
A:
Jeśli będziesz grzeczny dostaniesz czekoladę
G=>C =1 - twarda prawda
B:
Jeśli będziesz grzeczny nie dostaniesz czekolady
G=>~C =0 - twardy fałsz
… a jeśli nie będę grzeczny ?
Prawo Kubusia:
G=>C = ~G ~>~C
C:
Jeśli nie będziesz grzeczny to nie dostaniesz czekolady
Matematycznie oznacza to:
Jeśli nie będziesz grzeczny to „możesz” ~> nie dostać czekolady
~G~>~C =1
Implikacja odwrotna prawdziwa bo bycie niegrzecznym jest warunkiem koniecznym nie dostania czekolady. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca zgodnie ze swoim „widzi mi się” czyli wolna wolą.
LUB
D:
Jeśli nie będziesz grzeczny to możesz dostać czekoladę
~G~~>C =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~> (wystarczy jeden taki przypadek)
Prawdziwość zdania D określa wzór:
(~G~~>C)+(~G~>C) = 1+0=1
gdzie:
~G~>C=0 - implikacja odwrotna fałszywa
~G~~>C=1 - nadawca ma prawo do wręczenia nagrody mimo nie spełnienia warunku nagrody (akt miłości)
Dlaczego zdanie D nie może być implikacją odwrotną ?
Dowód nie wprost;
Załóżmy że zdanie D: ~G~>C jest implikacją odwrotną, obowiązują zatem prawa Kubusia.
~G~>C = G=>~C
Prawa strona jest twardym fałszem na mocy B:, zatem zdanie D: nie może być implikacją odwrotną
CND
Uwaga:
W groźbach (zdanie C) naturalny spójnik implikacji odwrotnej „może” jest pomijany gdyż osłabiałby groźbę. Nie prowadzi to do niejednoznaczności gdyż wszystko co żyje musi odróżniać nagrodę od kary, to warunek przetrwania.
Jedyne sensowne przejście z operatora implikacji prostej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli będziesz grzeczny dostaniesz czekoladę
Y=G=>C
Jaś:
….mama a kiedy będziesz kłamczuchą ?
Y=G=>C = ~G+C = ~(G*~C) - dotrzymam słowa
czyli:
~Y=~(G=>C) = G*~C - skłamię
Synku, skłamię (~Y=1) jeśli będziesz grzeczny i nie dostaniesz czekolady.
~Y=G*~C
Jaś:
Mama, a czy może się zdarzyć, że będę grzeczny i nie dostanę czekolady ?
Negujemy powyższe równanie dwustronnie:
Y=~(G*~C)
Nie może się zdarzyć że będziesz grzeczny i nie dostaniesz czekolady
~(G*~C)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.2 Groźby
Definicja groźby:
Jeśli dowolny warunek to kara
W~>K =1
Implikacja odwrotna bo nadawca może ukarać, ale nie musi.
Spełnienie warunku kary jest warunkiem koniecznym ukarania z powodu spełnienia warunku kary. O tym czy będzie to warunek konieczny i wystarczający decyduje nadawca.
Gwarancja w groźbie wynika z prawa Kubusia:
W~>K = ~W => ~K
Stąd gwarancja:
~W => ~K
Jeśli nie spełnię warunku kary to na pewno => nie zostanę ukarany z powodu nie spełnienia warunku kary. Poza tym wszystko może sie zdarzyć.
W groźbie nadawca ma nadzieję (marzenie), że odbiorca nie spełni warunku kary i nie będzie musiał karać. Jeśli odbiorca spełni warunek kary to nadawca może wykonać karę lub ją darować zgodnie ze swoim „widzi mi się”, czyli wolną wolą.
Po stronie odbiorcy również występuje nadzieja (marzenie), że nawet jeśli spełni warunek kary to nadawca nie wykona kary (akt łaski). W groźbie decyzję o darowaniu kary podejmuje wyłącznie nadawca, odbiorca nie ma tu nic do powiedzenia.
Przykład:
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L - implikacja odwrotna bo groźba
W groźbach naturalny spójnik implikacji odwrotnej „może” ~> jest z reguły pomijany bo osłabiałby groźbę. Nie prowadzi to do niejednoznaczności, gdyż definicje groźby i obietnicy są bardzo proste i precyzyjne.
Analiza:
A:
Jeśli ubrudzisz spodnie to możesz ~> dostać lanie
B~>L =1
LUB
B:
Jeśli ubrudzisz spodnie to możesz nie dostać lania
B ~~> ~L =1 - zdanie prawdziwe na mocy naturalnego spójnika „może” ~~>, nie jest to implikacja odwrotna.
… a jeśli nie ubrudzę spodni ?
B~>L = ~B => ~L - prawo Kubusia
C:
Jeśli nie ubrudzisz spodni to na pewno => nie dostaniesz lania
~B => ~L =1 - twarda prawda (gwarancja)
LUB
D:
Jeśli nie ubrudzisz spodni to na pewno => dostaniesz lania
~B => L =0 - twardy fałsz
Dlaczego zdanie B nie może być implikacja odwrotną ?
Dowód nie wprost:
Załóżmy że zdanie B: B~>~L jest implikacja odwrotną.
Obowiązuje wówczas prawo Kubusia:
B: B~>~L = D: ~B=>L
Zdanie D: jest oczywistym fałszem, zatem zdanie B nie może być implikacją odwrotną prawdziwą.
Prawdziwość zdania B: określa wzór:
(B~~>~L)+(B~>~L) = 1+0 =1
B~~>~L - nadawca ma prawo do darowania dowolnej kary (akt łaski)
Jedyne sensowne przejście z operatora implikacji odwrotnej do implikacyjnych AND(*) i OR(+) to odpowiedź na pytanie dziecka „kiedy wystąpi kłamstwo”:
Jeśli ubrudzisz spodnie dostaniesz lanie
Y=B~>L
Jaś:
… tata, a kiedy skłamiesz ?
Y=B~>L = B+~L = ~(~B*L) - dotrzymam słowa
Negujemy dwustronnie:
~Y=~(B~>L) = ~B*L - skłamię
Skłamię (~Y=1), jeśli przyjdziesz w czystych spodniach (~B) i dostaniesz lanie (z powodu czystych spodni !)
~Y=~B*L
Jaś:
… a czy może się zdarzyć że przyjdę w czystych spodniach i dostane lanie ?
Y=~(~Y) - prawo podwójnego przeczenia, stąd:
Y=~(~B*L)
Nie może się zdarzyć że przyjdziesz w czystych spodniach (~B) i dostaniesz lanie.
Y=~(~B*L)
Zauważmy, że ostatnie pytanie Jasia jest mało prawdopodobne bo odpowiedź dostał wcześniej.
8.3 Znaczenie operatora implikacji odwrotnej ~>
Jeśli jutro będzie pochmurno to może padać
CH~>P
Chmury są warunkiem koniecznym deszczu zatem implikacja odwrotna prawdziwa
Prawo Kubusia:
CH~>P = ~CH=>~P
Jeśli nie będzie pochmurno to na pewno nie będzie padać
~CH=>~P - gwarancja
Zauważmy, że po stronie operatora implikacji prostej => (warunek wystarczający) mamy 100% determinizm.
Po stronie operatora implikacji odwrotnej ~> możemy sobie rzucać monetą, nic więcej bo nie znamy przyszłości.
Jeśli jutro będzie pochmurno to […] padać
CH~>P
W miejsce […] możemy sobie wstawić cokolwiek, to bez znaczenia np. na pewno, na 100%, musi, może …
Weźmy teraz groźbę.
Jeśli ubrudzisz spodnie dostaniesz lanie
B~>L
Brudne spodnie są warunkiem koniecznym lania z powodu brudnych spodni, implikacja odwrotna prawdziwa
Prawo Kubusia:
B~>L = ~B=>~L
czyli:
Jeśli przyjdziesz w czystych spodniach to na pewno => nie dostaniesz lania
~B=>~L - gwarancja
… z powodu czystych spodni (~B) - tylko tyle i aż tyle gwarantuje implikacja odwrotna.
Mamy tu identyczna sytuację jak w implikacji o chmurach.
Jeśli ubrudzisz spodnie to […] dostaniesz lanie
B~>L
w miejsce […] możemy wstawić cokolwiek, to bez znaczenia np. nic nie wstawiać, może, na pewno, na 100%, musi …
Oczywiście nic nie może nas pozbawić wolnej woli, czyli nadawca ma prawo darować dowolną karę (zależną od niego) na sekundę przed jej wykonaniem i nie ma prawa zostać kłamcą.
Analogia do chmur jest tu bardzo celna - implikacja odwrotna ~> gwarantuje wolną wolę zarówno chmurom jak i człowiekowi.
Oczywiście w stosunku do przyrody martwej trafniejszym określeniem będzie „ślepy los”
~> = wolna wola (świat żywy), ślepy los (świat martwy)
8.4 „Równoważność” w obietnicach i groźbach
Obietnice i groźby to przyszłość której nikt nie zna. Równoważność na mocy definicji pozbawia człowieka „wolnej woli” czyli w obietnicy prawa do darowania nagrody przy nie spełnionym warunku nagrody (akt miłości), zaś w groźbie prawa do darowania kary przy spełnionym warunku kary (akt łaski).
Obietnica:
Kupię ci komputer tylko wtedy jak zdasz egzamin
Równoważna implikacja prosta:
Jeśli zdasz egzamin dostaniesz komputer
E=>K
Wypowiadając obietnicę w formie równoważności nadawca daje do zrozumienia, iż wystąpi bardzo małe prawdopodobieństwo wręczenia obiecanej nagrody jeśli warunek nagrody nie zostanie spełniony, nic więcej.
Groźba:
Zapłacę ci za ułożenie kafelków tylko wtedy gdy skończysz do soboty
Równoważna implikacja odwrotna:
Jeśli nie skończysz układania kafelków do soboty to ci nie zapłacę
~K~>~Z
Prawo Kubusia:
~K~>~Z = K=>Z
Jeśli ułożysz kafelki do soboty to ci zapłacę
K=>Z
Nadawca może grozić w dowolnie ostrej formie, jednak ma prawo do darowania dowolnej kary zależnej od niego (akt łaski), inaczej jego wolna wola leży w gruzach.
9.0 Podsumowanie
Ten punkt zawiera esencję wszystkiego co należy zapamiętać, dalej mamy logikę przedszkolaka.
Z przymrużeniem oka … czyli matematyczna historia powstania naszego Wszechświata.
Na początku było:
1=1
i stał się cud:
(p+~p)=(q+~q)
p+~p=1 - prawo algebry Boole’a
czyli:
p=>(q+~q)
~p=>(~q+q)
Równoważność:
Kod: |
p q p<=>q
p=> q =1
p=>~q =0
~p=>~q =1
~p=> q =0
|
W naszym Wszechświecie zdecydowanie przeważa implikacja, zatem ostatnie dwie linie ulegają rozczepieniu:
Operatorowa definicja implikacji prostej:
Kod: |
p q p=>q
p=> q =1
p=>~q =0
~p~>~q =1
~p~~>q =1
|
lub pierwsze dwie linie z definicji równoważności ulegają rozczepieniu:
Operatorowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
p~> q =1
p~~>~q =1
~p=> ~q =1
~p=> q =0
|
Spójniki zdaniowe:
=> - operator implikacji prostej, spójnik „musi” między p i q ze spełnionym warunkiem wystarczającym
~> - operator implikacji odwrotnej, spójnik „może” między p i q ze spełnionym warunkiem koniecznym
~~> - naturalny spójnik „może”, wystarczy jedna prawda, nie jest to implikacja odwrotna zatem warunek konieczny tu nie zachodzi
Prawa Kubusia:
p=>q = ~p~>~q - prawo zamiany operatora => na ~>
p~>q = ~p=>~q - prawo zamiany operatora ~> na =>
9.1 Geneza zero-jedynkowych tabel operatorów logicznych
Zero-jedynkowe tabele operatorów logicznych generuje naturalna logika człowieka, nigdy odwrotnie. Błędem jest zatem twierdzenie dzisiejszych logików (KRZ), jakoby logika polegała na analizie wszystkich możliwych śmieci i dopasowywaniu do nich tabel zero-jedynkowych.
Dowód:
W definicjach operatorowych opuszczamy operatory oraz przyjmujemy:
p=1, ~p=0
q=1, ~q=o
stąd otrzymujemy.
Zero-jedynkowa definicja równoważności:
Kod: |
p q p<=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =0
|
Zero-jedynkowa definicja implikacji prostej:
Kod: |
p q p=>q
1 1 =1
1 0 =0
0 0 =1
0 1 =1
|
Zero-jedynkowa definicja implikacji odwrotnej:
Kod: |
p q p~>q
1 1 =1
1 0 =1
0 0 =1
0 1 =0
|
CND
Ostatnio zmieniony przez rafal3006 dnia Wto 18:44, 25 Sie 2009, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
rafal3006
Opiekun Forum Kubusia
Dołączył: 30 Kwi 2006
Posty: 35532
Przeczytał: 15 tematów
Skąd: z innego Wszechświata Płeć: Mężczyzna
|
Wysłany: Śro 18:48, 12 Sie 2009 Temat postu: |
|
|
R3
|
|
Powrót do góry |
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
|