Author: Russell Reagan
Date: 17:37:35 03/02/05
Go up one level in this thread
On March 02, 2005 at 19:13:38, Matthew Hull wrote: >On March 02, 2005 at 18:59:18, Axel Schumacher wrote: >>Hi all, >>I have two question regarding the storage requirements for information; I hope >>somebody can help me with answering them. Please excuse if my questions are >>stupid. >>1. For each data-point (e.g. let's say the position of a pawn on the chessboard) >>one requires 1 bit (either 0 or 1). Right? However, the information does not >>include where the pawn is located. So, how much data has to be stored to >>describe e.g. the position of a pawn? >In bit-board programs, all paws of a color with their locations can be stored in >in one 64 bit word. Analysis on the pawn struction can be done with bit masks >using a single instruction on a 64 bit machine or two instructions on 32 bit (in >principle). I think the point he is making is that each 64-bit value (bitboard) is just data, and for it to have meaning it has to be considered under some interpretation. For instance, my chess program might consider bitboards under the interpretation that bit position 0 (the least significant bit position) is a1, bit position 7 is h1, and bit position 63 is h8. Another person might consider bitboards using a different interpretation. Maybe bit position 0 is a8, bit position 7 is h8, and bit position 63 is h1. If I give you a 64-bit value with a single 1-bit, you can't tell me what square the piece is on, or what kind of piece it is, or what color it is, and so on. I would have to include more data for the bitboard to have meaning. Data compression is a similar situation. If I want to send you a big file, I will use some program like WinZip to compress it before I send it, but I assume that you have some program that can decompress it. Let's say that I created my own compression program that could compress the same file to only 10% the size of the .zip file that WinZip produced. Now I send you this file. Can you do anything with it? Probably not, because you need my decompression software to interpret the meaning of the data I sent you. The data may be compressed far better, but it has no meaning without knowledge of the method to decompress it. So the total size of the data, if it is going to have meaning, is the size of the compressed data plus the size of the program to decompress it. If the decompression program is a perl script, then the size of the "meaningful data" is the size of the data, plus the size of the perl script, plus the size of the perl interpreter. If you want to be really picky, you may even include the size of the operating system, if that is required to run the perl interpreter. Or maybe the "meaningful data" would be compressed the smallest using a Forth interpreter written in x86 machine code, plus a Forth program, plus the data. But then you need an x86 computer. If there is no intelligent human to interpret the meaning of the data, does it still have meaning? Probably not, so we need an intelligent human also. The computer can't run without electricity of course... :) As you can see, the philosophical and theoretical aspects of his question can get pretty deep. Consider this question: How much space is required to store a bitboard? It could be as small as "64-bits", or it could be as large as "the space required to store 64-bits, a computer program to interpret those 64-bits, a computer to run the program, an intelligent human to interpret the meaning of the computer's output, and a source of electricity to run the computer."
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.