logo

Prolog | Esittely


Johdanto:

Prolog on a logiikka ohjelmointi Kieli. Sillä on tärkeä rooli tekoälyssä. Toisin kuin monet muut ohjelmointikielet, Prolog on tarkoitettu ensisijaisesti deklaratiiviseksi ohjelmointikieleksi. Prologissa logiikka ilmaistaan ​​suhteina (kutsutaan nimellä Facts and Rules). Prologin ydin on logiikka sovelletaan. Muotoilu tai laskeminen suoritetaan suorittamalla kysely näiden suhteiden yli.

Asennus Linuxiin:



Avaa terminaali (Ctrl+Alt+T) ja kirjoita:

java muuten jos
 sudo apt-get install swi-prolog>

Syntaksi ja peruskentät:

Prologissa julistamme joitain tosiasioita. Nämä tosiasiat muodostavat järjestelmän tietokannan. Voimme tehdä kyselyjä tietokannasta. Saamme tuloksen myöntävänä, jos kyselymme on jo tietokannassa tai se on tietokannan implisiittinen, muuten saamme tuloksen negatiivisena. Joten Knowledge Basea voidaan pitää samanlaisena kuin tietokanta, jota vastaan ​​voimme tehdä kyselyjä. Prologin tosiasiat ilmaistaan ​​tietyllä kaavalla. Faktat sisältävät kokonaisuuksia ja niiden suhteita. Entiteetit kirjoitetaan suluissa pilkulla (, ) erotettuina. Niiden suhde ilmaistaan ​​alussa ja sulkeiden ulkopuolella. Jokainen tosiasia/sääntö päättyy pisteeseen (.). Joten tyypillinen prolog-fakta kuuluu seuraavasti:

 Format : relation(entity1, entity2, ....k'th entity). Example : friends(raju, mahesh). singer(sonu). odd_number(5). Explanation : These facts can be interpreted as : raju and mahesh are friends. sonu is a singer. 5 is an odd number.>

Avainominaisuudet :
1. Yhdistäminen: Perusajatuksena on, voidaanko annetut termit saada edustamaan samaa rakennetta.
2. Paluu: Kun tehtävä epäonnistuu, prolog jäljittää taaksepäin ja yrittää täyttää edellisen tehtävän.
3. Rekursio: Rekursio on kaiken ohjelman haun perusta.

Käynnissä olevat kyselyt:
Tyypillinen prolog-kysely voidaan kysyä seuraavasti:

 Query 1 : ?- singer(sonu). Output : Yes. Explanation : As our knowledge base contains the above fact, so output was 'Yes', otherwise it would have been 'No'. Query 2 : ?- odd_number(7). Output : No. Explanation : As our knowledge base does not contain the above fact, so output was 'No'.>

Edut:
1. Helppo rakentaa tietokanta. Ei vaadi paljon ohjelmointiponnisteluja.
2. Kuvioiden yhdistäminen on helppoa. Haku perustuu rekursioon.
3. Siinä on sisäänrakennettu luettelonkäsittely. Helpottaa pelaamista millä tahansa listoja sisältävällä algoritmilla.

Haitat:
1. LISP (toinen logiikkaohjelmointikieli) hallitsee prologia I/O-ominaisuuksien suhteen.
2. Joskus syöttö ja tulostus eivät ole helppoa.

Sovellukset :

Prologia käytetään paljon tekoälyssä (AI). Prologia käytetään myös luonnollisten kielten jäsennyspuiden kuvioiden sovittamiseen.

Viite 1: https://en.wikipedia.org/wiki/Prolog

Viite 2: http://www.swi-prolog.org/