
Polynomial-Time Hierarchy Is Infinite Under a Random Oracle - 2510c39011c5
http://blog.computationalcomplexity.org/2015/04/ph-infinite-under-random-oracle.html
======
_asummers
From Scott Aaronson's blog post on the paper:

> Basically, they need to show that, for every k, there are problems that can
> be solved by small circuits with k layers of AND, OR, and NOT gates, but for
> which the answer can’t even be guessed, noticeably better than chance, by
> any small circuit with only k-1 layers of AND, OR, and NOT gates.

------
skissane
I'm struggling to understand the concept of a "random oracle". I assume any
oracle is just an infinite string of bits, or natural numbers, or suchnot, and
thus is countably infinite (and has order omega), so there would be
uncountably many (2^aleph-null) such oracles - how does one pick one at
random, such that they are (I assume) equally likely? How does one pick a
random element from an uncountable set?

And then, if I pick any oracle at random, then isn't there an infinitesimal
(yet non-zero) chance I could pick one which has a special structure which
makes their result false?

~~~
joe_the_user
An oracle would be a sequence that give you a correct answer to a problem (or
set of problems).

You could use Kolmogorov randomness to say whether this sequence is also
random: "Kolmogorov randomness – also called algorithmic randomness – defines
a string (usually of bits) as being random if and only if it is shorter than
any computer program that can produce that string."

[http://en.wikipedia.org/wiki/Kolmogorov_complexity#Kolmogoro...](http://en.wikipedia.org/wiki/Kolmogorov_complexity#Kolmogorov_randomness)

~~~
Retra
How do you identify the length of a program to determine that? If I had a
presumably random string and an assembly dialect that had a command that
outputs that exact string, the 'program' has been deferred to the hardware or
the brain of its inventor. I can understand how that is still a long program,
but I can't understand how that would be measured.

~~~
TheLoneWolfling
Kolmogorov complexity is not a single value - it's more of a function
f(universal computer, string) -> <minimal length of program to output that
string>.

