Documentation

AInfinity.AdditiveCompletion

structure CMat_ (C : Type u_1) :
Type u_1
  • ofList :: (
  • )
Instances For
    @[implicit_reducible]
    instance instTexifyCMat_ (C : Type u_1) [Texify C] :
    Equations
    • One or more equations did not get rendered due to their size.
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem CMat_.toList_empty {C : Type u_1} :
      { toList := [] }.toList = []
      theorem CMat_.toList_singleton {C : Type u_1} (A : C) :
      { toList := [A] }.toList = [A]
      @[irreducible]
      def CMat_.ι {C : Type u_1} (M : CMat_ C) :

      Mirrors the API of CategoryTheory.Mat_.ι. This is irreducible because it is effectively irreducible in Mat_, and we should mirror the API.

      Equations
      Instances For
        def CMat_.ι.toFin {C : Type u_1} {M : CMat_ C} (i : M.ι) :
        Equations
        Instances For
          def CMat_.ι.ofFin {C : Type u_1} {M : CMat_ C} (i : Fin M.toList.length) :
          M.ι
          Equations
          Instances For
            @[simp]
            theorem CMat_.ι.ofFin_toFin {C : Type u_1} {M : CMat_ C} (i : M.ι) :
            @[simp]
            theorem CMat_.ι.toFin_ofFin {C : Type u_1} {M : CMat_ C} (i : Fin M.toList.length) :
            (ofFin i).toFin = i
            def CMat_.ι.finEquiv {C : Type u_1} {M : CMat_ C} :
            Equations
            Instances For
              @[implicit_reducible]
              instance CMat_.fintype {C : Type u_1} {M : CMat_ C} :
              Equations
              @[irreducible]
              def CMat_.X {C : Type u_1} {M : CMat_ C} :
              M.ιC

              Mirrors the API of CategoryTheory.Mat_.X

              Equations
              Instances For

                Mirrors the API of CategoryTheory.Mat_.Hom

                Equations
                Instances For

                  Mirrors the API of CategoryTheory.Mat_.Hom.id

                  Equations
                  Instances For
                    def CMat_.Hom.comp {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N K : CMat_ C} (f : M.Hom N) (g : N.Hom K) :
                    M.Hom K

                    Mirrors the API of CategoryTheory.Mat_.Hom.comp

                    Equations
                    Instances For
                      @[implicit_reducible]
                      Equations
                      @[implicit_reducible]
                      instance CMat_.instTexifyHomOfHom {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [(X Y : C) → Texify (X Y)] (M N : CMat_ C) :
                      Texify (M.Hom N)
                      Equations
                      • One or more equations did not get rendered due to their size.
                      @[implicit_reducible]
                      instance CMat_.instTexifyHom {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] [(X Y : C) → Texify (X Y)] (M N : CMat_ C) :
                      Texify (M N)
                      Equations
                      • One or more equations did not get rendered due to their size.
                      def CMat_.Hom.ofFin {C : Type u_2} [CategoryTheory.Category.{u_3, u_2} C] [CategoryTheory.Preadditive C] (xs ys : List C) (f : (i : Fin xs.length) → (j : Fin ys.length) → xs[i] ys[j]) :
                      { toList := xs } { toList := ys }

                      Constructor for explicit morphisms, e.g. in interactive use

                      Equations
                      Instances For
                        theorem CMat_.hom_ext {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N : CMat_ C} (f g : M N) (H : ∀ (i : M.ι) (j : N.ι), f i j = g i j) :
                        f = g
                        theorem CMat_.hom_ext_iff {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N : CMat_ C} {f g : M N} :
                        f = g ∀ (i : M.ι) (j : N.ι), f i j = g i j
                        theorem CMat_.comp_def {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N K : CMat_ C} (f : M N) (g : N K) :
                        CategoryTheory.CategoryStruct.comp f g = fun (i : M.ι) (k : K.ι) => j : N.ι, CategoryTheory.CategoryStruct.comp (f i j) (g j k)
                        @[simp]
                        theorem CMat_.comp_apply {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N K : CMat_ C} (f : M N) (g : N K) (i : M.ι) (k : K.ι) :
                        @[implicit_reducible]
                        Equations
                        @[implicit_reducible]
                        Equations
                        • One or more equations did not get rendered due to their size.
                        @[simp]
                        theorem CMat_.add_apply {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] {M N : CMat_ C} (f g : M N) (i : M.ι) (j : N.ι) :
                        (f + g) i j = f i j + g i j
                        @[implicit_reducible]
                        Equations
                        def CMat_.cbiprod {C : Type u_1} (M N : CMat_ C) :
                        Equations
                        Instances For
                          @[implicit_reducible]
                          Equations
                          • One or more equations did not get rendered due to their size.

                          Same as cbiprod_ι_equiv but expressed with proper notation and thus with types

                          Equations
                          Instances For
                            instance CMat_.instIsEmptyιOfListNil {C : Type u_1} :
                            IsEmpty { toList := [] }.ι
                            Equations
                            Instances For
                              noncomputable def CMat_.ofMat_ {C : Type u_1} (M' : CategoryTheory.Mat_ C) :

                              Given a Mat_ object M', construct the corresponding CMat_ object.

                              Equations
                              Instances For
                                theorem CMat_.apply_X_ofList_singleton (C : Type u_1) {A : C} (i : { toList := [A] }.ι) :
                                X i = A

                                This is not a simp lemma because I am worried that this is often an equality of types. But I think this could work as a simp lemma, I'm just not sure if it would cause defeq issues.

                                theorem CMat_.singleton_ι_card (C : Type u_1) {A : C} :
                                Fintype.card { toList := [A] }.ι = 1
                                @[implicit_reducible]
                                instance CMat_.singleton_ι_unique (C : Type u_1) {A : C} :
                                Unique { toList := [A] }.ι
                                Equations
                                Equations
                                Instances For
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    Equations
                                    Instances For
                                      @[implicit_reducible]
                                      instance CMat_.instModuleDMatrix {R : Type u_1} [Semiring R] (m : Type u_2) (n : Type u_3) (α : mnType u_4) [(i : m) → (j : n) → AddCommGroup (α i j)] [(i : m) → (j : n) → Module R (α i j)] :
                                      Module R (DMatrix m n α)
                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      @[implicit_reducible]
                                      Equations
                                      • One or more equations did not get rendered due to their size.