Unit: Quantum Computing

Lesson Preview

Suppose we have some box that implements a function f:{0,1}{0,1}f: \{0,1\} \to \{0,1\}. We don't know what function it is, and the only way we can figure it out is by "querying" this box, i.e. sending an input into the box and checking the output.

DeutschsAlgorithm

There are exactly four possible single-bit functions, which we'll denote by f0,f1,f2,f_{0}, f_{1}, f_{2}, and f3f_{3}:

  1. Constant zero (f0f_{0}): f0(0)=0,f1(1)=0f_{0}(0) = 0, f_{1}(1) = 0
  2. Constant one (f1f_{1}): f1(0)=1,f1(1)=1f_{1}(0) = 1, f_{1}(1) = 1
  3. Identity (f2f_{2}): f2(0)=0,f2(1)=1f_{2}(0) = 0, f_{2}(1) = 1
  4. NOT (f3f_{3}): f3(0)=1,f3(1)=0f_{3}(0) = 1, f_{3}(1) = 0

We can classify these into two types:

  • Constant functions: Output same value for both inputs (f0f_{0} and f1f_{1})
  • Balanced functions: Output 00 for one input and 11 for the other (f2f_{2} and f3f_{3})

The Deutsch Problem: Given a black-box function ff, determine whether it's constant or balanced using the minimum number of queries.

Classical Analysis: To determine if ff is constant or balanced, we need to check if f(0)=f(1)f(0) = f(1) or f(0)f(1)f(0) \neq f(1).

...

... continued in the full lesson.

Ready to Start Learning?

Sign up now to access the full Deutsch's Algorithm lesson and our entire curriculum!