PGN/AN Verification for Legal Chess Gameplay Neil Shah Guru Prashanth
[email protected] [email protected] May 10, 2015 Abstract Chess has been widely regarded as one of the world's most popular games through the past several centuries. One of the modern ways in which chess games are recorded for analysis is through the PGN/AN (Portable Game Notation/Algebraic Notation) standard, which enforces a strict set of rules for denoting moves made by each player. In this work, we examine the use of PGN/AN to record and describe moves with the intent of building a system to verify PGN/AN in order to check for validity and legality of chess games. To do so, we formally outline the abstract syntax of PGN/AN movetext and subsequently define denotational state-transition and associated termination semantics of this notation. 1 Introduction Chess is a two-player strategy board game which is played on an eight-by-eight checkered board with 64 squares. There are two players (playing with white and black pieces, respectively), which move in alternating fashion. Each player starts the game with a total of 16 pieces: one king, one queen, two rooks, two knights, two bishops and eight pawns. Each of the pieces moves in a different fashion. The game ends when one player checkmates the opponents' king by placing it under threat of capture, with no defensive moves left playable by the losing player. Games can also end with a player's resignation or mutual stalemate/draw. We examine the particulars of piece movements later in this paper.