выразить следующие утверждения как формулы в логике предикатов первого порядка - PullRequest
0 голосов
/ 02 сентября 2018

Пусть:
• B (x) для «x имеет раздвоенные рога»
• D (x) для «x страдает кожной астенией»
• F (x) для «х - это женщина»
• M (x, y) для «x - мать y»
• S (x) для «x является силдавским»
• U (x) для «х единорог»

Как мне выразить
1) «Матери-единороги с кожной астенией передают условие всем своим детям»

2) «Любой единорог, чья мать по-силдавски, страдает кожной астенией»
в логике предикатов первого порядка?

Моя попытка
1)
существует х и для всех у,
если х мать у
а х единорог
и у x кожная астения,
это также означает, что у вас кожная астения.

∃x∀y ((M (x, y) ∧ U (x) ∧ D (x)) -> D (y))

2)
для всех х и у
если у единорог
и х - мать тебя,
и х силдавский, это означает, что у вас кожная астения

∀x∀y ((U (y) ∧ M (x, y) ∧ S (x)) -> B (y))

Буду признателен за любую помощь, особенно в том, когда использовать ∀ и когда использовать ∃. Спасибо.

1 Ответ

0 голосов
/ 02 сентября 2018

"Матери-единороги с кожной астенией передают условие всем своим потомкам"

∀x∀y ((M (x, y) ∧ U (x) ∧ D (x)) -> D (y))

"Любой единорог, чья мать - Силдавиан, страдает кожной астенией"

∀x∀y ((M (x, y) ∧ U (y) ∧ S (x)) -> D (x))

Здесь нет утверждений "существует" или "хотя бы один". Эти утверждения относятся ко всем единорогам, поэтому мы не используем ∃.

...