on learning, randomness and computation