I’ve just started to study the architecture of quantum computers with neutral atoms, and I’ve started to simulate some basic configurations in Julia. I ended up with the following doubt, which is perhaps basic but I ended up not understanding: I placed 4 atoms arranged in a square with a distance of 5um. First I simulated with a Rydberg radius so that the directly adjacent atoms were affected, but those on the diagonal were not. This reduces the base possible states from 16 to 7 states, which is confirmed when I display the probability histogram.
After that, I increase the Rydberg radius in order to catch all the atoms. That way, only 1 atom could be in the Rydberg state at a time, which would decrease the number of possible states from 7 to 5. What I didn’t understand is why, when plotting the histogram, it still continues indicating a probability for the states 1001 and 0110, and they would not be possible.

Here is the link to the code I made following Bloqade’s tutorial:

Thank you for your question and interest in using Bloqade!

I took a look at your code and while the math is correct, I believe the confusion is conceptual in origin. There are two things worth keeping in mind:

The blockade phenomena does not ban or completely forbid a double/multi excitation from happening when atoms are within the radius. It does strongly decrease the probability of it from happening however, so it’s still possible to see double excitations albeit with lower probability.

The blockade phenomena is not necessarily a clean binary, on/off situation (e.g. it is not the case that as long as you are in the radius, the chance of reaching the Rydberg state is decreased by a fixed amount and when you leave the radius, it returns to some fixed amount). Rather, inside the radius the closer you are to the atom in the Rydberg state, the stronger the blockading phenomena and the closer you get to the radius, the weaker it gets. Even outside the radius you can experience long interaction “tails” that end up affecting neighboring atoms. The potential itself scales as r^-6 so it is desirable to either be very close or very far from the radius, depending on the desire effect.

If you look at the most probable bitstrings in your code beyond those that contain a single excited state, you’ll find they are the ones where your atoms are diagonally apart from each other (have the furthest distance). Further down that list of bitstrings are ones where your atoms are directly next to each other (they are further inside each others Blockade radii and have an even lower probability of being simultaneously in the Rydberg state).

As an additional exercise if you make the blockade radius even larger (say, set the epsilon variable in your code to 5) you’ll find the double excitations vanish.

Hope that helps and have fun in your adventures with neutral atoms !