ArrayExpand

ArrayExpand[expr]

expands out symbolic array operations in expr.

ArrayExpand[expr,assum]

expands using assumptions assum.

Details and Options

  • ArrayExpand can be used for expanding out symbolic array operations.
  • ArrayExpand makes use of multilinearity of array operations, as well as of numerous array, matrix and vector operation identities.
  • Dimensionality of symbolic arguments can be specified through assumptions or by using ArraySymbol, MatrixSymbol or VectorSymbol.
  • Symbolic arguments of unspecified dimensionality are assumed to be arrays of dimensions appropriate for the functions they are used in. In multi-argument Listable functions, like Plus or Times, all arguments are assumed to have the same dimensions unless specified differently. »
  • The following options can be given:
  • Assumptions $Assumptionsdefault assumptions to be appended to assum
    GenerateConditions Falsewhether to generate conditions on parameters
  • You can specify default assumptions for ArrayExpand using Assuming.

Examples

open allclose all

Basic Examples  (3)

Expand out Dot product of sums of arrays:

Expand out Tr of a linear combination of arrays:

Expand out Inverse of Dot product of matrices:

Scope  (45)

Multilinear Operations  (12)

Elementwise products of linear combinations:

Dot products of linear combinations:

ArrayDot products of linear combinations:

TensorProduct of linear combinations:

KroneckerProduct of linear combinations:

TensorWedge of linear combinations:

Cross product of linear combinations:

Tr of linear combinations:

TensorContract of linear combinations:

HodgeDual of linear combinations:

Transpose of linear combinations:

ConjugateTranspose of linear combinations:

Array Operations  (6)

Tr of Transpose, Conjugate and ConjugateTranspose:

Conjugate of array operations:

Conjugate and ConjugateTranspose of elementary functions:

Transpose of Listable mathematical functions:

Dot product of TensorProduct:

Commutativity of scalar-valued ArrayDot:

Matrix Operations  (13)

Inverse, MatrixPower, PseudoInverse and Adjugate of a scalar multiple:

Inverse and Adjugate of Dot products:

Transpose, Conjugate and ConjugateTranspose of Inverse, Adjugate and PseudoInverse:

Transpose, Conjugate and ConjugateTranspose of MatrixPower:

Transpose, Conjugate and ConjugateTranspose of MatrixExp:

Transpose and ConjugateTranspose of Dot products:

MatrixPower of a linear combination:

Negative exponent MatrixPower of a Dot product:

Tr of Dot products:

Det composed with matrix operations:

Det of Dot products:

Matrix operations with KroneckerProduct arguments:

Expressions involving MatrixExp:

Vector Operations  (4)

Transpose of a vector:

Canonicalize Dot products of vectors and matrices:

Transpose of KroneckerProduct:

Cross products:

Simplifications  (10)

Simplifications of Inverse:

Simplifications of PseudoInverse:

Simplifications of Adjugate:

Simplifications of MatrixPower:

Simplifications of Transpose, Conjugate and ConjugateTranspose:

Simplifications of SymbolicIdentityArray:

Simplifications of TensorProduct:

Simplifications of Cross:

Simplifications of TensorWedge:

Simplifications of MatrixExp:

Options  (2)

Assumptions  (1)

Specify assumptions using the assumptions argument:

Use the Assumptions option:

Use Assuming to specify default assumptions:

GenerateConditions  (1)

With the default setting GenerateConditionsFalse, argument dimensions are quietly assumed to satisfy equations necessary for the expression to be well defined:

With GenerateConditionsTrue, the necessary conditions are given explicitly:

Possible Issues  (1)

Symbolic arguments of unspecified dimensionality are not assumed to be scalars:

Use assumptions to specify that c is a scalar:

Wolfram Research (2025), ArrayExpand, Wolfram Language function, https://reference.wolfram.com/language/ref/ArrayExpand.html.

Text

Wolfram Research (2025), ArrayExpand, Wolfram Language function, https://reference.wolfram.com/language/ref/ArrayExpand.html.

CMS

Wolfram Language. 2025. "ArrayExpand." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ArrayExpand.html.

APA

Wolfram Language. (2025). ArrayExpand. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ArrayExpand.html

BibTeX

@misc{reference.wolfram_2024_arrayexpand, author="Wolfram Research", title="{ArrayExpand}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/ArrayExpand.html}", note=[Accessed: 20-January-2025 ]}

BibLaTeX

@online{reference.wolfram_2024_arrayexpand, organization={Wolfram Research}, title={ArrayExpand}, year={2025}, url={https://reference.wolfram.com/language/ref/ArrayExpand.html}, note=[Accessed: 20-January-2025 ]}