V tématu Výroková logika jsme viděli, jak reprezentovat výroky pomocí výrokové logiky. Ale bohužel ve výrokové logice můžeme reprezentovat pouze fakta, která jsou buď pravdivá, nebo nepravdivá. PL nestačí k reprezentaci složitých vět nebo prohlášení v přirozeném jazyce. Výroková logika má velmi omezenou vyjadřovací schopnost. Uvažujme následující větu, kterou nemůžeme reprezentovat pomocí PL logiky.
log4j
Pro znázornění výše uvedených tvrzení není logika PL dostatečná, takže jsme požadovali nějakou výkonnější logiku, jako je logika prvního řádu.
Logika prvního řádu:
- Logika prvního řádu je dalším způsobem reprezentace znalostí v umělé inteligenci. Jde o rozšíření výrokové logiky.
- FOL je dostatečně expresivní, aby reprezentoval výpovědi přirozeného jazyka stručným způsobem.
- Logika prvního řádu je také známá jako Predikátová logika nebo predikátová logika prvního řádu . Logika prvního řádu je výkonný jazyk, který rozvíjí informace o objektech snadnějším způsobem a může také vyjádřit vztah mezi těmito objekty.
- Logika prvního řádu (jako přirozený jazyk) nejen předpokládá, že svět obsahuje fakta, jako je výroková logika, ale předpokládá také následující věci ve světě:
Objekty: A, B, lidé, čísla, barvy, války, teorie, čtverce, jámy, wumpus, ......
Syntaxe logiky prvního řádu:
Syntaxe FOL určuje, která kolekce symbolů je logickým výrazem v logice prvního řádu. Základními syntaktickými prvky logiky prvního řádu jsou symboly. Příkazy píšeme ve zkratkovém zápisu ve FOL.
Základní prvky logiky prvního řádu:
Níže jsou uvedeny základní prvky syntaxe FOL:
Konstantní | 1, 2, A, John, Bombaj, kočka,.... |
Proměnné | x, y, z, a, b,.... |
Predikáty | Bratr, otec, >,.... |
Funkce | sqrt, LeftLegOf, .... |
Spojiva | ∧, ∨, ¬, ⇒, ⇔ |
Rovnost | == |
Kvantifikátor | ∀, ∃ |
Atomové věty:
- Atomové věty jsou nejzákladnější věty logiky prvního řádu. Tyto věty jsou tvořeny z predikátového symbolu následovaného závorkou s posloupností pojmů.
- Atomové věty můžeme reprezentovat jako Predikát (člen1, člen2, ......, člen n) .
Příklad: Ravi a Ajay jsou bratři: => Brothers(Ravi, Ajay).
Chinky je kočka: => kočka (Chinky) .
Složité věty:
- Složité věty vznikají spojením atomárních vět pomocí spojovacích výrazů.
Logické příkazy prvního řádu lze rozdělit do dvou částí:
Zvažte výrok: 'x je celé číslo.' , skládá se ze dvou částí, první část x je předmětem výroku a druhá část „je celé číslo“ je známá jako predikát.
Kvantifikátory v logice prvního řádu:
- Kvantifikátor je jazykový prvek, který generuje kvantifikaci, a kvantifikace specifikuje množství vzorku ve vesmíru diskurzu.
- Jedná se o symboly, které umožňují určit nebo identifikovat rozsah a rozsah proměnné v logickém výrazu. Existují dva typy kvantifikátorů:
Univerzální kvantifikátor (pro všechny, všechny, všechno)
Univerzální kvantifikátor:
Univerzální kvantifikátor je symbol logické reprezentace, který určuje, že výrok v jeho rozsahu platí pro všechno nebo každý výskyt konkrétní věci.
Univerzální kvantifikátor je reprezentován symbolem ∀, který připomíná obrácené A.
if else v java
Poznámka: V univerzálním kvantifikátoru používáme implikaci '→'.
Pokud je x proměnná, pak se ∀x čte jako:
Příklad:
Všichni lidé pijí kávu.
Nechte proměnnou x, která odkazuje na kočku, aby všechna x mohla být reprezentována v UOD, jak je uvedeno níže:
∀x muž(x) → pití (x, káva).
Bude se číst jako: Existuje všech x, kde x je muž, který pije kávu.
Existenciální kvantifikátor:
Existenciální kvantifikátory jsou typem kvantifikátorů, které vyjadřují, že tvrzení v jeho rozsahu platí alespoň pro jednu instanci něčeho.
Označuje se logickým operátorem ∃, který se podobá invertovanému E. Je-li použit s predikátovou proměnnou, nazývá se existenciální kvantifikátor.
Poznámka: V existenciálním kvantifikátoru vždy používáme AND nebo Konjunkční symbol (∧).
Je-li x proměnná, pak existenciální kvantifikátor bude ∃x nebo ∃(x). A bude se číst takto:
Příklad:
Někteří kluci jsou inteligentní.
statický v c
∃x: chlapci (x) ∧ inteligentní (x)
Bude se číst jako: Existuje několik x, kde x je chlapec, který je inteligentní.
Body k zapamatování:
- Hlavní spojka pro univerzální kvantifikátor ∀ je implikace → .
- Hlavní spojovací výraz pro existenciální kvantifikátor ∃ Je a ∧ .
Vlastnosti kvantifikátorů:
- V univerzálním kvantifikátoru je ∀x∀y podobné ∀y∀x.
- V existenciálním kvantifikátoru je ∃x∃y podobné ∃y∃x.
- ∃x∀y není podobné ∀y∃x.
Některé příklady FOL pomocí kvantifikátoru:
1. Všichni ptáci létají.
V této otázce je predikát „ moucha (pták) .'
A protože jsou všichni ptáci, kteří létají, bude to znázorněno následovně.
∀x pták(x) →leť(x) .
2. Každý muž respektuje svého rodiče.
V této otázce je predikát „ respekt(x, y),' kde x = muž a y = rodič .
Protože existuje každý člověk, tak použijeme ∀ a bude reprezentováno následovně:
∀x muž(x) → respektuje (x, rodič) .
3. Někteří chlapci hrají kriket.
V této otázce je predikát „ hrát (x, y) ,' kde x= chlapci a y= hra. Protože tam jsou nějací kluci, tak využijeme ∃ a bude reprezentován jako :
∃x chlapci (x) → hrát (x, kriket) .
4. Ne všichni studenti mají rádi matematiku i přírodní vědy.
V této otázce je predikát „ like(x, y),' kde x= student a y= předmět .
Jelikož tam nejsou všichni studenti, tak využijeme ∀ s negací, tak k tomu následující zastoupení:
¬∀ (x) [ student(x) → like(x, Matematika) ∧ like(x, Science)].
5. Pouze jeden žák propadl z matematiky.
V této otázce je predikát „ neúspěšný(x, y),' kde x= student a y= předmět .
Protože z matematiky propadl pouze jeden student, použijeme k tomu následující znázornění:
∃(x) [ student(x) → neprospěl (x, matematika) ∧∀ (y) [¬(x==y) ∧ student(y) → ¬neprospěl (x, matematika)] .
Volné a vázané proměnné:
Kvantifikátory interagují s proměnnými, které se objevují vhodným způsobem. V logice prvního řádu existují dva typy proměnných, které jsou uvedeny níže:
Volná proměnná: O proměnné se říká, že je volnou proměnnou ve vzorci, pokud se vyskytuje mimo rozsah kvantifikátoru.
srovnání java
Příklad: ∀x ∃(y)[P (x, y, z)], kde z je volná proměnná.
Vázaná proměnná: Proměnná se nazývá vázanou proměnnou ve vzorci, pokud se vyskytuje v rozsahu kvantifikátoru.
Příklad: ∀x [A (x) B( y)], zde x a y jsou vázané proměnné.