Задача

На некоторых клетках квадратной клетчатой доски стоят рыцари, которые говорят только правду, а на некоторых — лжецы, которые всегда лгут. Некоторые клетки могут быть свободны; на каждой клетке стоит не более одного человека. Рыцари обозначены синими кружками, лжецы — красными. Составьте логическое выражение, которое истинно тогда и только тогда, когда каждый из стоящих на доске человек может произнести фразу «Все мои соседи лжецы». На левой картинке изображён пример, удовлетворяющий условию задачи, на правой — не удовлетворяющий.

Решение участника

Перед и мы проверяем, что у каждого рыцаря все соседи лжецы, а после и мы проверяем, что у каждого лжеца не все соседи лжецы.