Как преобразовать это предложение в хорошо сформированную формулу логики первого порядка?

Я пытаюсь преобразовать следующее предложение в хорошо сформированную формулу, используя логику первого порядка (логика предикатов).

Все башни одного цвета.

Я определил следующие предикаты:

Tower (x) :: x - это башня.

Color (x, y) :: x имеет цвет y

Я не могу преобразовать вышеупомянутое предложение в правильно сформированную формулу, используя указанные выше предикаты. Можно ли преобразовать его, используя указанные выше предикаты, или потребуется какой-то новый предикат. Пожалуйста, порекомендуйте.

РЕДАКТИРОВАТЬ: забыл добавить деталь. В мире доступно всего три цвета (красный, зеленый, синий). Можно ли использовать эту деталь. Имеет ли это какое-либо значение для решения?


person stressed_geek    schedule 11.04.2011    source источник
comment
Где тег домашнее задание?   -  person ziggystar    schedule 12.04.2011
comment
Не знал, что такой тег существует. В любом случае обновил теги сейчас. Спасибо!   -  person stressed_geek    schedule 12.04.2011


Ответы (3)


Существует Y1 такой, что для всех X Tower (X) влечет Color (X, Y1)

person David Thornley    schedule 11.04.2011
comment
Я думал об этом, но не могли бы вы объяснить, как это накладывает ограничение на то, что цвет всех таких башен должен быть одинаковым. Поскольку вы использовали квантор существования для количественной оценки переменной Y1, в которой говорится, что существует по крайней мере один Y1. В лучшем случае, я думал, что именно так следует произносить значение предложения. - person stressed_geek; 12.04.2011
comment
@stressed Я бы сказал, что ваша большая часть покрыта ответом Дэвида, потому что если вы считаете, что Y1 и Y2 удовлетворяют его свойству, а затем берете некоторый X, такой что Tower (X), у нас есть Color (X, Y1) и Color (X , Y2). Предполагая, что башня может иметь только один цвет, вы получите Y1 = Y2. Конечно, мы предполагаем, что здесь существует башня. - person Dunaril; 12.04.2011
comment
@Dunaril Пожалуйста, поправьте меня, если я ошибаюсь. Допустим, в нашем мире 2 башни x1, x2. Теперь, используя формулу Дэвида, мы можем получить Color (x1, y1) и Color (x2, y2). Но мы этого не хотим, мы хотим наложить ограничение так, чтобы цвета x1, y1 были одинаковыми. - person stressed_geek; 12.04.2011
comment
@Dunaril: не нужно предполагать существование башни. Не нужно даже предполагать существование цвета, если формула имеет префикс Если существуют X и Y такие, что Tower (X) и Color (X, Y), то ... - person Fred Foo; 12.04.2011
comment
@stressed_geek: ограничение - это формула Дэвида, поскольку из нее и Color (x1, y1) и Color (x2, y2) следует, что y1 = y2. Это разные переменные, обозначающие один и тот же объект (один цвет). - person Fred Foo; 12.04.2011
comment
@stressed Это зависит от того, может ли одна и та же башня иметь разные цвета, то есть могут ли вы иметь как Color (x1, y1), так и Color (x1, y2). Если это так, то вы действительно не можете получить свое самое большее. Но если для одной башни возможен только один цвет, тогда ваши y1 и y2 равны, потому что если они оба удовлетворяют правилу Дэвида, то у нас есть Color (x1, y1) и Color (x1, y2). - person Dunaril; 12.04.2011

Не будем предполагать, что существуют какие-либо башни или цвета.

tower(x) ∧ tower(y) ∧ color(x,z) → color(y,z)
person Jeffrey L Whitledge    schedule 12.04.2011

Разместив это на StackOverflow, я понял, что эта задача больше подходит для Math. Итак, я разместил здесь проблему.

Хотя решение Дейва совершенно правильное, опубликованное там решение кажется более интуитивным, поэтому я связываю его здесь для справки других пользователей.

person stressed_geek    schedule 13.04.2011