Documentation

ConNF.Position.Deny

Injective functions from denied sets #

In this file, we construct a mechanism for creating injective functions satisfying particular constraints.

Main declarations #

def ConNF.initialEquiv {X : Type u_1} :
X (Cardinal.mk X).ord.toType
Equations
  • ConNF.initialEquiv = .some
Instances For

    Endow a type X with a well-order of smallest possible order type.

    Equations
    Instances For
      theorem ConNF.initialWellOrder_type {X : Type u_1} :
      (Ordinal.type fun (x1 x2 : X) => x1 < x2) = (Cardinal.mk X).ord
      theorem ConNF.initialWellOrder_card_Iio {X : Type u_1} (x : X) :
      Cardinal.mk {y : X | y < x} < Cardinal.mk X
      def ConNF.chooseOfCardLt {X : Type u_1} {s : Set X} (h : Cardinal.mk s < Cardinal.mk X) :
      X
      Equations
      Instances For
        theorem ConNF.gtOfDeny_aux [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) (ih : (y : X) → y < xConNF.μ) :
        Cardinal.mk ({ν : ConNF.μ | ∃ (y : X) (h : y < x), ν = ih y h} {ν : ConNF.μ | ξdeny x, ν ξ}) < Cardinal.mk ConNF.μ
        def ConNF.gtOfDeny [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) (ih : (y : X) → y < xConNF.μ) :
        ConNF.μ
        Equations
        Instances For
          theorem ConNF.gtOfDeny_spec [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) (ih : (y : X) → y < xConNF.μ) :
          ConNF.gtOfDeny h₁ deny h₂ x ih{ν : ConNF.μ | ∃ (y : X) (h : y < x), ν = ih y h} {ν : ConNF.μ | ξdeny x, ν ξ}
          def ConNF.funOfDeny [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) :
          XConNF.μ
          Equations
          Instances For
            theorem ConNF.funOfDeny_eq [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) :
            ConNF.funOfDeny h₁ deny h₂ x = ConNF.gtOfDeny h₁ deny h₂ x fun (y : X) (x : y < x) => ConNF.funOfDeny h₁ deny h₂ y
            theorem ConNF.funOfDeny_spec [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) :
            ConNF.funOfDeny h₁ deny h₂ x{ν : ConNF.μ | ∃ (y : X) (_ : y < x), ν = ConNF.funOfDeny h₁ deny h₂ y} {ν : ConNF.μ | ξdeny x, ν ξ}
            theorem ConNF.funOfDeny_gt_deny [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) (x : X) (ν : ConNF.μ) (hν : ν deny x) :
            ν < ConNF.funOfDeny h₁ deny h₂ x
            theorem ConNF.funOfDeny_injective [ConNF.Params] {X : Type u} (h₁ : Cardinal.mk X Cardinal.mk ConNF.μ) (deny : XSet ConNF.μ) (h₂ : ∀ (x : X), Cardinal.mk (deny x) < (Cardinal.mk ConNF.μ).ord.cof) :