![]() |
|
![]() ![]() ![]() |
|
sadgb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 21.10.2007 Репутация: 1 Всего: 1 |
всем привет )
столкнулся с небольшой проблемой . у меня есть какая то большая сложная логичская формула , я разбил её на подформулы и сделал все необходимые процедуры для её вычисления . Ну вот в частности небольшая вырезка из кода formule(A,B,C,D,E):- implication(subf1(A,B,C,D,E),subf2(A,B,C,D,E)). главная формула представляет собой импликацию 2 подформул , как видите всё от 2-х переменных. Необходимо сделать возможность изменения формулы, то есть например заменить импликацию на логическое умножение formule(A,B,C,D,E):- &(subf1(A,B,C,D,E),subf2(A,B,C,D,E)). я думал что можно как с фактами и побежал писать :-dynamic formule/5. На что мне компилятор сказал что так делать нельзя ибо '$set_predicate_attribute'/3: No permission to modify static_procedure 'formule/5' (procedure has active clauses) подскажите как можно по ходу выполнения программы менять процедуры или подскажите другие пути сделать поддержку корректировки формулы . спасибо ![]() Это сообщение отредактировал(а) sadgb - 15.9.2008, 07:53 |
|||
|
||||
sadgb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 21.10.2007 Репутация: 1 Всего: 1 |
всем спасибо.... сделал процедуру которая в зависимости от факта вычисляеться по разному... не самое лучшее решение но выбора не было
|
|||
|
||||
![]() ![]() ![]() |
Правила форума Prolog | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Prolog | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |