====== EliminateDueSymmetries ======
----
====Description====
* ''EliminateDueSymmetries'' removes parts of expression, which are zero because of the symmetries.
* ''EliminateDueSymmetries'' does not perform any structural simplifications (expand, eliminate metrics etc.), it is just using symmetries of expression.
====Examples====
Simplify expression where symmetric tensor is contracted with antisymmetric:
setAntiSymmetric 'f_mn'
//g_mn is symmetric metric tensor
println EliminateDueSymmetries >> 'f_mn * g^mn'.t
> 0
----
''EliminateDueSymmetries'' also checks symmetries that follows from the structure of expressions:
println EliminateDueSymmetries >> '(t_amn - t_anm) * g^mn'.t
> 0
----
''EliminateDueSymmetries'' works with expressions with arbitrary complexity:
addSymmetry 'R_abc', -[1, 0, 2].p
addSymmetry 'A_ab', [1, 0].p
def t = '((R_abc*A_de + R_bde*A_ac)*A^ce + R_adb)*(A_mf*R^mad - A_fm*R^dma)'.t
println EliminateDueSymmetries >> t
> 0
----
''EliminateDueSymmetries'' applies to each part of expression:
def t = 'F_mn + g_mn*(A^mn - A^nm)'.t
println EliminateDueSymmetries >> t
> F_mn
----
====See also====
* Related guides: [[documentation:guide:applying_and_manipulating_transformations]], [[documentation:guide:symmetries_of_tensors]], [[documentation:guide:list_of_transformations]]
* JavaDocs: [[http://api.redberry.cc/redberry/1.1.9/java-api//cc/redberry/core/transformations/EliminateDueSymmetriesTransformation.html|EliminateDueSymmetriesTransformation]]
* Source code: [[https://bitbucket.org/redberry/redberry/src/tip/core/src/main/java/cc/redberry/core/transformations/EliminateDueSymmetriesTransformation.java|EliminateDueSymmetriesTransformation.java]]