On the Enumeration of the Set of Numerical Semigroups with Fixed Frobenius Number
Total Page:16
File Type:pdf, Size:1020Kb
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Computers and Mathematics with Applications 63 (2012) 1204–1211 Contents lists available at SciVerse ScienceDirect Computers and Mathematics with Applications journal homepage: www.elsevier.com/locate/camwa On the enumeration of the set of numerical semigroups with fixed Frobenius number V. Blanco a,∗, J.C. Rosales b a Department of Quantitative Methods for Economics & Business, Universidad de Granada, E-18011 Granada, Spain b Department of Algebra, Universidad de Granada, E-18071 Granada, Spain article info a b s t r a c t Article history: In this paper, we present an efficient algorithm to compute the whole set of numerical Received 19 August 2011 semigroups with a given Frobenius number F. The methodology is based on the Received in revised form 12 December 2011 construction of a partition of that set by a congruence relation. It is proven that each Accepted 12 December 2011 class in the partition contains exactly one irreducible and one homogeneous numerical semigroup, and from those two elements the whole class can be reconstructed. An Keywords: alternative encoding of a numerical semigroup, its Kunz-coordinates vector, is used to Numerical semigroup propose a simple methodology to enumerate the desired set by manipulating a lattice Genus Frobenius number polytope of 0–1 vectors and solving certain integer programming problems over it. Partitions of sets ' 2011 Elsevier Ltd. All rights reserved. Kunz-coordinates vectors Algorithms 1. Introduction Let N be the set of nonnegative integer numbers. A numerical semigroup is a subset S of N closed under addition, containing zero and such that N n S is finite. The largest integer not belonging to S is called the Frobenius number of S and we denote it by F.S/. The cardinal of its set of gaps, G.S/ D N n S, is usually called the genus of S and it is denoted by g.S/. If A is a nonempty subset in N, we denote by hAi the submonoid of .N; C/ generated by A, that is hAi D fλ1a1 C· · ·Cλnan V n 2 N n f0g; a1;:::; an 2 A, and λ1; : : : ; λn 2 Ng. It is well-known (see for instance [1]) that hAi is a numerical semigroup if and only if gcd.A/ D 1. If S is a numerical semigroup and S D hAi, then we say that A is a system of generators of S. If there does not exist any other proper subset of A generating S, we say that A is a minimal system of generators of S. Every numerical semigroup admits a unique minimal system of generators and such a system is finite. If S is a numerical semigroup, the elements in a minimal system of generators of S are called minimal generators of S. The Frobenius number of a numerical semigroup has been widely studied in the literature (see [2–5] among many others) and determining a formula for this number when a system of generators of the semigroup is given is a classical problem in number theory that has been tackled by researchers from different areas such as algebra, computer science or operational research [5]. However, although a simple formula is known for the Frobenius number of a numerical semigroup generated by two nonnegative integers [6], no formulas are possible when the number of generators is greater than two (see [5]). Furthermore, in this case the problem of computing the Frobenius number of a general numerical semigroup becomes NP-hard. In this paper we address the problem of enumerating all the numerical semigroups with a given Frobenius number (which is a finite set) which helps us understanding the behavior of these numbers. Let F be a positive integer and S.F/ the set of ∗ Corresponding author. Tel.: +34 958249637. E-mail addresses: [email protected] (V. Blanco), [email protected] (J.C. Rosales). 0898-1221/$ – see front matter ' 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.camwa.2011.12.034 V. Blanco, J.C. Rosales / Computers and Mathematics with Applications 63 (2012) 1204–1211 1205 all the numerical semigroups with Frobenius number F. The main goal of this paper is to provide an efficient procedure to enumerate all the elements in S.F/. The current algorithm implemented in GAP [7] is based on [8], but the construction of the set S.F/ presented there is hard and also with a high complexity. For the sake of presenting our algorithm, we first analyze the algebraic structure of the set S.F/. It is not difficult to see that .S.F/; \/ is a semilattice, that is, a commutative semigroup such that all its elements are S.F/ D fT UV idempotent. In Section2 we define a congruence relation R over S.F/ verifying that the quotient semilattice R S S 2 S.F/g is a partition of S.F/ into sets which are closed under unions and intersections and that have maximum and minimum (with respect to the inclusion ordering). At each of the classes we identify two semigroups with a special structure and that will play an important role in our development: irreducible and homogeneous numerical semigroups. A numerical semigroup is irreducible if it cannot be expressed as an intersection of two numerical semigroups containing it properly. This notion was introduced in [9] where it is also proven, from [10,11], that the family of irreducible numerical semigroups is the union of two families of numerical semigroups that have been widely studied and that have special importance in this theory: symmetric and pseudo-symmetric numerical semigroups. We denote by I.F/ the set of S.F/ irreducible numerical semigroups with Frobenius number F. In Section3 we see that each class in R contains a unique irreducible numerical semigroup which is the maximum of that class. On the other hand, we say that a numerical semigroup S is homogeneous if its minimal generators do not belong to the U F.S/ T open interval 2 ; F.S/ . We denote by H.F/ the set of homogeneous numerical semigroups with Frobenius number F. In S.F/ Section3 we see that each class in R contains a unique homogeneous numerical semigroup which is the minimum of that S.F/ class. As a consequence we have that the sets R ; I.F/ and H.F/ have the same cardinal. D S T U As a consequence of these results we get that S.F/ S2I.F/ S . Therefore, to compute all the elements in S.F/ it is enough to compute the elements in I.F/ and for each S 2 I.F/, compute TSU. In a recent paper [12], the authors addressed the problem of providing an efficient procedure to compute I.F/. In Section4 we center on describing an algorithm that allows us to compute TSU when S 2 I.F/ is given. Finally, in Section5 we translate the results in the other sections in terms of the Kunz-coordinates vectors with respect to F C1 to provide an efficient algorithm to compute TSU, and thus S.F/. The Kunz-coordinates vector of a numerical semigroup is a different but equivalent encoding of the semigroup in terms of 0–1 vector with as many components as its Frobenius number and its construction is based on the notion of Apéry set which is a widely used tool for making computations over numerical semigroups. The use of the Kunz-coordinates vectors leads us to an efficient algorithm to compute S.F/ by manipulating 0–1 vectors F in N . As a part of the computations in this algorithm, an integer programming problem is solved, so it gives us a new application of mathematical programming tools for solving problems that arise in commutative algebra. 2. A partition of S.F/ In this section we describe a partition of the elements in S.F/, for some positive integer F, based on the congruence induced by a semigroup homomorphism. It leads us to a simple methodology to enumerate the elements in S.F/ by analyzing each of the congruence classes that define the partition. Throughout this paper, the power set is denoted by P .X/ D fA V A ⊆ Xg, for any set X. For integers a and b, we say that a divides b if there exists an integer c such that b D ca, and we denote this by ajb. Otherwise, a does not divide b, and we denote this by a - b. D f 2 n f g V F g \ Let F be a positive integer, we denote by N.F/ n N 0 n < 2 and n - F . It is clear that .P .N.F//; / is a semilattice. V −! VD f 2 n f g V F g Lemma 1. Let F be a positive integer, then the correspondence θ S.F/ P .N.F// defined as θ.S/ s S 0 s < 2 is a semigroup homomorphism. f 2 n f g V F g ⊆ j Proof. Let us see first that θ is an application. We need to prove that s S 0 s < 2 N.F/. It is clear since if s F, then F 2 S which is not possible. To conclude the proof, the reader can easily check that for S1; S2 2 S.F/; θ.S1 \ S2/ D θ.S1/ \ θ.S2/. Let R be the kernel congruence associated to θ (SRS0 if θ.S/ D θ.S0/). For S 2 S.F/ we denote by TSU D fS0 2 S.F/ V SRS0g.