Составители:
Рубрика:
58
 collection(kahn, book("The Computer and the Brain",  
"von Neumann", "Yale University Press",1958)).  
collection(kahn, book("Symbolic Logic", "Lewis Carroll", 
   "Dower Publications",1958)).  
collection(johnson, book("Database: A Primer", "C.J.Date",  
"Addison-Wesley",1983)). 
 collection(johnson, book("Problem-Solving Methods in AI",  
"Nils Nilsson", "McGraw Hill",1971)).  
collection(smith,  book("Alice in Wonderland", 
"Lewis Carroll",  "The New American Library",1960)).  
collection(smith, book("Fables of Aesop", "Aesop-Calder", 
      "Dover Publications",1967)). 
/*****      конец программы              *****/ 
_____________________________________________________________ 
Функтор структуры personal_library имеет имя book. Описание таково: 
personal_library = book(title, author ,publisher, year)  
collector, title, author, publisher = symbol 
    year = integer  
Предикат, использующий эту структуру, определяется так: 
  collection (collector, personal_library) 
Описание содержит два имени объектов. Первое имя относится к 
обычному  объекту, второе - к структуре из нескольких объектов. 
  Использование  доменной  структуры
  упрощает  структуру предиката.  
Если не использовать конструкцию доменной структуры, то программы тре-
бовала бы  такого  описания  предиката collection: 
collection(collector, title, author, publisher, year) 
В этом описании 4 последних объекта обозначают атрибуты книги.  Правило, 
которое оперирует с персональными библиотеками рассматривало бы эти 4  
последних  объекта  как  независимые сущности, что сделало бы код про-
граммы более сложным. 
  Данная  программа
  использует  внешнюю  цель. Для того, чтобы уз-
нать,  какие  книги  принадлежат  Смиту,  необходимо ввести такое целевое 
утверждение: 
  Collection (smith, Books). 
  Объект  smith  является  частным  значением  из  домена collector,  а 
Books - свободной переменной. Цель заключается в отыскании всех книг, 
принадлежащих Смиту. 
  Предположим  теперь, что Вы хотите знать имена владельцев и назва-
ния 
книг, напечатанных в 1967 году. Цель для  поиска этой информации вы-
глядит следующим образом: 
  collection(Collector,book(Title,_,_,1967)). 
Здесь  свободными  переменными являются уже Сollector и Title. Подчерки-
вание (_) указывает на то, что Вас  не  интересуют объекты  с  родовыми  
      collection(kahn, book("The Computer and the Brain",
            "von Neumann", "Yale University Press",1958)).
      collection(kahn, book("Symbolic Logic", "Lewis Carroll",
                   "Dower Publications",1958)).
      collection(johnson, book("Database: A Primer", "C.J.Date",
                                         "Addison-Wesley",1983)).
      collection(johnson, book("Problem-Solving Methods in AI",
            "Nils Nilsson", "McGraw Hill",1971)).
      collection(smith, book("Alice in Wonderland",
            "Lewis Carroll", "The New American Library",1960)).
      collection(smith, book("Fables of Aesop", "Aesop-Calder",
                                   "Dover Publications",1967)).
/*****         конец программы           *****/
_____________________________________________________________
      Функтор структуры personal_library имеет имя book. Описание таково:
            personal_library = book(title, author ,publisher, year)
            collector, title, author, publisher = symbol
            year = integer
Предикат, использующий эту структуру, определяется так:
            collection (collector, personal_library)
      Описание содержит два имени объектов. Первое имя относится к
обычному объекту, второе - к структуре из нескольких объектов.
      Использование доменной структуры упрощает структуру предиката.
Если не использовать конструкцию доменной структуры, то программы тре-
бовала бы такого описания предиката collection:
      collection(collector, title, author, publisher, year)
В этом описании 4 последних объекта обозначают атрибуты книги. Правило,
которое оперирует с персональными библиотеками рассматривало бы эти 4
последних объекта как независимые сущности, что сделало бы код про-
граммы более сложным.
      Данная программа использует внешнюю цель. Для того, чтобы уз-
нать, какие книги принадлежат Смиту, необходимо ввести такое целевое
утверждение:
            Collection (smith, Books).
      Объект smith является частным значением из домена collector, а
Books - свободной переменной. Цель заключается в отыскании всех книг,
принадлежащих Смиту.
      Предположим теперь, что Вы хотите знать имена владельцев и назва-
ния книг, напечатанных в 1967 году. Цель для поиска этой информации вы-
глядит следующим образом:
      collection(Collector,book(Title,_,_,1967)).
Здесь свободными переменными являются уже Сollector и Title. Подчерки-
вание (_) указывает на то, что Вас не интересуют объекты с родовыми
                                                                       58
Страницы
- « первая
 - ‹ предыдущая
 - …
 - 56
 - 57
 - 58
 - 59
 - 60
 - …
 - следующая ›
 - последняя »
 
