Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32

Распознавание дизъюнкции

20.05.2010, 13:21. Показов 2154. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте помогите пожалуйста решить эти задачи:
1)Определим операторы:
:- op( 100, fy, ~).
:- op( 110, xfy, &).
:- op( 120, xfy, v).
Булева формула есть терм, определяемый следующим образом: константы true и false - булевы формулы; если X и Y - булевы формулы, то и X v Y, X & Y, ~X - булевы формулы, здесь v и & - бинарные инфиксные опера-торы дизъюнкции и конъюнкции, а ~ - унарный оператор отрицания.
Напишите программу, распознающую логические формулы в дизъюнктивной нормальной форме, т.е. форму-лы, являющиеся дизъюнкцией конъюнкций литералов, где литерал - атомарная формула или ее отрицание.

2)Определим операторы:
:- op( 100, fy, ~).
:- op( 110, xfy, &).
:- op( 120, xfy, v).

Булева формула есть терм, определяемый следующим образом: константы true и false - булевы формулы; если X и Y - булевы формулы, то и X v Y, X & Y, ~X - булевы формулы, здесь v и & - бинарные инфиксные опера-торы дизъюнкции и конъюнкции, а ~ - унарный оператор отрицания. Напишите программу, задающую отношение negation_inward(+F1,-F2), которое выполнено, если логическая формула F2 получается из логической формулы F1 внесением всех операторов отрицания внутрь конъюнкций и дизъюнкций.
Подсказка. Вы должны написать по одному правилу для каждого следующего случая:
(для краткости записи используем обозначения из математической логики)
1. Если исходная формула имеет вид true или false, то ответ совпадает с исходной формулой.
2. Если исходная формула имеет вид X или X, где X есть атом, то ответ совпадает с исходной форму-лой.
3. Если исходная формула имеет вид X, то результат равен рекурсивному применению предиката ne-gation_inward для X.
4. Если исходная формула имеет вид X & Y, то результат равен конъюнкции рекурсивных вызовов пре-диката negation_inward для X и Y.
5. Если исходная формула имеет вид X  Y, то результат равен дизъюнкции рекурсивных вызовов пре-диката negation_inward для X и Y.
6. Если исходная формула имеет вид (X  Y), то результат равен конъюнкции рекурсивных вызовов предиката negation_inward для X и Y (закон де Моргана).
7. Если исходная формула имеет вид (X & Y), то результат равен дизъюнкции рекурсивных вызовов предиката negation_inward для X и Y (закон де Моргана).
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2010, 13:21
Ответы с готовыми решениями:

Правилом де Моргана заменить знак конъюнкции на знак дизъюнкции, а знак дизъюнкции - на знак конъюнкции
с помощью правила де Моргана заменить знак конъюнкции на знак дизъюнкции, а знак дизъюнкции - на знак конъюнкции (помогите с ответом )

Выразить операцию дизъюнкции через имплекацию
Помогите, пожалуйста, с этим. Первый курс, не всё понимаю с этим.

Доказать что из дизъюнкции выводима импликация
Как доказать это? с помощью каких аксиом и правил вывода? как правильно удалить дизъюнкцию? {не A или B } |- A --> B

4
 Аватар для Грымзик
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
20.05.2010, 13:41
Первая:
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
:- op( 100, fy, ~).
:- op( 110, xfy, &).
:- op( 120, xfy, v).
 
p(X):-atom(X).
p(~X):-atom(X).
 
kon(X):-p(X).
kon(X&Y):-kon(X),kon(Y).
 
check(X):-kon(X).
check(X v Y):-check(X),check(Y).
?- check((a& ~b)v c).
true.

А вторую сами попробуйте, там же все уже написано.
1
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
20.05.2010, 14:48  [ТС]
Спасибо, со 2-й сам попробую поразбираться!
0
0 / 0 / 1
Регистрация: 04.07.2014
Сообщений: 83
26.05.2016, 13:39
Решение немного не верное.
выдает true, что не верно
Prolog
1
check((a v b v ~c) v d v (k v l)).
Prolog
1
check((a v b v ~c) v d v k & l).
0
0 / 0 / 1
Регистрация: 04.07.2014
Сообщений: 83
02.06.2016, 15:05
Ап. Так и не решил задачу, уже кучу вариантов перепробовал.
Помогите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.06.2016, 15:05
Помогаю со студенческими работами здесь

Работа с текстом после дизъюнкции символов.
Всем доброе время суток. Часто в при создании приложений использую дизъюнкцию ((int) A ^ (int) B) для кодировки информации. Но иногда...

Преобразование к дизъюнкции,конъюнкции и отрицанию(решение есть)
Дана функция со стрелкой Пирса, штрихом Шеффера и полиномом Жегалкина, надо упростить до дизъюнкций, конъюнкций и отрицания. Я собственно...

Найти значение истинности конъюнкции дизъюнкции и эквивалентности высказываний
Задано значение истинности высказываний p и q. Найти значение истинности конъюнкции дизъюнкции и эквивалентности этих высказываний. То есть...

Доказать или опровергнуть дистрибутивность квантора всеобщности относительно дизъюнкции
Доброго времени суток, уважаемые участники форума. Нужно доказать или опровергнуть дистрибутивность квантора всеобщности относительно...

МТ:Вычисление поразрядной дизъюнкции двух целых неотрицательных двоичных чисел
Помогите понять условие задачи. Не понимаю что нужно делать. Задание: Вычисление поразрядной дизъюнкции двух целых неотрицательных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru