Documentation

GaudisCrypt.CounterExamples.ExtendSupProbe

Computational probe: is extend_sup true (deterministic Function.End model)? #

fvP_extend_sup (over the kernel monoid) is sorry'd; the question is whether it is even true. The kernel monoid is infinite, but its obstruction is the corner double-commutant identity u '' (CC W) = CC (u '' W), which already makes sense in the finite deterministic model Function.End (the Dirac part). This file brute-forces that model:

We then check extend (r₁ ⊔ r₂) = extend r₁ ⊔ extend r₂ for every pair of ranges and report any counterexample. (A failure here strongly suggests the probabilistic fvP_extend_sup is false; no failure suggests it is true and my earlier pessimism was wrong.)

@[reducible, inline]
abbrev Foc :
Equations
Instances For
    @[reducible, inline]
    abbrev St :
    Equations
    Instances For
      @[reducible, inline]
      abbrev Ma :
      Equations
      Instances For
        @[reducible, inline]
        abbrev Mb :
        Equations
        Instances For
          def cen {α : Type} [DecidableEq α] [Fintype α] (S : Finset (α → α)) :
          Finset (α → α)

          Centralizer of S (under composition) inside the full endomorphism monoid.

          Equations
          • cen S = {h : α → α | ∀ g ∈ S, g ∘ h = h ∘ g}
          Instances For
            def cc {α : Type} [DecidableEq α] [Fintype α] (S : Finset (α → α)) :
            Finset (α → α)

            Bicommutant closure.

            Equations
            Instances For
              def u (f : Ma) :

              The lens-corner embedding Foc-endo ↦ St-endo (act on the first coordinate).

              Equations
              Instances For
                def uimg (S : Finset Ma) :
                Equations
                Instances For

                  extend r's updates: bicommutant of the localized image.

                  Equations
                  Instances For
                    def joinA (r₁ r₂ : Finset Ma) :

                    Join of two ranges (= bicommutant of the union of updates).

                    Equations
                    Instances For
                      def joinB (s₁ s₂ : Finset Mb) :
                      Equations
                      Instances For

                        The ranges of Ma: bicommutant-closed subsets.

                        Equations
                        Instances For
                          def extendSupHolds (r₁ r₂ : Finset Ma) :

                          extend_sup for one pair, as a Bool.

                          Equations
                          Instances For

                            All range pairs violating extend_sup.

                            Equations
                            Instances For

                              The underlying identity extend_sup needs, for an arbitrary set W: u '' (CC W) = CC (u '' W).

                              Equations
                              Instances For

                                All subsets W ⊆ Ma violating the core identity.

                                Equations
                                Instances For

                                  Proof-strategy probe: does extend have a right adjoint? #

                                  extend r ≤ R ⟺ r.updates ⊆ u⁻¹'(R.updates). So extend has a right adjoint (hence preserves all joins, giving extend_sup and reduce_sup for free) iff u⁻¹'(R.updates) is bicommutant-closed for every range R. We test that on the corner ranges that actually arise.

                                  def uPre (R : Finset Mb) :

                                  Preimage of a set of Mb-endos under u.

                                  Equations
                                  Instances For

                                    Is u⁻¹'(R) bicommutant-closed in Ma?

                                    Equations
                                    Instances For

                                      The corner ranges appearing in extend_sup: extend r and extend r₁ ⊔ extend r₂.

                                      Equations
                                      Instances For