Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Computational question for mathematicians, philosophers & computer-g

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.