I've read tons of web hits related to this issue, and I still haven't come across any definitive answer.
What I'd like to do is to make a database of chess positions, capable of identifying transpositions (generally which pieces are on which squares).
EDIT: it should also be capable to identify similar (but not exactly identical) positions.
This is a discussion almost 20 years ago (when space was an issue): https://groups.google.com/forum/#!topic/rec.games.chess.computer/wVyS3tftZAA
One of the discussants talk about encoding pieces on a square matrix, using 4 x 64 bits plus some bits more for the additional information (castling, en passant etc): there are six pieces (Pawn, Rook, Knight, Bishop, Queen, King) plus an empty square, that would be 3 bits (2^3), and one more bit for the color of the piece.
In total, there would be 4 numbers of 64bits each, plus some additional information.
Question: is there any other, more efficient way of storing a chess position?
I should probably mention this question is database centric, not game centric (i.e. my sole interest is to efficiently store and retrieve, not to create any AI or to generate any moves).
Thanks, Adrian