Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 4183461<!-- %W technica.xml GAP 4 package AtlasRep Thomas Breuer -->2<!-- %Y Copyright 2001, Lehrstuhl D f�r Mathematik, RWTH Aachen, Germany -->345<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->6<Chapter Label="chap:Technicalities of the AtlasRep Package">7<Heading>Technicalities of the <Package>AtlasRep</Package> Package</Heading>89This chapter describes those parts of the &GAP; interface to the10&ATLAS; of Group Representations that do not belong to the user interface11(cf. Chapter <Ref Chap="chap:The User Interface of the AtlasRep Package"/>).12<P/>13Besides global variables used for administrational purposes14(see Section <Ref Sect="sect:Global Variables Used by the AtlasRep Package"/>)15and several sanity checks16(see Section <Ref Sect="sect:AGR Sanity Checks"/>),17they can be regarded as18the interface between the data actually contained in the files and19the corresponding &GAP; objects20(see21Section <Ref Sect="sect:How to Customize the Access to Data files"/>,22<Ref Sect="sect:Reading and Writing MeatAxe Format Files"/>,23<Ref Sect="sect:Reading and Writing Atlas Straight Line Programs"/>,24and <Ref Sect="sect:Data Types Used in the AGR"/>),25and the interface between the remote and the local version of the database26(see Section <Ref Sect="sect:Filenames Used in the AGR"/>27and <Ref Sect="sect:The Tables of Contents of the AGR"/>).28The former interface contains functions to read and write files in29&MeatAxe; format, which may be interesting for users familiar with30&MeatAxe; standalones (see for example <Cite Key="CMeatAxe"/>).31Other low level functions may be undocumented in the sense that they are32not described in this manual.33Users interested in them may look at the actual implementation in the34<F>gap</F> directory of the package,35but it may happen that this will be changed36in future versions of the package.373839<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->40<Section Label="sect:Global Variables Used by the AtlasRep Package">41<Heading>Global Variables Used by the <Package>AtlasRep</Package> Package42</Heading>4344For debugging purposes, the functions from the &GAP; interface to the45&ATLAS; of Group Representations print information depending on the info46level of the info classes <Ref InfoClass="InfoAtlasRep"/>,47<Ref InfoClass="InfoCMeatAxe"/>, and <Ref InfoClass="InfoBBox"/>48(cf. <Ref Sect="Info Functions" BookName="ref"/>).4950<P/>5152The info level of an info class can be changed using53<Ref Func="SetInfoLevel" BookName="ref"/>.54For example, the info level of <Ref InfoClass="InfoAtlasRep"/> can be set55to the nonnegative integer <A>n</A> using56<C>SetInfoLevel( InfoAtlasRep, <A>n</A> )</C>.5758<P/>5960Information about files being read can be obtained by setting the61value of the global variable <C>InfoRead1</C>62to <Ref Func="Print" BookName="ref"/>.6364<P/>6566<#Include Label="InfoAtlasRep">67<#Include Label="InfoCMeatAxe">68<#Include Label="InfoBBox">6970<P/>7172<ManSection>73<Var Name="CMeatAxe.FastRead"/>7475<Description>76If this component is bound and has the value <K>true</K> then77<Ref Func="ScanMeatAxeFile"/> reads text files via78<Ref Func="StringFile" BookName="gapdoc"/>.79Otherwise each file containing a matrix over a finite field is read line by80line via <Ref Func="ReadLine" BookName="ref"/>,81and the &GAP; matrix is constructed line by line, in a compressed82representation83(see <Ref Sect="Row Vectors over Finite Fields" BookName="ref"/>84and <Ref Sect="Matrices over Finite Fields" BookName="ref"/>),85which makes it possible to read large matrices in a reasonable amount86of space.87The <Ref Func="StringFile" BookName="gapdoc"/> approach is faster88but needs more intermediate space when text files containing89matrices over finite fields are read.90</Description>91</ManSection>9293<P/>9495<#Include Label="AGR">96<#Include Label="AtlasOfGroupRepresentationsInfo">9798</Section>99100101<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->102<Section Label="sect:How to Customize the Access to Data files">103<Heading>How to Customize the Access to Data files</Heading>104105<#Include Label="AccessFunctionsDefault">106107</Section>108109110<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->111<Section Label="sect:Reading and Writing MeatAxe Format Files">112<Heading>Reading and Writing MeatAxe Format Files</Heading>113114<Index Subkey="MeatAxe format">matrix</Index>115<Index Subkey="MeatAxe format">permutation</Index>116117<#Include Label="ScanMeatAxeFile">118<#Include Label="MeatAxeString">119<#Include Label="FFList">120<#Include Label="CMtxBinaryFFMatOrPerm">121<#Include Label="FFMatOrPermCMtxBinary">122123</Section>124125126<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->127<Section Label="sect:Reading and Writing Atlas Straight Line Programs">128<Heading>Reading and Writing &ATLAS; Straight Line Programs</Heading>129130<#Include Label="ScanStraightLineProgram">131<#Include Label="AtlasStringOfProgram">132133</Section>134135136<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->137<Section Label="sect:Data Types Used in the AGR">138<Heading>Data Types Used in the &ATLAS; of Group Representations</Heading>139140Each representation or program that is administrated by the141<Package>AtlasRep</Package> package belongs to a unique <E>data type</E>.142Informally, examples of data types are143<Q>permutation representation</Q>,144<Q>matrix representation over the integers</Q>, or145<Q>straight line program for computing class representatives</Q>.146147<P/>148149The idea is that for each data type, there can be150<List>151<Item>152a column of its own in the output produced by153<Ref Func="DisplayAtlasInfo"/>154when called without arguments or with only argument a list of155group names,156</Item>157<Item>158a line format of its own for the output produced by159<Ref Func="DisplayAtlasInfo"/>160when called with first argument a group name,161</Item>162<Item>163an input format of its own for <Ref Func="AtlasProgram"/>,164</Item>165<Item>166an input format of its own for <Ref Func="OneAtlasGeneratingSetInfo"/>,167and168</Item>169<Item>170specific tests for the data of this data type;171these functions are used by the global tests described in172Section <Ref Sect="sect:AGR Sanity Checks"/>.173</Item>174</List>175176<P/>177178Formally, a data type is defined by a record whose components are used by179the interface functions.180The details are described in the following.181182<#Include Label="AGRDeclareDataType">183184</Section>185186187<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->188<Section Label="sect:Filenames Used in the AGR">189<Heading>Filenames Used in the &ATLAS; of Group Representations</Heading>190191<#Include Label="[1]{access}">192193<P/>194195<#Include Label="AGRParseFilenameFormat">196<#Include Label="AGRFileContents">197198</Section>199200201<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->202<Section Label="sect:The Tables of Contents of the AGR">203<Heading>The Tables of Contents of the &ATLAS; of Group Representations204</Heading>205206<#Include Label="toc">207208</Section>209210211<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->212<Section Label="sect:AGR Sanity Checks">213<Heading>Sanity Checks for the &ATLAS; of Group Representations</Heading>214215<#Include Label="tests">216217</Section>218219220<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->221222</Chapter>223224225226