If I have a permutation group, say $S_{10}$, how do I get all the permutations that send the set {1, 2, 3}
to {5, 6, 7}
? I know that GroupOrbits
gives the orbit of a point under the action of the group, but this is somehow the inverse problem
$\begingroup$
$\endgroup$
4
-
3$\begingroup$ $S_{10}$ has 3628800 elements, and a not-insignificant fraction of these will map {1,2,3} to {5,6,7}. You sure you want a list of all of those? What are you going to do with it? $\endgroup$– marchCommented Jun 2, 2023 at 22:55
-
$\begingroup$ You now have seven elements, $\{ 4, \ldots , 10 \}$ that map to seven elements $\{ 1,2,3,4, 8,9, 10\}$, otherwise not constrained. $\endgroup$– David G. StorkCommented Jun 3, 2023 at 1:01
-
$\begingroup$ These will be the permutations of S7 $\endgroup$– Daniel HuberCommented Jun 3, 2023 at 18:41
-
$\begingroup$ Yes, I know that I get 7! permutations that satisfy what I want and, theoretically, I know how to do that, but I wanted to know if Mathematica can do this, not necessarily for this example $\endgroup$– JRVCommented Jun 5, 2023 at 18:10
Add a comment
|
1 Answer
$\begingroup$
$\endgroup$
perms = Select[GroupElements[SymmetricGroup[10]],
ContainsExactly[PermutationReplace[{1, 2, 3}, #], {5, 6, 7}] &];
Then perms
is your after. It contains Length[perms](*30240*)
elements. You can check it:
PermutationReplace[{1, 2, 3}, #] & /@ perms