Documentation

ConNF.FOA.BaseApprox

Base approximations #

In this file, we define base approximations.

Main declarations #

Instances For
    @[simp]
    theorem ConNF.BaseApprox.mk_litters [Params] (exceptions : Rel Atom Atom) (litters : Rel Litter Litter) (exceptions_permutative : exceptions.Permutative) (litters_permutative' : litters.Permutative) (exceptions_small : ∀ (L : Litter), Small (L exceptions.dom)) :
    { exceptions := exceptions, litters := litters, exceptions_permutative := exceptions_permutative, litters_permutative' := litters_permutative', exceptions_small := exceptions_small } = litters
    theorem ConNF.BaseApprox.ext [Params] {ψ χ : BaseApprox} (h₁ : ψ.exceptions = χ.exceptions) (h₂ : ψ = χ) :
    ψ = χ
    Equations
    • One or more equations did not get rendered due to their size.
    Equations
    Instances For
      theorem ConNF.BaseApprox.nearLitterEquiv_injective [Params] {N : NearLitter} {i₁ i₂ : κ} (h : ((nearLitterEquiv N) i₁) = ((nearLitterEquiv N) i₂)) :
      i₁ = i₂
      theorem ConNF.BaseApprox.nearLitterEquiv_congr [Params] {N₁ N₂ : NearLitter} {i₁ i₂ : κ} (hN : N₁ = N₂) (hi : i₁ = i₂) :
      ((nearLitterEquiv N₁) i₁) = ((nearLitterEquiv N₂) i₂)
      @[simp]
      Instances For
        theorem ConNF.BaseApprox.typical_iff [Params] {ψ : BaseApprox} {a₁ a₂ : Atom} :
        ψ.typical a₁ a₂ ψ a₁ a₂ ∃ (i : κ), a₁ = ((nearLitterEquiv (ψ.sublitter a₁)) i) a₂ = ((nearLitterEquiv (ψ.sublitter a₂)) i)
        theorem ConNF.BaseApprox.not_mem_dom_of_typical [Params] {ψ : BaseApprox} {a₁ a₂ : Atom} (h : ψ.typical a₁ a₂) :
        a₁ψ.exceptions.dom
        theorem ConNF.BaseApprox.typical_inv_of_typical [Params] {ψ : BaseApprox} {a₁ a₂ : Atom} (h : ψ.typical a₁ a₂) :
        ψ⁻¹.typical a₂ a₁
        theorem ConNF.BaseApprox.typical_inv_iff_typical [Params] {ψ : BaseApprox} {a₁ a₂ : Atom} :
        ψ⁻¹.typical a₂ a₁ ψ.typical a₁ a₂
        Equations
        Instances For
          theorem ConNF.BaseApprox.typical_image_sublitter [Params] (ψ : BaseApprox) {L₁ L₂ : Litter} (h : ψ L₁ L₂) :
          ψ.typical.image (ψ.sublitter L₁) = (ψ.sublitter L₂)
          theorem ConNF.BaseApprox.image_near_of_near [Params] (ψ : BaseApprox) (s : Set Atom) {L₁ L₂ : Litter} (hL : ψ L₁ L₂) (hsL : s ~ L₁) :
          ψ.image s ~ L₂
          Equations
          Instances For
            theorem ConNF.BaseApprox.nearLitters_def [Params] (ψ : BaseApprox) {N₁ N₂ : NearLitter} :
            ψ N₁ N₂ ψ N₁ N₂ N₁ ψ.dom ψ.image N₁ = N₂
            theorem ConNF.BaseApprox.mem_dom_nearLitters [Params] {ψ : BaseApprox} {N : NearLitter} (hL : N ψ.dom) (ha : aN \ N, a ψ.dom) :
            N ψ.dom

            This creates new definitions of ·ᴬ and ·ᴺ, but the instances are definitionally equal so no triangles are formed.

            Equations
            Equations
            Instances For
              theorem ConNF.BaseApprox.addOrbitLitters_oneOne [Params] (f : Litter) (hf : ∀ (m n k : ), f m = f nf (m + k) = f (n + k)) :
              theorem ConNF.BaseApprox.addOrbitLitters_permutative [Params] (f : Litter) (hf : ∀ (m n k : ), f m = f nf (m + k) = f (n + k)) :
              def ConNF.BaseApprox.addOrbit [Params] (ψ : BaseApprox) (f : Litter) (hf : ∀ (m n k : ), f m = f nf (m + k) = f (n + k)) (hfψ : ∀ (n : ), f nψ.dom) :
              Equations
              Instances For
                theorem ConNF.BaseApprox.addOrbit_litters [Params] {ψ : BaseApprox} {f : Litter} {hf : ∀ (m n k : ), f m = f nf (m + k) = f (n + k)} {hfψ : ∀ (n : ), f nψ.dom} :
                (ψ.addOrbit f hf hfψ) = ψ addOrbitLitters f
                theorem ConNF.BaseApprox.le_addOrbit [Params] {ψ : BaseApprox} {f : Litter} {hf : ∀ (m n k : ), f m = f nf (m + k) = f (n + k)} {hfψ : ∀ (n : ), f nψ.dom} :
                ψ ψ.addOrbit f hf hfψ
                theorem ConNF.BaseApprox.upperBound_exceptions_small [Params] (c : Set BaseApprox) (hc : IsChain (fun (x1 x2 : BaseApprox) => x1 x2) c) (L : Litter) :
                Small (L (⨆ ψc, ψ.exceptions).dom)
                def ConNF.BaseApprox.upperBound [Params] (c : Set BaseApprox) (hc : IsChain (fun (x1 x2 : BaseApprox) => x1 x2) c) :

                An upper bound for a chain of base approximations.

                Equations
                Instances For
                  theorem ConNF.BaseApprox.le_upperBound [Params] (c : Set BaseApprox) (hc : IsChain (fun (x1 x2 : BaseApprox) => x1 x2) c) (ψ : BaseApprox) :
                  ψ cψ upperBound c hc
                  Equations
                  Instances For
                    theorem ConNF.BaseApprox.basePerm_apply_near_apply [Params] (ψ : BaseApprox) (h : ψ.Total) (s : Set Atom) (L : Litter) :
                    s ~ L(ψ.toEquiv ) '' s ~ ((ψ.toEquiv ) L)
                    Equations
                    Instances For
                      @[simp]
                      theorem ConNF.BaseApprox.basePerm_smul_atom_eq_iff [Params] {ψ : BaseApprox} {h : ψ.Total} {a₁ a₂ : Atom} :
                      ψ.basePerm h a₁ = a₂ ψ a₁ a₂
                      @[simp]
                      theorem ConNF.BaseApprox.basePerm_inv_smul_atom_eq_iff [Params] {ψ : BaseApprox} {h : ψ.Total} {a₁ a₂ : Atom} :
                      (ψ.basePerm h)⁻¹ a₁ = a₂ ψ a₂ a₁
                      @[simp]
                      theorem ConNF.BaseApprox.basePerm_smul_litter_eq_iff [Params] {ψ : BaseApprox} {h : ψ.Total} {L₁ L₂ : Litter} :
                      ψ.basePerm h L₁ = L₂ ψ L₁ L₂
                      @[simp]
                      theorem ConNF.BaseApprox.basePerm_inv_smul_litter_eq_iff [Params] {ψ : BaseApprox} {h : ψ.Total} {L₁ L₂ : Litter} :
                      (ψ.basePerm h)⁻¹ L₁ = L₂ ψ L₂ L₁
                      @[simp]
                      theorem ConNF.BaseApprox.basePerm_smul_nearLitter_eq_iff [Params] {ψ : BaseApprox} {h : ψ.Total} {N₁ N₂ : NearLitter} :
                      ψ.basePerm h N₁ = N₂ ψ N₁ N₂
                      • atoms (a₁ a₂ : Atom) : ψ a₁ a₂a₂ = π a₁
                      • nearLitters (N₁ N₂ : NearLitter) : ψ N₁ N₂N₂ = π N₁
                      Instances For
                        theorem ConNF.BaseApprox.Approximates.litters [Params] {ψ : BaseApprox} {π : BasePerm} (h : ψ.Approximates π) (L₁ L₂ : Litter) :
                        ψ L₁ L₂π L₁ = L₂
                        theorem ConNF.BaseApprox.Approximates.mono [Params] {ψ χ : BaseApprox} {π : BasePerm} ( : χ.Approximates π) (h : ψ χ) :
                        Instances For