We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

  • A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Logical and Relationa Programming

2022/2023
Academic Year
RUS
Instruction in Russian
4
ECTS credits
Delivered at:
Department of Informatics
Course type:
Elective course
When:
4 year, 3 module

Instructor


Булычев Дмитрий Юрьевич

Программа дисциплины

Аннотация

Является дисциплиной по выбору. Дисциплина направлена на обеспечение базовой подготовки студентов в области декларативного программирования, знакомство с основными понятиями и техникой логического и реляционного программирования. Для освоения дисциплины студентам необходимы знания, полученные в результате изучения дисциплин «Семантики языков программирования», «Компиляторы».
Цель освоения дисциплины

Цель освоения дисциплины

  • Формирование у студентов теоретических знаний и практических навыков по основам логического и реляционного программирования, основным алгоритмам поиска решений для декларативно специфицированных задач и реализации декларативных языков.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знает основные понятия и подходы, лежащие в основе логического программирования (унификацию, метод резолюций, откат и отсечения, стратегии поиска, отрицание как опровержение и т.д.).
  • Умеет программировать на языках Prolog и miniKanren, понимает принципы их функционирования и реализации.
  • Умеет формулировать задачи в терминах целей для соответствующих языков.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Тема 1. Задача выполнимости
  • Тема 2. Prolog
  • Тема 3. miniKanren
  • Тема 4. Программирование в ограничениях, системы переписывания
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание
    Домашнее задание выдается студентам в одном варианте и состоит из 7 заданий. Срок выполнения домашнего задания - 2 недели. Форма представления обучающимися домашнего задания — репозиторий с выполняющимися тестами.
  • блокирующий Письменный экзамен
    Письменный экзамен проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет формируется из двух вопросов из перечня вопросов к экзамену. На подготовку ответа выделяется 2,5 часа.
Промежуточная аттестация

Промежуточная аттестация

  • 2022/2023 учебный год 3 модуль
    0.4 * Письменный экзамен + 0.6 * Домашнее задание
Список литературы

Список литературы

Рекомендуемая основная литература

  • Pierce, B. C. (2002). Types and Programming Languages. Cambridge, Mass: The MIT Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=70966

Рекомендуемая дополнительная литература

  • Cardoso, J. M. P., & Diniz, P. C. (2009). Compilation Techniques for Reconfigurable Architectures. New York, NY: Springer. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=275651

Авторы

  • Кузнецов Антон Михайлович
  • Спицина Кристина Станиславовна