PhysLean Documentation

PhysLean.Relativity.Tensors.Tree.NodeIdentities.ProdContr

Products and contractions #

Left contractions. #

An equivalence needed to perform contraction. For specified n and n1 this reduces to an identity.

Equations
Instances For

    An equivalence needed to perform contraction. For specified n and n1 this reduces to an identity.

    Equations
    Instances For
      def TensorTree.ContrPair.leftContrI {S : TensorSpecies} {n : } {c : Fin n.succ.succS.C} (q : ContrPair c) (n1 : ) :
      Fin (n + n1).succ.succ

      The new fst index of a contraction obtained on moving a contraction in the LHS of a product through the product.

      Equations
      Instances For
        def TensorTree.ContrPair.leftContrJ {S : TensorSpecies} {n : } {c : Fin n.succ.succS.C} (q : ContrPair c) (n1 : ) :
        Fin (n + n1).succ

        The new snd index of a contraction obtained on moving a contraction in the LHS of a product through the product.

        Equations
        Instances For

          The pair of contraction indices obtained on moving a contraction in the LHS of a product through the product.

          Equations
          Instances For
            theorem TensorTree.ContrPair.contrMap_prod_tprod {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} (q : ContrPair c) (p : (i : (CategoryTheory.Functor.id Type).obj (IndexNotation.OverColor.mk c).left) → CoeSort.coe (S.FD.obj { as := (IndexNotation.OverColor.mk c).hom i })) (q' : (i : (CategoryTheory.Functor.id Type).obj (IndexNotation.OverColor.mk c1).left) → CoeSort.coe (S.FD.obj { as := (IndexNotation.OverColor.mk c1).hom i })) :
            theorem TensorTree.ContrPair.contr_prod {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} (q : ContrPair c) (t : TensorTree S c) (t1 : TensorTree S c1) :

            Right contractions. #

            def TensorTree.ContrPair.rightContrI {S : TensorSpecies} {n : } {c : Fin n.succ.succS.C} (q : ContrPair c) (n1 : ) :
            Fin (n1 + n).succ.succ

            The new fst index of a contraction obtained on moving a contraction in the RHS of a product through the product.

            Equations
            Instances For
              def TensorTree.ContrPair.rightContrJ {S : TensorSpecies} {n : } {c : Fin n.succ.succS.C} (q : ContrPair c) (n1 : ) :
              Fin (n1 + n).succ

              The new snd index of a contraction obtained on moving a contraction in the RHS of a product through the product.

              Equations
              Instances For
                def TensorTree.ContrPair.rightContr {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} (q : ContrPair c) :

                The new pair of indices obtained on moving a contraction in the RHS of a product through the product.

                Equations
                Instances For
                  theorem TensorTree.ContrPair.prod_contr {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} (q : ContrPair c) (t1 : TensorTree S c1) (t : TensorTree S c) :
                  (t1.prod (contr q.i q.j t)).tensor = (perm (IndexNotation.OverColor.mkIso ).hom (contr (q.rightContrI n1) (q.rightContrJ n1) (t1.prod t))).tensor
                  theorem TensorTree.contr_prod {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} {i : Fin n.succ.succ} {j : Fin n.succ} (hij : c (i.succAbove j) = S.τ (c i)) (t : TensorTree S c) (t1 : TensorTree S c1) :
                  ((contr i j hij t).prod t1).tensor = (perm (IndexNotation.OverColor.mkIso ).hom (contr ({ i := i, j := j, h := hij }.leftContrI n1) ({ i := i, j := j, h := hij }.leftContrJ n1) (perm (IndexNotation.OverColor.equivToIso ContrPair.leftContrEquivSuccSucc).hom (t.prod t1)))).tensor

                  Contraction in the LHS of a product can be moved out of that product.

                  theorem TensorTree.prod_contr {S : TensorSpecies} {n n1 : } {c : Fin n.succ.succS.C} {c1 : Fin n1S.C} {i : Fin n.succ.succ} {j : Fin n.succ} (hij : c (i.succAbove j) = S.τ (c i)) (t1 : TensorTree S c1) (t : TensorTree S c) :
                  (t1.prod (contr i j hij t)).tensor = (perm (IndexNotation.OverColor.mkIso ).hom (contr ({ i := i, j := j, h := hij }.rightContrI n1) ({ i := i, j := j, h := hij }.rightContrJ n1) (t1.prod t))).tensor

                  Contraction in the RHS of a product can be moved out of that product.