I was wondering if someone could explain to me what this technique called "block encoding" does, and what it is used for at a high level, found in arXiv:1806.01838.

It is in section 4.1, definition 43; shown below.

enter image description here

I encountered this topic while reading this (arXiv:2012.05460) paper, where it is mentioned just above lemma 7; shown below.

enter image description here

I am told that block encoding is used to reduce the 3D circuit down to a 2D circuit, by applying block encoding k times, to get the leading schmidt vector of this circuit. However, I'm not sure if this is the correct intuition, and I certainly don't understand the symbols in the definition of block encoding. If my question isn't really clear I'm happy to elaborate!

  • 3
    $\begingroup$ The high-level way I think about block encodings is this: you can implement only unitary matrices on a quantum computer. But, say you want to implement some other, non-unitary matrix. You can always implement it as a "sub-block" of a larger, unitary matrix. In the equation, the projector around U simply selects the "sub-block" that codes for A/alpha; it's basically saying that U is an $(\alpha, a, \epsilon)$-block encoding of $A$ if the top left block of the matrix is $A/\alpha$. The way this is actually constructed is using the Prepare-Select-Prepare† circuit. $\endgroup$ Dec 2, 2021 at 19:29
  • $\begingroup$ This paper covers the subject and is somewhat pedagogical arxiv.org/abs/2105.02859. $\endgroup$ Jul 30 at 21:17

1 Answer 1


Block encoding is the framework or tool for developing a variety of quantum algorithms by encoding a matrix as a block of a unitary.There are various ways to implement the same as per requirement,one of the ways is by decomposing the matrices into linear combinations of displacement matrices.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.