login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A136257
Number of possible plays on the n-th move in Mirror Chess in which Black's play is always the mirror image of White (White must either mate or play such that Black can mirror the move).
2
1, 20, 437, 10461, 270726, 7456194, 215666696, 6485151199, 201183083017, 6401210746834, 207969967925893, 6875935591529309
OFFSET
0,2
COMMENTS
By the number of possible plays on the n-th move is meant the total number of legal lines of play for white under the rules of mirror chess at a depth of n moves from the standard initial position.
If white cannot play a legal move under the rules of mirror chess then the game is considered to be a draw.
Among the 270726 possibilities up to move 4, only 3 correspond to games ending in checkmate, all at move 4: see examples. - M. F. Hasler, Dec 08 2021
EXAMPLE
A checkmate cannot occur earlier than at move 4, where we have the following possibilities: 1.d4 d5 2.Qd3 Qd6 3.Qf5 Qf4 4.Qxc8# or 3.Qh3 Qh6 4.Qxc8#, and
1.c4 c5 2.Qa4 Qa5 3.Qc6 Qc3 4.Qxc8#, corresponding to the following diagrams:
r n Q . k b n r r n Q . k b n r r n Q . k b n r
p p p . p p p p p p p . p p p p p p . p p p p p
. . . . . . . . . . . . . . . q . . . . . . . .
. . . p . . . . . . . p . . . . . . p . . . . .
. . . P . q . . . . . P . . . . . . P . . . . .
. . . . . . . . . . . . . . . . . . q . . . . .
P P P . P P P P P P P . P P P P P P . P P P P P
R N B . K B N R R N B . K B N R R N B . K B N R
where upper/lowercase letters represent white/black pieces, and dots stand for empty squares. - M. F. Hasler, Dec 08 2021
PROG
(Python)
import chess
def A136257(n, B=chess.Board()):
if n == 0: return 1
count = 0
for m in B.legal_moves:
B.push(m)
if B.is_checkmate():
if n == 1: count += 1
else:
m.from_square ^= 56
m.to_square ^= 56 # reverse ranks through XOR with 7
if B.is_legal(m):
if n == 1: count += 1
else:
B.push(m)
count += A136257(n - 1, B)
B.pop()
B.pop()
return count # M. F. Hasler, Dec 08 2021
CROSSREFS
Cf. A048987.
Sequence in context: A180810 A109116 A190922 * A320765 A099278 A276452
KEYWORD
nonn,hard,more,fini
AUTHOR
Jeremy Gardiner, Apr 18 2008
EXTENSIONS
a(2) corrected and a(3) from Jeremy Gardiner, Mar 03 2013
a(3) corrected and a(4)-a(11) from François Labelle, Apr 12 2015
STATUS
approved