cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

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).

This page as a plain text file.
%I A136257 #38 Jul 11 2025 09:06:13
%S A136257 1,20,437,10461,270726,7456194,215666696,6485151199,201183083017,
%T A136257 6401210746834,207969967925893,6875935591529309
%N 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).
%C A136257 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.
%C A136257 If white cannot play a legal move under the rules of mirror chess then the game is considered to be a draw.
%C A136257 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
%H A136257 Jeremy Gardiner, <a href="http://www.woomerang.com/mchess/">Mirror Chess</a>
%H A136257 Jeremy Gardiner, <a href="/A136257/a136257.txt">Mirror Chess 3 moves supplied by Francois Labelle</a>
%e A136257 From _M. F. Hasler_, Jul 05 2025: (Start)
%e A136257 a(1) = 20 because White can make any of the 20 possible starting moves, to each of which Black can reply with the "same" (mirror) move.
%e A136257 Then, depending on the starting move, there are between 19 (for 1. a3, f3, f4 and h3) and 30 (for 1. e3) possible moves, for a total of a(2) = 437 moves (for each of which Black can reply with the "same" move).
%e A136257 At move 3, there is a total of 48 moves that are legal but not mirror-legal:
%e A136257 - After 1.c4: 2.d3 (or d4) 3.Qa4+, 2.d3 3.Qa4+, 2.Qb3 3.Qb5 (or Qxb6), and 2.Qa4 3.Qxa5 (or Qxd7+).
%e A136257 - After 1.d4: 2.c4 3.Qa4+, 2.e3 (or e4) 3.Bb5+, and 2.Qd3 3.Qb5+.
%e A136257 - Similarly after 1.c3 and 1.d3, and 20 more with 1.e3 or 1.e4.
%e A136257 - After 1.f4: 2.e3 3.Qh5+ and 2.e4 3.Qh5+, and after 1.g3: 2.Bh3 3.Bxd7+.
%e A136257 - Finally, there are also 9 sequences of only knight moves that end in a check, like 1.Nc3 2.Ne4 3.Nd6+ (or Nf6+). (End)
%e A136257 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
%e A136257   1.c4 c5 2.Qa4 Qa5 3.Qc6 Qc3 4.Qxc8#, corresponding to the following diagrams:
%e A136257         r n Q . k b n r        r n Q . k b n r        r n Q . k b n r
%e A136257         p p p . p p p p        p p p . p p p p        p p . p p p p p
%e A136257         . . . . . . . .        . . . . . . . q        . . . . . . . .
%e A136257         . . . p . . . .        . . . p . . . .        . . p . . . . .
%e A136257         . . . P . q . .        . . . P . . . .        . . P . . . . .
%e A136257         . . . . . . . .        . . . . . . . .        . . q . . . . .
%e A136257         P P P . P P P P        P P P . P P P P        P P . P P P P P
%e A136257         R N B . K B N R        R N B . K B N R        R N B . K B N R
%e A136257 where upper/lowercase letters represent white/black pieces, and dots stand for empty squares. - _M. F. Hasler_, Dec 08 2021
%o A136257 (Python)
%o A136257 import chess
%o A136257 def A136257(n, B=chess.Board()):
%o A136257     if n == 0: return 1
%o A136257     count = 0
%o A136257     for m in B.legal_moves:
%o A136257         B.push(m)
%o A136257         if not B.is_checkmate():
%o A136257             m.from_square ^= 56
%o A136257             m.to_square ^= 56  # reverse ranks through XOR with 7
%o A136257             if B.is_legal(m):
%o A136257                 if n == 1: count += 1
%o A136257                 else:
%o A136257                     B.push(m)
%o A136257                     count += A136257(n - 1, B)
%o A136257                     B.pop()
%o A136257         elif n == 1: count += 1
%o A136257         B.pop()
%o A136257     return count  # _M. F. Hasler_, Dec 08 2021
%Y A136257 Cf. A048987.
%K A136257 nonn,hard,more,fini
%O A136257 0,2
%A A136257 _Jeremy Gardiner_, Apr 18 2008
%E A136257 a(2) corrected and a(3) from _Jeremy Gardiner_, Mar 03 2013
%E A136257 a(3) corrected and a(4)-a(11) from _François Labelle_, Apr 12 2015