Multilinear Algebra
- Introduction
- Tensors
- Creating Tensors
- Black-box Tensors
Tensor(S, F): SeqEnum, UserProgram → TenSpcElt, List
Tensor(S, F): List, UserProgram → TenSpcElt, List
Tensor(S, F, Cat): SeqEnum, UserProgram, TenCat → TenSpcElt, List
Tensor(S, F, Cat): List, UserProgram, TenCat → TenSpcElt, List
Example: BB Tensors Frame
Example: BB Cross Product
Tensor(D, C, F): SeqEnum, Any, UserProgram → TenSpcElt, List
Tensor(D, C, F): List, Any, UserProgram → TenSpcElt, List
Tensor(D, C, F, Cat): SeqEnum, Any, UserProgram, TenCat → TenSpcElt, List
Tensor(D, C, F, Cat): List, Any, UserProgram, TenCat → TenSpcElt, List
Example: BB Triple Product
- Tensors with Structure Constant Sequences
Tensor(D, S): [RngIntElt], SeqEnum → TenSpcElt
Tensor(R, D, S): Rng, [RngIntElt], SeqEnum → TenSpcElt
Tensor(D, S, Cat): [RngIntElt], SeqEnum, TenCat → TenSpcElt
Tensor(R, D, S, Cat): Rng, [RngIntElt], SeqEnum, TenCat → TenSpcElt
Example: SC Tensors
StructureConstants(T): TenSpcElt → SeqEnum
Eltseq(T): TenSpcElt → SeqEnum
Assign(T, ind, k): TenSpcElt, [RngIntElt], Any → TenSpcElt
Assign(~T, ind, k): TenSpcElt, [RngIntElt], Any
Example: SC From BB Tensors
Example: SC Stored
- Bilinear Tensors
Tensor(M, s, t): [Mtrx], RngIntElt, RngIntElt → TenSpcElt
Tensor(M, s, t, C): [Mtrx], RngIntElt, RngIntElt, TenCat → TenSpcElt
Example: Symplectic Form
AsMatrices(T, s, t): TenSpcElt, RngIntElt, RngIntElt → SeqEnum
SystemOfForms(T): TenSpcElt → SeqEnum
Example: Trilinear As Mats
- Tensors from Algebraic Objects
Tensor(A): Alg → TenSpcElt, Map
Example: D4Lie Algebra
Tensor(Q): RngUPolRes → TenSpcElt, Map
Example: Witt Algebra
CommutatorTensor(A): Alg → TenSpcElt, Map
AnticommutatorTensor(A): Alg → TenSpcElt, Map
Example: Commutator From Algebra
Example: Matrix Jordan Algebra
AssociatorTensor(A): Alg → TenSpcElt, Map
Example: Associator From Algebra
pCentralTensor(G, p, s, t): Grp, RngIntElt, RngIntElt, RngIntElt → TenSpcElt, List
pCentralTensor(G, s, t): GrpPC, RngIntElt, RngIntElt → TenSpcElt, List
pCentralTensor(G, s, t): Grp, RngIntElt, RngIntElt → TenSpcElt, List
pCentralTensor(G): Grp → TenSpcElt, List
Example: Tensor P Group
MatrixTensor(K, S): Fld, [RngIntElt] → TenSpcElt, List
Polarisation(f): MPolElt → TenSpcElt, MPolElt
Polarisation(f): RngUPolElt → TenSpcElt
Polarization(f): MPolElt → TenSpcElt, MPolElt
Polarization(f): RngUPolElt → TenSpcElt
Example: Tensor Polarization
- New Tensors from Old
- Operations with Tensors
- Elementary Operations
- General Properties
- Tensors As Multilinear Maps
- Operations with Bilinear Maps
x * T: Any, TenSpcElt → Any
T * y: TenSpcElt, Any → Any
x * T: Any, TenSpc → Any
T * y: TenSpc, Any → Any
Example: Bimap Infix
x * y: BmpUElt, BmpVElt → Any
x * y: BmpU, BmpV → Any
x * y: BmpUElt, BmpV → Any
x * y: BmpU, BmpVElt → Any
LeftDomain(B): TenSpcElt → BmpU
RightDomain(B): TenSpcElt → BmpV
IsCoercible(U,x): BmpU, Any → BoolElt, BmpUElt
IsCoercible(V,x): BmpV, Any → BoolElt, BmpVElt
U ! x: BmpU, Any → BmpUElt
V ! x: BmpV, Any → BmpVElt
Example: Bimap Product
Parent(x): BmpUElt → BmpU
Parent(x): BmpVElt → BmpV
Parent(X): BmpU → TenSpcElt
Parent(X): BmpV → TenSpcElt
u1 eq u2: BmpUElt, BmpUElt → BoolElt
v1 eq v2: BmpUElt, BmpUElt → BoolElt
U1 eq U2: BmpU, BmpU → BoolElt
V1 eq V2: BmpV, BmpV → BoolElt
Example: Bimap Product2
- Manipulating Tensor Data
Slice(T, grid): TenSpcElt, [SetEnum] → SeqEnum
InducedTensor(T, grid): TenSpcElt, [SetEnum] → TenSpcElt
Example: Tensor Slicing
SliceAsMatrices(T, grid, a, b): TenSpcElt, [SetEnum], RngIntElt, RngIntElt → SeqEnum
Example: Slice As Matrices
Foliation(T, i): TenSpcElt, RngIntElt → Mtrx
Example: Exfoliate Foliation
AsTensorSpace(T, i): TenSpcElt, RngIntElt → TenSpc, Mtrx
AsCotensorSpace(T): TenSpcElt → TenSpc, Mtrx
Example: Tensors To Spaces
AsTensor(S): TenSpc → TenSpcElt
Example: Spaces To Tensors
- Invariants of Tensors
Induce(X, i): AlgMat, RngIntElt → Map, AlgMat
Induce(X, i): AlgMatLie, RngIntElt → Map, AlgMatLie
Induce(X, i): GrpMat, RngIntElt → Map, GrpMat
Example: Inducing
DerivedFrom(~X, t, C, RC : parameters): Any, TenSpcElt, {RngIntElt}, {RngIntElt}
- Standard Invariants
- Exporting Tensors
- Tensor Spaces
- Constructions of Tensor and Cotensor Spaces
- Universal Tensor Spaces
KTensorSpace(K, S): Fld, [RngIntElt] → TenSpc
KTensorSpace(K, S, C): Fld, [RngIntElt], TenCat → TenSpc
RTensorSpace(R, S): Rng, [RngIntElt] → TenSpc
RTensorSpace(R, S, C): Rng, [RngIntElt], TenCat → TenSpc
Example: Universal K Ten Spc
TensorSpace(S): SeqEnum → TenSpc, List
TensorSpace(S): List → TenSpc, List
TensorSpace(S, C): SeqEnum, TenCat → TenSpc, List
TensorSpace(S, C): List, TenCat → TenSpc, List
Example: Universal Ten Spc
TensorSpace(V, p, q): ModTupFld, RngIntElt, RngIntElt → TenSpc
TensorSpace(K, d, p, q): Fld, RngIntElt, RngIntElt, RngIntElt → TenSpc
Example: Signatured Ten Spc
- Universal Cotensor Spaces
KCotensorSpace(K, S): Fld, [RngIntElt] → TenSpc
KCotensorSpace(K, S, C): Fld, [RngIntElt], TenCat → TenSpc
CotensorSpace(S): SeqEnum → TenSpc
CotensorSpace(S): List → TenSpc, List
CotensorSpace(S, C): SeqEnum, TenCat → TenSpc
CotensorSpace(S, C): List, TenCat → TenSpc, List
Example: Universal Co Ten Spc
- Some Standard Constructions
- Operations on Tensor Spaces
- Membership and Comparison with Tensor Spaces
T in TS: TenSpcElt, TenSpc → BoolElt
TS ! T: TenSpc, TenSpcElt → TenSpcElt
TS ! S: TenSpc, SeqEnum → TenSpcElt
T ! n: TenSpc, RngIntElt → TenSpcElt
IsCoercible(TS, x): TenSpc, Any → BoolElt, TenSpcElt
Example: Coercion
S eq T: TenSpc, TenSpc → BoolElt
S subset T: TenSpc, TenSpc → BoolElt
IsCoercible(T, S): TenSpc, Any → BoolElt
T ! S: TenSpc, TenSpc → TenSpc
Example: Ten Spc Containment
- Tensor Spaces as Modules
Basis(T): TenSpc → SeqEnum
Generators(T): TenSpc → SeqEnum
T . i: TenSpc, RngIntElt → TenSpcElt
NumberOfGenerators(T): TenSpc → RngIntElt
Ngens(T): TenSpc → RngIntElt
Dimension(T): TenSpc → RngIntElt
# T: TenSpc → RngIntElt
Example: Basic Module
Random(T): TenSpc → TenSpcElt
RandomTensor(R, S): Rng, [RngIntElt] → TenSpcElt
RandomTensor(R, S, C): Rng, [RngIntElt], TenCat → TenSpcElt
RandomCotensor(K, S): Fld, [RngIntElt] → TenSpcElt
Example: Random Tensors
RandomAlternatingTensor(R, d, n, c): Rng, RngIntElt, RngIntElt, RngIntElt → TenSpcElt
RandomAlternatingTensor(R, S): Rng, [RngIntElt] → TenSpcElt
RandomAntisymmetricTensor(R, d, n, c): Rng, RngIntElt, RngIntElt, RngIntElt → TenSpcElt
RandomAntisymmetricTensor(R, S): Rng, [RngIntElt] → TenSpcElt
RandomSymmetricTensor(R, d, n, c): Rng, RngIntElt, RngIntElt, RngIntElt → TenSpcElt
RandomSymmetricTensor(R, S): Rng, [RngIntElt] → TenSpcElt
Example: Random Sym Ten
- Properties of Tensor Spaces
- Tensor Categories
- Constructing Tensor Categories
TensorCategory(A, P): [RngIntElt], {SetEnum} → TenCat
TensorCategory(A, P): Map, {SetEnum} → TenCat
CotensorCategory(A, P): [RngIntElt], {SetEnum} → TenCat
CotensorCategory(A, P): Map, {SetEnum} → TenCat
Example: Basic Cat Const
HomotopismCategory(v : parameters): RngIntElt → TenCat
CohomotopismCategory(v): RngIntElt → TenCat
AdjointCategory(v, s, t): RngIntElt, RngIntElt, RngIntElt → TenCat
LinearCategory(v, s, t): RngIntElt, RngIntElt, RngIntElt → TenCat
Example: Ten Cat Special
- Operations on Tensor Categories
- Categorical Operations
- Categorical Operations on Tensors
Subtensor(T, S): TenSpcElt, List → TenSpcElt
Subtensor(T, S): TenSpcElt, SeqEnum → TenSpcElt
Subtensor(T, D, C): TenSpcElt, List, Any → TenSpcElt
Subtensor(T, D, C): TenSpcElt, SeqEnum, Any → TenSpcElt
IsSubtensor(T, S): TenSpcElt, TenSpcElt → BoolElt
Example: Subtensors
LocalIdeal(T, S, I): TenSpcElt, List, {RngIntElt} → TenSpcElt
LocalIdeal(T, S, I): TenSpcElt, SeqEnum, {RngIntElt} → TenSpcElt
LocalIdeal(T, D, C, I): TenSpcElt, List, Any, {RngIntElt} → TenSpcElt
LocalIdeal(T, D, C, I): TenSpcElt, SeqEnum, Any, {RngIntElt} → TenSpcElt
LocalIdeal(T, S, I): TenSpcElt, TenSpcElt, {RngIntElt} → TenSpcElt
IsLocalIdeal(T, S, I): TenSpcElt, TenSpcElt, {RngIntElt} → BoolElt
Example: Local Ideals
Ideal(T, S): TenSpcElt, List → TenSpcElt
Ideal(T, S): TenSpcElt, SeqEnum → TenSpcElt
Ideal(T, D, C): TenSpcElt, List, Any → TenSpcElt
Ideal(T, D, C): TenSpcElt, SeqEnum, Any → TenSpcElt
Ideal(T, S): TenSpcElt, TenSpcElt → TenSpcElt
IsIdeal(T, S): TenSpcElt, TenSpcElt → BoolElt
Example: Ideals
LocalQuotient(T, S, I : parameters): TenSpcElt, TenSpcElt, {RngIntElt} → TenSpcElt, Hmtp
Quotient(T, S : parameters): TenSpcElt, TenSpcElt → TenSpcElt, Hmtp
T / S: TenSpcElt, TenSpcElt → TenSpcElt, Hmtp
Example: Quotients
- Categorical Operations on Tensor Spaces
SubConstructor(T, L): TenSpc, Any → TenSpc, Map
sub< T | L >: TenSpc, Any → TenSpc, Map
IsSubtensorSpace(T, S): TenSpc, TenSpc → BoolElt
Example: Subtensor Spaces
QuoConstructor(T, X): TenSpc, Any → TenSpc, Map
quo< T | X >: TenSpc, Any → TenSpc, Map
T / S: TenSpc, TenSpc → TenSpc, Map
Example: Quotient Tensor Spaces
- Homotopisms
- Constructions of Homotopisms
Homotopism(T, S, M : parameters): TenSpcElt, TenSpcElt, List → Hmtp
Homotopism(T, S, M : parameters): TenSpcElt, TenSpcElt, SeqEnum → Hmtp
Homotopism(T, S, M, C : parameters): TenSpcElt, TenSpcElt, List, TenCat → Hmtp
Homotopism(T, S, M, C : parameters): TenSpcElt, TenSpcElt, SeqEnum, TenCat → Hmtp
Homotopism(M, C): List, TenCat → Hmtp
Homotopism(M, C): SeqEnum, TenCat → Hmtp
IsHomotopism(T, s, H): TenSpcElt, TenSpcElt, Hmtp → BoolElt
IsHomotopism(T, s, M): TenSpcElt, TenSpcElt, List → BoolElt
IsHomotopism(T, s, M): TenSpcElt, TenSpcElt, SeqEnum → BoolElt
IsHomotopism(T, s, M, C): TenSpcElt, TenSpcElt, List, TenCat → BoolElt
IsHomotopism(T, s, M, C): TenSpcElt, TenSpcElt, SeqEnum, TenCat → BoolElt
Example: Homotopism Const
Example: Mixed Homotopisms
- Basic Operations with Homotopisms
H1 * H2: Hmtp, Hmtp → Hmtp
H . a: Hmtp, RngIntElt → Map
Example: Homotopism Ops
Precompose(T, f, a): TenSpcElt, Map, RngIntElt → TenSpcElt
Precompose(T, M, a): TenSpcElt, Mtrx, RngIntElt → TenSpcElt
T @ H: TenSpcElt, Hmtp → TenSpcElt
- Basic Properties of Homotopisms
- Linear Invariants of Tensors
- Invariants for Bilinear Tensors
- Invariants of General Multilinear Maps
Centroid(T): TenSpcElt → AlgMat
Centroid(T, A): TenSpcElt, {RngIntElt} → AlgMat
Example: Centroid
DerivationAlgebra(T): TenSpcElt → AlgMatLie
DerivationAlgebra(T, A): TenSpcElt, {RngIntElt} → AlgMatLie
Nucleus(T, a, b): TenSpcElt, RngIntElt, RngIntElt → AlgMat
Nucleus(T, A): TenSpcElt, SetEnum → AlgMat
Example: Restrict Derivation
SelfAdjointAlgebra(t, a, b): TenSpcElt, RngIntElt, RngIntElt → ModMatFld
TensorOverCentroid(T): TenSpcElt → TenSpcElt, Hmtp
Example: Centroid Unipotent
- Some Extended Examples