Prolog är ett kraftfullt nytt programmeringsspråk med applikationer på förgrunden av vetenskaplig forskning . Den utvecklades i Frankrike av forskare intresserade av automatisk maskinöversättning mellan naturliga språk . Det var därefter raffineras i Skottland av matematiker intresserade av datorprogram som automatiskt bevisar matematiska teorem . Den har senare valdes av den japanska för femte generationens artificiell intelligens projektets officiella språk . Natural Language Translation
Använda Prolog innebär att skriva en rad uttalanden som beskriver kunskaper i ett visst begränsat område och sedan ställa frågor om den här domänen . Prolog söker automatiskt igenom rapporterna och kommer upp med alla möjliga svar som överensstämmer med den rad uttalanden . Om påståendena är definitioner och grammatiska regler , kan Prolog ta en kandidat mening och avgöra om det är ett giltigt mening i termer av de definitioner och regler i språket . En något mer sofistikerat program skulle återvända en översättning av meningen , om det är giltigt .
Automatisk teorembevisning
Om databasen uttalanden består av matematiska relationer istället för grammatiska kära , kan du kasta en sats som en fråga och Prolog -systemet kommer att svara med ett " ja " eller " nej " beroende på om satsen är förenlig med den databas av fakta och regler . Visar ett uttalande är förenligt med en uppsättning regler och fakta är det samma som att testa en föreslagen matematiska eller logiska teorem för att se att det är giltigt . Prolog förstår varken matematik eller logik - . Den bara förstår konsekvensen
Data Mining
Prolog , till sin natur , sätter upp en databas . På grund av hur Prolog uttryck innehåller variabler , kan en fråga om databasen returnera önskade värden . Till exempel frågan " Bigger_than_a_breadbox ( X ) " kommer att returnera ett " nej " om ingenting i databasen är större än en breadbox . Om något är , kommer Prolog tillbaka " ja " samt en lista över alla saker i databasen som orsakade en " match ". Det kommer att finnas en lista som: . X = Godzilla , X = The Empire State Building , X = A Volkswagen och så vidare , beroende på innehållet i databasen Addera Robotics
Robotar måste ständigt fråga sig samma fråga : " Vad gör jag nu ? " Den databas som används för att besvara denna fråga kommer från tre källor: de sensorer, minne och kommandon från människa . Frågan förblir densamma , men den databas som används för att besvara frågan ständigt förändras . En av fördelarna med att använda prolog med en robot är att flera prologs kan köras samtidigt på samma databas . Ögonen kan köra en prolog medan benen köra annan prolog utan störningar , som varken förändrar databasen .