Endgame+Tablebases

precalculated endgame [|tables] generated by an exhaustive retrograde analysis. During its game play and/or search, recognizing a specific material composition, a chess program can probe, or in principle compute these tables to determine the outcome of positions definitively and act as an oracle providing the optimal moves. The tables are usually divided into separate [|files] for each material configuration and side to move. What all different formats of tablebases have in common is that every possible piece placement has its own, unique index number which represents the position where the information about the position is located in the file. Positions with non-null castling rights could be represented in an EGT but typically are not.
 * Home * Knowledge * Endgame Tablebases**
 * [[image:Persistence.jpg link="http://www.chgs.umn.edu/museum/responses/bak/chess.html"]] ||~  || **Endgame Tablebases**, (EGTBs or EGTs)

The term **Tablebase** opposed to endgame database was coined by Steven Edwards by means of a data vector and a single file access for both sides to move, when he introduced his Edwards' Tablebases, addressing several shortcomings of Ken Thompson's earlier database of positions with the weaker and hence potentially losing side to move only. || toc =Metrics=
 * Samuel Bak - Persistence ||~  ||^   ||

DTM
'Mate' is the ultimate goal and ends the game. For each position that is represented, 'DTM' indicates the theoretical value, and the number of winner's moves to 'Mate' if won/lost - assuming that the winner is minimizing and the loser is maximizing DTM.
 * Depth to Mate**

DTC
'Conversion' is the changing of the force on the board, by capture and/or Pawn-conversion. For each position that is represented, 'DTC' indicates the theoretical value, and the number of winner's moves to the goal of 'Won Conversion' if won/lost - assuming that the winner is minimizing and the loser is maximizing DTC. DTC £ DTM.
 * Depth to Conversion**

DTZ
The ply-count is zeroed if and only if a Pawn is pushed or a capture is made. For each position that is represented, 'DTZ' indicates the theoretical value, and the number of winner's moves to the goal of 'Win and ply-count zeroed' if won/lost - assuming that the winner is minimizing and the loser is maximizing DTZ. DTZ £ DTC £ DTM.
 * Depth to Zeroing (of the ply count)**

DTZ50
The DTC, DTM and DTZ metrics do not consider the current FIDE 50-move rule whereby a game in which no irreversible moves have been played for 100 plies can be claimed as a draw by the player 'on move'. In this metric, in addition to the DTC/DTM/DTZ //draws//, positions requiring more than 50 winner's moves to zero the ply-count are defined as //draws//. DTZ £ DTZ50 if DTZ50 ¹ //draw.// 'DTZ50' is one of a set of 'DTZk' rules: a //k//-//move rule// effectively applies if there are only //k// moves left before a draw-claim might be made. //k1// £ //k2// implies //DTZk2// £ //DTZk1 if DTZk1// ¹ draw.
 * Depth to Zeroing (of the ply count) in the context of the //50-Move// //Rule//**

Note that, because depth is measured in winner's moves rather than plies, this metric does **not** define as //draw// a position in which 50 winner's moves and 51 loser's moves are required to zero the ply-count, despite the fact that the loser would claim a draw after 100 plies had been played in that endgame.

