Documentation

Matroid.Representation.Map

def Matroid.Rep.comp {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (h_inj : Disjoint (Submodule.span ๐”ฝ (Set.range โ‡‘v)) ฯˆ.ker) :
M.Rep ๐”ฝ W'

Compose a representation v with a linear map that is injective on the range of v

Equations
  • v.comp ฯˆ h_inj = { to_fun := โ‡‘ฯˆ โˆ˜ โ‡‘v, indep_iff' := โ‹ฏ }
Instances For

    Maps between representations #

    def Matroid.Rep.comp' {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (hฯˆ : ฯˆ.ker = โŠฅ) :
    M.Rep ๐”ฝ W'

    Compose a representation with a linear injection.

    Equations
    Instances For
      def Matroid.Rep.compEquiv {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ‰ƒโ‚—[๐”ฝ] W') :
      M.Rep ๐”ฝ W'

      Compose a representation with a linear equivalence.

      Equations
      Instances For
        @[simp]
        theorem Matroid.Rep.comp_apply {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (h_inj : Disjoint (Submodule.span ๐”ฝ (Set.range โ‡‘v)) ฯˆ.ker) (e : ฮฑ) :
        (v.comp ฯˆ h_inj) e = ฯˆ (v e)
        @[simp]
        theorem Matroid.Rep.comp_coeFun {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (h_inj : Disjoint (Submodule.span ๐”ฝ (Set.range โ‡‘v)) ฯˆ.ker) :
        โ‡‘(v.comp ฯˆ h_inj) = โ‡‘ฯˆ โˆ˜ โ‡‘v
        @[simp]
        theorem Matroid.Rep.comp'_apply {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (hฯˆ : ฯˆ.ker = โŠฅ) (e : ฮฑ) :
        (v.comp' ฯˆ hฯˆ) e = ฯˆ (v e)
        @[simp]
        theorem Matroid.Rep.comp'_coeFun {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ†’โ‚—[๐”ฝ] W') (h_inj : ฯˆ.ker = โŠฅ) :
        โ‡‘(v.comp' ฯˆ h_inj) = โ‡‘ฯˆ โˆ˜ โ‡‘v
        @[simp]
        theorem Matroid.Rep.compEquiv_apply {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ‰ƒโ‚—[๐”ฝ] W') (e : ฮฑ) :
        (v.compEquiv ฯˆ) e = ฯˆ (v e)
        @[simp]
        theorem Matroid.Rep.compEquiv_coeFun {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ‰ƒโ‚—[๐”ฝ] W') :
        โ‡‘(v.compEquiv ฯˆ) = โ‡‘ฯˆ โˆ˜ โ‡‘v
        @[simp]
        theorem Matroid.Rep.compEquiv_compEquiv_symm {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W) (ฯˆ : W โ‰ƒโ‚—[๐”ฝ] W') :
        (v.compEquiv ฯˆ).compEquiv ฯˆ.symm = v
        @[simp]
        theorem Matroid.Rep.compEquiv_symm_compEquiv {ฮฑ : Type u_1} {W : Type u_3} {W' : Type u_4} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] [AddCommGroup W'] [Module ๐”ฝ W'] (v : M.Rep ๐”ฝ W') (ฯˆ : W โ‰ƒโ‚—[๐”ฝ] W') :
        (v.compEquiv ฯˆ.symm).compEquiv ฯˆ = v
        def Matroid.Rep.subtype_ofEq {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {Wโ‚ Wโ‚‚ : Submodule ๐”ฝ W} (v : M.Rep ๐”ฝ โ†ฅWโ‚) (h : Wโ‚ = Wโ‚‚) :
        M.Rep ๐”ฝ โ†ฅWโ‚‚

        Compose a representation with a module equality

        Equations
        Instances For
          @[simp]
          theorem Matroid.Rep.subtype_ofEq_apply {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {Wโ‚ Wโ‚‚ : Submodule ๐”ฝ W} (v : M.Rep ๐”ฝ โ†ฅWโ‚) (h : Wโ‚ = Wโ‚‚) (e : ฮฑ) :
          (v.subtype_ofEq h) e = (LinearEquiv.ofEq Wโ‚ Wโ‚‚ h) (v e)
          noncomputable def Matroid.Rep.finsuppToFun {ฮฑ : Type u_1} {ฮฒ : Type u_2} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] (v : M.Rep ๐”ฝ (ฮฒ โ†’โ‚€ ๐”ฝ)) :
          M.Rep ๐”ฝ (ฮฒ โ†’ ๐”ฝ)
          Equations
          Instances For
            @[simp]
            theorem Matroid.Rep.finsuppToFun_to_fun {ฮฑ : Type u_1} {ฮฒ : Type u_2} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] (v : M.Rep ๐”ฝ (ฮฒ โ†’โ‚€ ๐”ฝ)) (aโœ : ฮฑ) (aโœยน : ฮฒ) :
            v.finsuppToFun.to_fun aโœ aโœยน = (v aโœ) aโœยน
            def Matroid.Rep.comap {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M : Matroid ฮฒ} (v : M.Rep ๐”ฝ W) (f : ฮฑ โ†’ ฮฒ) :
            (M.comap f).Rep ๐”ฝ W

            A representation gives a representation of a comap

            Equations
            Instances For
              @[simp]
              theorem Matroid.Rep.comap_to_fun {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M : Matroid ฮฒ} (v : M.Rep ๐”ฝ W) (f : ฮฑ โ†’ ฮฒ) (aโœ : ฮฑ) :
              (v.comap f).to_fun aโœ = (โ‡‘v โˆ˜ f) aโœ
              theorem Matroid.Rep.comap_coeFun_eq {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M : Matroid ฮฒ} (f : ฮฑ โ†’ ฮฒ) (v : M.Rep ๐”ฝ W) :
              โ‡‘(v.comap f) = โ‡‘v โˆ˜ f
              @[simp]
              theorem Matroid.Rep.comap_apply {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M : Matroid ฮฒ} (f : ฮฑ โ†’ ฮฒ) (v : M.Rep ๐”ฝ W) (a : ฮฑ) :
              (v.comap f) a = v (f a)
              def Matroid.Rep.ofEq {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M N : Matroid ฮฑ} (v : M.Rep ๐”ฝ W) (h : M = N) :
              N.Rep ๐”ฝ W
              Equations
              • v.ofEq h = { to_fun := โ‡‘v, indep_iff' := โ‹ฏ }
              Instances For
                @[simp]
                theorem Matroid.Rep.ofEq_to_fun {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M N : Matroid ฮฑ} (v : M.Rep ๐”ฝ W) (h : M = N) (a : ฮฑ) :
                (v.ofEq h).to_fun a = v a
                @[simp]
                theorem Matroid.Rep.ofEq_apply {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {M N : Matroid ฮฑ} (v : M.Rep ๐”ฝ W) (h : M = N) :
                โ‡‘(v.ofEq h) = โ‡‘v
                noncomputable def Matroid.Rep.restrictSubtype {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) (X : Set ฮฑ) :
                (M.restrictSubtype X).Rep ๐”ฝ W
                Equations
                Instances For
                  noncomputable def Matroid.Rep.map {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) (f : ฮฑ โ†’ ฮฒ) (hf : Set.InjOn f M.E) [DecidablePred fun (x : ฮฒ) => โˆƒ y โˆˆ M.E, f y = x] :
                  (M.map f hf).Rep ๐”ฝ W

                  Transfer a Rep along a matroid map. The definition involves extending a function with zero, so requires a DecidablePred assumption.

                  Equations
                  Instances For
                    theorem Matroid.Rep.matroidMap_apply {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) {f : ฮฑ โ†’ ฮฒ} {hf : Set.InjOn f M.E} [DecidablePred fun (x : ฮฒ) => โˆƒ y โˆˆ M.E, f y = x] {x : ฮฑ} (hx : x โˆˆ M.E) :
                    (v.map f hf) (f x) = v x
                    theorem Matroid.Rep.matroidMap_image {ฮฑ : Type u_1} {ฮฒ : Type u_2} {W : Type u_3} {๐”ฝ : Type u_5} {X : Set ฮฑ} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) (f : ฮฑ โ†’ ฮฒ) (hf : Set.InjOn f M.E) [DecidablePred fun (x : ฮฒ) => โˆƒ y โˆˆ M.E, f y = x] (hX : X โІ M.E) :
                    โ‡‘(v.map f hf) '' f '' X = โ‡‘v '' X
                    def Matroid.Rep.scale {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) (c : ฮฑ โ†’ ๐”ฝหฃ) :
                    M.Rep ๐”ฝ W

                    Scale a representation by an invertible scalar for each element of ฮฑ.

                    Equations
                    Instances For
                      @[simp]
                      theorem Matroid.Rep.scale_to_fun {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) (c : ฮฑ โ†’ ๐”ฝหฃ) (a : ฮฑ) :
                      (v.scale c).to_fun a = (c โ€ข โ‡‘v) a
                      def Module.matroid (๐”ฝ : Type u_7) (W : Type u_8) [AddCommGroup W] [DivisionRing ๐”ฝ] [Module ๐”ฝ W] :

                      The ๐”ฝ-representable matroid whose ground set is a vector space W over ๐”ฝ, and independence is linear independence.

                      Equations
                      Instances For
                        def Module.matroidRep (๐”ฝ : Type u_7) (W : Type u_8) [AddCommGroup W] [DivisionRing ๐”ฝ] [Module ๐”ฝ W] :
                        (Module.matroid ๐”ฝ W).Rep ๐”ฝ W
                        Equations
                        Instances For
                          @[simp]
                          theorem Module.matroidRep_to_fun (๐”ฝ : Type u_7) (W : Type u_8) [AddCommGroup W] [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (a : W) :
                          (Module.matroidRep ๐”ฝ W).to_fun a = a
                          @[simp]
                          theorem Module.matroid_subsingleton (๐”ฝ : Type u_7) (W : Type u_8) [AddCommGroup W] [DivisionRing ๐”ฝ] [Module ๐”ฝ W] [Subsingleton W] :
                          instance Module.matroid_finitary {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] :
                          (Module.matroid ๐”ฝ W).Finitary
                          theorem Matroid.Rep.eq_comap {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) :
                          M = (Module.matroid ๐”ฝ W).comapOn M.E โ‡‘v
                          theorem Matroid.Rep.finitary {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) :

                          Representations from functions #

                          def Matroid.ofFun {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) (f : ฮฑ โ†’ W) :
                          Matroid ฮฑ

                          The ๐”ฝ-representable matroid given by a function f : ฮฑ โ†’ W for a vector space W over ๐”ฝ, and a ground set E : Set ฮฑ.

                          Equations
                          Instances For
                            theorem Matroid.ofFun_congr {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {E : Set ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v v' : ฮฑ โ†’ W} (hvv' : Set.EqOn v v' E) :
                            Matroid.ofFun ๐”ฝ E v = Matroid.ofFun ๐”ฝ E v'
                            @[simp]
                            theorem Matroid.ofFun_indicator {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {E : Set ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} :
                            Matroid.ofFun ๐”ฝ E (E.indicator v) = Matroid.ofFun ๐”ฝ E v
                            noncomputable def Matroid.repOfFun {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) (f : ฮฑ โ†’ W) :
                            (Matroid.ofFun ๐”ฝ E f).Rep ๐”ฝ W
                            Equations
                            Instances For
                              theorem Matroid.repOfFun_coeFun_eq {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) (f : ฮฑ โ†’ W) :
                              โ‡‘(repOfFun ๐”ฝ E f) = E.indicator f
                              theorem Matroid.repOfFun_coeFun_eq' {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) (f : ฮฑ โ†’ W) (hf : Function.support f โІ E) :
                              โ‡‘(repOfFun ๐”ฝ E f) = f
                              @[simp]
                              theorem Matroid.repOfFun_image_eq {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) (f : ฮฑ โ†’ W) :
                              โ‡‘(repOfFun ๐”ฝ E f) '' E = f '' E
                              theorem Matroid.repOfFun_apply {ฮฑ : Type u_1} {W : Type u_3} {e : ฮฑ} {E : Set ฮฑ} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} (he : e โˆˆ E) :
                              (repOfFun ๐”ฝ E v) e = v e
                              instance Matroid.matroidOfFun_finitary {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [DivisionRing ๐”ฝ] [Module ๐”ฝ W] (f : ฮฑ โ†’ W) (E : Set ฮฑ) :
                              (Matroid.ofFun ๐”ฝ E f).Finitary
                              theorem Matroid.ofFun_finite {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (f : ฮฑ โ†’ W) (E : Set ฮฑ) (hfin : E.Finite) :
                              (Matroid.ofFun ๐”ฝ E f).Finite
                              @[simp]
                              theorem Matroid.ofFun_ground_eq {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} {E : Set ฮฑ} :
                              (Matroid.ofFun ๐”ฝ E v).E = E
                              @[simp]
                              theorem Matroid.ofFun_indep_iff {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {I : Set ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} {E : Set ฮฑ} :
                              (Matroid.ofFun ๐”ฝ E v).Indep I โ†” LinearIndepOn ๐”ฝ v I โˆง I โІ E
                              @[simp]
                              theorem Matroid.Rep.ofFun_self {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {M : Matroid ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] (v : M.Rep ๐”ฝ W) :
                              Matroid.ofFun ๐”ฝ M.E โ‡‘v = M
                              theorem Matroid.ofFun_closure_eq {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {X : Set ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} {E : Set ฮฑ} (hvE : Function.support v โІ E) :
                              (Matroid.ofFun ๐”ฝ E v).closure X = v โปยน' โ†‘(Submodule.span ๐”ฝ (v '' X)) โˆฉ E
                              theorem Matroid.ofFun_closure_eq_of_subset_ground {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} {X : Set ฮฑ} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} {E : Set ฮฑ} (hXE : X โІ E) :
                              (Matroid.ofFun ๐”ฝ E v).closure X = v โปยน' โ†‘(Submodule.span ๐”ฝ (v '' X)) โˆฉ E
                              theorem Module.Basis.ofFun_isBase {ฮฑ : Type u_1} {W : Type u_3} {๐”ฝ : Type u_5} [DivisionRing ๐”ฝ] [AddCommGroup W] [Module ๐”ฝ W] {v : ฮฑ โ†’ W} {E B : Set ฮฑ} (b : Basis (โ†‘B) ๐”ฝ W) (hfb : โˆ€ (x : โ†‘B), v โ†‘x = b x) (hBE : B โІ E) :
                              (Matroid.ofFun ๐”ฝ E v).IsBase B
                              @[simp]
                              theorem Matroid.ofFun_zero {ฮฑ : Type u_1} {W : Type u_3} [AddCommGroup W] (๐”ฝ : Type u_7) [Field ๐”ฝ] [Module ๐”ฝ W] (E : Set ฮฑ) :
                              Matroid.ofFun ๐”ฝ E 0 = loopyOn E