Практикалық сабақ №3
Тақырыбы: «Жанұя»
Логикалық Пролог-Д жүйесі қолданушыларға қажетінше кеңейтілген құрал болып табылады. Объектілер арасындағы байланыс қатынас ережелерімен беріледі. Ережені қолдану білім қорында фактілер санын қысқартады. Сонымен қатар, ережелер берілгендерді білім қорына айналдырады да, одан сұраққа жауап ала алады. Әдетте ережені құру үшін «Не белгілі?» сұраққа жауап беретін қатынастар жиынтығы ерекшеленуі қажет. Ережені бастапқы есебі белгілі қарапайым мақсатта бөліп қолданып құруға болады. Бұл процесс есептің декомпозиция процесі аталады. Білім қорында объектілер тұрақты байланысқанда тек сол кезде декомпозиция процесі аяқталады. Мысалы, есептің туысқандық қатынасын құруда келесі ережені анықтауға болады:
бабушка(х,у)<-мама(x,z),мама(z,y);
бабушка(х,у)<-мама(x,z),папа(z,y);
дедушка(х,у)<-папа(x,z),папа(z,y);
дедушка(х,у)<-папа(x,z),мама(z,y);
Декомпозиция процесі нақты бірмәнді емес. Мысалы, қарапайым мысал туысқандық қатынаста басқа балама сөздер болуы мұмкін. Мысал ретінде «ата-ана» түсінігін анықтайтын мысалды келтірейік:
родитель(х,у)<-мама(x,y);
родитель(х,у)<-папа(x,y);
Сонда әже мен атаны келесі түрде анықтау оңай:
бабушка(х,у)<-мама(x,z),родитель(z,y);
дедушка(х,у)<-папа(x,z),родитель(z,y);
Егер жазылған ережелер бойынша бірнеше мама және папа анықтайтын фактілерді қоссақ, онда «жанұя» аталатын білім қоры пайда болады.
мама(Саша, Петя);
папа(Сережа,Петя);
мама(Оля,Саша);
папа(Коля,Саша);
мама(Люда,Сережа);
папа(Петя,Сережа);
родитель(х,у)<-мама(x,y);
родитель(х,у)<-папа(x,y);
бабушка(х,у)<-мама(x,z),родитель(z,y);
дедушка(х,у)<-папа(x,z),родитель(z,y);
Қаралған мысалда родитель(х,y) түсінігі тек бір ереже үшін қолданылған. Мұнда жүйеде бірінші қатынас қарастырылғаннан кейін осы қатынасқа альтернативті анықтама беретін мәні ашылмаған құбылыс қарастырылған. Анықтамада екі ереже қолданылған.
Жалпы ереже саны шектелмейді. Жалпы айтқанда қатынасты жазуда түрлі тәсілдер болуы мүмкін. Мұнда берілген вариант логикалық Пролог-Д жүйесі қатынас есебіне сәйкес келеді.
Пролог-Д тілінде бастапқы текст терезесі жазу және программада тексті редактрлеу үшін қолданылады. Тексті редактрлеу үшін арнайы тұрақты экранды редактор қолданылады. Пролог-Д жүйесімен жұмыс жасау барысында қиындық туса, онда F1 пернесін басу арқылы көмекті қолдануға болады.
Мысал ретінде Пролог-Д тілінде қарапайым білім қорын жазуға үлкен емес орысша-ағылшынша аударма сөздікті қарастырайық. Компьютер онымен жұмыс жасау үшін, С дискісінен текстті оқу қажет. Ол үшін жанында «С дискіні оқу» жазылған, «F3» пернесін басу қажет. Сонда экранда Пролог-Д тілінде жазылған .prl кеңейтілулі барлық файлдардың тізімі пайда болады. Slovar.prl атымен файл таңдаңыз және енгізу (Enter) пернесін басыңыз. Экранға мына қысқаша текстті теріңіз.
русангл (мама, mammy);
русангл (небо, sky);
русангл (солнце, sun);
русангл (мальчик, boy);
русангл (круг, ring);
русангл (вокруг, around);
Бұл аударма сөздік ағылшыннан балаларға арналған белгілі өлеңді аударуға жетеді.
Логикалық Пролог-Д программалау жүйесінде жеткілікті сұраныс жазу сөйлемі, «?» символынан басталады.
Мысалы, берілген текстке сұрақ қою мына түрде болады:
?русангл (мама, х); - ағылшынша ана қалай?
?русангл (х, sky); - sky сөзі нені білдіреді?
?русангл (у, х); - мәліметтер базасында қандай сөз сақталған?
Мысал ретінде бірінші сұранысты жазғанда, ЭЕМ сіздің сұранысыңызды қабылдау үшін Enter (енгізу) пернесін басу қажет. Ал компьютер жұмысының нәтижесін білу үшін нәтиже терезесіне өту қажет – Ғ9 пернесін басу арқылы орындалады. Сонда экранда келесі хабар
х=mammy
Басқа шешім жоқ.
пайда болады.
Келесі сұранысты бастапқы текст терезесінде таңдауда (Esc) шығу пернесін басса жеткілікті.
Достарыңызбен бөлісу: |