<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Upper Bounds and Probability Heuristic Estimates of the number of -Regular Families of Permutations</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pavol Kollár</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Mačaj</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Algebra and Geometry, Faculty of Mathematics</institution>
          ,
          <addr-line>Physics and Informatics</addr-line>
          ,
          <institution>Comenius University</institution>
          ,
          <addr-line>Bratislava</addr-line>
          ,
          <country country="SK">Slovakia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Applied Informatics, Faculty of Mathematics</institution>
          ,
          <addr-line>Physics and Informatics</addr-line>
          ,
          <institution>Comenius University</institution>
          ,
          <addr-line>Bratislava</addr-line>
          ,
          <country country="SK">Slovakia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>A sure-fire way of answering “How many of these objects are there?” is to generate them all and simply keeping a counter. However, if it so happens that the true count is about 1024, this way of doing it becomes a “sure-fire way of getting nowhere”. This is exactly what happens with so called -regular families of permutations, which are a generalisation of the notion of transitivity in groups. They also measure how Cayley-like a vertex-transitive graph is. Therefore, another approach is required for this (and many other) cases. In this article, we shall describe a general-purpose algorithm that utilises complex cyclotomic numbers to give upper bounds to the counts of these families. Additionally, we present a probabilistic algorithm to give heuristic estimates of the true counts of these families.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;-regular families</kwd>
        <kwd>Generating functions</kwd>
        <kwd>Fourier transformations</kwd>
        <kwd>GAP</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <sec id="sec-1-1">
        <title>The simpler version of 1-regular family (or simply</title>
        <p>just regular family) was introduced much earlier in [2]
As defined in [ 1], for any set  , an “-regular family” already. In this paper, the author was looking at the well
of permutations is a set ℱ ⊆ S , such that for every known issue of graph theory, that there are some vertex
,  ∈  , there are exactly  permutations  ∈ ℱ , transitive graphs, which are not Cayley graphs, most
such that () = . Sometimes we will take  = famously the Petersen graph. Her method involved the
{1, 2, 3, . . . , }, in which case we will use the standard construction of “quasi-Cayley graphs”, which are tied to
shorthand [] := {1, 2, 3, . . . , }. The -regular family the existence of 1-regular families of automorphisms as
as an object is closely related to transitive groups, when follows: “a graph Γ is quasi-Cayley if and only if (Γ)
their stabiliser is of size . Indeed, such a group does contains a 1-regular family as a subset”. This is similar
follow the property of -regular families and is therefore to what Sabidussi did in [3] with Cayley graphs and their
a special case of them. On the other hand, the -regular automorphism groups: “a graph Γ is Cayley if and only
families are combinatorial approximations of these tran- if (Γ) contains a subgroup, which acts regularly on
sitive groups, as they themselves need not to follow the  (Γ) ”.
group axioms, only the “ regularity”. With definitions laid out as we have, we can rephrase</p>
        <p>The authors of [1] investigated “how close to a Cayley the result of Sabidussi as “a graph Γ is Cayley if and only
graph a given vertex-transitive graph is”, which is a ques- if (Γ) contains a subgroup, which is also a 1-regular
tion that has been asked many times in prior research in family (with respect to its action on  (Γ) )”.
diferent variations. As such, there are multiple measures One year after the paper [1], in his bachelor thesis
of this “closeness” notion. One such notion is to find [4], the author investigated -regular families from a
the smallest transitive subgroup of (Γ) . A diferent computational perspective, specifically, by generating
notion relies precisely on the aforementioned -regular these families with the help of a computer.
families, and also gets investigated in [1]. There, one In Section 2, we will summarise Kerák’s main result
seeks small -regular families as subsets of the (Γ) , from [4], which is relevant to our work, introduce the
the group of automorphisms of the given graph Γ . The main problem we will be solving, and describe how
genpaper [1] is the first instance we could find which men- erating functions and Fourier transformations can help
tions the use of -regular families. us get upper bounds on the number of -regular families.
Continuing that, in Section 3, we talk about some of the
ITAT’24: Computational Aspects of Large-Scale Problems in Discrete implementation details of these methods to get said
upMathematics, September 20–24, 2024, Drienica, Slovakia per bounds. In Section 4, we briefly describe the method
* Corresponding author. [4] used and expand on it with a randomised algorithm,
†$Thpeasveoal.uktohlloarrs@cofmntprhib.uunteibdae.sqkua(Pll.yK.ollár); which can be used as an estimation heuristic to
approxmartin.macaj@fmph.uniba.sk (M. Mačaj) imate the number of -regular families on  elements.</p>
        <p>© 2024 Copyright for this paper by its authors. Use permitted under Creative Commons License Finally, in Section 5, we summarise our findings.
