Am 16.04.2013 18:04, schrieb James Dow Allen:
> On Apr 16, 2:09 pm, Thomas Richter<
t...@math.tu-berlin.de> wrote:
>> Am 16.04.2013 08:12, schrieb James Dow Allen:
>>> To the contrary, Kolmogorov complexity provides a clear and
>>> logical definition. Unfortunately it doesn't generally
>>> lead to any easy computation: information content depends
>>> on the existence of a computer program, but discovering that
>>> program may depend on a clever programmer!
>>
>> Kolmogorov complexity has it's own set of problems. It's always relative
>> to a specific Turing machine, thus if you have the freedom to design the
>> machine, the complexity of any finite sequence is - by this definition -
>> trivial.
>
> No. Just as with the Nelson million-dollar challenge, the
> bits required for the program (and any special architecture)
> must be counted in the cost.
> More or less, up to a O(1) factor, various Turing-equivalent
> machines are ... wait for it ... equivalent!
I afraid "the bits for the program" do not make sense. Yes, if you have
a *universal Turing machine*, you can ask how many bits the program has
that simulates the specific Turing machine I had in mind, but this
specific information is again specific to the universal machine you
started with.
A Turing machine may or may not have a "program" on its input tape - a
universal one surely can - but *at least* it has an internal state
machine that defines how it reacts on the bits on its input tape (the
defining property, of course).
Now the question: How do you measure the "size of the state machine in
bits"?
Answer: You can't. You can only by describing this state machine as a
program of a *second universal* Turing machine that simulates the state
machine of the first one. But that doesn't solve the problem. It only
moves it forwards one step.
So, IOWs, "the K-complexity of a sequence S" makes no sense again. It is
up to a machine U - the pair (S,U) is well-defined (though not
computable in general for infinite S - a issue of practicability).
However, one result we have: Independent of U, (S,U) is either always
finite, or infinite. And in the latter case, we have an "incomputable
sequence". (Not necessarily incompressible, for whatever this word might
mean).
> More or less, up to a O(1) factor, various Turing-equivalent
> machines are ... wait for it ... equivalent!
Yes, of course, up to O(1). That's what I said.
>> Point being: You cannot point at a specific(!) sequence and say "this
>> one is compressible!". For every finite sequence a machine exists that
>> compresses it to nothing, so not a useful definition.
>
> Wrong again. See above.
Of course. I can define a Turing machine whose internal state machine is
built such that, on reading a single bit from its input tape, generates
the requested output, whatever this output may be, as long as it is
finite (so must the state machine). So, (S,U) = 1 for this machine. Note
that I said *finite* sequence. It's a different issue when considering
the limit N->\infty, N = sequence length, and for example counting the
number of operations the machine has to perform, as function of N. Or to
put it in different words, the size of any finite sequence can be
absorbed into the O(1) part by taking the freedom of defining U. (-:
I would again say that this is a fairly trivial and probably fairly
useless observation. One again cannot expect to point at a particular
sequence and say "the complexity of this sequence is Q bits". It doesn't
work this way. You either need to state this in terms of a limit for
large sequences, or relative to a specific machine.
Greetings,
Thomas