default logic
Főnév
default logic (tsz. default logics)
- (informatika, mesterséges intelligencia) A default logic (magyarul: alapértelmezett logika vagy feltételezett logika) a nemmonoton logikák egyik fontos típusa, amelyet a mesterséges intelligenciában, tudásalapú rendszerekben és következtetéselméletben alkalmaznak. Ezt a logikát Raymond Reiter vezette be 1980-ban, hogy leírja a hétköznapi gondolkodásban előforduló „alapértelmezett” következtetéseket – azokat, amelyek általában igazak, de nem mindig.
Motiváció: miért kell default logic?
A klasszikus logika monoton, azaz ha egyszer egy állítás igaznak bizonyul, akkor az minden további információ hatására is igaz marad. Azonban a hétköznapi gondolkodás nem ilyen.
Példa:
„A madarak repülnek.” „A pingvin madár.” → „A pingvin repül.” ❌ (Ez hibás!)
A klasszikus logikában, ha a madarak repülnek, és a pingvin madár, akkor következtetnénk, hogy a pingvin repül – pedig ez kivétel. A default logic célja éppen az ilyen általánosítások és kivételkezelés formális leírása.
Alapfogalmak
A default logic a következő részekből áll:
1. Tények (Background theory)
- Ezek a biztos tudás elemei, pl. „Minden madár tojást rak”.
2. Default szabályok (Default rules)
- Általánosított következtetési minták, amelyek csak akkor alkalmazhatók, ha nem áll rendelkezésre ellentétes információ.
A default szabály szintaxisa:
α : β₁, β₂, ..., βₙ / γ
Ahol:
αaz előfeltételβ₁, ..., βₙa feltételezett dolgok (justifications)γa következtetés
Jelentése: ha α igaz, és β₁, ..., βₙ nem cáfoltak, akkor következtethetünk γ-ra.
Példa: Madár és pingvin
Tények:
Bird(Tweety)Penguin(Tweety)∀x (Penguin(x) → Bird(x))∀x (Penguin(x) → ¬Flies(x))
Default szabály:
Bird(x) : Flies(x) / Flies(x)
Ez azt mondja: ha valaki madár, és nincs bizonyíték arra, hogy nem repül, akkor feltételezzük, hogy repül.
Azonban a fenti tényekből tudjuk, hogy Tweety pingvin → nem repül. Így a default szabály nem alkalmazható, mert ¬Flies(Tweety) már igazolt.
Nemmonoton következtetés
A default logic nemmonoton, azaz:
- Lehet, hogy egy állítás kezdetben következtethető, de később visszavonódik, ha új információ érkezik.
Ez rendkívül fontos a valós intelligens rendszerekben, ahol a tudás dinamikusan bővül.
Példa:
- „Tweety egy madár.” → „Tweety repül.”
- Később megtudjuk: „Tweety egy pingvin.” → a következtetés visszavonódik.
Default theory
Egy default theory egy párból áll:
⟨W, D⟩
Ahol:
W: háttértudás (tények halmaza)D: default szabályok halmaza
A cél: egy kiterjesztést találni – azaz olyan állítások halmazát, ami:
- Tartalmazza
Welemeit - Tartalmazza a default következtetéseket is (ha a feltételek teljesülnek)
- Logikailag koherens (nem vezet ellentmondáshoz)
Kiterjesztések (Extensions)
A default logic egyik központi fogalma a kiterjesztés (extension):
- Egy olyan konzisztens tudáshalmaz, amely tartalmazza az összes olyan következtetést, ami:
- A
Wháttértudásból, - és az alkalmazható default szabályokból levezethető.
- A
Fontos: lehet, hogy egy default theory-nek több kiterjesztése is van – ezek különböző értelmezéseknek felelnek meg.
Példa:
- Tény: „A hívás nem sikerült.”
- Default 1: „Általában technikai hiba okozza a hibás hívást.”
- Default 2: „Általában a felhasználó tévesztett számot.”
→ Mindkét default alkalmazható, de nem lehet egyszerre mindkettőt igaznak tekinteni → két különböző kiterjesztés.
Számítási bonyolultság
A default logic hatékony modell lehet, de számítási szempontból nehéz:
- Egy default theory-nek akár exponenciálisan sok kiterjesztése is lehet.
- A kiterjesztések kiszámítása gyakran NP-nehéz, vagy még rosszabb.
- Ezért a gyakorlatban korlátozott vagy szintaktikailag egyszerűbb változatokat használnak.
Alkalmazási területek
1. Tudásalapú rendszerek
- Orvosi, jogi vagy gazdasági szabályalapú rendszerekben
2. Mesterséges intelligencia
- Szimbolikus AI, intelligens ügynökök következtető moduljaiban
3. Természetes nyelv feldolgozás
- Implicit jelentés következtetése (pl. „Általában a férfiak nem sírnak”)
4. Etikai döntések
- Általános normák kezelése kivételes helyzetekben
Default logic vs. más logikai rendszerek
| Rendszer | Monoton? | Kezeli a kivételeket? | Tanul példákból? |
|---|---|---|---|
| Klasszikus logika | ✔️ | ❌ | ❌ |
| Default logic | ❌ | ✔️ | ❌ |
| Probalistic logic | ❌ | ✔️ | ✔️ (valószínűségi) |
| Induktív logika | ❌ | részben | ✔️ |
| Gépi tanulás (ML) | ❌ | ✔️ (adaton alapulva) | ✔️ |
Kapcsolódó logikai rendszerek
- Autoepistemic logic: önmaguk tudásáról is gondolkodó ügynökök logikája
- Circumscription: az információ minimalizálásával következtet
- Answer Set Programming (ASP): deklaratív logikai programozási nyelv, amely hasonló célokra használható
Korlátozott default logikák
A számítási nehézségek miatt a gyakorlatban egyszerűbb változatokat használnak:
Normal defaults: olyan szabályok, ahol a következtetés megegyezik a justification-nel Példa:
α : γ / γ
Semi-normal defaults: justification tartalmazhat további feltételeket
Ezekkel a formákkal könnyebb kiterjesztést számolni, és jobban illeszthetők rendszerekbe.
Összefoglalás
A default logic egy formális logikai rendszer, amely lehetővé teszi, hogy általános szabályokat fogalmazzunk meg, kivételek kezelése mellett. Ez különösen fontos a nem teljes, bizonytalan vagy változó információval dolgozó rendszerekben.
A klasszikus logikával szemben a default logic nemmonoton, vagyis az új információ megváltoztathatja a korábbi következtetéseket. Ez teszi különösen alkalmassá a valóság modellezésére, ahol a „legtöbb esetben” igaz állítások és ritka kivételek egyaránt előfordulnak.
Bár számítási szempontból kihívást jelent, a default logic a mesterséges intelligencia és a logikai következtetés egyik legfontosabb eszköze, különösen olyan helyzetekben, ahol strukturált tudás és kivételkezelés egyaránt szükséges.
- default logic - Szótár.net (en-hu)
- default logic - Sztaki (en-hu)
- default logic - Merriam–Webster
- default logic - Cambridge
- default logic - WordNet
- default logic - Яндекс (en-ru)
- default logic - Google (en-hu)
- default logic - Wikidata
- default logic - Wikipédia (angol)