遇见数据集

Transitive groups of degree 48

收藏
Zenodo2022-02-11 更新2026-05-25 收录
数据链接:
官方服务:

资源简介:

This database contains the transitive groups of degree 48. It is intended to be used in GAP, but also to be accessible more generally. The groups were originally computed by Derek Holt using MAGMA; this computation was reported in the following paper: Derek Holt, Gordon Royle and Gareth Tracey,<br> The transitive groups of degree 48 and some applications.<br> Journal of Algebra, 2022.<br> (https://doi.org/10.1016/j.jalgebra.2021.06.018) The groups were subsequently made available as one of MAGMA's Optional Databases (http://magma.maths.usyd.edu.au/magma/download/db/). Installing the MAGMA database enables the use of the command "TransitiveGroup(48,i)" for where i is a positive integer at most 195826352 (which is the number of transitive groups of degree 48). The data files and accompanying functions in this archive provide a similar mechanism to access the groups in GAP. In order for researchers to refer to groups unambiguously (either formally, in research papers, or informally, while communicating with colleagues), it is desirable that the numbering of the groups is independent of the system used to access them. On these grounds, the numbering used here is consistent with the numbering established by MAGMA. The full data set is very large, because there are 195826352 transitive<br> groups of degree 48. As a result, the data has been split into 1959 files with names of the form "TransitiveGroupsOfDegree48_X.gz", where X is an integer between 1 and 1959. All but the last of these files contains 100000 transitive groups, and each of them is compressed (using gzip) to save space. These files have been combined into 10 tar files, with names such as Trans48Part1.tar, Trans48Part2.tar etc., each containing 200 compressed files (except for the last which contains 159 files). By group identification numbers, the 10 tar files contains the following groups: Trans48Part1.tar 1 - 20000000<br> Trans48Part2.tar 20000001 - 40000000<br> Trans48Part3.tar 40000001 - 60000000<br> Trans48Part4.tar 60000001 - 80000000<br> Trans48Part5.tar 80000001 - 100000000<br> Trans48Part6.tar 100000001 - 120000000<br> Trans48Part7.tar 120000001 - 140000000<br> Trans48Part8.tar 140000001 - 160000000<br> Trans48Part9.tar 160000001 - 180000000<br> Trans48Part10.tar 180000001 - 195826352 <br> The group with transitive identification number n is found in the file "TransitiveGroupsOfDegree48_X", where X = floor( n-1 / 100000) + 1, and as each file has a 13-line descriptive header, group n is located on line (n-1 mod 100000) + 14. The groups are given as [ id, gens ] where "id" is the Transitive Identification number of the group, and "gens" is a list of permutations which generate the group. The following GAP function provides a reasonably fast way to access a group by its identification number without having to read in all the data. The function identifies which of the 1959 compressed files contains the group, and then reads only that one file. The file can remain compressed because GAP 4.11.1+ can automatically decompress the file as it is read. TransitiveGroup48 := function(id)<br> local file_number, pos, strm, i, x, g;<br> file_number := QuoInt(id-1, 100000)+1;;<br> pos := (id-1) mod 100000 + 1; strm := InputTextFile(Concatenation("TransitiveGroupsOfDegree48_", String(file_number), ".gz"));;<br> for i in [1 .. pos+14] do<br> x:=ReadLine(strm);;<br> od;<br> x:=EvalString(x);;<br> CloseStream(strm);;<br> if x[1] &lt;&gt; id then<br> Error("Somehow we got the wrong group!!!\n");<br> else<br> g:=Group(x[2]);;<br> SetTransitiveIdentification(g, id);;<br> return g;<br> fi;<br> end; To use this function, download the database and untar each part (or the parts that you are interested in) and move all the "TransitiveGroupsOfDegree48_X.gz" files into a single directory. DO NOT DECOMPRESS THESE FILES. Then change to that directory, start GAP, and create the function "TransitiveGroup48" function using the above code. Finally, remember that the command is "TransitiveGroup48(i)" and not "TransitiveGroup(48,i)".

本数据库收录了度数为48的传递群(transitive groups of degree 48),其设计初衷为适配GAP软件,同时也面向更广泛的受众开放。这些群最初由Derek Holt使用MAGMA软件计算完成,相关计算成果发表于下述论文:Derek Holt、Gordon Royle与Gareth Tracey所著《The transitive groups of degree 48 and some applications》,刊载于《Journal of Algebra》2022年刊(DOI: 10.1016/j.jalgebra.2021.06.018)。 该数据集后续作为MAGMA可选数据库之一对外发布(http://magma.maths.usyd.edu.au/magma/download/db/)。安装MAGMA数据库后,可通过命令"TransitiveGroup(48,i)"调用指定群,其中i为不超过195826352的正整数,该数值即度数为48的传递群总数量。本归档中的数据文件与配套函数为GAP用户提供了同类调用机制。 为便于研究者无歧义地指代特定群——无论是在学术论文中正式标注,还是与同事交流时非正式提及,群的编号应当独立于所使用的软件系统。基于此原则,本数据集采用的编号与MAGMA所确立的编号保持一致。 由于度数为48的传递群共计195826352个,完整数据集规模庞大。因此,数据被拆分为1959个文件,文件名格式为"TransitiveGroupsOfDegree48_X.gz",其中X为1至1959之间的整数。除最后一个文件外,其余每个文件均包含100000个传递群,且均通过gzip压缩以节省存储空间。这些文件进一步被整合为10个tar归档文件,命名格式为Trans48Part1.tar、Trans48Part2.tar等,每个归档包含200个压缩文件(最后一个归档除外,仅包含159个)。按群的标识编号划分,10个tar归档所涵盖的群范围如下: Trans48Part1.tar:1 - 20000000 Trans48Part2.tar:20000001 - 40000000 Trans48Part3.tar:40000001 - 60000000 Trans48Part4.tar:60000001 - 80000000 Trans48Part5.tar:80000001 - 100000000 Trans48Part6.tar:100000001 - 120000000 Trans48Part7.tar:120000001 - 140000000 Trans48Part8.tar:140000001 - 160000000 Trans48Part9.tar:160000001 - 180000000 Trans48Part10.tar:180000001 - 195826352 标识编号为n的传递群可在文件"TransitiveGroupsOfDegree48_X"中找到,其中X = ⌊(n-1)/100000⌋ + 1。由于每个文件均包含13行描述性文件头,群n的具体位置位于第((n-1) mod 100000) + 14行。群数据以`[id, gens]`的格式存储,其中"id"为群的传递标识编号,"gens"为生成该群的置换列表。 下述GAP函数提供了一种高效的调用方式,可直接通过标识编号获取指定群,而无需加载全部数据集。该函数会自动定位到包含目标群的1959个压缩文件中的对应文件,仅读取该单个文件。由于GAP 4.11.1及以上版本支持在读取时自动解压缩文件,因此这些压缩文件无需提前解压: gap TransitiveGroup48 := function(id) local file_number, pos, strm, i, x, g; file_number := QuoInt(id-1, 100000)+1;; pos := (id-1) mod 100000 + 1; strm := InputTextFile(Concatenation("TransitiveGroupsOfDegree48_", String(file_number), ".gz"));; for i in [1 .. pos+14] do x:=ReadLine(strm);; od; x:=EvalString(x);; CloseStream(strm);; if x[1] <> id then Error("Somehow we got the wrong group!!! "); else g:=Group(x[2]);; SetTransitiveIdentification(g, id);; return g; fi; end; 使用该函数的步骤如下:下载本数据库并解压每个tar归档(或仅解压所需的部分归档),将所有"TransitiveGroupsOfDegree48_X.gz"文件移动至同一目录下。**请勿提前解压这些压缩文件**。随后进入该目录,启动GAP并运行上述代码以定义"TransitiveGroup48"函数。请注意,调用命令应为"TransitiveGroup48(i)",而非"TransitiveGroup(48,i)"。

提供机构:
Zenodo
创建时间:
2022-02-11
二维码
社区交流群
二维码
科研交流群
商业服务