Czy podczas przechwytywania en passant możliwa jest taka pozycja, że ​​zamiast kwadratu zabranego pionka jest szpilka?


25

Próbuję napisać prosty program szachowy, w ramach którego piszę metody, aby znaleźć wszystkie prawidłowe ruchy. Mogę wykryć szpilki i nie mam problemu z pominięciem ruchów, które spowodowałyby, że gracz będący w ruchu był w szachu, z wyjątkiem jednej sytuacji, której nie jestem pewien.

Po zajęciu en passant nie tylko kwadrat zajmowany przez pionka przejmującego jest teraz pusty, ale także kwadrat pionu. Czy jest jakakolwiek pozycja, w której zdobycie en passant skutkuje odkrytym czekiem na króla gracza, który przechwytuje en passant , nie dlatego, że pionek był przypięty, ale dlatego, że czek został wcześniej zatrzymany przez złapany pionek?

Myślę, że taka sytuacja po prostu nie jest możliwa, przynajmniej nie mogę wymyślić pozycji i serii ruchów, które powodują taką sytuację; fakt, że musisz schwytać en passant przy pierwszej okazji oznacza, że ​​albo pionek, który powinien później przechwycić en passant, jest przypięty i nie może awansować do piątej rangi, lub czek i tak jest blokowany przez inny kawałek. Niestety mam problem z wykluczeniem, że jest jakaś sprzeczna z intuicją sytuacja, w której może się to zdarzyć. Czy ktoś może potwierdzić moje podejrzenia (lub podać kontrprzykład)?


2
Powiedzmy, że schwytany pionek jest czarny. Jeśli blokował czek na białym, oznacza to, że biały był w szachu przed ruchem czarnego pionka, co oznacza, że ​​biały był w szachu po ostatnim ruchu białego, co byłoby nielegalne. Dlatego pionek, który można złapać en passant, nie jest w stanie zablokować czeku na króla przeciwnika.
itub


@of Dziękuję, ale tak naprawdę nie o to mi chodziło. Ta część nie jest jednoznaczna w pytaniu, teraz ją edytuję.
11684

Pytanie dotyczy pinów, ale tytuł wciąż pyta o wykryte czeki.
bof

1
@IAPetrHarasimovic Czy definicja pinu wymaga, aby przypięty element nie mógł się poruszać w żadnym kierunku ? W pozycji po 1.e4 e5 2.f4 exf4 3.Nf3 Qe6 4.Bb6 Qxe4 + 5.Kf2 Nf6 Myślę, że większość graczy powiedziałaby, że 6.Re1 „przypina” czarną królową, chociaż może poruszać się do przodu i do tyłu .
bof

Odpowiedzi:


31

Naprawdę ciekawe pytanie. Myślę, że następujące pokazuje, że taka sytuacja jest możliwa, w zależności od tego, jak zdefiniujesz pin:

oraz 2. dxe6 jest nielegalny.

Sprawdzenie przejdzie od zatrzymania przez oba pionki do zatrzymania przez żadne z nich.


Nawiasem mówiąc, nie tak zdefiniowałbym pin podczas pisania pytania, ale właśnie to chciałem wiedzieć. Zdaję sobie sprawę, że lepszym sformułowaniem mojego pytania jest to, czy można bezpiecznie zakładać, że schwytanie en passant jest zawsze legalne (tj. Nie wystawiasz króla na kontrolę przechwytywaniem en passant), jeśli 1) spełnione są warunki do schwytania en passant oraz 2) pionek chwytający nie jest przypięty. Oba są spełnione przez twój kontrprzykład, ale ex6 jest nadal nielegalny. Wielkie dzięki!
11684,

Nie widzę pozycji na moim telefonie, zakładam, że ma wieżę na tym samym poziomie co oba pionki. Teoretycznie łapany pionek może również blokować biskupa. Miałoby to taki sam efekt, ale taka pozycja nie mogłaby wystąpić, gdyby wszystkie poprzednie ruchy były zgodne z prawem. Jednak przynajmniej jako przypadek testowy procedura powinna wykryć taki nielegalny ruch.
IA Petr Harasimovic

