Kaj je Prolog?

Prolog, ki je bil zasnovan v zgodnjih sedemdesetih letih prejšnjega stoletja, najverjetneje kombinacija besed program in logika, je eden najzgodnejših računalniških programskih jezikov. Delno zato, ker je zelo preprosta koda, ki uporablja logiko prvega reda in malo računanja, je še vedno v uporabi. Prvotni nabor navodil je bil precej razširjen in razvit v številne različice, ker je še posebej primeren za obdelavo jezika. Ta dva glavna atributa programa zagotavljata obdelavo aplikacij, kot so umetna inteligenca in avtomatizirane telekomunikacije.

Prolog uporablja formalno logiko prvega reda. Navodila, naložena v računalnik, so trdna; nimajo mehkega, računalniškega ponderiranja. V izrazu je sintaksa jezika končen nabor pravil, semantika pa je definirana, običajno z nizi, kot so posamezni deskriptorji, več seznamov in nizov, ali z obsegom, kot so številska zaporedja.

Skupaj z nekaterimi bolj znanimi kodami, kot je hiperbesedilni označevalni jezik (HTML), je Prolog v razredu programske opreme, ki se običajno imenuje deklarativni programski jeziki, ki običajno uporabljajo preprosto izjavo »X je enako Y«, opredeljeno kot »izraz«. Računalnik pove, kaj naj naredi; ni naročeno, da sama izračuna, kako do tja. Računalnik dobi niz dejstev s »predikatom« in relacijami, opredeljenimi kot »klavzula«, iz katerih naj bi vhodna poizvedba prinesla izhodni zaključek resničen in napačen. Ne izvaja algoritma, temveč dobi preprost odgovor z dodajanjem in odštevanjem ali negacijo od svojega znanega niza definicij. Računalništvo v Prologu se uporablja za preizkušanje in dokazovanje teorij in njihovih temeljnih predpostavk, od napredne matematike do biologije do filozofije.

Ena od kognitivnih teorij inteligence je, da je v možganih velika, a omejena leksikalna zaloga informacij, ki se pridobivajo, obdelujejo in vračajo, kar ima za posledico večjo kompleksnost ali preprostost informacij. Z naraščajočo zmogljivostjo pomnilnika in hitrim dostopom je to prevladujoča paradigma, ki je vodila sveti gral računalništva – umetno inteligenco. Po mnenju mnogih na tem področju sta ključna vmesnik in jezik. Programiranje Prolog se lahko uporablja za ustvarjanje GUI, grafičnega uporabniškega vmesnika, ki ga je pionir Apple®, s preprostim definiranjem vizualnih simbolov. Uporablja se lahko tudi za branje, prevajanje in ustvarjanje obraznega izraza.

Računalniška lingvistika je bistveno težja in medtem ko je Prolog z leti napredoval pri vključevanju, na primer, edinstvenih slovničnih načel nekaterih tujih jezikov, se mnogi raziskovalci sprašujejo, ali učinkovito predstavlja jezik. Za omejene strokovne sisteme, kot so računalniške telefonske linije tehnične podpore za prepoznavanje glasu, se programiranje Prolog uporablja do določene stopnje učinkovitosti. Prav tako ga je mogoče integrirati v logično programsko opremo višjega reda – jezike za kvantifikacijo, kot sta C+ ali java – vendar stiskanje in prenosljivost ostajata težave, ki ostajajo pri tem podatkovno intenzivnem programskem jeziku.