File: meataxe.gd

package info (click to toggle)
gap 4r8p6-2
  • links: PTS
  • area: main
  • in suites: stretch
  • size: 33,476 kB
  • ctags: 7,663
  • sloc: ansic: 108,841; xml: 47,807; sh: 3,628; perl: 2,342; makefile: 796; asm: 62; awk: 6
file content (100 lines) | stat: -rw-r--r-- 3,259 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#############################################################################
##
#W  meataxe.gd                   GAP Library                       Derek Holt
#W                                                                 Sarah Rees
#W                                                           Alexander Hulpke
##
##
#Y  (C) 1998-2001 School Math. Sci., University of St Andrews, Scotland
##
##  This file contains the declarations for the 'Smash'-MeatAxe modified for
##  GAP4 and using the standard MeatAxe interface.  It defines the MeatAxe
##  SMTX.
##

#############################################################################
##
#F  GModuleByMats(<mats>,<f>)
##
DeclareGlobalFunction("GModuleByMats");

#############################################################################
##
#F  TrivialGModule ( g, F ) . . . trivial G-module
##
##  g is a finite group, F a field, trivial smash G-module computed.
DeclareGlobalFunction("TrivialGModule");

#############################################################################
##
#F  InducedGModule ( g, h, m ) . . . calculate an induced G-module
##
## h should be a subgroup of a finite group g, and m a smash
## GModule for h.
## The induced module for g is calculated.
DeclareGlobalFunction("InducedGModule");

#############################################################################
##
#F PermutationGModule ( g, F) . permutation module
##
## g is a permutation group, F a field.
## The corresponding permutation module is output.
DeclareGlobalFunction("PermutationGModule");

###############################################################################
##
#F  TensorProductGModule ( m1, m2 )  . . tensor product of two G-modules
##
## TensorProductGModule calculates the tensor product of smash
## modules m1 and m2. 
## They are assumed to be modules over the same algebra so, in particular,
## they  should have the same number of generators.
## 
DeclareGlobalFunction("TensorProductGModule");

###############################################################################
##
#F  WedgeGModule ( module ) . . . . . wedge product of a G-module
##
## WedgeGModule calculates the wedge product of a G-module.
## That is the action on antisymmetrix tensors.
## 
DeclareGlobalFunction("WedgeGModule");

###############################################################################
##
#F  DualGModule ( module ) . . . . . dual of a G-module
##
## DualGModule calculates the dual of a G-module.
## The matrices of the module are inverted and transposed.
## 
DeclareGlobalFunction("DualGModule");

###############################################################################
##
#F TestModulesFitTogether(m1,m2) 
##
##  Given two modules <m1> and <m2> this routine tests whether both have the
##  same number of generators and are defined over the same field.
## 
DeclareGlobalFunction("TestModulesFitTogether");

DeclareInfoClass("InfoMeatAxe");
DeclareInfoClass("InfoMtxHom");


SMTX:=rec(name:="The Smash MeatAxe");
MTX:=SMTX;

SMTX.Getter := function(string)
  return function(module)
    if not (IsBound(module.smashMeataxe) and 
            IsBound(module.smashMeataxe.(string))) then
      return fail;
    else
      return module.smashMeataxe.(string);
    fi;
  end;
end;