TEMA 1. YaZЫKI LOGIChESKOGO PROGRAMMIROVANIYa
1.1. Yazыk PROLOG
1.1.1. Predisloviye. Pri ispolzovanii EVM dlya resheniya zadach mojno vыdelit dva vzaimosvyazannыx sposoba predstavleniya znaniya:
1) prosedurnoye predstavleniye, t. ye. opredeleniye algoritma obrabotki dannыx;
2) deklarativnoye predstavleniye, t. ye. opredeleniye otdelnыx ponyatiy, ix sostoyaniya v konkretnыye momentы vremeni i svyazey mejdu nimi.
Tradisionnыye algoritmicheskiye yazыki (Paskal, Si, Fortran) yavlyayutsya prosedurnыmi, poskolku ix sel – opisaniye algoritma. No oni soderjat i deklarativnыye komponentы (opisaniye peremennыx).
V yazыke PROLOG (PROgrammirovaniye LOGicheskoye), naprotiv, osnovnoy yavlyayetsya deklarativnaya komponenta, tak chto on prednaznachen ne stolko dlya obrabotki dannыx, kak dlya obrabotki faktov i deklarativnыx pravil. Faktы predstavlyayut soboy logicheskiye formulы. Baza znaniye (BZ) zadayetsya sovokupnostyu takix formul. Logicheskiye metodы obespechivayut polucheniye novыx faktov iz faktov, predstavlennыx v BZ.
V prosedurnыx yazыkax programmist doljen opisat dlya kompyutera prosess resheniya zadachi shag za shagom. V protivopolojnost etomu v deklarativnom yazыke PROLOG programmist opisыvayet samu problemu i osnovnыye pravila yeye resheniya, ostavlyaya za sistemoy poisk konkretnыx deystviy, privodyaщix k resheniyu. Poetomu PROLOG spravedlivo schitayetsya yazыkom boleye vыsokogo urovnya, chem Si ili Paskal. Vneshnim vыrajeniyem etogo fakta yavlyayetsya to, chto tekst programmы na PROLOGe mojet bыt v desyat raz koroche teksta programmы na Paskale, reshayuщyey tu je zadachu (xotya, konechno, yest problemы, neudobnыye dlya PROLOGa, no legko opisыvayemыye na Paskale ili drugom prosedurnom yazыke).
PROLOG mojet ispolzovatsya pri razrabotke ekspertnыx sistem, a takje dlya sleduyuщix zadach:
dokazatelstva teorem i vыvoda resheniy v zadachax;
sozdaniya paketov simvolnoy obrabotki pri reshenii uravneniy, differensirovanii, integrirovanii i t. d.;
razrabotki uproщyennыx versiy sistem II;
sozdaniya yestestvenno-yazыkovыx interfeysov dlya suщyestvuyuщix programm;
perevoda tekstov s odnogo yazыka na drugoy, v tom chisle – s odnogo yazыka programmirovaniya na drugoy.
PROLOG poyavilsya v 1973 g., kogda gruppa issledovateley iz Marselskogo universiteta pod rukovodstvom Alana Kolmeroe, sozdala programmu dlya dokazatelstva teorem, kotoraya bыla realizovana na yazыke Fortran. Vposledstvii etot produkt poluchil nazvaniye PROLOG. Pervыye godы PROLOG ne naxodil shirokogo prakticheskogo primeneniya. Odnako v 1981 g. bыlo ob’yavleno o yaponskom proyekte sozdaniya EVM pyatogo pokoleniya, v osnove programmnogo obespecheniya kotorыx predpolagalos ispolzovat logicheskoye programmirovaniye. Etot proyekt sozdaniya EVM dlya obrabotki znaniy vыzval bolshoy rezonans vo vsem mire. Poyavilis kommercheskiye realizasii PROLOGa, takiye kak CProlog, Quintus Prolog, Silogic Knowledge Workbench, Turbo Prolog i dr.
Naibolshuyu populyarnost poluchila sistema program-mirovaniya Turbo Prolog – odin iz produktov izvestnoy firmы Borland. V 1988 g. bыl vыpuщyen Turbo Prolog 2.0, poluchivshiy shirokoye rasprostraneniye. Firma Borland rasprostranyala etu versiyu do 1990 g., a zatem kompaniya PDC priobrela prava na etot produkt, poluchivshiy nazvaniye PDC Prolog. Pozdneye bыl vыpuщyen Visual Prolog, osnaщyennыy standartnыmi vozmojnostyami dlya bыstrogo proyektirovaniya interfeysa.
V dekabre 1997 g. firma PDC vыpustila Visual Prolog 5.0, a s yanvarya 1999 g. pristupila k rasprostraneniyu versii 5.1. V nastoyaщyeye vremya vse jelayuщiye mogut besplatno skopirovat cherez Internet poslednyuyu versiyu sistemы Visual Prolog 5.1 Personal Edition, funksioniruyuщuyu v sredax Windows 3.1/95/98, NT, OS/2, SCO UNIX i Linux. Variant Personal Edition prednaznachen dlya nekommercheskogo ispolzovaniya, i soobщyeniya ob etom imeyutsya vo vsex prilojeniyax, sozdannыx s yego pomoщyu. Krome togo, vladelsы Personal Edition ne obespechivayutsya besplatnoy texnicheskoy podderjkoy i na nix ne rasprostranyayutsya lgotы i skidki pri priobretenii novыx versiy. V posledney versii poyavilis takiye usovershenstvovaniya, kak otladchik, spesialnыy instrumentariy i primerы razrabotki Web-uzlov.
Dlya uchebnыx seley vpolne prigoden Turbo Prolog. Na ispolzovaniye etoy realizasii yazыka rasschitanы vse privodimыye primerы i zadachi.
Do'stlaringiz bilan baham: |