Prolog (programozási nyelv)
Nyelv köré egy kis sor alapvető mechanizmusok, beleértve a minta megfelelő. treelike képviselete adatstruktúrák és automatikus visszalépés. Kiválóan alkalmas feladatok, ahol a kérdéses tárgy (különösen strukturált tárgyak), és a közöttük lévő kapcsolatok. Prológus, köszönhetően annak jellemzőit, használjuk a mesterséges intelligencia terén, számítógépes nyelvészet, és nem numerikus programozás általában. Bizonyos esetekben, a végrehajtás szimbolikus számítások más standard nyelv azért van szükség, hogy hozzon létre egy csomó kód, bonyolult megérteni, míg a megvalósítása azonos a Prolog nyelv algoritmusok ad egy egyszerű program könnyen elfér egy oldalon.
Prolog egy deklaratív programozási nyelv: programlogika fejezzük a kapcsolatok formájában bemutatott tények és szabályok. Annak érdekében, hogy megindítja a számítás, végre egy különleges kérés, hogy a tudásbázist, amely logikai programozási rendszer generál válaszok „igaz” és „hamis”. Generalizált lekérdezések változókat paraméterként a rendszer létrehozott Prolog megjeleníti konkrét adatokkal alátámasztani az igazság az általános információk és következtetési szabályokat.
A nyelvtörténet utal, hogy a 1970-es. [1] A deklaratív programozási nyelv. Prologue érzékeli a program leírását a probléma, vagy tudásbázisok, és ő teszi a logikus következtetés, valamint a keresési problémamegoldás, egy kereső, hogy visszatérjen, és egyesítés.
Érdekes a Prolog fel és halt meg többször, a lelkesedés váltotta merev elutasítás. Legmagasabb emelték érdeklődés a Prolog nyelv, mint a nyelv a jövőben, a fejlesztés során az ötödik generációs számítógépek a japán nemzeti program a 1980-as, amikor a fejlesztők remélik, hogy segítségével a Prologue lesz megfogalmazni új elvek, amelyek létrejöttéhez vezet számítógépek magasabb a szintű intelligencia.
Prolog 1980-ben szerepel a több szovjet egyetemi és iskolai tankönyvek a tanulmány a számítógép-tudomány elemeit a matematikai logika, az elvek a logikai programozás és a design tudásbázisok és szakértői rendszerek modellek. Ebből a célból az orosz nyelvű tanítás Prolog tolmácsok hajtották végre az IBM PC és a szám a szovjet iskola számítógépek.
A Prolog leírt tények formájában elsőrendű logika konkrét értékeket. Következtetési szabályok által leírt logikai predikátumok meghatározásával következtetési szabályok, mint állítmány listáját tudásbázisok és adatfeldolgozási eljárásokat.
Jelenleg a Prologue, többszöri pesszimista előrejelzések, folyamatosan fejlődik a különböző országok és magában foglalja az új technológiák és koncepciók, valamint az imperatív programozási paradigma. Különösen egy olyan területe, nyelvi fejlődés (többek között Oroszországban) végrehajtja a koncepció az intelligens ágensek.
Prolog végrehajtják gyakorlatilag minden ismert operációs rendszer (OS) és platformok (beleértve a Java, .NET). A több operációs rendszerek: OS mainframe. Az egész család Unix. Windows-t. OS mobil platformokon.
Az alapelv az, egyenértékűségét nyelv és a programot bemutató adatok (deklaratív), így jóváhagyása nyelven egyaránt feljegyzések, mint az adatbázist, és hogy milyen szabályok maguknál kezelési módszerek. A kombináció a tulajdonságok vezet az a tény, hogy a Prolog rendszer ismerete (az adatok és szabályok) halmozódott fel. Ezért Prolog motorok vizsgálni a természeti környezet a tudás felhalmozása és képzési hallgatók és diákok elvek logikai programozás.
Alapfogalmak Prolog tények, következtetési szabályok és lekérdezések, így írja le a tudásbázist. következtetés eljárások és döntéshozatal.
Prolog program leírja a kapcsolatot meg lehet határozni a javaslatokat. Mint bármely más nyelven orientált szimbolikus számítások. kínál sorakoznak a feltételeket, amelyek viszont vannak osztva tartalmaz, a változók száma és szerkezetek. Atom felvett kisbetűvel vagy idézőjelbe amikor felvételre is szükség van nagybetűvel.
A változók kerülnek rögzítésre a nagybetűs eltérő változókat procedurális nyelvek, akkor nem kapcsolódik egy meghatározott memória cella, hanem közelebb a matematikai változó.
A szerkezeteket képviselnek feltételek sokaságát zárójelben, beleértve egyéb szerkezetek. A szerkezet jelöli a neve (funktorhoz), amely úgy van elhelyezve, mielőtt a zárójelben.
Tovább tervezés egy lista, amelynek elemeit szögletes zárójelek között. A listák alapján Prolog kapcsolódnak listákat.
Szabályok Prolog van írva formájában következtetési szabályok a logikus következtetést, és a listát a logikai feltételek. A tiszta Prolog kínál korlátozott Horn záradék:
és ez így hangzik: „címsor TRUE, ha a test igaz.” szabály test utalásokat tartalmaz predikátumok, amelyek az úgynevezett szabály célokat.
Beágyazott predikátumok / 2 érték az üzemeltető két érv. Ez határozza meg, összefüggésben a célokat. / 2 meghatározza diszjunkcióját üzemeltető.
A tények által leírt Prolog logikai predikátumok konkrét értékeket. A tények tudásbázisok Prolog képviseli specifikus információk (tudás). Általános információk és ismeretek Prolog sor következtetési szabályok (meghatározások) és egy sor következtetési szabályok (definíciók) a konkrét tények és általános tájékoztatót. Javaslatok egy üres testet nevezzük tényeket. Példa tény:
Ez a tény egyenértékű a szabály:
Prologue kritizálták, elsősorban a hiányos deklaratív jellege: létrehozása többé-kevésbé összetett és gyakorlatilag hasznos Prolog programok teljesen deklaratív stílus szinte lehetetlen, a programozó kénytelenek eljárási vétel, ami megugrott összetettsége létrehozása és hibakeresés programok, valamint A rosszul szabályozott közbenső eredményeket. [2]
Egy másik, gyakran kritizálták jellemzője a nyelv hiánya tipizálás (míg a Visual Prolog - egy objektum-orientált nyelv kiterjesztések - végre erős tipizálás).
A nyelv, meghatározott sorrendben a bejárás „mélységében” megoldások és szabványosított szereplők, így beavatkozni ebbe a folyamatba (például nyírás az üzemeltető vagy a fióktelep -.>). Ez az architektúra megnehezíti automatikus párhuzamosítását programok, amelyek lehetővé teszik a megoldások megtalálásában több processzor vagy hálózati csomópontok.