Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  twocohom.gd   Sprache: unbekannt

 
#############################################################################
##
##  This file is part of GAP, a system for computational discrete algebra.
##  This file's authors include Bettina Eick.
##
##  Copyright of GAP belongs to its developers, whose names are too numerous
##  to list here. Please refer to the COPYRIGHT file for details.
##
##  SPDX-License-Identifier: GPL-2.0-or-later
##


#############################################################################
##
#F  CollectedWordSQ( <C>, <u>, <v> )
##
##  <ManSection>
##  <Func Name="CollectedWordSQ" Arg='C, u, v'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "CollectedWordSQ" );

#############################################################################
##
#F  CollectorSQ( <G>, <M>, <isSplit> )
##
##  <ManSection>
##  <Func Name="CollectorSQ" Arg='G, M, isSplit'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "CollectorSQ" );

#############################################################################
##
#F  AddEquationsSQ( <eq>, <t1>, <t2> )
##
##  <ManSection>
##  <Func Name="AddEquationsSQ" Arg='eq, t1, t2'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "AddEquationsSQ" );

#############################################################################
##
#F  SolutionSQ( <C>, <eq> )
##
##  <ManSection>
##  <Func Name="SolutionSQ" Arg='C, eq'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "SolutionSQ" );

#############################################################################
##
#F  TwoCocyclesSQ( <C>, <G>, <M> )
##
##  <ManSection>
##  <Func Name="TwoCocyclesSQ" Arg='C, G, M'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "TwoCocyclesSQ" );

#############################################################################
##
#F  TwoCoboundariesSQ( <C>, <G>, <M> )
##
##  <ManSection>
##  <Func Name="TwoCoboundariesSQ" Arg='C, G, M'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "TwoCoboundariesSQ" );

#############################################################################
##
#F  TwoCohomologySQ( <C>, <G>, <M> )
##
##  <ManSection>
##  <Func Name="TwoCohomologySQ" Arg='C, G, M'/>
##
##  <Description>
##  </Description>
##  </ManSection>
##
DeclareGlobalFunction( "TwoCohomologySQ" );


#############################################################################
##
#O  TwoCocycles( <G>, <M> )
##
##  <#GAPDoc Label="TwoCocycles">
##  <ManSection>
##  <Oper Name="TwoCocycles" Arg='G, M'/>
##
##  <Description>
##  returns the <M>2</M>-cocycles of a pc group <A>G</A> by the
##  <A>G</A>-module <A>M</A>.
##  The generators of <A>M</A> must correspond to the <Ref Attr="Pcgs"/>
##  value of <A>G</A>. The operation
##  returns a list of vectors over the field underlying <A>M</A> and the
##  additive group generated by these vectors is the group of
##  <M>2</M>-cocyles.
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareOperation( "TwoCocycles", [ IsPcGroup, IsObject ] );


#############################################################################
##
#O  TwoCoboundaries( <G>, <M> )
##
##  <#GAPDoc Label="TwoCoboundaries">
##  <ManSection>
##  <Oper Name="TwoCoboundaries" Arg='G, M'/>
##
##  <Description>
##  returns the group of <M>2</M>-coboundaries of a pc group <A>G</A> by the
##  <A>G</A>-module <A>M</A>.
##  The generators of <A>M</A> must correspond to the <Ref Attr="Pcgs"/>
##  value of <A>G</A>.
##  The group of coboundaries is given as vector space over the field
##  underlying <A>M</A>.
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareOperation( "TwoCoboundaries", [ IsPcGroup, IsObject ] );


