Logika pierwszego rzędu w sztucznej inteligencji
W temacie logiki zdań widzieliśmy, jak reprezentować stwierdzenia za pomocą logiki zdań. Niestety, w logice zdań możemy przedstawić jedynie fakty, które są albo prawdziwe, albo fałszywe. PL nie wystarcza do przedstawienia zdań złożonych lub wyrażeń w języku naturalnym. Logika zdań ma bardzo ograniczoną siłę wyrazu. Rozważmy następujące zdanie, którego nie możemy przedstawić za pomocą logiki PL.
Aby przedstawić powyższe stwierdzenia, logika PL nie jest wystarczająca, dlatego potrzebowaliśmy mocniejszej logiki, takiej jak logika pierwszego rzędu.
Logika pierwszego rzędu:
- Logika pierwszego rzędu to kolejny sposób reprezentacji wiedzy w sztucznej inteligencji. Jest to rozszerzenie logiki zdań.
- FOL jest wystarczająco wyrazisty, aby w zwięzły sposób reprezentować wypowiedzi języka naturalnego.
- Logika pierwszego rzędu jest również nazywana Logika predykatów lub logika predykatów pierwszego rzędu . Logika pierwszego rzędu to potężny język, który w łatwiejszy sposób rozwija informacje o obiektach, a także może wyrażać relacje między tymi obiektami.
- Logika pierwszego rzędu (podobnie jak język naturalny) nie tylko zakłada, że świat zawiera fakty, jak logika zdań, ale zakłada także następujące rzeczy w świecie:
Obiekty: A, B, ludzie, liczby, kolory, wojny, teorie, kwadraty, doły, wumpus, ......
Składnia logiki pierwszego rzędu:
Składnia FOL określa, który zbiór symboli jest wyrażeniem logicznym w logice pierwszego rzędu. Podstawowymi elementami składniowymi logiki pierwszego rzędu są symbole. Wyrażenia piszemy w notacji skróconej w języku FOL.
Podstawowe elementy logiki pierwszego rzędu:
Poniżej przedstawiono podstawowe elementy składni FOL:
| Stały | 1, 2, A, John, Bombaj, kot,.... |
| Zmienne | x, y, z, a, b,.... |
| Predykaty | Brat, Ojciec, >,.... |
| Funkcjonować | sqrt, lewa noga, .... |
| Łączniki | ∧, ∨, ¬, ⇒, ⇔ |
| Równość | == |
| Kwantyfikator | ∀, ∃ |
Zdania atomowe:
- Zdania atomowe to najbardziej podstawowe zdania logiki pierwszego rzędu. Zdania te są utworzone z symbolu orzeczenia, po którym następuje nawias z sekwencją terminów.
- Możemy przedstawić zdania atomowe jako Predykat (termin1, termin2, ......, termin n) .
Przykład: Ravi i Ajay to bracia: => Bracia(Ravi, Ajay).
Chinky jest kotem: => kot (Chinky) .
Zdania złożone:
- Zdania złożone tworzy się poprzez łączenie zdań atomowych za pomocą łączników.
Instrukcje logiczne pierwszego rzędu można podzielić na dwie części:
Rozważmy stwierdzenie: „x jest liczbą całkowitą”. , składa się z dwóch części, pierwsza część x jest podmiotem wypowiedzi, a druga część „jest liczbą całkowitą” i jest nazywana predykatem.
Kwantyfikatory w logice pierwszego rzędu:
- Kwantyfikator jest elementem języka, który generuje kwantyfikację, a kwantyfikacja określa ilość okazu we wszechświecie dyskursu.
- Są to symbole, które pozwalają określić lub zidentyfikować zakres i zasięg zmiennej w wyrażeniu logicznym. Istnieją dwa rodzaje kwantyfikatorów:
Uniwersalny kwantyfikator (dla wszystkich, wszystkich, wszystkiego)
Uniwersalny kwantyfikator:
Kwantyfikator uniwersalny jest symbolem reprezentacji logicznej, która określa, że stwierdzenie w jego zakresie jest prawdziwe dla wszystkiego lub każdego wystąpienia konkretnej rzeczy.
Kwantyfikator uniwersalny jest reprezentowany przez symbol ∀, który przypomina odwrócone A.
Uwaga: W kwantyfikatorze uniwersalnym używamy implikacji „→”.
Jeśli x jest zmienną, to ∀x odczytuje się jako:
Przykład:
Wszyscy ludzie piją kawę.
Niech zmienna x odnosi się do kota, aby wszystkie x można było przedstawić w UOD jak poniżej:
∀x mężczyzna(x) → napój (x, kawa).
Będzie to odczytane jako: Są wszystkie x, gdzie x to mężczyzna pijący kawę.
Kwantyfikator egzystencjalny:
Kwantyfikatory egzystencjalne to rodzaj kwantyfikatorów, które wyrażają, że stwierdzenie w swoim zakresie jest prawdziwe dla co najmniej jednego wystąpienia czegoś.
Oznacza się go operatorem logicznym ∃, który przypomina odwrócone E. Kiedy jest używany ze zmienną predykatu, nazywa się go kwantyfikatorem egzystencjalnym.
Uwaga: W kwantyfikatorze egzystencjalnym zawsze używamy symbolu AND lub koniunkcji (∧).
Jeśli x jest zmienną, wówczas kwantyfikatorem egzystencjalnym będzie ∃x lub ∃(x). I będzie to odczytane jako:
Przykład:
Niektórzy chłopcy są inteligentni.
∃x: chłopcy(x) ∧ inteligentni(x)
Będzie to czytane w następujący sposób: Jest kilka x, gdzie x to inteligentny chłopiec.
Punkty do zapamiętania:
- Główny łącznik uniwersalnego kwantyfikatora ∀ jest implikacja → .
- Główny łącznik kwantyfikatora egzystencjalnego ∃ jest i ∧ .
Właściwości kwantyfikatorów:
- W kwantyfikatorze uniwersalnym ∀x∀y jest podobne do ∀y∀x.
- W kwantyfikatorze egzystencjalnym ∃x∃y jest podobne do ∃y∃x.
- ∃x∀y nie jest podobne do ∀y∃x.
Niektóre przykłady FOL z wykorzystaniem kwantyfikatora:
1. Wszystkie ptaki latają.
W tym pytaniu predykat brzmi „ latać (ptak) .'
A ponieważ latają wszystkie ptaki, zostanie to przedstawione w następujący sposób.
∀x ptak(x) →latać(x) .
2. Każdy człowiek szanuje swoich rodziców.
W tym pytaniu predykat brzmi „ szacunek(x, y)', gdzie x=człowiek i y= rodzic .
Ponieważ istnieje każdy człowiek, użyjemy ∀ i będzie to przedstawione w następujący sposób:
∀x mężczyzna(x) → szacunek (x, rodzic) .
3. Niektórzy chłopcy grają w krykieta.
W tym pytaniu predykat brzmi „ graj (x, y) ,' gdzie x= chłopcy, a y= gra. Ponieważ jest kilku chłopców, więc będziemy korzystać ∃ i będzie reprezentowane jako :
∃x chłopcy(x) → graj(x, krykiet) .
4. Nie wszyscy uczniowie lubią zarówno matematykę, jak i przedmioty ścisłe.
W tym pytaniu predykat brzmi „ like(x, y)', gdzie x= uczeń, a y= przedmiot .
Ponieważ nie ma wszystkich uczniów, więc użyjemy ∀ z negacją, więc następująca reprezentacja tego:
¬∀ (x) [ student(x) → podobny(x, matematyka) ∧ podobny(x, nauki ścisłe)].
5. Tylko jeden uczeń nie zdał matematyki.
W tym pytaniu predykat brzmi „ nie powiodło się (x, y)', gdzie x= uczeń i y= przedmiot .
Ponieważ tylko jeden uczeń nie zdał matematyki, zastosujemy w tym celu następującą reprezentację:
∃(x) [ student(x) → nieudany (x, matematyka) ∧∀ (y) [¬(x==y) ∧ uczeń(y) → ¬nieudany (x, matematyka)] .
Zmienne swobodne i powiązane:
Kwantyfikatory oddziałują ze zmiennymi, które pojawiają się w odpowiedni sposób. Istnieją dwa typy zmiennych w logice pierwszego rzędu, które podano poniżej:
Dowolna zmienna: Mówi się, że zmienna jest zmienną wolną we wzorze, jeśli występuje poza zakresem kwantyfikatora.
Przykład: ∀x ∃(y)[P (x, y, z)], gdzie z jest zmienną wolną.
Zmienna związana: Mówi się, że zmienna jest zmienną związaną we wzorze, jeśli występuje w zakresie kwantyfikatora.
Przykład: ∀x [A (x) B( y)], tutaj x i y są zmiennymi powiązanymi.