DTR
'The Rule' referred to here is a notional set of //k//-move rules. For each position that is represented, 'DTR' indicates the theoretical value and, for won/lost positions//,// the least //k// for which DTZ//k// is not //draw// - assuming that the winner is minimising and the loser is maximising DTR. DTZ £ DTR. No DTR EGTs have been created to date.
 * Depth by the (//k-//move) Rule**

DTZR
If DTR = //draw//, then DTZR = //draw//. Otherwise, Otherwise DTRZR indicates the theoretical value, and the number of winner's moves to the zeroing of the ply count, given that the two sides are minimaxing first DTR and then DTZR. DTZR would be used in conjunction with DTR to progress a deep win in the context of a //k//-move rule because DTR can remain unchanged over a sequence of moves. DTZR £ DTR but it is not always the case that DTZ £ DTZR as may seem intuitively obvious: the loser may zero the move-count to maximise DTR.
 * Depth to Zeroing move, give that DTR is being minimaxed**

Summary
To summarize the different metrics of tablebases, each metric has its strengths and weaknesses. Nalimov's DTM EGTs are widely and commercially available, and used by many chess engines or chess GUIs. DTC EGTs are more easily computed and stored as they involve smaller depth-ranges and are more compressible. For endgames with less or equal than 5 pieces on the board, KNNKP comes closest to requiring more than one Byte per position to store DTM: maxDTM = 115 (1-0) and 73 (0-1) necessitating 190 values in the EGT. For KPPKP, maxDTM = 127 (1-0) but only 42 (0-1). But for certain 6 piece endgames, one Byte is not enough: maxDTM = 262 for a KRNKNN position. The DTC and DTZ metrics increasingly postpone the need for two Bytes per position in an uncompressed EGT, but KRBNKQN has maxDTC = maxDTZ = 517 (0-1), both wtm and btm.

In extremis, he unmoderated use of DTM, DTC or DTZ EGTs will let slip a winnable position in the context of the 50-move rule ... hence the marginal need for the DTR and DTZR metrics, coupled with the ability to recompute DTR/DTZR EGTs in the context of a limited move-budget.  =Bitbases= //see main article Endgame Bitbases//

Inside the search much denser tables with value {//won//, //draw//, //loss//, //invalid//} or boolean {//win//, //not_win//} information are sufficient with respect to bounds. Denser tables are more efficiently used, given that memory and cache are limited resources. Boolean //Win/Not_Win// Bitbases require only one bit per position (and if necessary, further enquiry if //draw// is to be distinguished from //loss// with respect to bounds). //Value// Bitbases require two bits per position.

=Indexing= Every position is assigned to an unique index to specify the location of the information stored about it. There are two main aims when generating the index number. The easier the algorithm to generate the index from any given position, the faster will be the probing of the tablebase as well as the generation of it. But the second aim is to get a relatively small range of index-numbers, to keep the size of the file as small as possible.

The most straight forward way would be to for every piece on the board use 6 bit (1-64 squares) code index = position_white_King + position_black_King * 64

for each piece { index = index * 64 + position } code This can be optimized in several ways. A chess board can be rotated and mirrored (if pawns are on the board only a vertical reflection is possible).
 * Pieces may not stand on the same square.
 * For pieces of the same type, different arrangements can be left away.
 * The side to move may not give check.
 * The distance between the two Kings must be greater than one.

=Brief Info= of some popular Endgame tablebases:  =Formats= =Generators=  =7-man EGTBs=
 * ~ Format ||~ Metric ||~ 1st published ||~ 5 men ||~ 6 men ||~ 7 men ||
 * Thompson ||= DTC ||= 1991 || 2.5 [|GiB] (not completed) ||= - ||= - ||
 * Edwards ||= DTM ||= 1994 || 56 GiB (estimated) ||= - ||= - ||
 * Nalimov ||= DTM ||= 1998 || 7.1 GiB ||= 1.2 [|TiB] ||= - ||
 * Scorpio ||= WDL ||= 2005 || 214 [|MiB] ||= 48.1 GiB ||= - ||
 * Gaviota ||= DTM ||= 2008 || 6.5 GiB ||= - ||= - ||
 * Lomonosov ||= DTM ||= 2012 ||= - ||= - ||= 140 TiB ||
 * Syzygy ||= WDL + DTZ50 ||= 2013 || 939 MiB ||= 150.2 GiB ||= - ||
 * Chenard's EGDB
 * Edwards' Tablebases
 * Gaviota Tablebases
 * Lomonosov Tablebases
 * Nalimov Tablebases
 * RetroChess
 * Scorpio Bitbases
 * Syzygy Bases
 * Thompson's Databases
 * FinalGen
 * Freezer
 * GAFS

2005
In 2005, Yakov Konoval started to collaborate with Marc Bourzutschky on constructing 7-man EGTBs. Yakov wrote the generator and Marc a verification program and some utilities for extracting the data. In October 2005, Yakov Konoval and Marc Bourzutschky announced that a position in the ending of a KRRNkrr requires 290 moves to convert to a simpler winning endgame. The old record was 243 moves from a position in a rook and knight versus two knights endgame, discovered by Lewis Stiller in 1991.

2006
In March 2006, the wizards of 7-men endgames, Marc Bourzutschky and Yakov Konoval found a 330 moves win in KQBNkqb and in May 2006 a 517 moves win in KQNkrbn.

2012
In July 2012, Vladimir Makhnychev and Victor Zakharov from Moscow State University completed 4+3 DTM-tablebases (525 endings including KPPPKPP). The next set of 5+2 DTM-tablebases was completed during August 2012. The tablebases are named Lomonosov Tablebases, using the Lomonosov Supercomputer.

2013
Convekta Ltd. announced the release of Lomonosov Tablebases. Until December 31, 2013, the tablebases will be available online through ChessOk products.

=See also=
 * Retrograde Analysis
 * Endgame
 * Interior Node Recognizer
 * KPK
 * Oracle

=Selected Publications=

1965 ...

 * Richard E. Bellman (**1965**). //[|On the application of dynamic programming to the determination of optimal play in chess and checkers].// Proceedings of the National Academy of Sciences of the United States of America. [|pdf]

1970 ...

 * Thomas Ströhlein (**1970**). //Untersuchungen über kombinatorische Spiele.// Ph.D. Thesis, Technical University of Munich (German)
 * Edward Komissarchik, Aaron L. Futer (**1974**). //Ob Analize Ferzevogo Endshpilya pri Pomoshchi EVM.// (Analysis of a queen endgame using an IBM computer) Problemy Kybernetiki, Vol. 29, pp. 211-220. English translation by C. Posthoff, revised in ICCA Journal, Vol. 9, No. 4 (**1986**)

1975 ...

 * [|A. G. Alexandrov], [|A. M. Baraev], [|Ya. Yu. Gol'fand], Edward Komissarchik, Aaron L. Futer (**1977**). //[|Computer analysis of rook end game]//. [|Avtomatika i Telemekhanika], No. 8, 113–117
 * [|A. G. Alexandrov], Vladimir Arlazarov, [|A. M. Baraev], [|Ya. Yu. Gol'fand], [|V. N. Deza], [|T. P. Il’ina], Edward Komissarchik, Anatoly Uskov, [|I. A. Faradzhev], Aaron L. Futer (**1977**). //[|Processing of large files of information on the example of the analysis of the rook’s end game]//. [|Programming and Computer Software], No. 3
 * Thomas Ströhlein, Ludwig Zagler (**1977**). //[|Analyzing games by Boolean matrix iteration]//. [|Discrete Mathematics], Vol. 19, No. 2
 * Thomas Ströhlein, Ludwig Zagler (**1978**). //Ergebnisse einer vollstandigen Analyse von Schachendspielen: König und Turm gegen König, König und Turm gegen König und Laufer.// Report, Institut für Informatik, Technical University of Munich (German)
 * Max Bramer (**1978**). //Computer-Generated Databases for the Endgame in Chess.// Technical Report. [|Milton Keynes], [|Open University] Faculty of Mathematics.
 * Aaron L. Futer (**1978**). //[|Programming endgames with few pieces]//. [|Soviet Physics. Doklady], No. 23
 * Vladimir Arlazarov, Aaron L. Futer (**1979**). //Computer Analysis of a Rook End-Game//. [|Machine Intelligence 9] (eds. Jean Hayes Michie, Donald Michie and L.I. Mikulich), pp. 361-371. Ellis Horwood, Chichester. Reprinted in Computer Chess Compendium

1985 ...

 * Jaap van den Herik, Bob Herschberg (**1985**). //The Construction of an Omniscient Endgame Data Base//. ICCA Journal, Vol. 8, No. 2
 * John Roycroft (**1985**). //Chess-Endgame Data-Base`Oracles': Necessary and Desirable Features//. ICCA Journal, Vol. 8, No. 2
 * Harry Nefkens (**1985**). //Constructing Data Bases to Fit a Microcomputer//. ICCA Journal, Vol. 8, No. 4
 * 1986**
 * Jaap van den Herik, Bob Herschberg (**1986**). //A Data Base on Data Bases//. ICCA Journal, Vol. 9, No. 1
 * John Roycroft, Ken Thompson (**1986**). //Queen and Pawn on a2 against Queen//. Chess Endgame Consultants and Publishers, London
 * John Roycroft, Ken Thompson (**1986**). //Queen and Pawn on a6 against Queen//. Chess Endgame Consultants and Publishers, London
 * John Roycroft, Ken Thompson (**1986**). //Queen and Pawn on b7 against Queen//. Chess Endgame Consultants and Publishers, London
 * Jaap van den Herik (**1986**). //Roycroft's 5-Man Chess Endgame Series//. ICCA Journal, Vol. 9, No. 3
 * Ken Thompson (**1986**). //Retrograde Analysis of Certain Endgames//. ICCA Journal, Vol. 9, No. 3, [|pdf]
 * Edward Komissarchik, Aaron L. Futer (**1986**). //Computer Analysis of a Queen Endgame//. ICCA Journal, Vol. 9, No. 4
 * Ken Thompson (**1986**). //An Example of QPvQ//. ICCA Journal, Vol. 9, No. 4
 * Hans Zellner (**1986**). //Compressing Databases Down to Micro Size//. ICCA Journal, Vol. 9, No. 4
 * 1987**
 * Hans Zellner (**1987**). //KBBK Squeezed into a Micro//. ICCA Journal, Vol. 10, No. 1
 * Jaap van den Herik, Bob Herschberg (**1987**). //The KBBKN Statistics: New Data from Ken Thompson//. ICCA Journal, Vol. 10, No. 1
 * Bob Herschberg, Jaap van den Herik (**1987**). //More Truth on KBBK Database Results//. ICCA Journal, Vol. 10, No. 2
 * Hans Zellner, Jaap van den Herik, Bob Herschberg (**1987**). //Corrections and Substantiations to KBNK//. ICCA Journal, Vol. 10, No. 3
 * Sito Dekker, Jaap van den Herik, Bob Herschberg (**1987**). //Complexity Starts at Five.// ICCA Journal, Vol. 10, No. 3
 * Lars Rasmussen (**1987**). //Correcting grandmasters' Analyses in Elementary Endgames//. ICCA Journal, Vol. 10, No. 4
 * Jaap van den Herik, Bob Herschberg, Najib Nakad (**1987**). //A Six-Men-Endgame Database: KRP(a2)KbBP(a3)//. ICCA Journal, Vol. 10, No. 4, [|pdf]
 * Sito Dekker, Jaap van den Herik, Bob Herschberg (**1987**). //Perfect Knowledge and Beyond//. Report 37-87, Delft University of Technology, Delft.
 * John Roycroft (**1987**). //Expert Against Oracle//. [|Machine Intelligence 11]
 * 1988**
 * Jaap van den Herik, Bob Herschberg (**1988**). //Computer Checks on Human Analyses of the KRKB Endgame//. ICCA Journal, Vol. 11, No. 1
 * Lars Rasmussen (**1988**). //Ultimates in KQKR and KRKN//. ICCA Journal, Vol. 11, No. 1
 * Lewis Stiller (**1988**). //Massively Parallel Retrograde Endgame Analysis//. BUCS Tech. Report #88-014, Boston University, Computer Science Department.
 * Jaap van den Herik, Bob Herschberg, Najib Nakad (**1988**). //A Reply to R. Sattler's Remarks on the KRP(a2)KbBP(a3) Database//. ICCA Journal, Vol. 11, No. 2/3, [|pdf]
 * Lars Rasmussen (**1988**). //A Database for KRKP//. ICCA Journal, Vol. 11, No. 4
 * 1989**
 * Christopher A. Marris (**1989**). //Compressing a Chess-Endgame Database//. ICCA Journal, Vol. 12, No. 1
 * David Forthoffer, Lars Rasmussen, Sito Dekker (**1989**). //A Correction to some KRKB-Database Results//. ICCA Journal, Vol. 12, No. 1
 * [|Edmar Mednis] (**1989**). //Rook and Bishop versus Rook: The Controversial Endgame//. ICCA Journal, Vol. 12, No. 1
 * Lewis Stiller (**1989**). //Parallel Analysis of Certain Endgames//. ICCA Journal, Vol. 12, No. 2
 * Hans Zellner (**1989**). //The KPK Database Revisited//. ICCA Journal, Vol. 12, No. 2
 * Sito Dekker, Jaap van den Herik, Bob Herschberg (**1989**). //Perfect Knowledge and Beyond//. Advances in Computer Chess 5
 * Bob Herschberg, Jaap van den Herik, Patrick Schoo (**1989**). //Verifying and Codifying Strategies in the KNNKP(h) Endgame//. ICCA Journal, Vol. 12, No. 3, [|pdf]
 * Hans Zellner (**1989**). //KBBKN on a Micro//. ICCA Journal, Vol. 12, No. 3
 * John Roycroft (**1989**). //The Computer is at it again - Interfering with the Endgame!// [|Britisch Chess Magazine], Vol. 109, No. 10

1990 ...

 * Bob Herschberg, Jaap van den Herik, Patrick Schoo (**1990**). //Verifying and Codifying Strategies in a Chess Endgame//. Computers, Chess, and Cognition, pp. 183-196
 * John Roycroft (**1990**). //How to Treat Endgame Databases.// ICCA Journal, Vol. 13, No. 2
 * Ken Thompson (**1990**). //KQPKQ and KRPKR Endings//. ICCA Journal, Vol. 13, No. 4
 * John Roycroft (**1990**). //Identifying Three Types of Zugzwang//. ICCA Journal, Vol. 13, No. 4 » Zugzwang
 * 1991**
 * Ken Thompson (**1991**). //Chess Endgames Vol. 1.// ICCA Journal, Vol. 14, No. 1
 * Ken Thompson (**1991**). //New Results for KNPKB and KNPKN Endgames//. ICCA Journal, Vol. 14, No. 1
 * [|Edmar Mednis] (**1991**). //Database Results for KQKRN and KQKRB annotated//. ICCA Journal, Vol. 14, No. 2
 * John Roycroft (**1991**). //A Postscript to the Computer's Involvement//. [|Britisch Chess Magazine], Vol. 111, No. 2
 * Lewis Stiller (**1991**). //Some Results from a Massively Parallel Retrograde Analysis.// ICCA Journal, Vol. 14, No. 3
 * John Roycroft (**1991**). //A Side-Effect of new Database Knowledge//. ICCA Journal, Vol. 14, No. 3
 * John Roycroft (**1991**). //A Use for Endgame Databases?// ICCA Journal, Vol. 14, No. 4
 * John Roycroft, Don Beal (**1991**). //To Make Dumb Endgame Databases Speak//. Advances in Computer Chess 6
 * 1992**
 * Lewis Stiller (**1992**). //KQNKRR//. ICCA Journal, Vol. 15, No. 1
 * John Nunn (**1992**). //Perfect Prose//. ICCA Journal, Vol. 15, No. 2
 * Lars Rasmussen (**1992**). //Queen versus Rook and Pawn//. ICCA Journal, Vol. 15, No. 2
 * 1993**
 * Burton Wendroff, Tony Warnock, Lewis Stiller, Dean Mayer, Ralph Brickner (**1993**). //Bits and pieces: constructing chess endgame databases on parallel and vector architectures//. Appl. Num. Math. 12, pp. 285-295, [|zipped ps]
 * Christian Posthoff, Michael Schlosser, Jens Zeidler (**1993**). //Search vs. Knowledge? - Search and Knowledge!// In: Proc. 3rd KADS Meeting, Munich, March 8-9 1993, Siemens AG, Corporate Research and Development, 305-326, 1993.
 * John Nunn (**1993**). //Extracting Information from Endgame Databases//. ICCA Journal, Vol. 16, No. 4
 * 1994**
 * Ingo Althöfer, Bernhard Walter (**1994**). //Weak Zugzwang: Statistics on some Chess Endgames//. ICCA Journal, Vol. 17, No. 2
 * John Nunn (**1994**). //More, and More Perfect Prose//. ICCA Journal, Vol. 17, No. 2
 * John Nunn (**1994**). //Extracting Information from Endgame Databases//. Advances in Computer Chess 7
 * Christian Posthoff, Michael Schlosser, Rainer Staudte, Jens Zeidler (**1994**). //Transformations of Knowledge//. Advances in Computer Chess 7
 * Grit Lachmann (**1994**). //Verarbeitung von Wissen aus Endspieldatenbanken//. Master's thesis, Chemnitz University of Technology (German)

1995 ...

 * Steven Edwards and the Editorial Board (**1995**). //An Examination of the Endgame KBNKN//. ICCA Journal, Vol. 18, No. 3
 * Henri Bal, Victor Allis (**1995**). //Parallel Retrograde Analysis on a Distributed System//. Supercomputing ’95, San Diego, CA.
 * 1996**
 * Dietmar Lippold (**1996**). //Legality of Positions of Simple Chess Endgames//. [|zipped pdf]
 * Ken Thompson (**1996**). //6-Piece Endgames//. ICCA Journal, Vol. 19, No. 4
 * Lewis Stiller (**1996**). //Multilinear Algebra and Chess Endgames//. [|Games of No Chance] edited by Richard J. Nowakowski, [|pdf]
 * 1997**
 * Dietmar Lippold (**1997**). //The Legitimacy of Positions in Endgame Databases//. ICCA Journal, Vol. 20, No. 1
 * Ken Thompson (**1997**). //6-Piece Endgames//. Advances in Computer Chess 8
 * Johannes Fürnkranz (**1997**). //Knowledge Discovery in Chess Databases: A Research Proposal.// Technical Report OEFAI-TR-97-33, Austrian Research Institute for Artificial Intelligence, [|zipped ps], [|pdf]
 * 1999**
 * Ernst A. Heinz (**1999**). //Endgame Databases and Efficient Index Schemes for Chess.// ICCA Journal, Vol. 22, No. 1, [|ps]
 * Ernst A. Heinz (**1999**). //Knowledgeable Encoding and Querying of Endgame Databases.// ICCA Journal, Vol. 22, No. 2, [|ps]
 * Christoph Wirth, Jürg Nievergelt (**1999**). //Exhaustive and Heuristic Retrograde Analysis of the KPPKP Endgame.// ICCA Journal, Vol. 22, No. 2
 * Eugene Nalimov, Christoph Wirth, Guy Haworth (**1999**). //[|KQQKQQ and the Kasparov-World Game]//. ICCA Journal, Vol. 22, No. 4
 * Ulrich Thiemonds (**1999**). //Ein regelbasiertes Spielprogramm für Schachendspiele//. [|University of Bonn], Diploma thesis, [|zipped ps] (German)
 * Chrilly Donninger (**1999**). //Der Fortschritt ist nicht aufzuhalten - Chrilly Donninger über Endspieldatenbanken//. CSS 6/99, [|pdf] (German)

2000 ...
> Guy Haworth (**2001**). //Discarding Like Pieces//. 6th Computer Olympiad Workshop > Guy Haworth (**2001**). //Depth by The Rule//. 6th Computer Olympiad Workshop > Guy Haworth (**2001**). //[|3-5-Man Chess Data]//. 6th Computer Olympiad Workshop > Guy Haworth (**2001**). //[|3-5-Man Mutual Zugzwangs in Chess]//. 6th Computer Olympiad Workshop
 * Haw-ren Fang, Tsan-sheng Hsu, Shun-Chin Hsu (**2000**). //[|Construction of Chinese Chess Endgame Databases by Retrograde Analysis]//. CG 2000
 * Ken Thompson (**2000**). //The Longest: KRNKNN in 262//. ICGA Journal, Vol. 23, No. 1
 * Peter Karrer (**2000**). //KQQKQP and KQPKQP≈//.ICGA Journal, Vol. 23, No. 2
 * Guy Haworth (**2000**). //Chess Endgames: Currents and Futures//. 5th Computer Olympiad Workshop
 * Thomas Lincke, Ambros Marzetta (**2000**). //Large Endgame Databases with Limited Memory Space//. 5th Computer Olympiad Workshop
 * Thomas Lincke, Ambros Marzetta (**2000**). //Large Endgame Databases with Limited Memory Space//. ICGA Journal, Vol. 23, No. 3
 * Eugene Nalimov, Guy Haworth, Ernst A. Heinz (**2000**). //[|Space-Efficient Indexing of Chess Endgame Tables]//. ICGA Journal, Vol. 23, No. 3, [|postscript]
 * 2001**
 * John Tamplin, Guy Haworth (**2001**). //[|Ken Thompson's 6-man Tables]//. ICGA Journal, Vol. 24, No. 2
 * Harold van der Heijden (**2001**). //[|Endgame Tables and Endgame Study Composition]//. ICGA Journal, Vol. 24, No. 2
 * Noam Elkies (**2001**). //Endgame Tables and Chess Composition//. ICGA Journal, Vol. 24, No. 2
 * Ren Wu, Don Beal (**2001**). //Fast, Memory-efficient Retrograde Algorithms//. ICGA Journal, Vol. 24, No. 3
 * Ren Wu, Don Beal (**2001**). //Parallel Retrograde Analysis on Different Architectures//. IEEE 10th Conference in High Performance Distributed Computing pp. 356-362, August 2001
 * Eugene Nalimov, Guy Haworth, Ernst A. Heinz (**2001**). //[|Space-efficient Indexing of Endgame Tables for Chess]//. Advances in Computer Games 9
 * Guy Haworth (**2001**). //Four Notes on Chess Endgames//. 6th Computer Olympiad Workshop, [|ppt]
 * Guy Haworth (**2001**). //[|Discarding Like Pieces]//. ICGA Journal, Vol. 24, No. 3
 * Guy Haworth (**2001**). //[|Depth by The Rule]//. ICGA Journal, Vol. 24, No. 3
 * Guy Haworth, Peter Karrer, John Tamplin, Christoph Wirth (**2001**). //[|3-5-man chess: Maximals and mzugs]//. ICGA Journal, Vol. 24, No. 4
 * 2002**
 * Guy Haworth (**2002**). //[|Secrets of Pawnless Endings]//. ICGA Journal, Vol. 25, No. 2
 * Eugène Nalimov (**2002**). //Chess Endgame Tablebases//. Invited Lecture, 7th Computer Olympiad Workshop
 * Guy Haworth (**2002**). //Reference Fallible Endgame Play//. 7th Computer Olympiad Workshop, [|pdf]
 * Ren Wu, Don Beal (**2002**). //A memory efficient retrograde algorithm and its application to solve Chinese Chess endgames.// [|More Games of No Chance] edited by Richard J. Nowakowski
 * 2003**
 * John Tamplin, Guy Haworth (**2003**). //[|Chess Endgames: Data and Strategy]//. Advances in Computer Games 10
 * Guy Haworth, Rafael B. Andrist (**2003**). //[|Model Endgame Analysis]//. Advances in Computer Games 10
 * Jonathan Schaeffer, Yngvi Björnsson, Neil Burch, Rob Lake, Paul Lu, Steve Sutphen (**2003**). //Building the Checkers 10-Piece Endgame Databases.// Advances in Computer Games 10. [|pdf] » Checkers
 * Guy Haworth (**2003**). //[|Reference Fallible Endgame Play]//. ICGA Journal, Vol. 26, No. 2
 * Ed Trice, Gil Dodgen (**2003**). //[|The Perfect 7-Piece Checkers Database]//. ICGA Journal, Vol. 26, No. 4 » Checkers
 * 2004**
 * Haw-ren Fang (**2004**). //[|Rule-Tolerant Verification Algorithms for Completeness of Chinese-Chess Endgame Databases]//. CG 2004
 * Eiko Bleicher (**2004**). //Building Chess Endgame Databases for Positions with many Pieces using A-priori Information//. Lehrstuhl Mathematische Optimierung, [|Fakultät für Mathematik und Informatik], [|Friedrich-Schiller-Universität, Jena], Germany, as [|pdf]

2005 ...

 * Joe Hurd (**2005**). //Formal Verification of Chess Endgame Databases//. in Joe Hurd, Edward Smith, [|Ashish Darbari] //Theorem proving in higher order logics: Emerging trends proceedings//. Technical Report PRG-RR-05-02, [|Oxford University] Computing Laboratory, [|pdf]
 * Jesper Torp Kristensen (**2005**). //[|Generation and compression of endgame tables in chess with fast random access using OBDDs]//. Master thesis, Supervisor Peter Bro Miltersen, [|Aarhus University], [|pdf]
 * Guy Haworth (**2005**). //[|6-Man Chess Solved]//. ICGA Journal, Vol. 28, No. 3
 * Marc Bourzutschky, John Tamplin, Guy Haworth (**2005**). //[|Chess endgames: 6-man data and strategy]//. Theoretical Computer Science, Vol. 349, No. 2
 * Rafael B. Andrist, Guy Haworth (**2005**). //[|Deeper model endgame analysis]//. Theoretical Computer Science, Vol. 349, No. 2
 * Guy Haworth (**2005**). //[|Chess Endgame News]//. ICGA Journal, Vol. 28, No. 4
 * Yngvi Björnsson, Jonathan Schaeffer, Nathan Sturtevant (**2005**). //[|Partial Information Endgame Databases]//. Advances in Computer Games 11, [|pdf], [|pdf]
 * 2006**
 * Guy Haworth (**2006**). //[|Chess Endgame News]//. ICGA Journal, Vol. 29, No. 1
 * Guy Haworth (**2006**). //[|Chess Endgame News]//. ICGA Journal, Vol. 29, No. 2
 * Guy Haworth (**2006**). //[|Chess Endgame News]//. ICGA Journal, Vol. 29, No. 3
 * 2008**
 * Bo-Nian Chen, Pangfeng Liu, Shun-Chin Hsu, Tsan-sheng Hsu (**2008**). //[|Knowledge Inferencing on Chinese Chess Endgames]//. CG 2008
 * 2009**
 * Guy Haworth (**2009**). //[|Chess Endgame Update]//. ICGA Journal, Vol. 32, No. 4

2010 ...

 * Bo-Nian Chen, Pangfeng Liu, Shun-Chin Hsu, Tsan-sheng Hsu (**2010**). //Conflict Resolution of Chinese Chess Endgame Knowledge Base//. Advances in Computer Games 12, [|pdf]
 * Joe Hurd, Guy Haworth (**2010**). //[|Data Assurance in Opaque Computations]//. Advances in Computer Games 12, [|pdf]
 * Matej Guid, Martin Možina, Aleksander Sadikov, Ivan Bratko (**2010**). //[|Deriving Concepts and Strategies from Chess Tablebases]//. Advances in Computer Games 12, [|pdf]
 * Eiko Bleicher, Guy Haworth (**2010**). //[|6-Man Chess and Zugzwangs]//. Advances in Computer Games 12
 * Bo-Nian Chen, Pangfeng Liu, Shun-Chin Hsu, Tsan-sheng Hsu (**2010**). //[|Knowledge Abstraction in Chinese Chess Endgame Databases]//. CG 2010
 * Ping-hsun Wu, Ping-yi Liu, Tsan-sheng Hsu (**2010**). //An External-memory Retrograde Analysis Algorithm//, slides as [|pdf]
 * Eiko Bleicher, Guy Haworth, Harold van der Heijden (**2010**). //[|Data-Mining Chess Databases]//. ICGA Journal, Vol. 33, No. 4
 * 2011**
 * Guy Haworth (**2011**). //Chess Endgame News//. ICGA Journal, Vol. 34, No. 2
 * 2013**
 * Guy Haworth (**2013**). //Chess Endgame News//. ICGA Journal, Vol. 36, No. 1
 * Guy Haworth (**2013**). //Chess Endgame News//. ICGA Journal, Vol. 36, No. 2
 * Abdallah Saffidine, Nicolas Jouandeau, Cédric Buron, Tristan Cazenave (**2013**). //Material Symmetry to Partition Endgame Tables//. CG 2013
 * John Nunn (**2013**). //Discoveries in R+2P vs. R+P Endings//. ICGA Journal, Vol. 36, No. 3
 * Guy Haworth (**2013**). //Chess Endgame News//. ICGA Journal, Vol. 36, No. 3
 * Karsten Müller, Guy Haworth (**2013**). //Rook vs. Bishop//. ICGA Journal, Vol. 36, No. 4
 * Bo-Nian Chen, Hung-Jui Chang, Shun-Chin Hsu, Jr-Chang Chen, Tsan-sheng Hsu (**2013**). //Multilevel Inference in Chinese Chess Endgame Knowledge Bases//. ICGA Journal, Vol. 36, No. 4 » Chinese Chess
 * Guy Haworth (**2013**). //Chess Endgame News//. ICGA Journal, Vol. 36, No. 4
 * Guy Haworth (**2013**). //Haworth’s Law//. ICGA Journal, Vol. 36, No. 4
 * Victor Zakharov, Vladimir Makhnychev (**2013**). //Creating tables of chess 7-piece endgames on the Lomonosov supercomputer//. Superkomp’yutery, No. 15
 * 2014**
 * Bo-Nian Chen, Hung-Jui Chang, Shun-Chin Hsu, Jr-Chang Chen, Tsan-sheng Hsu (**2014**). //Advanced Meta-knowledge for Chinese Chess Endgame Knowledge Bases//. ICGA Journal, Vol 37, No. 1 » Chinese Chess
 * Guy Haworth (**2014**). //Chess Endgame News//. ICGA Journal, Vol. 37, No. 1 » Syzygy Bases
 * Guy Haworth (**2014**). //Chess Endgame News//. ICGA Journal, Vol. 37, No. 2 » Syzygy Bases
 * Guy Haworth (**2014**). //Chess Endgame News//. ICGA Journal, Vol. 37, No. 3 » Syzygy Bases

2015 ...

 * Nikolaos Papahristou, Ioannis Refanidis (**2015**). //Constructing Pin Endgame Databases for the Backgammon Variant Plakoto//. Advances in Computer Games 14
 * Guy Haworth (**2015**). //Chess Endgame News//. ICGA Journal, Vol. 38, No. 1 » Crafty, FinalGen
 * Galen Huntington, Guy Haworth (**2015**). //Depth to Mate and the 50-Move Rule//. ICGA Journal, Vol. 38, No. 2 » Fifty-Move Rule
 * Michael Hartisch, Ingo Althöfer (**2015**). //Optimal Robot Play in Certain Chess Endgame Situations//. ICGA Journal, Vol. 38, No. 3
 * 2016**
 * Victor Zakharov, Michael G. Malkovsky, Vladislav Y. Shchukin (**2016**). //[|Compression of underdetermined data in a 7-piece chess table]//. [|Moscow University Computational Mathematics and Cybernetics], Vol. 40, No. 1
 * 2017**
 * Karsten Müller (**2017**). //Tablebases, Fermat, Knights and Knightmares//. ICGA Journal, Vol. 39, No. 2
 * Guy Haworth (**2017**). //Chess Endgame News//. ICGA Journal, Vol. 39, No. 2

=Forum Posts=

1995 ...
> [|overlapping tablebase lookup] by Jay Scott, CCC, February 09, 1999
 * [|endgame databases and Kasparov] by Feng-Hsiung Hsu, rgc, April 25, 1995
 * [|Tablebases and castling?] by Ronald de Man, rgcc, May 12, 1997
 * [|Steve Edward's Endgame Tablebase generator is now available for WIN95] by Mike Byrne, CCC, November 01, 1997
 * [|Questions about Endgame tablebases] by Alexander Nitschke, rgcc, March 19, 1998
 * [|Tablebases] by Eugene Nalimov, CCC, August 28, 1998 » Nalimov Tablebases
 * [|Ideas to reduce size of tablebases] by Rémi Coulom, CCC, August 31, 1998
 * [|endgame databases] by Robert Hyatt, rgcc, October 13, 1998
 * [|Interesting endgame database probe problem] by Robert Hyatt, CCC, February 04, 1999

2000 ...
> [|Wu/Beal predates Koistinen] by Guy Haworth, CCC, December 04, 2001
 * [|Tablebase Access Code] by Roberto Waldteufel, CCC, April 26, 2000 » Rabbit
 * [|EGTB: Better algorithm] by Urban Koistinen, CCC, April 07, 2001
 * [|Re: How endgame tablebases work] by Bruce Moreland, rgcc, July 19, 2001
 * [|PONDER=ON and TableBases on 1 PC] by Matthias Gemuh, CCC, July 27, 2001 » Pondering
 * [|Nalimov's EGTBs (long post with code)] by Heiner Marxen, CCC, October 13, 2001
 * [|Incomplete egtbs can be harmful] by Leen Ammeraal, CCC, November 06, 2001
 * [|Generating egtbs ICGAJ] by Tony Werten, CCC, December 04, 2001
 * [|3-3 tablebase (with pawns) suggestion] by Shane Hudson, CCC, December 23, 2001
 * [|Interesting EGTB bug] by Tom Likens, CCC, April 16, 2002
 * [|How to handle EGTB stalemates] by Tom Likens, CCC, March 02, 2003 » Stalemate
 * [|EGTB generation with 1 bit per position?] by Martin Fierz, CCC, March 25, 2003
 * [|Frank Phillips' KNNKP position revisited ...] by Guy Haworth, CCC, September 18, 2003

2005 ...

 * [|EGTB question] by Stef Luijten, Winboard Forum, January 09, 2006
 * [|EGTB compression] by Stef Luijten, Winboard Forum, February 10, 2006
 * [|utility for testing tablebases integrity] by Victor Zakharov, CCRL Discussion Board, October 24, 2007
 * [|EGTB compression (H. G. Muller tablebase...)] by Dann Corbit, CCC, January 25, 2008
 * [|DTR is no good!] by Harm Geert Muller, CCRL Discussion Board, September 24, 2008
 * [|Gaviota's Endgame Tablebases] by Miguel A. Ballicora, CCC, December 07, 2008 » Gaviota Tablebases
 * [|Creating EGTBs] by Carey, CCC, December 21, 2008
 * [|Other endgame tablebase generators] by Denis P. Mendoza, CCC, January 23, 2009

2010 ...

 * [|Some tablebase formats] by BB+, OpenChess Forum, November 25, 2010
 * [|Retrograde tablebase methods] by BB+, OpenChess Forum, November 26, 2010
 * 2011**
 * [|Gaviota tablebases, probing code v4 (UPDATE)] by Miguel A. Ballicora, CCC, March 11, 2011
 * [|Large tablebases] by BB+, OpenChess Forum, April 21, 2011
 * [|Mapping the 7-men computation] by Astokes, CCRL Discussion Board, September 21, 2011
 * [|Poor Man Table Base] by Ed Schroder, CCC, December 13, 2011
 * [|Number sequence puzzle] by Steven Edwards, CCC, December 16, 2011
 * [|Tablebase class name list available] by Steven Edwards, CCC, December 19, 2011 » CookieCat
 * 2012**
 * [|Compression of chess databases] by Edmund Moshammer, CCC, July 09, 2012
 * [|pawn enumeration] by Daniel Shawul, CCC, July 24, 2012
 * 2013**
 * [|New 6-piece tablebases] by Ronald de Man, CCC, April 01, 2013 » Syzygy Bases
 * [|Complete 7-piece tablebases are out!] by Albert Silver, CCC, April 12, 2013
 * [|Multithreaded LRU] by Alvaro Cardoso, CCC, October 06, 2013 » Memory
 * [|What happens using egbb] by Kai Laskos, CCC, October 12, 2013 » Scorpio Bitbases
 * [|tablebase caching / mmap / page cache] by Ronald de Man, CCC, October 13, 2013 » Memory, Syzygy Bases
 * [|How to encode endgame tablebases] by Mr. beo, Rybka Forum, October 18, 2013
 * [|Could EGTB make an Engine "weaker"?] by Bill Henry, CCC, October 23, 2013
 * [|evaluating tablebases draws] by Uri Blass, CCC, November 23, 2013 » Draw Evaluation
 * [|Table Base Cache Size question] by Rob Nicholas, CCC, December 05, 2013 » Memory
 * 2014**
 * [|Scorpio 6men EGBB Now available] by Joshua Shriver, CCC, January 14, 2014 » Scorpio Bitbases
 * [|On-demand tablebase generation] by Evert Glebbeek, CCC, January 19, 2014
 * [|Endgame tablebase generation for newbies] by Alberto Sanjuan, CCC, April 04, 2014
 * [|A different tablebase encoding format] by Steven Edwards, CCC, August 10, 2014
 * [|Tablebase access using a Solid State Disk] by Steven Edwards, CCC, October 16, 2014 » Memory

2015 ...
> [|Re: Nalimov EGTB problem related to DTM?] by Ronald de Man, CCC, February 14, 2016 > [|EPD to test EGTB probe code] by Sergei S. Markoff, CCC, May 24, 2016
 * [|how to probe egtb from console?] by Marco Belli, CCC, May 15, 2015 » CLI
 * [|Yet another KPK endgame table generator: pfkpk] by Marcel van Kervinck, CCC, September 05, 2015 » KPK Bitbase
 * [|Is there tools to get the longest DTM/DTC for elementary EG?] by Vincent Lejeune, CCC, September 07, 2015
 * [|7 men Rook endgames H4 vs SF in recent TCEC stage 1b] by Nay Lin Tun, CCC, September 07, 2015 » Rook Endgame, TCEC Season 8
 * 2016**
 * [|Nalimov EGTB problem related to DTM?] by Kai Laskos, CCC, February 14, 2016 » Nalimov Tablebases, DTM
 * [|6-men tablebase wanted] by Harm Geert Muller, CCC, March 03, 2016
 * [|Good testsets for tablebases testing] by Sergei S. Markoff, CCC, May 15, 2016 » Test-Positions
 * [|11-men tablebases (XQ)] by Harm Geert Muller, CCC, May 23, 2016 » Xiangqi
 * [|Natural TB] by Marco Costalba, CCC, May 29, 2016 » Syzygy Bases, Stockfish
 * [|How texel probes endgame tablebases] by Peter Österlund, CCC, July 16, 2016 » Gaviota Tablebases, Syzygy Bases, Texel
 * [|Getting engines to use TBs in Arena] by Brendan J. Norman, CCC, July 19, 2016 » Arena
 * [|Syzygy and draw by repetition] by Jon Dart, CCC, July 22, 2016 » Draw, Repetitions, Syzygy Bases
 * [|Verifiability of endgame tablebases] by Joan Charmant, CCC, July 23, 2016
 * 2017**
 * [|Checkers Is Strongly-Solved for 8-pieces] by Ed Trice, CCC, February 12, 2017 » Checkers
 * [|Search Halting Criteria When Probing Tablebases] by Ed Trice, CCC, March 02, 2017
 * [|Probe EGT in quiescence?] by Nguyen Pham, CCC, May 20, 2017 » Quiescence Search, Xiangqi
 * [|Incorporating Endgame tablebases] by Pranav Deshpande, CCC, May 24, 2017
 * [|EGTB probe in search] by Erin Dame, CCC, July 30, 2017
 * [|Natural TB (take 2)] by Marco Costalba, CCC, August 22, 2017 » Syzygy Bases, Stockfish
 * [|understanding DTZ] by Alexandru Mosoi, CCC, October 06, 2017 » DTZ, Syzygy Bases, Fathom
 * 2018**
 * [|A new design for Xianqgi (Chinese chess) Endgame Tablebase] by Nguyen Pham, CCC, January 16, 2018 » Chinese Chess
 * [|Question about EGT formats] by Harm Geert Muller, CCC, January 26, 2018
 * [|The history of Syzygy tablebases] by Isaac Haïk Dunn, CCC, March 06, 2018 » Syzygy Bases

=External Links= > [|Compression Schemes for Gaviota Tablebases]
 * ICGA: [|Chess Endgames] compiled by Guy Haworth and colleagues
 * [|Endgame tablebase from Wikipedia]
 * [|Endgame Tablebases and Bitbases List] from [|Computer-Chess Wiki] by Ron Murawski
 * [|QUEEN vs. ROOK] by [|Warren Stenberg] and Edware J. Conway, reprinted from the January, 1979 issue of the Minnesota Chess Journal, The Usenet Oldnews Archive, Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman » ACM 1978, Belle, [|Walter Browne]
 * [|Gilith - Chess Endgames] by Joe Leslie-Hurd
 * [|Endgame Tablebases - gaviota chess engine] by Miguel A. Ballicora
 * [|Computing endgames with few men] by Urban Koistinen
 * [|Koistinen/Endgame · GitHub]
 * [|End-Game Table Bases] by Harm Geert Muller
 * [|The Leapfrog Tablebase Generator] by Harm Geert Muller
 * [|Hoffman] by Brent Baccala
 * [|Endgame databases] by Emil Vlasák
 * [|CCRL Discussion Board - Endgame Tablebases]
 * [|Guide to the use of Computer Chess Endgame Tablebases] from [|FAQ on Winboard and Chess Engines] by Aaron Tay
 * [|Can use of endgame tablebases weaken play?] from [|FAQ on Winboard and Chess Engines] by Aaron Tay
 * [|Can We Solve Chess One Day? | Gödel's Lost Letter and P=NP] by Dick Lipton, May 12, 2010
 * [|7-man TB] - [|Google+]
 * [|syzygy1/tb · GitHub] by Ronald de Man
 * [|dshawul/Scorpio · GitHub] includes Six men egbb code » Scorpio Bitbases
 * [|kervinck/pfkpk · GitHub] » KPK Bitbase by Marcel van Kervinck

ChessBase

 * [|Engines and endgame tablebases] by Albert Silver, ChessBase News, December 12, 2013
 * [|Perfect endgame play – with tablebases], ChessBase News, April 21, 2015
 * [|Just one of 17,823,400,766 positions] by Frederic Friedel, ChessBase News, April 23, 2015

ChessOK

 * [|Lomonosov Endgame Tablebases]

Online Lookup

 * [|Lomonosov - online 7-man tablebases]
 * [|Endgame Nalimov Tablebases Online] by ChessOK
 * [|Nalimov EGTB] from [|GMchess.com]
 * [|Nalimov Tablebase server (DTM)] by Lokasoft
 * [|Web Query for Nalimov Endgame Tablebases (DTM)] from [|Knowledge4IT] by Eiko Bleicher
 * [|Chess Archives - Endgames (DTC, DTM, DTZ, DTZ-50)] hosted by John Tamplin
 * [|Schach Endspiele (DTM)] (German) by [|Joachim Rack]

Download

 * [|Endgame Tablebases Online - 6-men endgame analysis free for everyone] by Kirill Kryukov (3,4,5,6 pieces - via [|emule])
 * [|Index of /tablebases] by kingliveson
 * [|tablebase.sesse.net] by Sesse

Statistics

 * [|6-Piece Database Statistics] by Ken Thompson, 2000
 * [|Tablebase endgame frequency statistics]
 * [|Theoretical statistics for chess endgames with up to five pieces] by Ulrich Thiel

=References= =What links here?= include page="Endgame Tablebases" component="backlinks" limit="220"
 * Up one level**