Резюме
Резюме
К настоящему моменту мы изучили нечто вроде базового Пролога, который называют еще "чистый Пролог". Он "чист", потому что довольно точно соответствует формальной логике. Расширения, преследующие цель приспособить язык к некоторым практическим нуждам, будут изучены дальше (гл. 3, 5, 6. 7). Важными моментами данной главы являются следующие:
• Простые объекты в Прологе — это атомы, переменные и числа. Структурные объекты, или структуры, используются для представления объектов, которые состоят из нескольких компонент.
• Структуры строятся посредством функторов. Каждый функтор определяется своими именем и арностью.
• Тип объекта распознается исключительно по его синтаксической форме.
• Область известности (лексический диапазон) переменных — одно предложение. Поэтому одно и то же имя в двух предложениях обозначает две разные переменные.
• Структуры могут быть естественным образом изображены в виде деревьев. Пролог можно рассматривать как язык обработки деревьев.
• Операция сопоставление берет два терма и пытается сделать их идентичными, подбирая соответствующую конкретизацию переменных в обоих термах.
• Сопоставление, если оно завершается успешно, в качестве результата выдает наиболее общую конкретизацию переменных.
• Декларативная семантика Пролога определяет, является ли целевое утверждение истинным, исходя из данной программы, и если оно истинно, то для какой конкретизации переменных.
• Запятая между целями означает их конъюнкцию. Точка с запятой между целями означает их дизъюнкцию.
• Процедурная семантика Пролога — это процедура достижения списка целей в контексте данной программы. Процедура выдает истинность или ложность списка целей и соответствующую конкретизацию переменных. Процедура осуществляет автоматический возврат для перебора различных вариантов.
• Декларативный смысл программ на "чистом Прологе" не зависит от порядка предложений и от порядка целей в предложениях.
• Процедурный смысл существенно зависит от порядка целей и предложений. Поэтому порядок может повлиять на эффективность программы; неудачный порядок может даже привести к бесконечным рекурсивным вызовам.
• Имея декларативно правильную программу, можно улучшить ее эффективность путем изменения порядка предложений и целей при сохранении ее декларативной правильности. Переупорядочивание — один из методов предотвращения зацикливания.
• Кроме переупорядочивания существуют и другие, более общие методы предотвращения зацикливания, способствующие получению процедурно правильных программ.
• В данной главе обсуждались следующие понятия:
объекты данных:
атом, число, переменная, структура
терм
функтор, арность функтора
главный функтор терма
сопоставление термов
наиболее общая конкретизация
декларативная семантика
конкретизация предложений,
вариант предложения
процедурная семантика
вычисление целевого утверждения
Литература
Clocksin W. F. and Mellish С. S. (1981). Programming in Prolog. Springer-Verlag. [Имеется перевод: Клоксин У., Меллиш К. Программирование на языке Пролог. — М.: Мир, 1987.]
Lloyd J. W. (1984). Foundations of Logic Programming. Springer-Verlag.
Nilsson N. J. (1981). Principies of Artificial Intelligence. Tioga; Springer-Verlag.
Robinson A. J. (1965). A machine-oriented logic based on the resolution principle. JACM 12: 23-41. [Имеется перевод: Робинсон Дж. Машинно-ориентированная логика, основанная на принципе резолюции. — В кн. Кибернетический сборник, вып. 7, 1970, с. 194–218.]
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Резюме
Резюме В этой главе предлагается обсуждение сервисов сериализации. Вы могли убедиться в том. что платформа .NET для корректного учета всего множества связанных объектов, подлежащих сохранению в потоке, использует объектные графы. Когда каждый член объектного графа
Резюме
Резюме В этой главе были рассмотрены варианты конфигурации компоновочных блоков .NET, позволяющие совместное использование типов за рамками одного приложения. Вы увидели, что удаленный объект можно сконфигурировать, как MBV-или MBR-тип. Именно от этого, в конечном счете,
Резюме
Резюме Эта глава рассказывает об основах построения графического интерфейса с помощью типов, содержащихся в пространстве имен System.Windows.Forms. Сначала вам предлагается создать несколько приложений вручную, и в процессе этого выясняется, что GUI-приложение, как минимум,
Резюме
Резюме Аббревиатура GDI+ используется для обозначения ряда связанных пространств имен .NET, используемых для визуализации графических образов на поверхности производных от Control типов. Значительная часть этой главы была посвящена выяснению того, как работать с базовыми
РЕЗЮМЕ
РЕЗЮМЕ Основной темой данной главы было обсуждение возможностей управления ходом выполнения программы. Язык Си предоставляет много средств для структурирования программ. С помощью операторов while и for реализуются циклы с предусловием. Второй оператор особенно подходит
РЕЗЮМЕ
РЕЗЮМЕ Для создания больших программ вы должны использовать функции в качестве "строительных блоков". Каждая функция должна выполнять одну вполне определенную задачу. Используйте аргументы для передачи значений функции и ключевое слово return для передачи
Резюме
Резюме Итак, в этой главе вы познакомились с основами технологий оптических дисков и теперь, вооружившись знаниями, можете приступить к освоению самой программы Nero. По своей мощности и эффективности она не знает себе равных, но и требования, которые она предъявляет к
Резюме
Резюме В этой главе вы научились устанавливать пакет программ Nero 8 Premium Reloaded, познакомились со средствами запуска приложений пакета с помощью панели StartSmart, узнали, как работать со справочной системой приложений Nero 8 Premium. С помощью Start Smart пользователь пакета сможет
Резюме
Резюме В этой главе вы узнали, как создавать слайд-шоу. Для этого были использованы средства входящего в пакет Nero 8 приложения Nero Vision. Теперь вы знаете, как поместить фотографии в цифровой фотоальбом, сделать к ним звуковое сопровождение, создать красивое и понятное меню
Резюме
Резюме В этой главе вы узнали, что можно делать со звуковыми файлами при помощи встроенных в пакет Nero 8 приложений.Как записать файлы формата Audio CD на жесткий диск, как декодировать звуковые файлы в компактный MP3-формат, как с его помощью создать и сохранить на дисках свою
Резюме
Резюме Подведем краткий итог тому, что вы узнали из этой главы. Прежде всего, вы познакомились с новым приложением Nero Vision, входящим в состав пакета Nero 8. Вы научились создавать диски формата Video CD, используя два приложения – Nero Vision и Nero Burning ROM. Вы узнали, как выбрать
Резюме
Резюме Итак, подведем итог. Копирование дисков может осуществляться при помощи двух приводов, либо виртуального устройства. Копирование либо с помощью двух приводов осуществляется «на лету» с привода-источника на привод-приемник. А копирование посредством виртуального
Резюме
Резюме В этой главе мы рассмотрели две очень интересные программы пакета Nero 8 Premium – Nero Vision и Nero Recode, которые позволяют создавать DVD-Video либо из собственных видеоматериалов, либо из уже имеющихся дисков DVD-Video. Теперь вы знаете, как можно, пользуясь Nero Vision, получить
Резюме
Резюме Мы рассмотрели возможности пакета Nero 8 по архивированию и восстановлению данных средствами приложения Nero BackItUp. Теперь сохранение важной информации в виде резервных копий не будет представлять для вас трудностей. Воспользовавшись информацией из этой главы, вы
Резюме
Резюме В этой главе вы познакомились со вспомогательными инструментами пакета Nero 8. Теперь для вас не составит труда очистить перезаписываемый диск от ненужных записей, настроить скорость вращения диска в приводе. В этой главе мы также рассмотрели работу новых
Резюме
Резюме Эта глава была достаточно насыщена информацией и, честно говоря, была посвящена не столько алгоритмам и структурам данных, сколько технологиям увеличения быстродействия кода и процедурным методам.Иногда быстродействие является результатом правильного выбора