În subiectul logicii propoziționale, am văzut cum să reprezentați enunțuri folosind logica propozițională. Dar, din păcate, în logica propozițională, putem reprezenta doar faptele, care sunt fie adevărate, fie false. PL nu este suficient pentru a reprezenta propozițiile complexe sau enunțurile în limbaj natural. Logica propozițională are o putere expresivă foarte limitată. Luați în considerare următoarea propoziție, pe care nu o putem reprezenta folosind logica PL.
if statement java
Pentru a reprezenta afirmațiile de mai sus, logica PL nu este suficientă, așa că am avut nevoie de o logică mai puternică, cum ar fi logica de ordinul întâi.
Logica de ordinul întâi:
- Logica de ordinul întâi este o altă modalitate de reprezentare a cunoștințelor în inteligența artificială. Este o extensie a logicii propoziționale.
- FOL este suficient de expresiv pentru a reprezenta enunțurile limbajului natural într-un mod concis.
- Logica de ordinul întâi este cunoscută și ca Logica predicatelor sau Logica predicatelor de ordinul întâi . Logica de ordinul întâi este un limbaj puternic care dezvoltă informații despre obiecte într-un mod mai ușor și poate exprima, de asemenea, relația dintre acele obiecte.
- Logica de ordinul întâi (precum limbajul natural) nu presupune doar că lumea conține fapte precum logica propozițională, ci presupune și următoarele lucruri din lume:
Obiecte: A, B, oameni, numere, culori, războaie, teorii, pătrate, gropi, wumpus, ......
Sintaxa logicii de ordinul întâi:
Sintaxa FOL determină ce colecție de simboluri este o expresie logică în logica de ordinul întâi. Elementele sintactice de bază ale logicii de ordinul întâi sunt simbolurile. Scriem enunțuri în notație scurtă în FOL.
Elemente de bază ale logicii de ordinul întâi:
Următoarele sunt elementele de bază ale sintaxei FOL:
Constant | 1, 2, A, John, Mumbai, pisică,.... |
Variabile | x, y, z, a, b,.... |
Predicate | Frate, Tată, >,.... |
Funcţie | sqrt, LeftLegOf, .... |
Conjunctive | ∧, ∨, ¬, ⇒, ⇔ |
Egalitatea | == |
Cuantificator | ∀, ∃ |
Propoziții atomice:
- Propozițiile atomice sunt cele mai elementare propoziții ale logicii de ordinul întâi. Aceste propoziții sunt formate dintr-un simbol predicat urmat de o paranteză cu o succesiune de termeni.
- Putem reprezenta propoziții atomice ca Predicat (termenul 1, termenul 2, ......, termenul n) .
Exemplu: Ravi și Ajay sunt frați: => Frați (Ravi, Ajay).
Chinky este o pisică: => pisica (Chinky) .
Propoziții complexe:
- Propozițiile complexe se formează prin combinarea propozițiilor atomice folosind conjunctive.
Instrucțiunile logice de ordinul întâi pot fi împărțite în două părți:
Luați în considerare afirmația: „x este un număr întreg”. , este format din două părți, prima parte x este subiectul enunțului și a doua parte „este un număr întreg” este cunoscută ca predicat.
Cuantificatori în logica de ordinul întâi:
- Un cuantificator este un element de limbaj care generează cuantificare, iar cuantificarea specifică cantitatea de specimen din universul discursului.
- Acestea sunt simbolurile care permit determinarea sau identificarea domeniului și domeniului variabilei în expresia logică. Există două tipuri de cuantificatori:
Cuantificator universal, (pentru toți, pentru toată lumea, pentru toate)
Cuantificator universal:
Cuantificatorul universal este un simbol al reprezentării logice, care specifică faptul că afirmația din intervalul său este adevărată pentru orice sau pentru fiecare instanță a unui anumit lucru.
listă dublu legată
Cuantificatorul universal este reprezentat printr-un simbol ∀, care seamănă cu un A inversat.
Notă: În cuantificatorul universal folosim implicația „→”.
Dacă x este o variabilă, atunci ∀x se citește ca:
Exemplu:
Toți oamenii beau cafea.
Fie o variabilă x care se referă la o pisică, astfel încât toate x să poată fi reprezentate în UOD după cum urmează:
∀x om(x) → băutură (x, cafea).
Se va citi astfel: Sunt toate x unde x este un om care bea cafea.
Cuantificator existential:
Cuantificatorii existențiali sunt tipul de cuantificatori, care exprimă faptul că afirmația din domeniul său de aplicare este adevărată pentru cel puțin o instanță a ceva.
Este notat cu operatorul logic ∃, care seamănă cu E inversat. Când este folosit cu o variabilă predicată, atunci este numit cuantificator existențial.
Notă: În cuantificatorul existențial folosim întotdeauna SI sau simbolul Conjuncție (∧).
Dacă x este o variabilă, atunci cuantificatorul existențial va fi ∃x sau ∃(x). Și se va citi astfel:
prinde și încearcă java
Exemplu:
Unii băieți sunt inteligenți.
∃x: băieți(x) ∧ inteligent(x)
Se va citi astfel: Există niște x unde x este un băiat inteligent.
Puncte de reținut:
- Conectivul principal pentru cuantificatorul universal ∀ este implicație → .
- Conectivul principal pentru cuantificatorul existențial ∃ este si ∧ .
Proprietățile cuantificatorilor:
- În cuantificatorul universal, ∀x∀y este similar cu ∀y∀x.
- În cuantificatorul existențial, ∃x∃y este similar cu ∃y∃x.
- ∃x∀y nu este similar cu ∀y∃x.
Câteva exemple de FOL folosind cuantificator:
1. Toate păsările zboară.
În această întrebare, predicatul este „ zbura (pasare) .'
Și din moment ce sunt toate păsările care zboară, acesta va fi reprezentat după cum urmează.
∀x pasăre(x) →zbură(x) .
2. Fiecare bărbat își respectă părintele.
În această întrebare, predicatul este „ respect(x, y),' unde x=om și y= părinte .
Deoarece există fiecare om, se va folosi ∀ și va fi reprezentat după cum urmează:
∀x om(x) → respectă (x, părinte) .
3. Unii băieți joacă cricket.
În această întrebare, predicatul este „ juca (x, y) ,' unde x= băieți și y= joc. Din moment ce sunt niște băieți, vom folosi ∃, iar acesta va fi reprezentat ca :
∃x băieți(x) → joacă(x, cricket) .
4. Nu tuturor elevilor le plac atât Matematica, cât și Știința.
În această întrebare, predicatul este „ like(x, y),' unde x= student și y= subiect .
Deoarece nu sunt toți studenții, vom folosi ∀ cu negație, deci următoarea reprezentare pentru aceasta:
¬∀ (x) [ elev(x) → ca(x, Matematică) ∧ ca(x, Știință)].
5. Doar un elev a picat la Matematică.
În această întrebare, predicatul este „ eșuat(x, y),' unde x= student și y= subiect .
Deoarece există un singur elev care a picat la Matematică, vom folosi următoarea reprezentare pentru aceasta:
∃(x) [ elev(x) → nereușit (x, Matematică) ∧∀ (y) [¬(x==y) ∧ elev(y) → ¬eșuat (x, Matematică)] .
t flip flop
Variabile libere și legate:
Cuantificatorii interacționează cu variabilele care apar într-un mod adecvat. Există două tipuri de variabile în logica de ordinul întâi, care sunt prezentate mai jos:
Variabilă liberă: Se spune că o variabilă este o variabilă liberă într-o formulă dacă apare în afara domeniului cuantificatorului.
Exemplu: ∀x ∃(y)[P (x, y, z)], unde z este o variabilă liberă.
Variabilă legată: Se spune că o variabilă este o variabilă legată într-o formulă dacă apare în domeniul de aplicare al cuantificatorului.
Exemplu: ∀x [A (x) B( y)], aici x și y sunt variabilele legate.