Documentation

LeanPool.Monlib4.QuantumGraph.PiMatFinTwo

LeanPool.Monlib4.QuantumGraph.PiMatFinTwo #

Imported Lean Pool material for LeanPool.Monlib4.QuantumGraph.PiMatFinTwo.

Elaborate a product-of-blocks statement with matrix quantum-set instances on each block.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    Introduce product and blockwise matrix quantum-set instances in a proof.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Elaborate a product-of-blocks statement with blockwise quantum and coalgebra instances.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        Introduce product, blockwise quantum, and coalgebra instances in a proof.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def MatProdAlgEquivPiMat (n' : Fin 2Type u_1) [(i : Fin 2) → Fintype (n' i)] [(i : Fin 2) → DecidableEq (n' i)] :
          (Matrix (n' 0) (n' 0) × Matrix (n' 1) (n' 1) ) ≃ₐ[] PiMat (Fin 2) n'

          The algebra equivalence between a two-block product of matrix algebras and the matching PiMat.

          Equations
          Instances For
            @[reducible, inline]
            abbrev PiFinTwo.swap (n' : Fin 2Type u_1) :
            Fin 2Type u_1

            Swap the two types in a Fin 2-indexed family.

            Equations
            Instances For
              @[implicit_reducible]
              instance instFintypeSwap {n' : Fin 2Type u_1} [(i : Fin 2) → Fintype (n' i)] (i : Fin 2) :
              Equations
              @[implicit_reducible]
              instance instDecidableEqSwap {n' : Fin 2Type u_1} [(i : Fin 2) → DecidableEq (n' i)] (i : Fin 2) :
              Equations
              def MatProdAlgEquivPiMatSwap (n' : Fin 2Type u_1) [(i : Fin 2) → Fintype (n' i)] [(i : Fin 2) → DecidableEq (n' i)] :
              (Matrix (n' 1) (n' 1) × Matrix (n' 0) (n' 0) ) ≃ₐ[] PiMat (Fin 2) (PiFinTwo.swap n')

              The swapped product-to-PiMat equivalence for two matrix blocks.

              Equations
              Instances For
                def Prod.swapAlgEquiv (α : Type u_1) (β : Type u_2) [Semiring α] [Semiring β] [Algebra α] [Algebra β] :
                (α × β) ≃ₐ[] β × α

                Swap the two factors of a product as an algebra equivalence.

                Equations
                • Prod.swapAlgEquiv α β = { toFun := fun (x : α × β) => x.swap, invFun := fun (x : β × α) => x.swap, left_inv := , right_inv := , map_mul' := , map_add' := , commutes' := }
                Instances For
                  @[simp]
                  theorem Prod.swapAlgEquiv_apply (α : Type u_1) (β : Type u_2) [Semiring α] [Semiring β] [Algebra α] [Algebra β] (x : α × β) :
                  (swapAlgEquiv α β) x = x.swap
                  @[simp]
                  theorem Prod.swapAlgEquiv_symm_apply (α : Type u_1) (β : Type u_2) [Semiring α] [Semiring β] [Algebra α] [Algebra β] (x : β × α) :
                  (swapAlgEquiv α β).symm x = x.swap
                  def PiMatFinTwoSwapAlgEquiv {n' : Fin 2Type u_1} [(i : Fin 2) → Fintype (n' i)] [(i : Fin 2) → DecidableEq (n' i)] :

                  Swap the two blocks of a PiMat indexed by Fin 2.

                  Equations
                  Instances For
                    @[reducible, inline]
                    abbrev PiFinTwoSame (n : Type u_1) :
                    Fin 2Type u_1

                    The constant Fin 2-indexed family with value n.

                    Equations
                    Instances For
                      @[implicit_reducible]
                      instance instFintypePiFinTwoSame {n : Type u_1} [Fintype n] (i : Fin 2) :
                      Equations
                      @[implicit_reducible]
                      Equations
                      theorem PiMatFinTwoSwapAlgEquiv_apply {n' : Fin 2Type u_1} [(i : Fin 2) → Fintype (n' i)] [(i : Fin 2) → DecidableEq (n' i)] (x : Matrix (n' 0) (n' 0) ) (y : Matrix (n' 1) (n' 1) ) :

                      Swap the two identical matrix blocks of a PiMat indexed by Fin 2.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem AlgEquiv.prodMap_inner_of {K : Type u_2} {R₁ : Type u_3} {R₂ : Type u_4} [CommSemiring K] [Semiring R₁] [Semiring R₂] [Algebra K R₁] [Algebra K R₂] {f : R₁ ≃ₐ[K] R₁} (hf : f.IsInner) {g : R₂ ≃ₐ[K] R₂} (hg : g.IsInner) :
                        @[reducible]

                        Invertibility is preserved by the product-to-PiMat equivalence in the same-block case.

                        Equations
                        Instances For
                          theorem PiMat.trace_eq_linearMap_trace_toEuclideanLM {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] (y : PiMat (ι × ι) fun (i : ι × ι) => p i.1 × p i.2) :
                          traceLinearMap y = x : ι × ι, (LinearMap.trace (EuclideanSpace (p x.1 × p x.2))) (PiMatToEuclideanLM y x)
                          theorem QuantumGraph.Real.dimOfPiMatSubmodule_eq {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {A : PiMat ι p →ₗ[] PiMat ι p} (hA : Real (PiMat ι p) A) :
                          theorem LinearMap.proj_adjoint_apply {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] (i : ι) (x : Matrix (p i) (p i) ) :
                          theorem LinearMap.proj_adjoint {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] (i : ι) :
                          adjoint (proj i) = single (fun (r : ι) => Mat (p r)) i
                          theorem LinearMap.single_adjoint {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] (i : ι) :
                          adjoint (single (fun (r : ι) => Mat (p r)) i) = proj i
                          theorem LinearMap.eq_sum_conj_adjoint_proj_comp_proj {ι : Type u_2} {p : ιType u_3} [Fintype ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] (A : PiMat ι p →ₗ[] PiMat ι p) :
                          A = i : ι × ι, adjoint (proj i.1) ∘ₗ (proj i.1 ∘ₗ A ∘ₗ adjoint (proj i.2)) ∘ₗ proj i.2
                          theorem Pi.nat_eq_zero_of_sum_eq_one_and_unique_one {ι : Type u_4} [Fintype ι] {f : ι} (h : i : ι, f i = 1) {i : ι} (hd : f i = 1) {j : ι} (hj : j i) :
                          f j = 0
                          theorem Finset.sum_nat_eq_one_iff_exists_unique_eq_one {ι : Type u_4} [Fintype ι] {f : ι} (h : i : ι, f i = 1) :
                          ∃! i : ι, f i = 1
                          theorem QuantumGraph.Real.dimOfPiMatSubmodule_eq_zero_iff_eq_zero {ι : Type u_4} {p : ιType u_5} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {A : PiMat ι p →ₗ[] PiMat ι p} (hA : Real (PiMat ι p) A) :
                          theorem QuantumGraph.Real.exists_unique_includeMap_of_adjoint_and_dim_ofPiMatSubmodule_eq_one {ι : Type u_4} {p : ιType u_5} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {A : PiMat ι p →ₗ[] PiMat ι p} (hA : Real (PiMat ι p) A) (hA₂ : LinearMap.adjoint A = A) (hd : .dimOfPiMatSubmodule = 1) :
                          def AlgHom.proj (R : Type u_4) {ι : Type u_5} [CommSemiring R] {φ : ιType u_6} [(i : ι) → Semiring (φ i)] [(i : ι) → Algebra R (φ i)] (i : ι) :
                          ((i : ι) → φ i) →ₐ[R] φ i

                          Projection from a dependent product as an algebra homomorphism.

                          Equations
                          • AlgHom.proj R i = { toFun := fun (x : (i : ι) → φ i) => x i, map_one' := , map_mul' := , map_zero' := , map_add' := , commutes' := }
                          Instances For
                            theorem AlgHom.proj_apply {R : Type u_4} {ι : Type u_5} [CommSemiring R] {φ : ιType u_6} [(i : ι) → Semiring (φ i)] [(i : ι) → Algebra R (φ i)] (x : (i : ι) → φ i) (i : ι) :
                            (proj R i) x = x i
                            theorem AlgHom.proj_toLinearMap {R : Type u_4} {ι : Type u_5} [CommSemiring R] {φ : ιType u_6} [(i : ι) → Semiring (φ i)] [(i : ι) → Algebra R (φ i)] (i : ι) :
                            def NonUnitalAlgHom.single (R : Type u_4) {ι : Type u_5} [CommSemiring R] [DecidableEq ι] (φ : ιType u_6) [(i : ι) → Ring (φ i)] [(i : ι) → Module R (φ i)] (i : ι) :
                            φ i →ₙₐ[R] (i : ι) → φ i

                            Insert one component into a dependent product as a non-unital algebra homomorphism.

                            Equations
                            Instances For
                              theorem NonUnitalAlgHom.single_apply {R : Type u_4} {ι : Type u_5} [CommSemiring R] [DecidableEq ι] {φ : ιType u_6} [(i : ι) → Ring (φ i)] [(i : ι) → Module R (φ i)] (i : ι) (x : φ i) :
                              (single R φ i) x = Pi.single i x
                              theorem NonUnitalAlgHom.single_toLinearMap {R : Type u_4} {ι : Type u_5} [CommSemiring R] [DecidableEq ι] {φ : ιType u_6} [(i : ι) → Ring (φ i)] [(i : ι) → Module R (φ i)] (i : ι) :
                              theorem LinearMap.single_isReal {R : Type u_4} {ι : Type u_5} [DecidableEq ι] [Semiring R] {φ : ιType u_6} [(i : ι) → AddCommMonoid (φ i)] [(i : ι) → Module R (φ i)] [(i : ι) → StarAddMonoid (φ i)] (i : ι) :
                              IsReal (single R φ i)
                              theorem LinearMap.proj_isReal {R : Type u_4} {ι : Type u_5} [Semiring R] {φ : ιType u_6} [(i : ι) → AddCommMonoid (φ i)] [(i : ι) → Module R (φ i)] [(i : ι) → StarAddMonoid (φ i)] (i : ι) :
                              theorem LinearMap.single_comp_inj {R : Type u_4} {ι : Type u_5} {B : Type u_6} [Semiring R] {φ : ιType u_7} [(i : ι) → AddCommMonoid (φ i)] [AddCommMonoid B] [Module R B] [(i : ι) → Module R (φ i)] [DecidableEq ι] (i : ι) (f g : B →ₗ[R] φ i) :
                              single R φ i ∘ₗ f = single R φ i ∘ₗ g f = g
                              theorem LinearMap.comp_proj_inj {R : Type u_4} {ι : Type u_5} {B : Type u_6} [Semiring R] {φ : ιType u_7} [(i : ι) → AddCommMonoid (φ i)] [AddCommMonoid B] [Module R B] [(i : ι) → Module R (φ i)] (i : ι) (f g : φ i →ₗ[R] B) :
                              f ∘ₗ proj i = g ∘ₗ proj i f = g
                              theorem LinearMap.proj_comp_inj {R : Type u_4} {ι : Type u_5} {B : Type u_6} [Semiring R] {φ : ιType u_7} [(i : ι) → AddCommMonoid (φ i)] [AddCommMonoid B] [Module R B] [(i : ι) → Module R (φ i)] (f g : B →ₗ[R] (r : ι) → φ r) :
                              (∀ (i : ι), proj i ∘ₗ f = proj i ∘ₗ g) f = g
                              theorem QuantumGraph.Real.conj_proj_isReal {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {f : PiMat ι p →ₗ[] PiMat ι p} (hf : Real (PiMat ι p) f) (i : ι) :
                              theorem schurMul_proj_adjoint_comp {ι : Type u_2} {p : ιType u_3} [Fintype ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] (i : ι) (f g : B →ₗ[] Mat (p i)) :
                              theorem schurMul_proj_comp {ι : Type u_2} {p : ιType u_3} [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] [Finite ι] (f g : B →ₗ[] PiMat ι p) (i : ι) :
                              theorem schurMul_comp_proj {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] (i : ι) (f g : Mat (p i) →ₗ[] B) :
                              theorem schurMul_comp_proj_adjoint {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] (f g : PiMat ι p →ₗ[] B) (i : ι) :
                              theorem QuantumGraph.isReal_iff_conj_proj_adjoint_isReal {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] (i : ι) (f : Mat (p i) →ₗ[] Mat (p i)) :
                              theorem QuantumGraph.Real.proj_adjoint_comp_proj_conj_isRealQuantumGraph {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {f : PiMat ι p →ₗ[] PiMat ι p} (hf : Real (PiMat ι p) f) (i : ι × ι) :
                              theorem schurMul_proj_adjoint_comp_of_ne_eq_zero {ι : Type u_2} {p : ιType u_3} [Fintype ι] [(i : ι) → Fintype (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] {i j : ι} :
                              theorem schurMul_comp_proj_of_ne_eq_zero {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {B : Type u_4} [starAlgebra B] [QuantumSet B] {i j : ι} :
                              i j∀ (f : Mat (p i) →ₗ[] B) (g : Mat (p j) →ₗ[] B), (f ∘ₗ LinearMap.proj i) •ₛ g ∘ₗ LinearMap.proj j = 0
                              theorem piMat_isRealQuantumGraph_iff_forall_conj_adjoint_proj_comp_proj {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {f : PiMat ι p →ₗ[] PiMat ι p} :
                              theorem QuantumGraph.Real.schurProjection_proj_conj {ι : Type u_2} {p : ιType u_3} [Fintype ι] [DecidableEq ι] [(i : ι) → Fintype (p i)] [(i : ι) → DecidableEq (p i)] {φ : (i : ι) → Module.Dual (Matrix (p i) (p i) )} [ : ∀ (i : ι), (φ i).IsFaithfulPosMap] {f : PiMat ι p →ₗ[] PiMat ι p} (hf : Real (PiMat ι p) f) (i : ι × ι) :