Documentation

ConNF.ModelData.PathEnumeration

Enumerations over paths #

In this file, we provide extra features to Enumerations that take values of the form α ↝ ⊥ × X.

Main declarations #

def ConNF.Enumeration.relWithPath [Params] {X Y : Type u} {α : TypeIndex} (f : α Rel X Y) :
Rel (α × X) (α × Y)

A helper function for making relations with domain and codomain of the form α ↝ ⊥ × X by defining it on each branch.

Equations
Instances For
    theorem ConNF.Enumeration.relWithPath_coinjective [Params] {X Y : Type u} {α : TypeIndex} {f : α Rel X Y} (hf : ∀ (A : α ), (f A).Coinjective) :
    Equations
    theorem ConNF.Enumeration.deriv_rel [Params] {X : Type u} {α β : TypeIndex} (E : Enumeration (α × X)) (A : α β) (i : κ) (x : β × X) :
    (E A).rel i x E.rel i (x.1 A, x.2)
    theorem ConNF.Enumeration.coderiv_rel [Params] {X : Type u} {α β : TypeIndex} (E : Enumeration (β × X)) (A : α β) (i : κ) (x : α × X) :
    (E A).rel i x ∃ (B : β ), x.1 = A B E.rel i (B, x.2)
    theorem ConNF.Enumeration.scoderiv_rel [Params] {X : Type u} {α β : TypeIndex} (E : Enumeration (β × X)) (h : β < α) (i : κ) (x : α × X) :
    (E h).rel i x ∃ (B : β ), x.1 = B h E.rel i (B, x.2)
    theorem ConNF.Enumeration.eq_of_scoderiv_mem [Params] {X : Type u} {α β γ : TypeIndex} (E : Enumeration (β × X)) (h : β < α) (h' : γ < α) (i : κ) (A : γ ) (x : X) :
    (E h).rel i (A h', x)β = γ
    theorem ConNF.Enumeration.derivBot_rel [Params] {X : Type u} {α : TypeIndex} (E : Enumeration (α × X)) (A : α ) (i : κ) (x : X) :
    (E ⇘. A).rel i x E.rel i (A, x)
    @[simp]
    theorem ConNF.Enumeration.mem_path_iff [Params] {X : Type u} {α : TypeIndex} (E : Enumeration (α × X)) (A : α ) (x : X) :
    (A, x) E x E ⇘. A
    theorem ConNF.Enumeration.ext_path [Params] {X : Type u} {α : TypeIndex} {E F : Enumeration (α × X)} (h : ∀ (A : α ), E ⇘. A = F ⇘. A) :
    E = F
    theorem ConNF.Enumeration.deriv_derivBot [Params] {X : Type u} {α β : TypeIndex} (E : Enumeration (α × X)) (A : α β) (B : β ) :
    E A ⇘. B = E ⇘. (A B)
    @[simp]
    theorem ConNF.Enumeration.coderiv_deriv_eq [Params] {X : Type u} {α β : TypeIndex} (E : Enumeration (β × X)) (A : α β) :
    E A A = E
    theorem ConNF.Enumeration.eq_of_mem_scoderiv_botDeriv [Params] {X : Type u} {α β : TypeIndex} {S : Enumeration (β × X)} {A : α } {h : β < α} {x : X} (hx : x S h ⇘. A) :
    ∃ (B : β ), A = B h
    @[simp]
    theorem ConNF.Enumeration.scoderiv_botDeriv_eq [Params] {X : Type u} {α β : TypeIndex} (S : Enumeration (β × X)) (A : β ) (h : β < α) :
    S h ⇘. (A h) = S ⇘. A
    theorem ConNF.Enumeration.mulAction_aux [Params] {X : Type u_1} {α : TypeIndex} [MulAction BasePerm X] (π : StrPerm α) :
    Function.Injective fun (x : α × X) => (x.1, (π x.1)⁻¹ x.2)
    Equations
    • One or more equations did not get rendered due to their size.
    @[simp]
    theorem ConNF.Enumeration.smulPath_rel [Params] {X : Type u} {α : TypeIndex} [MulAction BasePerm X] (π : StrPerm α) (E : Enumeration (α × X)) (i : κ) (x : α × X) :
    (π E).rel i x E.rel i (x.1, (π x.1)⁻¹ x.2)
    theorem ConNF.Enumeration.smul_eq_of_forall_smul_eq [Params] {X : Type u} {α : TypeIndex} [MulAction BasePerm X] {π : StrPerm α} {E : Enumeration (α × X)} (h : ∀ (A : α ) (x : X), (A, x) Eπ A x = x) :
    π E = E
    theorem ConNF.Enumeration.smul_eq_smul_of_forall_smul_eq [Params] {X : Type u} {α : TypeIndex} [MulAction BasePerm X] {π₁ π₂ : StrPerm α} {E : Enumeration (α × X)} (h : ∀ (A : α ) (x : X), (A, x) Eπ₁ A x = π₂ A x) :
    π₁ E = π₂ E
    theorem ConNF.Enumeration.smul_eq_of_mem_of_smul_eq [Params] {X : Type u} {α : TypeIndex} [MulAction BasePerm X] {π : StrPerm α} {E : Enumeration (α × X)} (h : π E = E) (A : α ) (x : X) (hx : (A, x) E) :
    π A x = x
    theorem ConNF.Enumeration.smul_eq_iff [Params] {X : Type u} {α : TypeIndex} [MulAction BasePerm X] (π : StrPerm α) (E : Enumeration (α × X)) :
    π E = E ∀ (A : α ) (x : X), (A, x) Eπ A x = x