====== 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]]