I emnet Propositionel logik har vi set, hvordan man repræsenterer udsagn ved hjælp af propositionel logik. Men desværre kan vi i propositionel logik kun repræsentere fakta, som enten er sande eller falske. PL er ikke tilstrækkelig til at repræsentere de komplekse sætninger eller naturlige sprogudsagn. Propositionslogikken har meget begrænset udtrykskraft. Overvej følgende sætning, som vi ikke kan repræsentere ved hjælp af PL-logik.
fibonacci-serien i ca
For at repræsentere ovenstående udsagn er PL-logik ikke tilstrækkelig, så vi krævede noget mere kraftfuld logik, såsom første-ordens logik.
Første ordens logik:
- Første-ordens logik er en anden måde til videnrepræsentation i kunstig intelligens. Det er en udvidelse af propositionel logik.
- FOL er tilstrækkeligt udtryksfuldt til at repræsentere de naturlige sprogudsagn på en kortfattet måde.
- Første-ordens logik er også kendt som Prædikatlogik eller førsteordens prædikatlogik . Første-ordens logik er et kraftfuldt sprog, der udvikler information om objekterne på en lettere måde og kan også udtrykke forholdet mellem disse objekter.
- Førsteordens logik (som naturligt sprog) antager ikke kun, at verden indeholder fakta som propositionel logik, men antager også følgende ting i verden:
Objekter: A, B, mennesker, tal, farver, krige, teorier, firkanter, gruber, wumpus, ......
Syntaks for førsteordens logik:
Syntaksen for FOL bestemmer, hvilken samling af symboler der er et logisk udtryk i førsteordenslogik. De grundlæggende syntaktiske elementer i førsteordens logik er symboler. Vi skriver udsagn i kort håndskrift i FOL.
Grundlæggende elementer i førsteordens logik:
Følgende er de grundlæggende elementer i FOL-syntaks:
Konstant | 1, 2, A, John, Mumbai, kat,.... |
Variabler | x, y, z, a, b,.... |
Prædikater | Bror, far, >,.... |
Fungere | sqrt, LeftLegOf, .... |
Forbindelser | ∧, ∨, ¬, ⇒, ⇔ |
Lighed | == |
Kvantifier | ∀, ∃ |
Atomiske sætninger:
- Atomsætninger er de mest grundlæggende sætninger i førsteordens logik. Disse sætninger er dannet af et prædikatsymbol efterfulgt af en parentes med en række led.
- Vi kan repræsentere atomsætninger som Prædikat (led1, led2, ......, led n) .
Eksempel: Ravi og Ajay er brødre: => Brødre(Ravi, Ajay).
Chinky er en kat: => kat (Chinky) .
Komplekse sætninger:
- Komplekse sætninger laves ved at kombinere atomsætninger ved hjælp af bindeled.
Førsteordens logiske udsagn kan opdeles i to dele:
Overvej udsagnet: 'x er et heltal.' , den består af to dele, den første del x er genstand for udsagnet og anden del 'er et heltal' er kendt som et prædikat.
Kvantifikatorer i første-ordens logik:
- En kvantificering er et sprogelement, som genererer kvantificering, og kvantificering specificerer mængden af eksemplarer i diskursens univers.
- Dette er de symboler, der tillader at bestemme eller identificere intervallet og omfanget af variablen i det logiske udtryk. Der er to typer kvantifier:
Universal Quantifier, (for alle, alle, alt)
Universal kvantifier:
Universal kvantifier er et symbol på logisk repræsentation, som specificerer, at udsagnet inden for dets område er sandt for alt eller enhver forekomst af en bestemt ting.
scanner næste
Den universelle kvantifier er repræsenteret af et symbol ∀, der ligner et omvendt A.
Bemærk: I universel kvantifier bruger vi implikation '→'.
Hvis x er en variabel, så læses ∀x som:
Eksempel:
Alle mennesker drikker kaffe.
Lad en variabel x, der refererer til en kat, så alle x kan repræsenteres i UOD som nedenfor:
∀x mand(x) → drik (x, kaffe).
Det vil blive læst som: Der er alle x, hvor x er en mand, der drikker kaffe.
Eksistentiel kvantifier:
Eksistentielle kvantifikatorer er typen af kvantifikatorer, som udtrykker, at udsagnet inden for dens rækkevidde er sandt for mindst én forekomst af noget.
Det er angivet med den logiske operator ∃, der ligner inverteret E. Når det bruges med en prædikatvariabel, kaldes det som en eksistentiel kvantifier.
Bemærk: I eksistentiel kvantifier bruger vi altid AND eller konjunktionsymbol (∧).
Hvis x er en variabel, vil eksistentiel kvantifier være ∃x eller ∃(x). Og det vil blive læst som:
udefineret hældning
Eksempel:
Nogle drenge er intelligente.
∃x: drenge(x) ∧ intelligent(x)
Det vil blive læst som: Der er nogle x, hvor x er en dreng, der er intelligent.
Punkter at huske:
- Hovedforbindelsen til universel kvantifier ∀ er implikation → .
- Hovedforbindelsen til eksistentiel kvantifier ∃ er og ∧ .
Egenskaber for kvantifikatorer:
- I universel kvantifier svarer ∀x∀y til ∀y∀x.
- I eksistentiel kvantifier svarer ∃x∃y til ∃y∃x.
- ∃x∀y ligner ikke ∀y∃x.
Nogle eksempler på FOL, der bruger kvantifier:
1. Alle fugle flyver.
I dette spørgsmål er prædikatet ' flue (fugl) .'
Og da der er alle fugle, der flyver, så vil det blive repræsenteret som følger.
∀x fugl(x) →flue(x) .
2. Enhver mand respekterer sin forælder.
I dette spørgsmål er prædikatet ' respekt(x, y),' hvor x = mand og y = forælder .
Da der er enhver mand, så vil bruge ∀, og det vil blive repræsenteret som følger:
∀x mand(x) → respekterer (x, forælder) .
3. Nogle drenge spiller cricket.
I dette spørgsmål er prædikatet ' afspil (x, y) ,' hvor x = drenge og y = spil. Da der er nogle drenge, så vi vil bruge ∃, og det vil blive repræsenteret som :
∃x drenge(x) → leg(x, cricket) .
4. Ikke alle elever kan lide både matematik og naturfag.
I dette spørgsmål er prædikatet ' like(x, y),' hvor x = elev og y = emne .
Da der ikke er alle elever, så vil vi bruge ∀ med negation, altså følgende repræsentation for dette:
¬∀ (x) [ elev(x) → synes godt om(x, Matematik) ∧ kan lide(x, Naturvidenskab)].
5. Kun én elev bestod i matematik.
I dette spørgsmål er prædikatet ' mislykkedes(x, y),' hvor x= elev og y= emne .
Da der kun er én studerende, der fejlede i matematik, så vil vi bruge følgende repræsentation til dette:
∃(x) [ elev(x) → ikke bestået (x, matematik) ∧∀ (y) [¬(x==y) ∧ elev(y) → ¬ikke bestået (x, matematik)] .
download youtube video med vlc
Frie og bundne variabler:
Kvantifikatorerne interagerer med variabler, som optræder på en passende måde. Der er to typer variabler i første-ordens logik, som er givet nedenfor:
Gratis variabel: En variabel siges at være en fri variabel i en formel, hvis den forekommer uden for kvantifikatorens omfang.
Eksempel: ∀x ∃(y)[P (x, y, z)], hvor z er en fri variabel.
Bundet variabel: En variabel siges at være en bundet variabel i en formel, hvis den forekommer inden for kvantifierens omfang.
Eksempel: ∀x [A (x) B( y)], her er x og y de bundne variable.