 ## How to define Matrix Group from generators?

Questions and problems about using polymake go here.
Kurt
Posts: 2
Joined: 21 Apr 2021, 14:24

### How to define Matrix Group from generators?

How can I define a Matrix Group from a set of generators?

I can't find this in the tutorial.

I am very new to polymake.

joswig
Main Author
Posts: 267
Joined: 24 Dec 2010, 11:10

### Re: How to define Matrix Group from generators?

There is no actual support of matrix groups in polymake. Our groups are usually permutation groups.

There is only some very limited functionality to convert between matrices and permutations.

If you need the full strength of matrix groups (and polyhedral geometry) you should use Oscar, which will become a comprehensive computer algebra system of the next generation, written in Julia. While the current version 0.5.2 is far from complete, it can do very many things already.

Kurt
Posts: 2
Joined: 21 Apr 2021, 14:24

### Re: How to define Matrix Group from generators?

OK, thank you for the clarification. I don't really need the full strength of matrix groups. If the command

" orbit<Scalar>(Array<Matrix<Scalar>> G, Vector<Scalar> V)

The orbit of a vector V under a group generated by G.
"

works, then I actually only need the permutation group that acts on the vertices of this orbit polytope like the matrix group does. Is there a way to get this permutation group?

Regarding this command though. It doesn't work for me if I just write

"orbit(@a,$v);" for an array a and a vector v. The error that appears is: " polymake: ERROR: no matching overloaded instance of Polymake::group::orbit<Rational>(Matrix<Rational, NonSymmetric>, Matrix<Rational, NonSymmetric>, Vector<Rational>) at input line 1. " Do I have to write something at the position of the first "<Scalar>"? gawrilow Main Author Posts: 404 Joined: 25 Dec 2010, 17:40 ### Re: How to define Matrix Group from generators? In perl, an array should be passed by reference, otherwise it's unrolled into single elements passed separately to the function. Just add a backslash: orbit(\@a,$v);

Regarding the group: I'd naively expect it as a regular subobject \$p->GROUP. Actually, the true group experts among us should give more authoritative advice. 