How to do inflation of $k(G/N)$-modules with MAGMA?

158 Views Asked by At

I'd like to ask the following MAGMA-question:

Let $k$ be a field of characteristic $p$, $G$ be a finite group and $N$ a normal subgroup of $G$.

Moreover, let $M$ be a $k(G/N)$-module.

Is it possible with MAGMA to get the inflation, i.e. $M$ viewed as a $kG$-module?

I tried something below (for the special case where $M$ is a projective $k(G/N)$-module), but it didn't work, unfortunately.

G:=...
N:=...
K:=GF(16);
FAC,f:=quo<G|N>;
PIMs:=ProjectiveIndecomposableModules(FAC,K);
P2:=PIMs[2];
phi2:=Representation(P2);
u:=f*phi2;
Nnew:=sub<G|[n:n in N]>;
M:=GModule(Nnew,[ u(g) : g in Nnew ]);

Any help is appreciated.

EDIT:

I looked at the following concrete example:

G:=Sym(5);
m:=Exponent(G);
Kx<x>:=PolynomialRing(GF(2));
f:=x^m-1;
L:=SplittingField(f);
u:=#L;
K:=GF(u);
P2:=sub<G|[(2,4)]>;
N2:=sub<G|[(2,4),(3,5),(1,3,5)]>;
P2inN2:=sub<N2|[(2,4)]>;
FAC,f:=quo<N2|P2inN2>;
PIMs:=ProjectiveIndecomposableModules(FAC,K);
P2:=PIMs[2];
phi2:=Representation(P2);
u:=f*phi2;
N2new:=sub<G|[g:g in N2]>;
GGG:=Generators(N2new);
M:=GModule(N2new,[ u(g) : g in N2new ]);
I:=Induction(M,G);
dirI:=DirectSumDecomposition(I);
dirI;

But $I$ is decomposable over a splitting field (it decomposes into a direct sum of two indec. $kG$-modules having $k$-dimensions 4 and 16, respectively). Note that the inflation of P2 is isomorphic to a simple kN2-module. When I induce this simple kN2-module to G, everything works.

1

There are 1 best solutions below

1
On BEST ANSWER

The problem here is that the list of elements

[g : g in N2]

is not coming out in the same order as the list

[g : g in N2new]

so the module M that you are constructing is not a valid module. (It would be too time consuming for Magma to attempt to check that the matrices that you specify really do define a module for the group.)

If instead you do

M:=GModule(N2new, [ u(g) : g in N2 ]);

then it will work.

But I don't really understand why you are taking every element of the group as a generator. That would be a very bad idea if the group was much larger. Why not define M as a module for N2, which you can do with:

M := GModule(N2, [ u(N2.i) : i in [1..Ngens(N2)] ] );