3

Is it possible to solve an equality such as:

$$(123)=\sigma (32) \sigma (31)$$

in term of $\sigma$? I was thinking about Cycles but I couldn't figure out a way to use it.

EDIT As a partial answer to my question, I have found that I can use PermutationProduct to solve manually the equality as follows:

p1 = Cycles[{{3, 2}}]
p2 = Cycles[{{3, 1}}]
s = Cycles[{{1, 3}}];
PermutationProduct[s, p1, s, p2]

giving $\sigma=(1,3)$. I would like to have an automatic solution if possible.

mattiav27
  • 6,677
  • 3
  • 28
  • 64

1 Answers1

4

Riffing off of Daniel's suggestion in comments, and with the big caveat that I know little about permutations and their representation, I tried the following approach.

Generate matrix representations of the permutations:

pgen = Function[list, Permute[IdentityMatrix[3], Cycles[{list}]]];
{p123, p32, p31} = pgen /@ {{1, 2, 3}, {3, 2}, {3, 1}};

Select among all possible permutations of the appropriately chosen identity matrix those that satisfy the equation given:

results = Select[
   Permutations[IdentityMatrix[3]],
   p123 == p31.#.p32.# &
  ]

(* Out: {{{0, 0, 1}, {0, 1, 0}, {1, 0, 0}}} *)

Convert it back to Cycles representation:

FindPermutation[IdentityMatrix[3], #] & /@ results

(* Out: {Cycles[{{1, 3}}]} *)

MarcoB
  • 67,153
  • 18
  • 91
  • 189