# Equality checks -- compare actions and characters

Use == to check if two actions or characters are equal.

For actions, the underlying ring and object (complex or module) must be the same. The group elements used to set up the actions being compared must be the same and in the same order. In the case of actions on complexes, the == operator compares the group action in all homological degrees. In the case of actions on modules, the == operator compares the group action on the module generators.

For characters, the underlying ring must be the same, as well as the number of entries in each character. Characters are compared across all homological and internal degrees.

 i1 : R = QQ[x_1..x_4] o1 = R o1 : PolynomialRing i2 : I = ideal apply(subsets(gens R, 2), product) o2 = ideal (x x , x x , x x , x x , x x , x x ) 1 2 1 3 2 3 1 4 2 4 3 4 o2 : Ideal of R i3 : RI = res I 1 6 8 3 o3 = R <-- R <-- R <-- R <-- 0 0 1 2 3 4 o3 : ChainComplex i4 : S4 = symmetricGroupActors(R) o4 = {| x_2 x_3 x_4 x_1 |, | x_2 x_3 x_1 x_4 |, | x_2 x_1 x_4 x_3 |, | x_2 ------------------------------------------------------------------------ x_1 x_3 x_4 |, | x_1 x_2 x_3 x_4 |} o4 : List i5 : A = action(RI,S4) o5 = ChainComplex with 5 actors o5 : ActionOnComplex i6 : G = {map(RI_3, RI_3, {{0, -1, 1}, {1, 1, 0}, {0, 1, 0}}), map(RI_3, RI_3, {{0, 1, 0}, {-1, -1, 0}, {0, -1, 1}}), map(RI_3, RI_3, {{0, -1, 1}, {-1, 0, -1}, {0, 0, -1}}), map(RI_3, RI_3, {{0, 1, 0}, {1, 0, 0}, {0, 0, -1}}), map(RI_3, RI_3, {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}) } o6 = {{4} | 0 -1 1 |, {4} | 0 1 0 |, {4} | 0 -1 1 |, {4} | 0 1 0 |, {4} {4} | 1 1 0 | {4} | -1 -1 0 | {4} | -1 0 -1 | {4} | 1 0 0 | {4} {4} | 0 1 0 | {4} | 0 -1 1 | {4} | 0 0 -1 | {4} | 0 0 -1 | {4} ------------------------------------------------------------------------ | 1 0 0 |} | 0 1 0 | | 0 0 1 | o6 : List i7 : B = action(RI,S4,G,3) o7 = ChainComplex with 5 actors o7 : ActionOnComplex i8 : A == B o8 = true i9 : character A == character B o9 = true