Chest

toc
 * Home * Engines * Chest**

a program for solving orthodox chess problems, such as checkmate, stalemate, [|helpmate], helpstalemate, [|selfmate] and selfstalemate in N. Chest is under development since 1987, written in C|ANSI C by Heiner Marxen, Holger Pause and Thomas Rakovsky, while Heiner already started with a [|mate-in-two] solver written in Fortran II in 1973. Chest does not play chess, but proves shortest solutions or its absence. It was first released in December 1999 as open source. **ChestUCI** by Franz Huber, written in Delphi, is an UCI adapter for a slightly modified Chest 3.19, to run it from any GUI which can run UCI chess engines.
 * Chest**, (CHEST)

=Description=

Search
The main tree search function, utilizing a transposition table, is recursive, i.e. for a job of depth N this function does call itself several times with depth N-1, and always performs "iterative deepening", i.e. a job or subjob with a depth of 3 is first computed with a depth of 1, and if that fails, with a depth of 2 and if this also fails, with a depth of 3.

Board Representation
Chest uses a one-dimensional, incremental updated 16x24 mailbox board representation to not only apply vector attacks but also to allow any legal displacement vector between two non-border squares to be added to any legal square without probing memory outside the 16x24 array. Per square, it keeps distinct piece type and piece color, and further piece-sets of direct and indirect attacking/defending pieces. The redundancy pays off, since the attack info greatly speeds up the generation of legal moves.

=See also=
 * Alybadix
 * Checkmate
 * Chess Problems, Compositions and Studies
 * Chess Problem Solving Engines
 * Corresponding Squares
 * Gustav
 * Mate Search
 * Popeye
 * Proof-Number Search
 * Stalemate

=Forum Posts=

1999

 * [|CHEST 3.19 is available] by Heiner Marxen, CCC, December 18, 1999
 * [|Chest 3.19 is incredible!] by Dann Corbit, CCC, December 20, 1999
 * [|1924 NY Chess Championship -- chest analyzed mates so far] by Dann Corbit, CCC, December 27, 1999

2000 ...

 * [|Problem with CHEST] by Jouni Uski, CCC, January 04, 2000
 * [|Who can help me with Chest (mate solver)] by Michel Langeveld, CCC, August 23, 2000
 * [|Re: Chest (German)] by Heiner Marxen, CCC, June 03, 2001
 * [|The program chest?] by Kees van Iersel, CCC, October 10, 2001
 * [|Nalimov's EGTBs (long post with code)] by Heiner Marxen, CCC, October 13, 2001 » Nalimov Tablebases
 * [|CHEST bugfix available] by Heiner Marxen, CCC, May 05, 2002
 * [|A new(?) technique to recognize draws] by Heiner Marxen, CCC, June 01, 2002 » Corresponding Squares, Repetitions
 * [|´ChestUCI Ver.1.0´ - a new UCI-engine for the problem solver ´Chest´] by Franz Huber, CCC, August 24, 2002
 * [|About CHEST] by Jouni Uski, CCC, September 18, 2002
 * [|CHEST vs. ALYBADIX] by Jouni Uski, CCC, October 23, 2002 » Alybadix
 * [|Small Bug in Chest UCI] by Michael Drexel, CCC, May 23, 2004

2005 ...

 * [|ChestUCI 4.4 Update] by Franz Huber, CCC, February 14, 2006
 * [|Stunning Chest!] by Jouni Uski, CCC, September 02, 2007
 * [|ChestUCI 4.6] by Franz Huber, CCC, December 22, 2007
 * [|ChestUCI v5.0 released] by Marek Soszynski, CCC, March 05, 2008

2010 ...

 * [|ChestUCI Source Code] by Louis Zulli, CCC, December 15, 2010
 * [|ChestUCI 5.2 update] by Franz Huber, CCC, March 08, 2011
 * [|Re: Perft(3) from 1978, with a twist!] by Heiner Marxen, CCC, December 09, 2011 » Perft
 * [|Wanted: A successor to Chest] by Marek Soszynski, CCC, June 25, 2012
 * [|CHEST anniversary!] by Franz Huber, CCC, December 18, 2014

=External Links= > [|Readme Long]
 * [|Chest: A Program for Solving Orthodox Chess Problems] by Heiner Marxen
 * [|ChestUCI - Chess.com]

=References= =What links here?= include page="Chest" component="backlinks" limit="40"
 * Up one level**