Što je Prolog?

Zamišljen početkom 1970-ih, Prolog, najvjerojatnije kombinacija riječi program i logika, jedan je od najranijih računalnih programskih jezika. Djelomično zato što je vrlo jednostavan kod, koji koristi logiku prvog reda i malo računanja, još uvijek je u popularnoj upotrebi. Izvorni skup instrukcija znatno je proširen i razvijen u mnoge varijante jer je posebno prikladan za obradu jezika. Ova dva primarna atributa programa omogućuju obradu aplikacija kao što su umjetna inteligencija i automatizirane telekomunikacije.

Prolog koristi formalnu logiku prvog reda. Upute učitane na računalo su čvrste; nemaju nejasno, računsko ponderiranje. U izrazu, sintaksa jezika je konačan skup pravila, a semantika je definirana, obično skupovima kao što su pojedinačni deskriptori, višestruki popisi i nizovi, ili rasponom kao što su numerički nizovi.

Zajedno s nekim poznatijim kodiranjem kao što je jezik za označavanje hiperteksta (HTML), Prolog je u klasi softvera koji se obično naziva deklarativni programski jezici, koji karakteristično koriste jednostavnu izjavu “X jednako Y”, definiranu kao “pojam”. Računalo je rečeno što treba učiniti; nije upućeno da sama izračuna kako do tamo doći. Računalo dobiva skup činjenica s “predikatom” i odnosima, definiranim kao “klauzula”, iz kojih bi ulazni upit trebao dati izlazni zaključak istinito nasuprot lažnom. Ne izvršava algoritam, već dobiva jednostavan odgovor dodavanjem i oduzimanjem, ili negiranjem, od svog poznatog skupa definicija. Računalstvo u Prologu koristi se za testiranje i dokazivanje teorija i njihovih temeljnih pretpostavki, od napredne matematike preko biologije do filozofije.

Jedna od kognitivnih teorija inteligencije je da postoji velika, ali ograničena leksička zaliha informacija u mozgu koja se dohvaća, obrađuje i vraća, što rezultira većom složenošću ili jednostavnošću informacija. S povećanjem memorijskog kapaciteta i brzim pristupom, ovo je dominantna paradigma koja je pokrenula sveti gral računalne znanosti — umjetnu inteligenciju. Ono što je ključno prema mnogima na terenu su sučelje i jezik. Prolog programiranje se može koristiti za stvaranje GUI-ja, grafičkog korisničkog sučelja koje je pionir Apple®, jednostavnim definiranjem vizualnih simbola. Također se može koristiti za čitanje, prevođenje i stvaranje izraza lica.

Računalna lingvistika znatno je teža, i dok je Prolog tijekom godina napredovao kako bi uključio, na primjer, jedinstvena gramatička načela nekih stranih jezika, mnogi istraživači postavljaju pitanje predstavlja li učinkovito jezik. Za ograničene ekspertne sustave, kao što su računalne telefonske linije tehničke podrške za prepoznavanje glasa, Prolog programiranje se koristi do određenog stupnja učinkovitosti. Također se može integrirati u logički softver višeg reda – jezike za kvantificiranje kao što su C+ ili java – ali kompresija i prenosivost ostaju problemi koji traju za ovaj programski jezik koji zahtijeva veliku količinu podataka.