Open Library - открытая библиотека учебной информации

Открытая библиотека для школьников и студентов. Лекции, конспекты и учебные материалы по всем научным направлениям.

Категории

Дом Solutions
просмотров - 196

Written_by(X,Y).

Clauses

Long_novel (title)

Written_by(author, title)

Book(title, pages)

Predicates

Domains

title, author = symbol

pages= unsigned

written_by(fleming, "DR NO").

written_by(melville, "MOBY DICK").

book("MOBY DICK", 250).

book("DR NO", 310).

long_novel (Title) :- written_by(_, Title),

book(Title, Length),Length > 300.

Намагаючись виконати цільове твердження wrіtten_by(X, Y), Vіsual Prolog повинœен перевірити кожне твердження wrіtten_by(X, Y) у програмі. Співставляючи аргументи X і Y з аргументами кожного твердження wrіtten_by, Vіsual Prolog виконає пошук від початку програми до її кінця. Виявивши твердження, що відповідає цільовому, Vіsual Prolog зв’язує вільні змінні із значеннями таким чином, що твердження цілі й бази знань стають ідентичними. Говорять, що цільовий предикат уніфікується із предикатом програми. Така операція співставлення називається уніфікацією.

Оскільки X і Y є вільними змінними в цільовому предикаті, а вільна змінна може бути уніфікована з будь-яким іншим аргументом (і навіть із іншою вільною змінною), то цільовий предикат може бути уніфікованим з першим предикатом wrіtten_by у програмі, як показано нижче:

¯¯

written_by(fleming,"DR NO").

Visual Prolog встановлює відповідність, X стає зв’язаним з fleming, a Y – із “dr no”. Тоді Visual Prolog надрукує:

X=fleming, Y="DR NO"

Оскільки система шукає всі рішення для заданої цілі, цільове твердження також буде уніфіковано ще й із другим твердженням written_by:

written_by(melville, "MOBY DICK").

Система надрукує і друге рішення:

X=melville, Y="MOBY DICK"

Розглянемо, як Vіsual Prolog виконає наступне цільове твердження:

long_novel(X).

Коли Vіsual Prolog намагається виконати цільове твердження, він перевіряє, чи дійсно виклик може відповідати факту або заголовку правила. У нашому випадку встановлюється відповідність із

long_novel(Tіtle)

Vіsual Prolog перевіряє предикат для long_novel, намагаючись завершити співставлення уніфікацією аргументів. Оскільки в цільовому твердженні X - вільна змінна, то вона може бути уніфікована з будь-яким іншим аргументом. Tіtle також не є зв'язаним у заголовку правила long_novel. Тому цільове твердження відповідає заголовку правила, і уніфікація здійснюється. Згодом Vіsual Prolog намагатиметься погодити підцілі із правила

long_novel(Tіtle) :- wrіtten_by(_, Tіtle),

book(Tіtle, Length), Length>300.

Намагаючись виконати тіло правила, система звернеться до першої його підцілі - wrіtten_by(_, Tіtle). Оскільки авторство книги є несуттєвим, на місці аргументу author з'явиться анонімна змінна (_). Звернення wrіtten_by (_, Tіtle) стає поточною підціллю, і Пролог шукає рішення для неї.

Пролог шукає від вершини й до кінця програми відповідність із даною підціллю. У результаті досягається уніфікація з першим фактом для wrіtten_by, а саме:


Читайте также


  • - The environmental problems and their solutions

    A) Read the text and fill in the table below. Controlling pollution depends on the efforts of the government, scientists, environmental organizations, and individuals. The government’s strategy is to control pollution. For this purpose the government should enforce lawswhich state that all plants and factories must make use of the up-to-date purificatoryequipment, filters, etc. Factories and plants violating environmental protection laws should be imposed heavy fines on. Such fines might... [читать подробенее]


  • - OBSTACLES AND SOLUTIONS

    RADIATION, LONELINESS HAUNT CHORNOBYL'S NEIGHBOURS The sunlight reflects dully off a sign along the road «ATTENTION: Forbidden Area». It is a wasteland disguised as rustic paradise. This is a place where an invisible poison of radiation released during the 1986 ChomobyP meltdown has seeped into the land and people's psyche. Yet some know no other home. «We were born here and we will die here,» says an elderly peasant woman. «There can be not other way. It is our fate». It is a... [читать подробенее]


  • - I.Read the letter written to a newspaper advice column. Discuss possible solutions with a partner and then write a reply to the woman.

    Writing Speaking III.Read the dialogue again and make up your own. I. In pairs exchange your ideas about the following: 1. What exactly is the Internet? 2. The future of the Internet 3. Computer revolution 4. What is the Internet? 5. What is the most popular Internet service? 6. Whom do you pay for sending e-mail messages? 7. What advantages does it have over other media, such as TV, magazines and newspapers? 8. Whose responsibility should it be to check... [читать подробенее]


  • - I.Read the letter written to a newspaper advice column. Discuss possible solutions with a partner and then write a reply to the woman.

    Writing Speaking III.Read the dialogue again and make up your own. I. In pairs exchange your ideas about the following: 1. What exactly is the Internet? 2. The future of the Internet 3. Computer revolution 4. What is the Internet? 5. What is the most popular Internet service? 6. Whom do you pay for sending e-mail messages? 7. What advantages does it have over other media, such as TV, magazines and newspapers? 8. Whose responsibility should it be to check... [читать подробенее]


  • - Технологія розробки ІС Microsoft Solutions Framework

    Як було зазначено раніше, успішність реалізації проектів з розробки програмного забезпечення залежить від того, наскільки успішною є організація управління даним процесом. Одним з підходів до рішення цього завдання, що успішно використовується в багатьох компаніях... [читать подробенее]