Check Extensions

Home * Search * Selectivity * Extensions * Check Extensions

Check Extensions have two distinct forms: one of them extends when giving check, the other - when evading it. In each case, typical depth to extend is one ply. The reason behind check extension is that we are in a forcing sequence, so that it is desirable to know its outcome with more certainty, and the number of replies to check is limited, so we do not have to be afraid of a search explosion. Also, not extending checks may easily lead to the horizon effect, delaying the threat so far that the program cannot see it. However, some programmers don't extend checks (and captures) with negative SEE or even reduce them. Robert Hyatt claimed a significant gain in Crafty by doing so.

If a program does not consider checks in the quiescence search, then we should take care that it does not enter it while in check. This is also a form of check extension. In its most straightforward form, check extension is implemented in TSCP.

=See also=
 * Checks in Quiescence Search
 * One Reply Extensions
 * Singular Extensions

=Forum Posts=

2000 ...

 * Check Extension by Martin Bauer, CCC, January 03, 2003
 * What's best low BF or good WAC result? by Albert Bertilsson, CCC, March 18, 2003 » Win at Chess
 * Buggy check extensions, back to square one =(. by Albert Bertilsson, CCC, March 20, 2003
 * check extention explosion by Aivaras Juzvikas, CCC, April 03, 2004 » Search Explosion
 * Checks in QSearch by Dan Honeycutt, Winboard Programming Forum, November 23, 2004 » Checks in Quiescence Search

2005 ...

 * hashing, check extensions and depth by Mike Adams, CCC, May 27, 2007
 * Revisiting Check Extensions by Mark Lefler, CCC, June 07, 2007
 * checks in q-search by Robert Hyatt, CCC, September 02, 2008
 * check extension by Andrew Short, CCC, August 07, 2008
 * check extensions by Robert Hyatt, CCC, October 28, 2008
 * Check extension by Harm Geert Muller, CCC, April 09, 2009

2010 ...

 * Problem with exploding tree because of extensions by Oliver Brausch, CCC, January 05, 2010
 * Problems when implementing checks in qsearch by Luca Hemmerich, CCC, February 03, 2010 » Checks in Quiescence Search
 * Spite checks by Harm Geert Muller, CCC, May 13, 2014
 * Pointless delays by Harm Geert Muller, CCC, July 25, 2014

2015 ...

 * Check-extension in QS by Harm Geert Muller, CCC, April 03, 2015 » Checks in Quiescence Search
 * Is a Check Extension Really a Win? by Steve Maughan, CCC, May 15, 2015
 * Spite checks, again by Harm Geert Muller, CCC, October 23, 2016
 * Starting with check extensions by Luis Babboni, CCC, February 28, 2017
 * Check Extensions by David Cimbalista, CCC, March 02, 2017
 * Check extension vs LMR by Harm Geert Muller, CCC, April 04, 2017 » LMR
 * Depth extensions and effect on transposition queries by Kenneth Jones, CCC, April 16, 2018 » Transposition Table

=External Links=
 * Extension Techniques in REBEL (checks) from Programmer Corner by Ed Schröder
 * Check extension from Bruce Moreland's Programming Topics

=References=

Up one Level