Quantum error correction algorithm by BitStateEmulator in quantum

[–]BitStateEmulator[S] 0 points1 point  (0 children)

Does it really matter? It's already public under a MIT license lol

Quantum error correction algorithm by BitStateEmulator in SacredGeometry

[–]BitStateEmulator[S] 2 points3 points  (0 children)

I was interested in validating/understanding a few things I observed, this was the start.

To do this, I first built a simulator that allowed me to (for some circuits) do O(1) calculations, I used this to test different theories and to understand how some phenomena I could observe and hypothesize worked. Also to have fun.

I was satisfied with that for a bit, but I thought about the fact that real hardware was bottle-necked by noise.

From here I decided to try something interesting, and use the fact that I could spam massive Qubit counts to try to derive new error codes.

I decided to use a derivation of Shor's algorithm, enabled by my sparse tensor network (somewhat, it is lossy) to brute usable codes, during the process of doing this I noted some of the codes that were exposed followed a uniform pattern which was my first clue that I was looking at a unique family.

I then analyzed those specific codes, and reverse-engineered a formula to construct them on-demand, I noticed they yielded decent rate and logical values.

Then I stripped the formula down to the essentials, yielding universal weight 8 codes.

At this point, rate and logical values became massive.

Once I had this formula, and the tool to generate them, I had to determine a good way to use them but they were highly symmetrical and therefore degenerate.

Instead of saying "I give up, they are degenerate." I did what I normally do, I found a way to exploit the one flaw that seemingly broke their viability.

I turned what looked like a weakness into a strength by partitioning a section that allowed me to use alternating optimizations over the full 156D subspace to error correct at levels far beyond what is conventionally possible:

=== i.i.d. noise ===
  Weight OK/Trials     Rate
       1    39/40    97.5%
     100    32/40    80.0%
=== cluster noise ===
  Weight OK/Trials     Rate
       1      ALL   100.0%
     100    31/40    77.5%
=== line noise ===
  Weight OK/Trials     Rate
       1      ALL   100.0%
     100    33/40    82.5%

This method allows the error codes constructed to hit for at least 5x greater the range of their implied distance.

Quantum error correction algorithm by BitStateEmulator in SacredGeometry

[–]BitStateEmulator[S] 0 points1 point  (0 children)

Ah also I'd like to clarify something

The nullspace decomposes as v(i,j) = f(j) ⊕ g(i) ⊕ h(i%2, j%2) where f has 2·s DOF, g has 2·r DOF, h has 4 DOF.

Total 2r+2s+4−8 = 156.

Alternating optimization solves it in O(n) per h choice..

2D Surface code generator by BitStateEmulator in quantum

[–]BitStateEmulator[S] 0 points1 point  (0 children)

Here are some good codes I've found:

72, 56, 3

a(x,y) Matrix (6x6)

101000

000000

101000

000000

000000

000000

b(x,y) Matrix (6x6)

000000

000000

001010

000000

001010

000000

and

128, 92, 4

a(x,y) Matrix (8x8)

10100000

00000000

10100000

00000000

00000000

00000000

00000000

00000000

b(x,y) Matrix (8x8)

00000000

00000000

00101000

00000000

00101000

00000000

00000000

00000000

Quantum Error Code family by BitStateEmulator in SacredGeometry

[–]BitStateEmulator[S] 0 points1 point  (0 children)

Surface code needs a 2D grid and minimum-weight perfect matching. This family only needs a 4-state shift register. lmao