CPWrEooUrckReshdoinpgs IhStpN:/c1e6u1r3-w-0s.o7r3g ACttEribUutRion W4.0oInrtekrnsahtioonpal (PCCroBYce4.0e).dings (CEUR-WS.org)</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>2. Ground Work</title>
      <sec id="sec-2-1">
        <title>2.1. Establishing notions</title>
        <p>Our work picks up where [4] left of, where the author
was generating the -regular families with the help of a
computer. One of his outputs was the Table 1 containing
information on how many distinct -regular families on
 elements are there for some small , . Within this
table, “NG” means that for those parameters, the families
were only partially generated or not at all.</p>
        <p>For the rest of the paper, we fix  ∈ N and also let
 = {1, 2, . . . , } be a fixed set of  positive
integers with 1 ≤ 2 ≤ . . . ≤ . Borrowing some
notation from [4], instead of writing down permutations
of S with the cycle notation as is usual in algebra, e.g.
(1, 2, 4, 6) or (2, 7, 3)(5, 11), we will write down all the 2.2. Generating functions
numbers in one sequence into a list. In this list, the num- To bound the values of the numbers of -regular families,
ber  is in the th position in the list precisely when  is we will use generating functions and their properties. To
mapped to the number  by this permutation. Put another be able to use generating functions, we require a weight
way, to each permutation  ∈ S , we associate the list of function on the subsets of S , namely  : (S ) → N.
numbers () = [(1), (2), (3), . . . , ()]. Instead of producing a weight for every subset, we assign
For  = [6] and  = (1, 2, 4, 6), this list will thus each permutation a weight with the function  : S →
be [2, 4, 3, 6, 5, 1] and for  = {2, 3, 5, 7, 11, 13} and N and the total weight of a subset of S shall simply be
 = (2, 7, 3)(5, 11), the list will be [7, 2, 11, 3, 5, 13]. the sum of individual weights.</p>
        <p>When we talk about the elements of S from now on,
we will mostly talk about the set of lists induced by the
previous construction.</p>
        <p>Given any  ≤ ( − 1)!, we know that ∀ℱ ∈  :
|ℱ | = . This facilitates the fact that the only 0-regular
set is the empty set and so ⃒⃒ 0 ⃒⃒ = 1 for all  regardless
of its size. Since we have chosen | | = , we have that
|S | = !, which means that for all  &gt; ( − 1)!, the
set  is empty, so ∀ &gt; ( − 1)! : ⃒⃒  ⃒⃒ = 0.</p>
        <p>Our main efort for the remainder of this paper is to
get upper bounds for the total number of -regular
families for  = 5. In Section 4 we will also describe a
randomised algorithm that provides a heuristic estimate
for the number of -regular families on  elements are
there in that specific case. We are also going to reference
the values within the row for  = 4 in the Table 1 to
check the correctness of our methods.</p>
        <p>The weight function of single permutations  : S →
N will depend on a chosen list w = [1, . . . , ] of
weights (and also the chosen set  ) and is defined by
Observation 1. Within this list association, an -regular () = ∑︀=1  · ()[]. In a sense, we really should
family of S is such a collection of the lists ℱ ⊆ S , so call this weight function w, but we will omit it in this
that when the lists in ℱ are aligned below one another, section. For example, if  = [4] and w = [1, 2, 5, 15],
each column contains each  ∈  precisely  times. for the identity permutation we have () = 1 · 1 +
2 · 2 + 5 · 3 + 15 · 4 = 80. For  = (1, 2), we have</p>
        <p>Later, we will want to talk about individual en- () = [2, 1, 3, 4] and () = 79, and for  = (1, 4, 3),
tries of these lists and for that reason, we shall ac- we have () = [4, 2, 1, 3] and () = 62.
cess them via indices written with square brackets, i.e. As mentioned before, the weight function for sets
()[] = (). For us, the first entry has index 1, e.g. of permutations  : (S ) → N, will be the sum
[7, 2, 11, 3, 5, 13][1] = 7, [2, 4, 3, 6, 5, 1][4] = 6. of the individual permutation weights, i.e.,  () =
∑︀∈ (). For any  ⊆ N, we can ask for the set
Definition 1. For a given non-negative integer , let  = { ⊆ S | ( ) ∈ }. Ideally we want to
con ⊆  (S ) be the set of -regular families of S . struct the function  (that is, choose the list w as well
Also let  = ⋃︀≥ 0  . as the set  in a clever way) so that there exists an 
with ℱ ∈  ⇔  ( ) ∈ . However, ensuring both we know this generating function  is also equal to
implications hold while also ensuring that he entries of () = ∏︀∈S (1 + ()), creating the following
es and w are suficiently small is highly non-trivial (for sential equation:
, w big, it is not so dificult to come up with examples),
so we will relax the requirement and demand that only ∑︁  ·  = () = ∏︁ (1 + ()) (2)
ℱ ∈  ⇒  ( ) ∈  holds. This is why our algo- ∈N ∈S
rithms will, in general, produce upper bounds for those Utilising a standard trick of Fourier transformations,
counts, and occasionally produce the exact values. let  a primitive th root of unity. Then to get the
boundonCeocanntinseueinthgatthfeorsiamnpyle-erxegamulparlefaamb oilvyeℱw,iethachw=eig[4h]t, ing sum ∑︀∈N , we can average the values of () at
is multiplied  times by each  ∈  , so  (ℱ ) = all the ℎ roots of unity, that is:
(1 + 2 + 5 + 15) ·  · (1 + 2 + 3 + 4) = 230. In general 
we have the following lemma. ∑︁  = ∑︁ ( ) (3)
Lemma 1. Fix w = [1, . . . , ], and let ℱ ⊆ S be
an -regular family. Then  (ℱ ) =  · ∑︀∈  ·
∑∑︀︀∈w . Therefore, with  = ∑︀∈  ·</p>
        <p>∈w  and  = { · | ∈ N}, the condition
ℱ ∈  ⇒  (ℱ ) ∈  is satisfied for all , in
particular ℱ ∈  ⇒  (ℱ ) ∈ .</p>
        <p>Proof. Let ℱ be an -regular family. By definition,
 (ℱ ) = ∑︁ () = ∑︁ ∑︁  · ()[],
∈ℱ</p>
        <p>∈ℱ ∈w
where the ()[] are elements of  . This is a finite sum
and hence we can swap the order of summations:
 (ℱ ) = . . . =
∑︁  · ∑︁ ()[].
∈w
∈ℱ
∈N
1
 ·</p>
        <p>=1
Combining Equation 1 and Equation 3, we get
The evaluation of this average requires the evaluations
of  on the right hand side. Those values depend on
the weight function , which in turn depends on the
particular choice of  and w. This constitutes the first
algorithm, which accepts inputs , w and outputs the
upper bound from Equation 4, see Section 3.1 for
implementation.</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.3. Generating functions in more than one variable</title>
        <p>Because ℱ is -regular, together over all  and all , In the previous section, we transformed a permutation
()[] equals each  ∈  precisely  times:  into its weight () = ∑︀∈w  · ()[] and we
transformed a permutation set  ⊆ S into  ( ) =
 (ℱ ) = . . . = ∑︁  · ∑︁  ·  . ∑︀∈ (). Enconding each set of permutations into
∈w  ∈ a single number caused us to lose a lot of information
about said set of permutations. Instead, let us assign
To finish the proof of the claim, pull  out of both sums, the “weight” of the permutation to be the permutation
since it is independent of the sums, and substitute in the itself in the list notation: () = (). Treating these
defined : lists of integers as vectors for the purposes of addition
 (ℱ ) = . . . =  · ∑∈︁w  · ∑ ∈︁  =  · . a∑n︀d∈scala(rm)ufoltripalnicyatio⊆n, wSe m.Tahyisnwowayd,ewfineeretain(m)o=re
information about  .</p>
        <p>This means that  divides  (ℱ ), so  (ℱ ) ∈ .</p>
        <p>Lemma 2. Let ℱ ⊆ S be an -regular family. Then</p>
        <p>Said another way that is more usual in the context of  (ℱ ) = · ∑︀∈ · [1, 1, . . . , 1], where the vector has
generating functions, if  = |{ ⊆ S :  ( ) = }|, | | =  ones. With d = ∑︀∈  · [1, 1, . . . , 1] and
then the following bound is a direct consequence of the  = { · d| ∈ N}, the condition ℱ ∈  ⇒  (ℱ ) ∈
previous lemma:  is satisfied for all , in particular ℱ ∈  ⇒  (ℱ ) ∈
.</p>
        <sec id="sec-2-2-1">
          <title>Proof. The proof is analogous to the proof of the one</title>
          <p>∈N dimensional case from the previous subsection. Each
We take () to be the generating function for this se- position within the lists gets each number  ∈ 
prequence of numbers, that is, () = ∑︀∈N  · . By cisely  times in the expression for  (ℱ ), when ℱ is an
standard theory of generating functions (see e.g. [5]), -regular family.
∑︁ I · 11 · 22 · . . . ·  =
I∈N
= (1, 2, . . . , ) =</p>
          <p>= ∏︁ (1 + ∏︁ ()[])
∈S
=1</p>
          <p>(6)
Let  = ∑︀∈ , which means that d can be written
as [, , . . . , ]. Here too, we want to use the trick of
Fourier transformations. In this case we can start with
the observation that:
Here, the second sum is over all vector-indices, whose
each coordinate is a multiple of . Clearly, the sum on
the right-hand-side includes all coeficients with indices
 · d, therefore we have the following upper bound as a
consequence:</p>
          <p>Testing this algorithm on various inputs, we
recognised that to get a meaningful decrease of the computed
upper bound, we needed to substantially increase the
∑︁ · d ≤ 1 · ∑︁ ( 1 , . . . ,   ) (8) value of . Because ( ) = ∏︀∈S (1 +  · ()), the
∈N I∈Z
computation of each ( ) is done in linear time with
respect to the order of  (which is ), and therefore the</p>
          <p>The algorithm implementing this approach and its runtime complexity is (! · 2). Coupled with the fact
optimisations is described in Subsection 3.3. that we had to substantially increase  to get a
significant improvement, we stopped using this exact approach,
3. Algorithmic Upper Bounds even if the further algorithms share the same core idea.
Still, we include the description of the algorithm here
3.1. The basic algorithm to illustrate this core idea. Later, in the results, we will
highlight where the particular approaches had their
comLet us return to the ideas from Section 2.2 and create an putational limits.
algorithm based on them. For the Subsection 3.1, fix w =
[1, . . . , ] and also  . Furthermore, as before, let 3.2. Long lists of coeficients
 = ∑︀∈  · ∑︀∈w . At the end of Subsection
2.2, we ended up with the bounding inequality described To make matters for the previous algorithm worse, even
in 4. Our algorithm will thus, for every  , evaluate the if we could reduce the time complexity of the algorithm
polynomial  at that value and average these results. We down, we still have a memory overflow waiting to
hapremark that by fixing , w (which will be the inputs of pen. In fact, one of our intermediate algorithm iterations
the algorithm), we are also fixing the value  as well as had time complexity just (! · ), because instead of
evaluating  diferent values ( ), this algorithm ex- in Section 3.1, the evaluations themselves are linear in 
panded the product form of  symbolically. This is be- in terms of time, so the total time complexity is roughly
cause what the computation actually needs is the sum of (! · +1). For just  = 5 and  = 127, that causes
certain polynomial coeficients of  - specifically those the algorithm to run for about 15 hours, while giving a
whose index is ≡ 0 (mod ). To perform this expansion weak bound.
of (), whose product form we established in Equation Since the evaluations of  themselves cannot be easily
(2), we represent each intermediate step as a long list sped up, let us try to decrease the number of evaluations.
of coeficients, in which each position is the sum of all We will choose some properties of the set  that will
coeficients, whose indices have the same remainder lead to optimisation of our algorithm’s speed. With the
(mod ). At the end, the result we seek is then simply claims that follow, we will prove that we can reduce the
the 0th coeficient of this list. complexity down to only (− 1). Also, to simplify</p>
          <p>While this provided a significant time-improvement, the further expressions, we will write [1, . . . , ]
ingiven that we only “evaluated” the polynomial once, the stead of ( 1 , . . . ,   ). Because of the equality in (6),
memory requirement was roughly (), i.e., an approxi- it easily follows that:
mately linear amount of memory is required for this
computation. On our laptop, even with tricks of the “meet in Lemma 3. For any [1, . . . , ] ∈ Z and any  ∈ S
the middle” character, choosing  ≈ 1.2· 108 was roughly we have
the limit of its memory capabilities. A stronger machine [1, . . . , ] = [ (1), . . . ,  ()].
could be employed for the task, but that too does not
solve the problem. This is because the memory problem For fixed , the next lemma will gain us a much more
is, in a sense, unavoidable. Once we start to dabble with significant speed-up:
cyclotomic numbers that we need to represent exactly,
and we need to have  (), where  is the Euler totient Lemma 4. Adding 1 to all the exponents of the roots of
function, coeficients to represent those. Choosing  to unity does not change the value of , i.e.:
have many distinct prime factors seemed to yield worse [1, . . . , ] = [1 + 1, . . . ,  + 1].
upper bounds than when  had only a few of those and
then  () is still (), so we cannot escape the issue, at
least not in this way.</p>
          <p>Proof. Focus on the specific product 11 · 22 · . . . · 
within . Evaluating it at the powers of  from the
lefthand-side, we of course get another power of  . The
value of that power is</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>3.3. Thinking in more dimensions</title>
        <sec id="sec-2-3-1">
          <title>As we have argued, the basic algorithms have large mem</title>
          <p>ory requirements, some with bad runtimes in relation to
the results we were getting from them. Our third and
most recently used method for this problem seeks to
improve this via generating polynomials of many variables,
as was discussed and introduced in Section 2.3.</p>
          <p>In what follows,  is still the set {1, 2, . . . , }
and let  = ∑︀∈ . To simplify the optimisation
arguments that follow in the later part of the section,
assume that  is a prime number bigger than , hence 
and  are coprime. Finally, let  be a primitive th root
of unity, just as in the Section 2.3. In that section, we
arrived at the inequality in (8), which bounded the total
number of all -regular families on  elements by the
expression:</p>
          <p>This means that all our algorithm needs to do is to
evaluate the multinomial  on all possible vectors of
roots of unity and average the result. However, this is
outrageously slow. Notice that for that to happen, we
require  evaluations of . Moreover, as we discussed

∑︁  · .</p>
          <p>=1</p>
        </sec>
        <sec id="sec-2-3-2">
          <title>On the other hand, evaluating that product on the right</title>
          <p>hand-side gives us (again omitting the  itself and writing
down just the power):
 
∑︁ ( + 1) ·  = ∑︁  ·  + .</p>
          <p>=1 =1</p>
        </sec>
        <sec id="sec-2-3-3">
          <title>These two expressions only difer by the + at the end</title>
          <p>and both of these expressions represent powers of  .
Since  is a primitive th root of unity, the + makes
no diference to the product.</p>
          <p>As such, this product within  has the same value on
the inputs we started with and, analogously, so will every
other product in . This proves our claim.</p>
          <p>We can iteratively repeat this argument to get the
following equality as an immediate corollary
[1, . . . , ] = [1 + , . . . ,  + ]
(9)
that holds for all 1 ≤  ≤ , with  =  being the trivial
case, as exponents of  operate (mod ).
tion a bit about how GAP internally stores cyclotomic
numbers. We touched on this earlier in Section 3.2, and
I =  · !.</p>
        </sec>
        <sec id="sec-2-3-4">
          <title>Picking  to be prime is essential for the second big</title>
          <p>(in the case that  is prime and greater than ) for I =
optimisation. Before we get to that optimisation, we men- [0, . . . , 0] we have I = 1 and for Γ I = {Γ} we have</p>
        </sec>
        <sec id="sec-2-3-5">
          <title>A standard way to utilize the Theorem 1 is to choose</title>
          <p>we will be more specific here. For prime
 the cyclo- canonical representatives of orbits of Γ . Then one needs
1 dimensional linear space
to derive eficient ways of determining whether given
tomic field</p>
          <p>Q( ) is an  −
over Q. Instead of “the standard basis” 1, , . . . ,  − 2,</p>
        </sec>
        <sec id="sec-2-3-6">
          <title>GAP uses the basis ,</title>
          <p>2, . . . ,  − 1, that is, each element
of Q( ) is expressed as 1 + 2 2, . . . + − 1
 − 1 and
it is internally represented as vector [1, 2 . . . , − 1]. In</p>
        </sec>
        <sec id="sec-2-3-7">
          <title>GAP, it is possible to obtain this vector via the function</title>
        </sec>
        <sec id="sec-2-3-8">
          <title>CoeffsCyc. Let us note that any rational number  is</title>
          <p>represented by the vector [− , − , . . . , − ].</p>
        </sec>
        <sec id="sec-2-3-9">
          <title>Let us also note that this basis is invariant under the</title>
          <p>Galois group of Q( ) which consists of automorphisms
 , which map 1 ↦→</p>
          <p>1,  ↦→   and act on the roots
of unity as a permutation for all 1 ≤
that  1 is the identity map. With all the notation and
knowledge of this subsection, we are ready to state the
 &lt; . Note
next optimisation claim:
∑︀=−11    . Then
Lemma 5. Let [1, . . . , ] ∈ Z and let [1, . . . , ] =
− 1
∑︁
=1
− 1
=1
∑︁ [1, . . . , ] =
 ([1, . . . , ]) = −
− 1
∑︁ 
=1
(10)
vector I is the representative of its orbit as well as how
to compute I. One possible way to pick the canonical
representative is to choose those I’s, which are
lexicographically smallest as vectors. For this choice of
representatives, we have the following restrictions:
• A canonical representative has non-decreasing
elements, because of Lemma 3.
• Thanks to Lemma 4, the representative has sum
of its coeficients ≡</p>
          <p>0 (mod ).
• As a consequence of Theorem 1, the first non-zero
coordinate of a canonical representative is 1.</p>
        </sec>
        <sec id="sec-2-3-10">
          <title>However not all such vectors are representatives of</title>
          <p>their orbits and the algorithm needs to be able to
determine which is “the representative”. For example, if
 = [1, 2, 3, 4, 7] and  = 17 both [0, 1, 2, 3, 11] and
[0, 1, 9, 10, 14] belong to the same orbit of Γ .</p>
        </sec>
        <sec id="sec-2-3-11">
          <title>The pseudocode for this improved algorithm is in Algorithm 2. For full implementation details of this algorithm, see our Github repository [7].</title>
          <p>4.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Heuristic Counting with</title>
    </sec>
    <sec id="sec-4">
      <title>Backtracking and Probability</title>
      <p>algorithm to generate all -regular families on  elements.
In what follows, assume  = 5 is fixed and, since the
specific choice of  does not change the number of
regular families, let  = [5] = {1, 2, 3, 4, 5}. On top of
the set  contains precisely those permutations  ∈ S ,
such that (1) = . We remark that this makes all 
have equal size: |1| = . . . = |5| = (5 −
1)! = 24.</p>
      <sec id="sec-4-1">
        <title>Secondly, with this partition in place, we can see that</title>
        <p>-sized subsets  ⊆
any -regular family ℱ ⊆
contain each  precisely  times too.</p>
      </sec>
      <sec id="sec-4-2">
        <title>S must arise as a union of</title>
        <p>, such that all the other positions</p>
      </sec>
      <sec id="sec-4-3">
        <title>That is precisely what Kerák’s algorithm does - recur</title>
        <p>Proof. Let us note that for any [1, . . . , ] ∈</p>
        <p>Z we
have  (( 1 )1 · . . .· (  ) ) = ( 1 )1 · . . .· (  ) . Let us return to the work of Kerák [4] and his recursive
 . Because ∑︀− 1   = − 1, rear- that, partition the set S into five sets 1, . . . , 5, so that
=1
∑︀− 1 (︁ ∑︀=−11</p>
        <p>︁)
=1
{, . . . ,  − 1}. Therefore ∑︀−=11
ranging the last double-sum yields −</p>
      </sec>
      <sec id="sec-4-4">
        <title>Therefore, by (6),</title>
        <p>we have  ([1, . . . , ])
=
[1, . . . , ], which is the first claimed equation.</p>
      </sec>
      <sec id="sec-4-5">
        <title>As  is prime, Galois group of Q( ) acts regularly on</title>
        <p>([1, . . . , ]) =
∑︀=−11  .</p>
      </sec>
      <sec id="sec-4-6">
        <title>Previous lemmas describe how corresponding actions</title>
        <p>of S, Z, and Z* on the set Z modify evaluation of
(X). Combining these lemmas we obtain information
about the action of group Γ =
Z and its behaviour with the evaluations of (X).
S ×</p>
        <p>Z ×</p>
        <p>Z* on the set
Theorem 1. Let I
[1, . . . , ] = 1 + . . . + − 1
= [1, . . . , ] ∈
 − 1. Then there exists
a number I which depends only on (the conjugacy class
of) the stabilizer Γ I such that
∑︁ [1, . . . , ] = I(− 1 − . . . − − 1)
J∈IΓ</p>
      </sec>
      <sec id="sec-4-7">
        <title>The exact correspondence between I and Γ I is too</title>
        <p>complicated to present here. Let us just point out that
Z and let
sively trying out all subsets  ⊆
 of size , exiting
early if any position overflows , i.e., if any position has
 ⊆
more than  of any number  ∈ {1, 2, 3, 4, 5}. Once a
 has been found to not overflow any position
with any number, his algorithm proceeds recursing in a
(11) depth-first manner, until all possible combinations of
subsets of the ’s have been tested. After all these families
have been generated, counting them up is easy.</p>
      </sec>
      <sec id="sec-4-8">
        <title>This approach is correct and it generates everything, but the caveat here is that there are too many possibilities.</title>
        <p>Sum of all counts exactly
Scientific notation</p>
      </sec>
      <sec id="sec-4-9">
        <title>Algorithm 2 Multivariate bounding</title>
        <p>Input:</p>
        <p>Output: Upper bound for the size ⃒⃒  ⃒⃒
ℱ ⊆ S , its complement  = S ∖ ℱ is ( − 1)! − - are disivible by 5 constitute a trivial (and very excessive!)
regular. This means, that after 12, whatever the true bound for the total number of -regular families:
counts were in the first half will also be in the second
half, reflected about the column  = 12. Hence, the total ⃒⃒  ⃒⃒⃒ ≤ ︃( 120)︃+(︃ 120)︃+. . .+
number of -regular families that exist on 5 elements is ⃒ 0 5
then calculated as double of all the numbers, except for
the  = 12 case, that should be counted only once.
︃( 120)︃</p>
        <p>120 ≈ 2.658· 1035.</p>
      </sec>
      <sec id="sec-4-10">
        <title>The best bound the basic algorithm could</title>
        <p>produce before running out of memory was
10757440577219567348022770930 ≈ 1.076 · 1028.
5. Conclusion After that, we switched to the algorithm using the
multivariate generating function and we include a
In this paper, we described methods of both getting up- few of the output results in the table too. The lowest
per bounds for the number of -regular families on  upper bound we obtained at the time of writing is
elements as well as a method to get a heuristic estima- 4263880475370843510800356 ≈ 4.264· 1024. Coupled
tion of the true counts. We checked our work for  = 4 with the estimation heuristic makes us fairly confident
elements, where to get a fast enough version of the al- the upper bounds are approaching the true count.
gorithm 2, we did not need to use Theorem 1, so  did Let us also contrast our method to the naive approach
not need to be prime, just coprime to . The bounds here of “test every subset of S5 and check -regularity”. We
quickly converge to the true count of 1200 (see Table 3) know there are 2120 subsets of S5 and let us say we
and the estimation heuristic also gets really close to this could check 230 of them in a second (this is approaching
number (see the discussion in Section 4). roughly the clock speed of a modern computer and is</p>
        <p>For the case  = 5, one can immediately see that an probably a vast exaggeration of the machine’s
capabili-regular family has size divisible by 5. Therefore, the ties) - this approach would thus take 290 seconds, roughly
number of subsets of a set with 120 elements, whose sizes 3 · 109 ages of the universe.</p>
        <p>On the other hand, for reasons not mentioned in this 0019 grant.
paper, choosing  = {1, 25, 625, 15625, 390625} is The second author acknowledges support from the
suficient to get the precise value of ⃒⃒  ⃒⃒ . Here,  = APVV Research Grant APVV-19-0308 and from the VEGA
406901, and the algorithm evaluates roughly (in fact Research Grants 1/0423/20, 1/0727/22 and 1/0437/23.
less than) 3 points of the multinomial , which means
roughly 6.737 · 1016 evaluations. Pesimistically, let us
say that one  evaluation takes a minute, which would References
isstil9l.3“oanglyestaokfet”haebuonuitve1r2s8e,. 1A77ll, 2th3a9t, i7s5t1oyseaayrst,hwathtihche [1] tRo. mJaojcrpayh,isGm. sA,
.EJuornoepse,an-rJeoguurlnaarlfoafmCiolimesboinfagtroarpichsa7u9competition is not even close.</p>
        <p>However, the  = 6 case is tricky. For one, because the (2019) 97–110. doi:https://doi.org/10.1016/
upper bounding algorithm has time complexity (− 1), j.ejc.2018.12.002.
raising  increases the runtime drastically. To get a mean- [2] G. Gauyacq, On quasi-cayley graphs, Discrete
Apingful bound, one will probably need to substantially im- plied Mathematics 77 (1997) 43–58. doi:https://
itbpnoirgoot,hvweee.iglptl.hrn(︀oiso1b2taa0wlb)︀gioloirrskittichtomboawfcukertltrlha,cbekre.icnTaguhsteeheetshmteismbelravatenioscnhgeiantlggwofaarycitthtoomros [3] fsdGüeo.mriSMaa.bnoaitrtdihcgues/scms1hia0,ot.Vliak1err0.6ot18erx6g(-/1/tC9Sr6oa04nr1p)s6iu4t62sivI-6De–2:4g113r82a80Xp.3(hU59s9R,78L)M1:00ho.0tn0tap9tss8:h/-/eaXfpt.ei.
60 ≈ 9.661 · 1034. [4] F. Kerák, -regular sets of permutations, Bachelor’s
thesis, Comenius University, Bratislava, 2020.</p>
        <p>Acknowledgments [5] H. Wilf, generatingfunctionology: Third Edition,
CRC Press, 2005. URL: https://books.google.sk/
The first author acknowledges Funding by the EU books?id=bVFuBwAAQBAJ.</p>
        <p>NextGenerationEU through the Recovery and Resilience [6] The GAP Group, GAP – Groups,
AlgoPlan for Slovakia under the project No. 09I03-03-V02- rithms, and Programming, Version 4.12.2,
00036. The first author also acknowledges support from https://www.gap-system.org, 2022.
the Grant of Comenius University No. UK/1114/2024. [7] P. Kollar, R-RegularFamilies, https://github.com/
Thirdly, the first author acknowledges support from the OldAnchovyTopping/R-RegularFamilies, 2024.
Acgrants VEGA Research Grant 1/0437/23 and SK-AT-23- cessed: 2024-06-30.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list />
  </back>
</article>