Documentation

LeanPool.SingleCopyStabilizer.Symplectic

The algebraic adaptive update #

The supporting linear algebra is stated over a field and is specialized to qubits (ZMod 2) in Round.lean. These are statements about unsigned Pauli labels. The qudit extension is outside this formalization. The identification with unitary conjugation is proved in the physical gate modules.

@[reducible, inline]
abbrev LeanPool.SingleCopyStabilizer.Vec (๐•œ : Type u_3) (ฮน : Type u_4) :
Type (max u_3 u_4)

Coordinate vectors indexed by the register sites.

Equations
Instances For
    @[reducible, inline]
    abbrev LeanPool.SingleCopyStabilizer.Label (๐•œ : Type u_3) (ฮน : Type u_4) :
    Type (max u_4 u_3)

    Pauli labels paired into X and Z coordinate vectors.

    Equations
    Instances For
      def LeanPool.SingleCopyStabilizer.symplectic {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] (a b : Label ๐•œ ฮน) :
      ๐•œ

      The alternating X-Z pairing controlling Pauli commutation.

      Equations
      Instances For
        def LeanPool.SingleCopyStabilizer.IsIsotropic {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) :

        Pairwise vanishing of the symplectic pairing on a label space.

        Equations
        Instances For
          def LeanPool.SingleCopyStabilizer.diagonalSpace {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} (L : Submodule ๐•œ (Label ๐•œ ฮน)) :
          Submodule ๐•œ (Vec ๐•œ ฮน)

          Z labels whose paired X coordinate is zero in the label space.

          Equations
          Instances For
            @[simp]
            theorem LeanPool.SingleCopyStabilizer.mem_diagonalSpace {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} (L : Submodule ๐•œ (Label ๐•œ ฮน)) (s : Vec ๐•œ ฮน) :
            theorem LeanPool.SingleCopyStabilizer.x_orthogonal_diagonal {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] {L : Submodule ๐•œ (Label ๐•œ ฮน)} (hL : IsIsotropic L) {x z s : Vec ๐•œ ฮน} (hxz : (x, z) โˆˆ L) (hs : s โˆˆ diagonalSpace L) :

            Commuting with a diagonal stabilizer forces orthogonality of the X label.

            def LeanPool.SingleCopyStabilizer.shearX {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} (i : ฮน) (w x : Vec ๐•œ ฮน) :
            Vec ๐•œ ฮน

            X-coordinate action of a simultaneous controlled-SUM shear.

            Equations
            Instances For
              def LeanPool.SingleCopyStabilizer.shearZ {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (w z : Vec ๐•œ ฮน) :
              Vec ๐•œ ฮน

              Contragradient action on Z coordinates.

              Equations
              Instances For
                @[simp]
                theorem LeanPool.SingleCopyStabilizer.shearX_pivot {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} (i : ฮน) {w : Vec ๐•œ ฮน} (hw : w i = 0) (x : Vec ๐•œ ฮน) :
                shearX i w x i = x i
                @[simp]
                theorem LeanPool.SingleCopyStabilizer.shearZ_pivot {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (w z : Vec ๐•œ ฮน) :
                shearZ i w z i = z i + w โฌแตฅ z
                theorem LeanPool.SingleCopyStabilizer.shear_pairing {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) {w : Vec ๐•œ ฮน} (hw : w i = 0) (x z : Vec ๐•œ ฮน) :

                The two shear actions preserve the X-Z pairing.

                def LeanPool.SingleCopyStabilizer.shearZEquiv {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (w : Vec ๐•œ ฮน) (hw : w i = 0) :
                Vec ๐•œ ฮน โ‰ƒโ‚—[๐•œ] Vec ๐•œ ฮน

                The invertible dual shear when the target mask vanishes at the pivot.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  theorem LeanPool.SingleCopyStabilizer.pivot_concentrates {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [DecidableEq ฮน] {u : Vec ๐•œ ฮน} {i : ฮน} (hu : u i = 1) :
                  shearX i (u - Pi.single i 1) u = Pi.single i 1

                  A normalized sample is concentrated on the chosen pivot.

                  theorem LeanPool.SingleCopyStabilizer.pivot_diagonal_zero {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] {u s : Vec ๐•œ ฮน} {i : ฮน} (horth : u โฌแตฅ s = 0) :
                  shearZ i (u - Pi.single i 1) s i = 0

                  Orthogonality is exactly what makes the transformed old Z label vanish at the pivot.

                  def LeanPool.SingleCopyStabilizer.localCorrection {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [DecidableEq ฮน] (i : ฮน) (b : ๐•œ) (a : Label ๐•œ ฮน) :
                  Label ๐•œ ฮน

                  A local Fourier/phase correction, with determinant one over any field.

                  Equations
                  Instances For
                    theorem LeanPool.SingleCopyStabilizer.localCorrection_old_diagonal {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [DecidableEq ฮน] {s : Vec ๐•œ ฮน} {i : ฮน} (hs : s i = 0) (b : ๐•œ) :
                    theorem LeanPool.SingleCopyStabilizer.localCorrection_new_diagonal {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [DecidableEq ฮน] (i : ฮน) (z : Vec ๐•œ ฮน) :
                    def LeanPool.SingleCopyStabilizer.adaptiveUpdate {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) (a : Label ๐•œ ฮน) :
                    Label ๐•œ ฮน

                    Compose the pivot shear with its local Fourier and phase correction.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem LeanPool.SingleCopyStabilizer.adaptiveUpdate_preserves_diagonal {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] {u s : Vec ๐•œ ฮน} {i : ฮน} (horth : u โฌแตฅ s = 0) (b : ๐•œ) :
                      adaptiveUpdate i u b (0, s) = (0, shearZ i (u - Pi.single i 1) s)
                      theorem LeanPool.SingleCopyStabilizer.adaptiveUpdate_creates_diagonal {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] {u v : Vec ๐•œ ฮน} {i : ฮน} (hu : u i = 1) :
                      adaptiveUpdate i u (-shearZ i (u - Pi.single i 1) v i) (u, v) = (0, Function.update (shearZ i (u - Pi.single i 1) v) i (-1))
                      def LeanPool.SingleCopyStabilizer.adaptiveUpdateMap {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) :
                      Label ๐•œ ฮน โ†’โ‚—[๐•œ] Label ๐•œ ฮน

                      The linear map implementing the observed symplectic update.

                      Equations
                      Instances For
                        theorem LeanPool.SingleCopyStabilizer.symplectic_eq_sum {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] (a c : Label ๐•œ ฮน) :
                        symplectic a c = โˆ‘ j : ฮน, (a.1 j * c.2 j - a.2 j * c.1 j)
                        theorem LeanPool.SingleCopyStabilizer.localCorrection_symplectic {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (b : ๐•œ) (a c : Label ๐•œ ฮน) :
                        theorem LeanPool.SingleCopyStabilizer.adaptiveUpdate_symplectic {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) (hu : u i = 1) (a c : Label ๐•œ ฮน) :
                        theorem LeanPool.SingleCopyStabilizer.symplectic_nondegenerate {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] (a : Label ๐•œ ฮน) (h : โˆ€ (c : Label ๐•œ ฮน), symplectic a c = 0) :
                        a = 0
                        theorem LeanPool.SingleCopyStabilizer.adaptiveUpdate_injective {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) (hu : u i = 1) :
                        def LeanPool.SingleCopyStabilizer.updatedSpace {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) :
                        Submodule ๐•œ (Label ๐•œ ฮน)

                        The image label space after the observed adaptive update.

                        Equations
                        Instances For
                          theorem LeanPool.SingleCopyStabilizer.updatedSpace_isotropic {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) (hL : IsIsotropic L) (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) (hu : u i = 1) :
                          theorem LeanPool.SingleCopyStabilizer.updatedSpace_finrank {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) (i : ฮน) (u : Vec ๐•œ ฮน) (b : ๐•œ) (hu : u i = 1) :
                          Module.finrank ๐•œ โ†ฅ(updatedSpace L i u b) = Module.finrank ๐•œ โ†ฅL
                          theorem LeanPool.SingleCopyStabilizer.diagonal_finrank_monotone {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) (u : Vec ๐•œ ฮน) (i : ฮน) (b : ๐•œ) (hu : u i = 1) (horth : โˆ€ s โˆˆ diagonalSpace L, u โฌแตฅ s = 0) :
                          Module.finrank ๐•œ โ†ฅ(diagonalSpace L) โ‰ค Module.finrank ๐•œ โ†ฅ(diagonalSpace (updatedSpace L i u b))

                          Every choice of the local correction does not decrease diagonal dimension. Only orthogonality is needed, not membership of the sample in the X projection; this distinction is essential to the low-nullity proof.

                          theorem LeanPool.SingleCopyStabilizer.new_diagonal_independent {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [DecidableEq ฮน] {D : Submodule ๐•œ (Vec ๐•œ ฮน)} {i : ฮน} (hD : โˆ€ s โˆˆ D, s i = 0) (z : Vec ๐•œ ฮน) :
                          Function.update z i (-1) โˆ‰ D

                          The newly created diagonal label is outside the span of all old labels, because the entire old subspace vanishes at the pivot.

                          theorem LeanPool.SingleCopyStabilizer.diagonal_finrank_strict_progress {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L L' : Submodule ๐•œ (Label ๐•œ ฮน)) (u v : Vec ๐•œ ฮน) (i : ฮน) (hu : u i = 1) (huv : (u, v) โˆˆ L) (horth : โˆ€ s โˆˆ diagonalSpace L, u โฌแตฅ s = 0) (hupdate : โˆ€ a โˆˆ L, adaptiveUpdate i u (-shearZ i (u - Pi.single i 1) v i) a โˆˆ L') :
                          Module.finrank ๐•œ โ†ฅ(diagonalSpace L) < Module.finrank ๐•œ โ†ฅ(diagonalSpace L')

                          Exact algebraic content of the increase in diagonal-stabilizer dimension. L' can be any submodule containing the updated labels; no dimension increase is assumed. The result is deduced from the explicit fresh pivot coordinate.

                          theorem LeanPool.SingleCopyStabilizer.exists_diagonal_finrank_progress {๐•œ : Type u_1} [Field ๐•œ] {ฮน : Type u_2} [Fintype ฮน] [DecidableEq ฮน] (L : Submodule ๐•œ (Label ๐•œ ฮน)) (hL : IsIsotropic L) (u v : Vec ๐•œ ฮน) (i : ฮน) (hu : u i = 1) (huv : (u, v) โˆˆ L) :
                          โˆƒ (b : ๐•œ), Module.finrank ๐•œ โ†ฅ(diagonalSpace L) < Module.finrank ๐•œ โ†ฅ(diagonalSpace (updatedSpace L i u b))

                          For an isotropic space and a genuine nonzero stabilizer X label, there exists a local slope which strictly increases diagonal dimension.