@IAPetrHarasimovic Być może, gdyby był głośnym niedoszłym konkurentem Sztokfisz, ale programuję to, ponieważ jest fajnie :) Niemniej jednak sposób, w jaki jest teraz zaprogramowany, powinien wykrywać to, co opisujesz.
11684

1

Chociaż odpowiedź na to pytanie została dobrze rozwiązana, chcę podzielić się problemem szachowym, który wykorzystuje dziwny mechanizm przypinania pionka przez wziętego pionka.

Cieszyć się!

Ten problem można znaleźć tutaj w bazie danych Yet Another Chess Problem .

Brunner, Erich Anselm, Deutsches Wochenschach (8515) 1908-12, White To Move And Selfmate
1. Ra4 c4 2. Qf7 + Kg4 3. b4 c3 #

Mała wskazówka dla niektórych: samookaleczenie to problem szachowy, w którym jedna strona zmusza drugą stronę do ich matowania.

Wieżowiec na a4 przypina czarnego pionka tak, że nie może on zabrać en passant, ponieważ wystawiłoby to czarnego króla na sprawdzenie. Tak więc Czarny pionek nie może tego zrobić i musi iść z kolegą do przodu.


0

Jest to możliwe, ale musisz sprawdzić, kto jest sprawdzany (nieznaczna gra słów zamierzona ... :-)).

Powiedzmy, że to ruch czarnych:

Czerń porusza pionek o dwie stopnie, otwierając go do en passantnego ruchu z białego pionka. Jeśli ten ruch prowadzi do sprawdzenia czarnego króla, jest to ruch nielegalny. Jeśli prowadzi to do czekania na białego króla, białe muszą odpowiedzieć, broniąc króla, a więc nie mogą wykonać ruchu pasywnego, chyba że ten ruch ochroni króla.

Jeśli nie zostanie wykonane sprawdzenie, biały może wykonać ruch en passant. Jeśli prowadzi to do sprawdzenia białego króla, jest to nielegalny ruch. Jeśli prowadzi to do kontroli czarnego króla, czarny musi odpowiedzieć broniąc króla.


1
Nie jestem pewien, czy całkowicie rozumiem twoją odpowiedź, ale sposób, w jaki ją czytam, nie odpowiada na pytanie. „Jeśli to prowadzi do czeku na białego króla ...” Całe pytanie brzmi, czy to może się zdarzyć, a nie czy wystawienie własnego króla na czek z twoim ruchem jest legalne.
11684,

Chodziło mi o to, że tak, może się zdarzyć - jak pokazali inni. Nie określiłeś, czy martwisz się o sprawdzenie, czy przeciwnika, dlatego sprawdziłem wszystkie możliwości, zauważając, że niektóre z nich były nielegalnymi ruchami. Krótko mówiąc, en pasywny ruch może rzeczywiście powstrzymać króla przeciwnika, ale nigdy twój, ponieważ byłby to nielegalny ruch. Przepraszam, jeśli nie było to całkowicie jasne.
f2k

To nie odpowiada na pytanie. Zdaję sobie sprawę z konsekwencji związanych z legalnością ruchu, chciałem tylko wiedzieć, czy pozycja, w której król gracza przechwytującego pasywę byłby pod kontrolą.
11684

Naprawdę nie jestem już pewien, o co pytasz. Jeśli zdajesz sobie sprawę z legalności tego ruchu, powinieneś wiedzieć, że żaden ruch nie może wystawić twojego króla na próbę. Czy potrafisz przechwycić w sposób pasywny, który wystawi na próbę twojego króla? Nie, oczywiście nie. Czy potrafisz przechwycić en passant, który wystawia na próbę króla przeciwnika? Tak, możesz.
f2k

2
Pyta, czy można bezpiecznie założyć, że przyjęcie en passant nigdy nie wystawi twojego króla na czek. Twoja odpowiedź jest taka, że ​​przechwycenie w trybie pasywnym nie może narazić króla na czek, ale nie jest poprawne, byłoby możliwe na niektórych pozycjach.
IA Petr Harasimovic
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.