Пролог БНР
BNR Prolog , также известный как CLP(BNR) — это язык программирования с декларативной логикой ограничений , основанный на арифметике реляционных интервалов, разработанный в Bell-Northern Research в 1980-х и 1990-х годах. Внедрение арифметики реляционных интервалов в язык логического программирования отличается от другого программирования логики с ограничениями. (CLP) системы, такие как CLP(R) или Prolog-III, поскольку они не выполняют никакой символьной обработки. BNR Prolog был первой такой реализацией интервальной арифметики на языке логического программирования. [1] Поскольку распространение ограничения осуществляется по действительным интервальным значениям, можно выражать и частично решать нелинейные уравнения . [2]
Пример правила
[ редактировать ]Одновременные уравнения :
выражаются в CLP(BNR) как:
?- {X>=0,Y>=0, tan(X)==Y, X**2 + Y**2 == 5}.
и типичный ответ реализации будет таким:
X = _58::real(1.0966681287054703,1.0966681287054718),
Y = _106::real(1.9486710896099515,1.9486710896099542).
Да
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Росси, Франческо; Ван Бик, Питер; Уолш, Тоби , ред. (2006). Справочник по программированию в ограничениях (в твердом переплете) . Эльзевир. ISBN 9780444527264 .
- ^ Джаффар, Джоксан; Махер, Майкл Дж. (1994). «Программирование логики ограничений: обзор» . Журнал логического программирования . 19–20. Эльзевир: 503–581. дои : 10.1016/0743-1066(94)90033-7 .
Общие ссылки
[ редактировать ]- Дж. Г. Клири, «Логическая арифметика», Future Computing Systems, том 2, № 2, стр. 125–149, 1987.
- У. Олдер и А. Веллино, « Расширение Пролога с помощью арифметики ограничений на действительные интервалы », в Proc. Канадской конф. по электротехнике и вычислительной технике, 1990.
- Олдер В. и Бенаму Ф. Программирование в CLP (BNR), в: 1-й семинар по принципам и практике программирования с ограничениями, 1993.
Внешние ссылки
[ редактировать ]