Define the image of a representation of a finitely presented group in GAP
Please note that the example below is just a baby case in which my problem occurs. Of course there is a simple workaround for my problem in this particular example, but I would like to apply this to more complicated finitely presented groups and also to reducible representations.
Assume I have the symmetric group $G$ on three letters, given by the presentation $$G = langle x,y | x^2, y^3, xyx^{-1}yrangle.$$ The group $G$ has the following irreducible complex representation $rho$ of degree $2$:
$$x mapsto begin{pmatrix} 0 & 1 \ 1 & 0 end{pmatrix}, ;; y mapsto begin{pmatrix} exp(4pi i/3) & 0 \ 0 & exp(2pi i /3) end{pmatrix}.$$
What I want to do in GAP is to define the image of $rho$ inside $GL(2, mathbb C)$. For this, I load the repsn
package. The corresponding irreducible representation of $G$ in GAP is one indexed by the number 3. Here is, what I have to define the representation $rho$:
LoadPackage("repsn");
f := FreeGroup("x","y");
G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
Now, I want to define the image of $rho$ explicitly by defining the group generated by $rho(x), rho(y)$. But already
Image(rho,x);
gives
Error, Variable: 'x' must have a value not in any function at *stdin*:19
Similary,
Image(rho,f.1);
gives
Error, usage: Image(<map>), Image(<map>,<elm>), Image(<map>,<coll>) at /proc/cygdrive/C/gap-4.9.2/lib/mapping.gi:198 called from
<function "Image">( <arguments> )
called from read-eval loop at *stdin*:21
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
Therefore, defining the image $H$ of $rho$ in the four following ways gives errors:
H := Group(Image(rho,x),Image(rho,y));
H := Group(Image(rho,f.1),Image(rho,f.2));
H := Group([Image(rho,x),Image(rho,y)]);
H := Group([Image(rho,f.1),Image(rho,f.2)]);
So what can I do to define the image of $rho$ as the group generated by the images of the generators of $G$? (The bold part is crucial for my applications.)
I appreciate any help, thank you very much!
gap
add a comment |
Please note that the example below is just a baby case in which my problem occurs. Of course there is a simple workaround for my problem in this particular example, but I would like to apply this to more complicated finitely presented groups and also to reducible representations.
Assume I have the symmetric group $G$ on three letters, given by the presentation $$G = langle x,y | x^2, y^3, xyx^{-1}yrangle.$$ The group $G$ has the following irreducible complex representation $rho$ of degree $2$:
$$x mapsto begin{pmatrix} 0 & 1 \ 1 & 0 end{pmatrix}, ;; y mapsto begin{pmatrix} exp(4pi i/3) & 0 \ 0 & exp(2pi i /3) end{pmatrix}.$$
What I want to do in GAP is to define the image of $rho$ inside $GL(2, mathbb C)$. For this, I load the repsn
package. The corresponding irreducible representation of $G$ in GAP is one indexed by the number 3. Here is, what I have to define the representation $rho$:
LoadPackage("repsn");
f := FreeGroup("x","y");
G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
Now, I want to define the image of $rho$ explicitly by defining the group generated by $rho(x), rho(y)$. But already
Image(rho,x);
gives
Error, Variable: 'x' must have a value not in any function at *stdin*:19
Similary,
Image(rho,f.1);
gives
Error, usage: Image(<map>), Image(<map>,<elm>), Image(<map>,<coll>) at /proc/cygdrive/C/gap-4.9.2/lib/mapping.gi:198 called from
<function "Image">( <arguments> )
called from read-eval loop at *stdin*:21
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
Therefore, defining the image $H$ of $rho$ in the four following ways gives errors:
H := Group(Image(rho,x),Image(rho,y));
H := Group(Image(rho,f.1),Image(rho,f.2));
H := Group([Image(rho,x),Image(rho,y)]);
H := Group([Image(rho,f.1),Image(rho,f.2)]);
So what can I do to define the image of $rho$ as the group generated by the images of the generators of $G$? (The bold part is crucial for my applications.)
I appreciate any help, thank you very much!
gap
add a comment |
Please note that the example below is just a baby case in which my problem occurs. Of course there is a simple workaround for my problem in this particular example, but I would like to apply this to more complicated finitely presented groups and also to reducible representations.
Assume I have the symmetric group $G$ on three letters, given by the presentation $$G = langle x,y | x^2, y^3, xyx^{-1}yrangle.$$ The group $G$ has the following irreducible complex representation $rho$ of degree $2$:
$$x mapsto begin{pmatrix} 0 & 1 \ 1 & 0 end{pmatrix}, ;; y mapsto begin{pmatrix} exp(4pi i/3) & 0 \ 0 & exp(2pi i /3) end{pmatrix}.$$
What I want to do in GAP is to define the image of $rho$ inside $GL(2, mathbb C)$. For this, I load the repsn
package. The corresponding irreducible representation of $G$ in GAP is one indexed by the number 3. Here is, what I have to define the representation $rho$:
LoadPackage("repsn");
f := FreeGroup("x","y");
G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
Now, I want to define the image of $rho$ explicitly by defining the group generated by $rho(x), rho(y)$. But already
Image(rho,x);
gives
Error, Variable: 'x' must have a value not in any function at *stdin*:19
Similary,
Image(rho,f.1);
gives
Error, usage: Image(<map>), Image(<map>,<elm>), Image(<map>,<coll>) at /proc/cygdrive/C/gap-4.9.2/lib/mapping.gi:198 called from
<function "Image">( <arguments> )
called from read-eval loop at *stdin*:21
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
Therefore, defining the image $H$ of $rho$ in the four following ways gives errors:
H := Group(Image(rho,x),Image(rho,y));
H := Group(Image(rho,f.1),Image(rho,f.2));
H := Group([Image(rho,x),Image(rho,y)]);
H := Group([Image(rho,f.1),Image(rho,f.2)]);
So what can I do to define the image of $rho$ as the group generated by the images of the generators of $G$? (The bold part is crucial for my applications.)
I appreciate any help, thank you very much!
gap
Please note that the example below is just a baby case in which my problem occurs. Of course there is a simple workaround for my problem in this particular example, but I would like to apply this to more complicated finitely presented groups and also to reducible representations.
Assume I have the symmetric group $G$ on three letters, given by the presentation $$G = langle x,y | x^2, y^3, xyx^{-1}yrangle.$$ The group $G$ has the following irreducible complex representation $rho$ of degree $2$:
$$x mapsto begin{pmatrix} 0 & 1 \ 1 & 0 end{pmatrix}, ;; y mapsto begin{pmatrix} exp(4pi i/3) & 0 \ 0 & exp(2pi i /3) end{pmatrix}.$$
What I want to do in GAP is to define the image of $rho$ inside $GL(2, mathbb C)$. For this, I load the repsn
package. The corresponding irreducible representation of $G$ in GAP is one indexed by the number 3. Here is, what I have to define the representation $rho$:
LoadPackage("repsn");
f := FreeGroup("x","y");
G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
Now, I want to define the image of $rho$ explicitly by defining the group generated by $rho(x), rho(y)$. But already
Image(rho,x);
gives
Error, Variable: 'x' must have a value not in any function at *stdin*:19
Similary,
Image(rho,f.1);
gives
Error, usage: Image(<map>), Image(<map>,<elm>), Image(<map>,<coll>) at /proc/cygdrive/C/gap-4.9.2/lib/mapping.gi:198 called from
<function "Image">( <arguments> )
called from read-eval loop at *stdin*:21
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
Therefore, defining the image $H$ of $rho$ in the four following ways gives errors:
H := Group(Image(rho,x),Image(rho,y));
H := Group(Image(rho,f.1),Image(rho,f.2));
H := Group([Image(rho,x),Image(rho,y)]);
H := Group([Image(rho,f.1),Image(rho,f.2)]);
So what can I do to define the image of $rho$ as the group generated by the images of the generators of $G$? (The bold part is crucial for my applications.)
I appreciate any help, thank you very much!
gap
gap
asked Dec 7 at 16:21
WilsonPrime
1015
1015
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The first problem occurs because there is no GAP global variable called x
at the point when you refer to it. As GAP manual says here, "Note that you cannot call the generators by their names. These names are not variables, but just display figures. So, if you want to access the generators by their names, you first have to introduce the respective variables and to assign the generators to them."
The idea to use f.1
instead was good, but f.1
refers to the generator of the free group f
and not to the generator of G
. It would work if you would have used G.1
instead.
This is how to make it work. First, the setup:
gap> LoadPackage("repsn");
-------------------------------------------------------
Repsn for Constructing Representations of Finite Groups
Version 3.0.2
Written by
Vahid Dabbaghian
-------------------------------------------------------
true
gap> f := FreeGroup("x","y");
<free group on the generators [ x, y ]>
gap> G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
<fp group on the generators [ x, y ]>
gap> rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
[ x, y ] -> [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ]
Now, if you want to define variables x
and y
for the generators of G
, then you can do this as follows:
gap> gens:=GeneratorsOfGroup(G);
[ x, y ]
gap> x:=gens[1];y:=gens[2];
x
y
gap> Image(rho,x);
[ [ 0, 1 ], [ 1, 0 ] ]
gap> Image(rho,y);
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
Another notation for the same uses the ^
symbol:
gap> x^rho;
[ [ 0, 1 ], [ 1, 0 ] ]
gap> y^rho;
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
gap> (x^2*y^-1*x*y)^rho;
[ [ 0, E(3)^2 ], [ E(3), 0 ] ]
Finally, you can calculate the Image(rho)
immediately:
gap> Image(rho);
Group([ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ])
gap>
Hope this helps!
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "69"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3030086%2fdefine-the-image-of-a-representation-of-a-finitely-presented-group-in-gap%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The first problem occurs because there is no GAP global variable called x
at the point when you refer to it. As GAP manual says here, "Note that you cannot call the generators by their names. These names are not variables, but just display figures. So, if you want to access the generators by their names, you first have to introduce the respective variables and to assign the generators to them."
The idea to use f.1
instead was good, but f.1
refers to the generator of the free group f
and not to the generator of G
. It would work if you would have used G.1
instead.
This is how to make it work. First, the setup:
gap> LoadPackage("repsn");
-------------------------------------------------------
Repsn for Constructing Representations of Finite Groups
Version 3.0.2
Written by
Vahid Dabbaghian
-------------------------------------------------------
true
gap> f := FreeGroup("x","y");
<free group on the generators [ x, y ]>
gap> G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
<fp group on the generators [ x, y ]>
gap> rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
[ x, y ] -> [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ]
Now, if you want to define variables x
and y
for the generators of G
, then you can do this as follows:
gap> gens:=GeneratorsOfGroup(G);
[ x, y ]
gap> x:=gens[1];y:=gens[2];
x
y
gap> Image(rho,x);
[ [ 0, 1 ], [ 1, 0 ] ]
gap> Image(rho,y);
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
Another notation for the same uses the ^
symbol:
gap> x^rho;
[ [ 0, 1 ], [ 1, 0 ] ]
gap> y^rho;
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
gap> (x^2*y^-1*x*y)^rho;
[ [ 0, E(3)^2 ], [ E(3), 0 ] ]
Finally, you can calculate the Image(rho)
immediately:
gap> Image(rho);
Group([ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ])
gap>
Hope this helps!
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
add a comment |
The first problem occurs because there is no GAP global variable called x
at the point when you refer to it. As GAP manual says here, "Note that you cannot call the generators by their names. These names are not variables, but just display figures. So, if you want to access the generators by their names, you first have to introduce the respective variables and to assign the generators to them."
The idea to use f.1
instead was good, but f.1
refers to the generator of the free group f
and not to the generator of G
. It would work if you would have used G.1
instead.
This is how to make it work. First, the setup:
gap> LoadPackage("repsn");
-------------------------------------------------------
Repsn for Constructing Representations of Finite Groups
Version 3.0.2
Written by
Vahid Dabbaghian
-------------------------------------------------------
true
gap> f := FreeGroup("x","y");
<free group on the generators [ x, y ]>
gap> G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
<fp group on the generators [ x, y ]>
gap> rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
[ x, y ] -> [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ]
Now, if you want to define variables x
and y
for the generators of G
, then you can do this as follows:
gap> gens:=GeneratorsOfGroup(G);
[ x, y ]
gap> x:=gens[1];y:=gens[2];
x
y
gap> Image(rho,x);
[ [ 0, 1 ], [ 1, 0 ] ]
gap> Image(rho,y);
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
Another notation for the same uses the ^
symbol:
gap> x^rho;
[ [ 0, 1 ], [ 1, 0 ] ]
gap> y^rho;
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
gap> (x^2*y^-1*x*y)^rho;
[ [ 0, E(3)^2 ], [ E(3), 0 ] ]
Finally, you can calculate the Image(rho)
immediately:
gap> Image(rho);
Group([ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ])
gap>
Hope this helps!
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
add a comment |
The first problem occurs because there is no GAP global variable called x
at the point when you refer to it. As GAP manual says here, "Note that you cannot call the generators by their names. These names are not variables, but just display figures. So, if you want to access the generators by their names, you first have to introduce the respective variables and to assign the generators to them."
The idea to use f.1
instead was good, but f.1
refers to the generator of the free group f
and not to the generator of G
. It would work if you would have used G.1
instead.
This is how to make it work. First, the setup:
gap> LoadPackage("repsn");
-------------------------------------------------------
Repsn for Constructing Representations of Finite Groups
Version 3.0.2
Written by
Vahid Dabbaghian
-------------------------------------------------------
true
gap> f := FreeGroup("x","y");
<free group on the generators [ x, y ]>
gap> G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
<fp group on the generators [ x, y ]>
gap> rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
[ x, y ] -> [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ]
Now, if you want to define variables x
and y
for the generators of G
, then you can do this as follows:
gap> gens:=GeneratorsOfGroup(G);
[ x, y ]
gap> x:=gens[1];y:=gens[2];
x
y
gap> Image(rho,x);
[ [ 0, 1 ], [ 1, 0 ] ]
gap> Image(rho,y);
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
Another notation for the same uses the ^
symbol:
gap> x^rho;
[ [ 0, 1 ], [ 1, 0 ] ]
gap> y^rho;
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
gap> (x^2*y^-1*x*y)^rho;
[ [ 0, E(3)^2 ], [ E(3), 0 ] ]
Finally, you can calculate the Image(rho)
immediately:
gap> Image(rho);
Group([ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ])
gap>
Hope this helps!
The first problem occurs because there is no GAP global variable called x
at the point when you refer to it. As GAP manual says here, "Note that you cannot call the generators by their names. These names are not variables, but just display figures. So, if you want to access the generators by their names, you first have to introduce the respective variables and to assign the generators to them."
The idea to use f.1
instead was good, but f.1
refers to the generator of the free group f
and not to the generator of G
. It would work if you would have used G.1
instead.
This is how to make it work. First, the setup:
gap> LoadPackage("repsn");
-------------------------------------------------------
Repsn for Constructing Representations of Finite Groups
Version 3.0.2
Written by
Vahid Dabbaghian
-------------------------------------------------------
true
gap> f := FreeGroup("x","y");
<free group on the generators [ x, y ]>
gap> G := f / [f.1^2, f.2^3, f.1*f.2*f.1^-1*f.2];
<fp group on the generators [ x, y ]>
gap> rho := IrreducibleAffordingRepresentation(Irr(G)[3]);
[ x, y ] -> [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ]
Now, if you want to define variables x
and y
for the generators of G
, then you can do this as follows:
gap> gens:=GeneratorsOfGroup(G);
[ x, y ]
gap> x:=gens[1];y:=gens[2];
x
y
gap> Image(rho,x);
[ [ 0, 1 ], [ 1, 0 ] ]
gap> Image(rho,y);
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
Another notation for the same uses the ^
symbol:
gap> x^rho;
[ [ 0, 1 ], [ 1, 0 ] ]
gap> y^rho;
[ [ E(3)^2, 0 ], [ 0, E(3) ] ]
gap> (x^2*y^-1*x*y)^rho;
[ [ 0, E(3)^2 ], [ E(3), 0 ] ]
Finally, you can calculate the Image(rho)
immediately:
gap> Image(rho);
Group([ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ] ])
gap>
Hope this helps!
edited Dec 8 at 18:50
answered Dec 7 at 23:20
Alexander Konovalov
5,11721956
5,11721956
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
add a comment |
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
Perfect, thank you so much!
– WilsonPrime
Dec 7 at 23:35
add a comment |
Thanks for contributing an answer to Mathematics Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3030086%2fdefine-the-image-of-a-representation-of-a-finitely-presented-group-in-gap%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown