hermann on Sat, 24 Jan 2026 13:18:32 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: A000001, galpol


On 2026-01-24 11:30, Ruud H.G. van Tol wrote:
I'm adding PARI-code to https://oeis.org/A000001.

aupto(m)= vector(m+1, i, if(i>1, galoisgetgroup(i-1), 0));

Is that a proper way?

I had to run "brew install pari-galpol" first.
It stops at 143, can that easily be extended?

-- Ruud

Thanks for bringing galoisgetgroup() to my attention.

I have not learned about galoisgroups sofar, but I am at end of first
semester studying Mathematics (age 60, Heidelberg University).

When learning about groups in linear algebra 1 I created an efficient search
to identify the non-isommorphic groups on 8 elements:
https://github.com/Hermann-SW/uni-heidelberg/blob/main/markdown/Lineare_Algebra_1.G8.md
(that university related repo is my only German language repo, translate service helps)

It did completed single core with boost frequency of 5.5GHz after 7d15h.
Whenever a new group was identified, immediately non-isomorphism test to already
determined was done, and if new, that group was output immediately.
The 5 non-isomorphic groups for 8 elements were output in the first 8 seconds(!) of the whole computation, the remained was needed only to rule out missing something.


Similar to stated above I did "sudo apt install pari-galpol", but that did not suffice. On my 22.04.5 Ubuntu the paths differed, and this command fixed the issue:

hermann@j4105:/usr/local/share/pari$ sudo ln -s /usr/share/pari/galpol/


Then I checked what galoisgetgroup() has to say about groups on 8 elements:

$ gp -q
? galoisgetgroup(8)
5
? ?galoisgetgroup
galoisgetgroup(a,{b}): query the galpol package for a group of order a with index b in the GAP4 Small Group library. If b is omitted, return the number of
isomorphism classes of groups of order a.

? galoisgetgroup(8,1)
[[Vecsmall([4, 5, 8, 7, 3, 2, 6, 1])], Vecsmall([8])]
? galoisgetgroup(8,2)
[[Vecsmall([3, 1, 5, 7, 2, 4, 8, 6]), Vecsmall([4, 6, 7, 1, 8, 2, 3, 5])], Vecsmall([4, 2])]
? galoisgetgroup(8,3)
[[Vecsmall([6, 1, 5, 2, 7, 4, 8, 3]), Vecsmall([3, 5, 1, 7, 2, 8, 4, 6])], Vecsmall([4, 2])]
? galoisgetgroup(8,4)
[[Vecsmall([4, 6, 2, 8, 1, 7, 3, 5]), Vecsmall([2, 8, 5, 3, 6, 4, 1, 7])], Vecsmall([4, 2])]
? galoisgetgroup(8,5)
[[Vecsmall([2, 1, 4, 3, 6, 5, 8, 7]), Vecsmall([5, 6, 7, 8, 1, 2, 3, 4]), Vecsmall([3, 4, 1, 2, 7, 8, 5, 6])], Vecsmall([2, 2, 2])]
?


Regards,

Hermann Stamm-Wilbrandt.