What are Transposition/Hash tables?
When a Chess engine begins analysing a position, it will often “try” out moves in different orders but which reach the same position. As the name “transposition table” implies, the program stores such positions in memory with their evaluations, so it can save time whenever it comes upon the same position that has being reached before albeit with a different sequence of moves. Most chess engines store a ‘hash’ of the position and hence transposition tables are also commonly known as hashtables. See also a more detailed explanation on the subject by Dann Corbit at the Winboard forum. There are various types of Transposition Tables used depending on the program. Firstly, there are endgame hashtables [actually caches would be more accurate], that “works similarly to a disk cache ,and just avoids many disk accesses, and therefore can speed up the program in late endgames.” [ Dieter Buerssner, Author of Yace ]. Some programs [e.g. Goliath ] have only one main hashtable besides the egtb Hash