Program jest przeznaczony do uzyskiwania tablic prawdy funkcji logicznych o liczbie zmiennych od jednej do pięciu. Funkcja logiczna (Boolean) o n zmiennych y = f(x1, x2, …, xn) jest funkcją, w której wszystkie zmienne są zmienne, a sama funkcja może przyjmować tylko dwie wartości: 0 i 1.
Minimalizacja funkcji logicznych
Podstawowe funkcje logiki
Zmienne, które mogą przyjmować tylko dwie wartości 0 i 1, nazywamy zmiennymi logicznymi (lub po prostu zmiennymi). Zauważmy, że zmienna logiczna x może oznaczać pod liczbą 0 pewne stwierdzenie, które jest fałszywe, a pod liczbą 1 pewne stwierdzenie, które jest prawdziwe.
Z definicji funkcji logicznej wynika, że funkcja boolowska o n zmiennych jest odwzorowaniem Bn na B, które można zdefiniować bezpośrednio za pomocą tablicy zwanej tablicą prawdy tej funkcji.
Podstawowymi funkcjami logiki są funkcje dwóch zmiennych z = f(x,y).
Liczba tych funkcji wynosi 24 = 16. Zmieńmy ich numerację i ułóżmy je w naturalnej kolejności.
Rozważmy te funkcje bardziej szczegółowo. Dwie z nich f0 = 0 i f15 = 1 są stałe. Funkcje f3, f5, f10 i f12 są w istocie funkcjami jednej zmiennej.
Najważniejsze funkcje dwóch zmiennych mają specjalne nazwy i oznaczenia.
1) f1 – koniunkcja (funkcja AND)
Zauważmy, że koniunkcja jest w rzeczywistości zwykłym mnożeniem (zer i jedynek). Funkcję tę oznaczamy przez x&y;
2) f7 jest dysjunkcją (lub funkcją). Oznaczamy ją przez V.
3) f13 jest implikacją (następstwem). Oznaczane przez ->.
Jest to bardzo ważna funkcja, zwłaszcza w logice. Można ją rozpatrywać w następujący sposób: jeśli x = 0 (tzn. x jest “fałszywe”), to z tego faktu można wydedukować zarówno “fałsz”, jak i “prawdę” (i będzie to poprawne), jeśli y = 1 (tzn. y jest “prawdziwe”), to z faktu zarówno “fałszu”, jak i “prawdy” można wydedukować prawdę, i to też jest poprawne. Jedynie wniosek “z prawdy wynika fałsz” jest niepoprawny. Zauważmy, że każde twierdzenie zawsze faktycznie zawiera tę funkcję logiczną;
4) f6 – dodawanie modulo 2. Oznacza się go znakiem “+” lub znakiem “+” w kółku.
5) f9 jest równoważnością lub podobieństwem. Ta f9 = 1 wtedy i tylko wtedy, gdy x = y. Oznacza się ją przez x ~ y.
6) f14 jest kreską Schaeffera. Funkcję tę nazywa się czasem “not and” (ponieważ jest ona równa negacji koniunkcji). Oznacza się ją przez x|y.
7) f8 to strzałka Pierce’a (czasami funkcja ta jest nazywana skokiem Łukasiewicza).
Pozostałe trzy funkcje (f2, f4 i f11) nie mają specjalnego oznaczenia.
Zauważmy, że logika często rozważa funkcje z funkcji, tzn. superpozycje powyższych funkcji. W tym przypadku kolejność działań jest oznaczona (jak zwykle) nawiasami.
Instrukcja użytkownika
- Wszystkie znaki wprowadzone przez użytkownika zostaną wyświetlone na kalkulatorze.
- Oprócz operandów znakowych prezentowanych w interfejsie aplikacji możliwe jest także wprowadzanie danych z klawiatury
- Jeśli użytkownik popełnił błąd podczas wprowadzania funkcji, ostatnio wprowadzone znaki można usunąć, naciskając klawisz Backspace
- Aplikacja obsługuje automatyczne sprawdzanie poprawności wprowadzonych wartości. Oznacza to, że w przypadku błędu symbol nie pojawi się na wyświetlaczu, lecz przeciwnie, będzie wibrował, dając użytkownikowi znać, że popełniono błąd.
- Po zakończeniu wprowadzania wyrażenia użytkownika należy nacisnąć przycisk Zatwierdź, aby wyświetlić tabelę prawdy
- Jeśli obliczonych wartości było zbyt wiele, tabelę można przewinąć w dół, aby zobaczyć pozostałe opcje
- Na górze, jako podpowiedź, wyświetlane jest wyrażenie wprowadzone przez użytkownika
- Aby powrócić do strony głównej, kliknij w dowolnym miejscu tabeli
Dysjunkcyjna postać normalna, koniunkcyjna postac normalna, DPN, KPN