Теоретические основы организации ветвлений и повторений в программах на языке логического программирования пролог

Бесплатный доступ

Введение. Рассматривается организация ветвлений и повторений в контексте логического программирования на примере языка Пролог. Принципиальной особенностью программы на языке логического программирования является то, что компьютер должен решать задачу, проводя рассуждения подобно человеку. Такая программа содержит описание объектов и отношений между ними на языке математической логики. При этом остается актуальной программная реализация ветвлений и повторений в условиях отсутствия в логическом языке специальных операторов для указанных конструкций. Целями работы явились выявление наиболее эффективных способов для решения задач с применением ветвлений и повторений средствами языка логического программирования Пролог, а также демонстрация полученных результатов на примерах вычислительных задач. Материалы и методы. Выполнен анализ специальной литературы по теме исследования. Использованы методы обобщения, систематизации знаний, тестирования программы, анализ хода ее выполнения. Результаты исследования. Предложены конструкции организации ветвлений и повторений в программе на языке Пролог. Для организации повторений предложены различные варианты завершения рекурсивного цикла при решении задач.Обсуждение и заключения. Рассмотрены способы организации ветвлений и повторений на языке логического программирования Пролог. Все эти способы продемонстрированы на примерах решения задач вычислительного характера. Полученные результаты могут быть использованы при дальнейшей разработке рекурсивных предикатов в логических языках программирования, а также в учебном процессе при изучении логического программирования на языке Пролог. Приведенные примеры программ позволяют использовать их в качестве технологической основы программирования ветвлений и повторений на языке логического программирования Пролог.

Еще

Логическое программирование, ветвление, повторение предикатов, рекурсивное правило, условие окончания рекурсии

Короткий адрес: https://sciup.org/142229424

IDR: 142229424   |   DOI: 10.23947/2687-1653-2021-21-2-200-206

Список литературы Теоретические основы организации ветвлений и повторений в программах на языке логического программирования пролог

  • Genesys-Pro: Innovations in Test Program Generation for Functional Processor Verification / E. Adir, L. Almog, E. Fournier [et al.] // IEEE Design & Test of Computers. — 2014. — Vol. 21 (2). — P. 84-93. https://doi.org/10.1109/MDT.2004.1277900
  • ARM Architecture Reference Manual. ARM DDI 0487A.f. ARM Corporation, 2015. — 5886 p. |
  • Kent D. Lee. Foundations of Programming Languages / Kent D. Lee // Springer, 2017. — 370 p. g
  • Ute Schmid. Inductive Synthesis of Functional Programs: Universal Planning, Folding of Finite Programs, ¡§ and Schema Abstraction by Analogical Reasoning / Ute Schmid // Springer Science & Business Media, 2013. &
  • Adam Lally. Natural Language Processing with Prolog in the IBM Watson System / Adam Lally, Paul s Fodor // Association for Logic Programming, 2011. ^
  • Цуканова, Н. И. Теория и практика логического программирования на языке Visual Prolog 7 / ^ Н. И. Цуканова, Т. А. Дмитриева. — Москва : Горячая линия - Телеком, 2013. — 232 с. ¡ц
  • Eduardo Costa. Visual Prolog 7.3 for Tyros / Eduardo Costa // 2010. — 270 p. — URL: http://visual- £ prolog.com/download/73/books/tyros/tyros73.pdf E
  • Братко, И. Алгоритмы искусственного интеллекта на языке Prolog / И. Братко ; [пер. с англ. g К. А. Птицина]. — 3-е изд. — Москва : Вильямс, 2004. — 637 с. ^
  • Адаменко, А. Н. Логическое программирование и Visual Prolog / А. Н. Адаменко, А. М. Кучуков. — о Санкт-Петербург: БХВ-Петербург, 2003. — 982 с. Ц
  • Логика предикатов и язык Пролог / В. Т. Тарушкин, П. В. Тарушкин, Л. Т. Тарушкина, А. В. Юрков ю // Современные наукоемкие технологии. — 2010. — № 4. — С. 62-63. ^
  • Солдатова, О. П. Программирование на языке ПРОЛОГ / О. П. Солдатова, И. В. Лёзина. — Самара : ¡р Репозитарий Самарского государственного аэрокосмического университета : [сайт]. — 2008. — 52 с. 2
  • Coding guidelines for Prolog / Michael A. Covington, Roberto Bagnara, Richard A. O'Keefe [et al.] & // Theory and Practice of Logic Programming. — 2011. — Vol. 12 (6). — P. 889-927.
  • Марков, В. Н. Современное логическое программирование на языке Visual Prolog 7/5 / ® В. Н. Марков. — Санкт-Петербург : БХВ-Петербург, 2016. — 541 с.
  • Parallel Execution of Prolog Programs: a Survey / G. Gupta, E. Pontelli, K.A.M. Ali [et al.] // ACM Transactions on Programming Languages and Systems. — 2011. — Vol. 23 (4). — P. 472.
  • Особенности программной реализации логических задач на языке PROLOG / О. Н. Половикова, В. В. Ширяев, Н. М. Оскорбин, Л. Л. Смолякова // Известия Алтайского государственного университета. — 2021. — № 1 (117). — С. 166-120.
Еще
Статья научная