#############################################################################
##
#O  TwoCohomology( <G>, <M> )
##
##  <#GAPDoc Label="TwoCohomology">
##  <ManSection>
##  <Oper Name="TwoCohomology" Arg='G, M'/>
##
##  <Description>
##  This operation computes the second cohomology group for the special
##  case of a Pc Group.
##  It returns a record defining the second cohomology group as factor space of
##  the space of cocycles by the space of coboundaries.
##  <A>G</A> must be a pc group and the generators of <A>M</A> must
##  correspond to the pcgs of <A>G</A>.
##  <Example><![CDATA[
##  gap> G := SmallGroup( 4, 2 );
##  <pc group of size 4 with 2 generators>
##  gap> mats := List( Pcgs( G ), x -> IdentityMat( 1, GF(2) ) );
##  [ [ <a GF2 vector of length 1> ], [ <a GF2 vector of length 1> ] ]
##  gap> M := GModuleByMats( mats, GF(2) );
##  rec( IsOverFiniteField := true, dimension := 1, field := GF(2),
##    generators := [ <an immutable 1x1 matrix over GF2>,
##        <an immutable 1x1 matrix over GF2> ], isMTXModule := true )
##  gap> TwoCoboundaries( G, M );
##  [  ]
##  gap> TwoCocycles( G, M );
##  [ [ Z(2)^0, 0*Z(2), 0*Z(2) ], [ 0*Z(2), Z(2)^0, 0*Z(2) ],
##    [ 0*Z(2), 0*Z(2), Z(2)^0 ] ]
##  gap> cc := TwoCohomology( G, M );;
##  gap> cc.cohom;
##  <linear mapping by matrix, <vector space of dimension 3 over GF(
##  2)> -> ( GF(2)^3 )>
##  ]]></Example>
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareOperation( "TwoCohomology", [ IsPcGroup, IsObject ] );

#############################################################################
##
#O  TwoCohomologyGeneric( <G>, <M> )
##
##  <#GAPDoc Label="TwoCohomologyGeneric">
##  <ManSection>
##  <Oper Name="TwoCohomologyGeneric" Arg='G, M'/>
##
##  <Description>
##  This function computes the second cohomology group for an arbitrary
##  finite group <A>G</A>. The generators of the module <A>M</A> must
##  correspond to the generators of <A>G</A>.
##
##  It returns a record with components <C>coboundaries</C>,
##  <C>cocycles</C> and <C>cohomology</C> which are lists of vectors that form a
##  basis of the respective group. <C>cohomology</C> is chosen as a vector space
##  complement to <C>coboundaries</C> in the <C>cocycles</C>.
##  These vectors are representing tails in <A>M</A> with respect to the
##  <C>relators</C> of the presentation <C>presentation</C> of <A>G</A>.
##  (Note that this presentation is on a generating set chosen by the
##  routine, this generating system corresponds to the components
##  <C>group</C> and <C>module</C> of the record returned.
##  The extension corresponding to a cocyle <C>c</C> can be constructed as
##  <C>FpGroupCocycle(r,c)</C> where <C>r</C> is the cohomology record. This is
##  currently done as a finitely presented group.
##
##  <Example><![CDATA[
##  gap> g:=Group((1,2,3,4,5),(1,2,3));;
##  gap> mats:=[[[2,0,0,1],[1,2,1,0],[2,1,1,1],[2,1,1,0]],
##  > [[0,2,0,0],[1,2,1,0],[0,0,1,0],[0,0,0,1]]]*Z(3)^0;;
##  gap> mo:=GModuleByMats(mats,GF(3));;
##  gap> coh:=TwoCohomologyGeneric(g,mo);;
##  gap> coh.cocycles;
##  < immutable compressed matrix 8x44 over GF(3) >
##  gap> coh.coboundaries;
##  [ < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) >,
##    < immutable compressed vector length 44 over GF(3) > ]
##  gap> coh.cohomology;
##  [ < immutable compressed vector length 44 over GF(3) > ]
##  gap> g1:=FpGroupCocycle(coh,coh.zero,true);
##  <fp group of size 4860 on the generators [ F1, F2, F3, m1, m2, m3, m4 ]>
##  gap> g2:=FpGroupCocycle(coh,coh.cohomology[1],true);
##  <fp group of size 4860 on the generators [ F1, F2, F3, m1, m2, m3, m4 ]>
##  gap> g1:=Image(IsomorphismPermGroup(g1));
##  <permutation group with 7 generators>
##  gap> Length(ComplementClassesRepresentatives(g1,SolvableRadical(g1)));
##  3
##  gap> g2:=Image(IsomorphismPermGroup(g2));
##  <permutation group with 7 generators>
##  gap> Length(ComplementClassesRepresentatives(g2,SolvableRadical(g2)));
##  0
##  ]]></Example>
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareOperation( "TwoCohomologyGeneric", [ IsGroup, IsObject ] );

