Приветствую. Недавно в руки попал дневник одного небезызвестного математика с интересной биографией. Нашел там очень интересную задачу, вследствие чего решил с вами поделиться. Предлагаю обсудить построение модели, ну и само решение (для желающих).
Текст.
Используя только положение фигур на шахматной доске построить уравнение всех шахов (упрощенная версия - матов).
От меня: как я понял из содержания остальной части дневника, автор предлагает составить такое уравнение, что подставив туда каким-то образом данные о положении фигур, в случае, если мат (шах) можно поставить одним действием, уравнение обращается в тождество.
Можно попробовать описать нужное нам множество точек (аффинное многообразие) через систему полиномов над кольцом многочленов нескольких переменных. Например, возможное множество координат любой фигуры (включая короля) на пустой шахматной доске можно описать полиномом
. Теперь если подставить координаты любой фигуры в данный полином, то полином вернёт ноль в случае размещения фигуры на шахматной доске, и не ноль, если координаты выходят за пределы шахматной доски. Пока не вижу принципиальных трудностей, чтобы относительно небольшим множеством полиномов описать нужное аффинное многообразие (ниже попробую разобрать построение примера интересующего нас полинома).
Пусть мы описали всё поведение наших фигур через множество полиномов
(идеал в кольце многочленов нескольких переменных). Переменные
это координаты для каждой шахматной фигуры (всего 32 фигуры). Теперь составим один многочлен, который обнуляется на нашем аффинном многообразии:
. После построения подобного полинома мы получим функцию, которая возвращает ноль, если король под шахом.
Давайте для примера построим нужный нам полином, отвечающий за множество на поле тех клеток, которые шахует ферзь. Пусть для описания положения ферзя у нас зарезервированы переменные
, а для положения короля координаты
. Тогда построим такой полином, который возвращает ноль, если король не шахуется, и не ноль, если шахуется:
. Где полином
является нулём тогда и только тогда, когда координаты ферзя не соответствуют i-ой клеточке. Полином же
не равен нулю тогда и только тогда, когда король не на шахуемых клетках для ферзя на клетке под номером i. Подобные полиномы нужно строить так, как мы ранее строили полином
.
Отметим:
1) Данным полиномом мы описали излишни много точек, которые обнуляются. Объединение таких полиномов для разных фигур в систему (в идеал) является пересечением необходимых нам аффинных многообразий (с помощьюю новых полиномов описываем новые фигуры).
2) Описанный нами полином для ферзя немного усложнится, если мы станем учитывать и те фигуры, которые будут мешать ферзю шаховать нужные клетки. Но на мой взгляд точно такой же техникой, которую мы использовали выше, можно описать и это.
3) Не хочу особо думать, но так как координат у нас конечное множество, то (на мой взгляд) и инверсию значений полинома с нуля на не ноль и с не нуля на ноль сделать будет не сложно.
PS
Попробуйте решить задачу так.