# Clarifying basis encoding

## Background

I'm reviewing basis encoding in this paper. In their example, they state:

$$(-.07, 0.1, 0.2)^T \in \mathbb{R}^3$$ is encoded as $$|x\rangle = |11011\;01011\;00011\rangle$$

Unpacking this, it seems clear that the first bit representing each value is the sign bit and this appears to be corroborated in the text:

The sign of the real number is encoded by an additional leading binary number, e.g. '1' for '−' and '0' for '+'.

Removing the sign bit, we thus have:

$$0.7 \mapsto 1011$$

$$0.1 \mapsto 1011$$

$$0.2 \mapsto 0011$$

Given we have 4 bits, that gives us 16 possible states. Alright. Assuming we're representing values in the interval $$(-1.0, 1.0)$$, $$1011$$ gives us $$11$$ in decimal and $$11/16 = 0.6875$$, where $$\lceil 0.6875 \rceil = 0.7$$. By similar logic, $$0011$$ gives us $$3$$ in decimal and $$3/16 = 0.1875$$, where $$\lceil 0.1875 \rceil = 0.2$$. This all appears to make sense.

But then we have:

$$0.1 \mapsto 1011$$

Okay, this doesn't make sense. $$1011$$ is the binary encoding we had for $$0.7$$ and, by the prior logic, I'd expect:

$$0.1 \mapsto 0001$$,

which would give us $$1$$ in decimal and $$1/16 = 0.0625$$, where $$\lceil 0.0625 \rceil = 0.1$$.

## Question

What am I missing here? No alternative logic appears to be clearly correct. Maybe there's an error in the text but it's unclear to me where.

Can someone please explain the exact manipulations being done to go from the data $$(-0.7, 0.1, 0.2)$$ to the state $$|x\rangle = |11011\;01011\;00011\rangle$$? Given this isn’t a pre-print, I’m assuming I’m the one who’s made an error or, worst case, this represents a fundamental conceptual gap in my knowledge of very basic QIS concepts.

• It looks likely to be a typo to me. Mar 28, 2022 at 7:36
• @DaftWullie I think you're right. I've reviewed this further and my collaborators and I are in agreement that this is likely a typo. On a separate note, we noticed that there appears to be some disambiguation required between basis encoding (noted in paper cited above, used in some legacy quantum algorithms that require quantum arithmetic operations) and basis embedding (implemented in some QML software libraries), which is different way of embedding classical data into a quantum system that's now common in the QML field. Mar 28, 2022 at 21:20

There appears to be a typo in the linked paper. Instead of $$0.1↦1011$$, it should be $$0.1↦0001$$.