The Full Wiki

More info on Yao's test

Yao's test: Wikis


Note: Many of our articles have direct quotes from sources you can cite, within the Wikipedia article! This article doesn't yet, but we're working on it! See more info or our list of citable articles.


From Wikipedia, the free encyclopedia

In cryptography and the theory of computation, Yao's test is a test defined by Andrew Chi-Chih Yao in 1982 [1], against pseudo-random sequences. A sequence of words passes Yao's test if an attacker with reasonable computational power cannot distinguish it from a sequence generated uniformly at random.


Formal statement

Boolean circuits

Let P be a polynomial, and S = {Sk}k be a collection of sets Sk of P(k)-bit long sequences, and for each k, let μk be a probability distribution on Sk, and PC be a polynomial. A predicting collection C = {Ck} is a collection of boolean circuits of size less than PC(k). Let p_{k,S}^C be the probability that on input s, a string randomly selected in Sk with probability μ(s), Ck(s) = 1, i.e.

p_{k,S}^C={\mathcal P}[C_k(s)=1 | s\in S_k\text{ with probability }\mu_k(s)]

Moreover, let p_{k,U}^C be the probability that Ck(s) = 1 on input s a P(k)-bit long sequence selected uniformly at random in {0,1}P(k). We say that S passes Yao's test if for all predicting collection C, for all but finitely many k, for all polynomial Q :


Probabilistic formulation

As in the case of the next-bit test, the predicting collection used in the above definition can be replaced by a probabilistic Turing machine, working in polynomial time. This also yields a strictly stronger definition of Yao's test (see Adleman's theorem). Indeed, One could decide undecidable properties of the pseudo-random sequence with the non-uniform circuits described above, whereas BPP machines can always be simulated by exponential-time deterministic Turing machines.


  1. ^ Andrew Chi-Chih Yao. Theory and applications of trapdoor functions. In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Science, 1982.


Got something to say? Make a comment.
Your name
Your email address