#############################################################################
##
#O  FpGroupCocycle( <r>, <c>, <doperm> )
##
##  <#GAPDoc Label="FpGroupCocycle">
##  <ManSection>
##  <Func Name="FpGroupCocycle" Arg='r, c [,doperm]'/>
##
##  <Description>
##  For a record <A>r</A> as returned by
##  <Ref Oper="TwoCohomologyGeneric"/> and a vector <A>c</A> in the space of
##  two-cocycles, this operation returns a finitely presented group that is
##  an extension corresponding to the cocycle <A>c</A>. If the underlying
##  module has dimension <M>d</M>, the last <M>d</M> generators generate the
##  normal subgroup.
##  If the optional parameter <A>doperm</A> is given as <A>true</A>, a
##  faithful permutation representation is computed and stored in the
##  attribute <Ref Attr="IsomorphismPermGroup"/> of the computed group.
##  If the option <C>normalform</C> is given as <C>true</C>, arithmetic in
##  the resulting finitely presented group will bring words into normal form.
##  <Example><![CDATA[
##  gap> g:=Group((2,15,8,16)(3,17,14,21)(4,23,20,6)(5,9,22,11)(7,13,19,25),
##  > (2,12,7,17)(3,18,13,23)(4,24,19,9)(5,10,25,15)(6,11,16,21));;
##  gap> StructureDescription(g);
##  "GL(2,5)"
##  gap> mats:=[[[1,1,0,2],[2,0,0,0],[0,2,2,0],[0,1,0,0]],
##  > [[0,0,0,1],[1,1,2,0],[1,0,2,1],[1,0,1,0]]]*Z(3)^0;;
##  gap> mo:=GModuleByMats(mats,GF(3));;
##  gap> coh:=TwoCohomologyGeneric(g,mo);;
##  gap> coh.cohomology;
##  [ < immutable compressed vector length 116 over GF(3) > ]
##  gap> p:=FpGroupCocycle(coh,coh.zero,true);
##  <fp group of size 38880 on the generators
##  [ F1, F2, F3, F4, F5, F6, m1, m2, m3, m4 ]>
##  gap> g1:=Image(IsomorphismPermGroup(p));
##  <permutation group with 10 generators>
##  gap> p:=FpGroupCocycle(coh,coh.cohomology[1],true);
##  <fp group of size 38880 on the generators
##  [ F1, F2, F3, F4, F5, F6, m1, m2, m3, m4 ]>
##  gap> g2:=Image(IsomorphismPermGroup(p));
##  <permutation group with 10 generators>
##  gap> Collected(List(MaximalSubgroupClassReps(g1),Size));
##  [ [ 480, 3 ], [ 3888, 1 ], [ 6480, 1 ], [ 7776, 1 ], [ 19440, 1 ] ]
##  gap> Collected(List(MaximalSubgroupClassReps(g2),Size));
##  [ [ 3888, 1 ], [ 6480, 1 ], [ 7776, 1 ], [ 19440, 1 ] ]
##  gap> p:=FpGroupCocycle(coh,coh.cohomology[1],true:normalform);;
##  ]]></Example>
##  <Log><![CDATA[
##  gap> p.7*p.1; # i.e. m1*F1, but in normal form
##  F1*m4
##  ]]></Log>
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareGlobalFunction("FpGroupCocycle");

#############################################################################
##
#O  CompatiblePairOrbitRepsGeneric( <compair>,<coh> )
##
##  <#GAPDoc Label="CompatiblePairOrbitRepsGeneric">
##  <ManSection>
##  <Func Name="CompatiblePairOrbitRepsGeneric" Arg='compair, coh'/>
##
##  <Description>
##  <Example><![CDATA[
##  ]]></Example>
##  </Description>
##  </ManSection>
##  <#/GAPDoc>
##
DeclareGlobalFunction("CompatiblePairOrbitRepsGeneric");



[ Dauer der Verarbeitung: 0.28 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge