arXiv:1709.01606v1 [] 5 Sep 2017

Factoring in the Chicken McNugget monoid1
Scott T. Chapman
Sam Houston State University
Department of Mathematics and Statistics
Box 2206
Huntsville, TX 77341-2206
scott.chapman@shsu.edu

Chris O’Neill
University of California at Davis
Department of Mathematics
One Shield Ave.
Davis, CA 95616
coneill@math.ucdavis.edu

People just want more of it. - Ray Kroc 2

1

Introduction

Every day, 34 million Chicken McNuggets are sold worldwide.3 At most
McDonalds locations in the United States today, Chicken McNuggets are
sold in packs of 4, 6, 10, 20, 40, and 50 pieces. However, shortly after their
introduction in 1979 they were sold in packs of 6, 9, and 20. The following
problem spawned from the use of these latter three numbers.
The Chicken McNugget Problem. What numbers of Chicken McNuggets
can be ordered using only packs with 6, 9, or 20 pieces?
1

This article is based on a 2013 PURE Mathematics REU Project by Emelie Curl,
Staci Gleen, and Katrina Quinata which was directed by the authors and Roberto Pelayo.
2
https://www.brainyquote.com/quotes/authors/r/ray_kroc.html
3
http://www.answers.com/Q/How_many_nuggets_does_mcdonalds_sell_a_day?

1

Early references to this problem can be
found in [26, 30]. Positive integers satisfying the Chicken McNugget Problem are
now known as McNugget numbers [22]. In
particular, if n is a McNugget number, then
there is an ordered triple (a, b, c) of nonnegative integers such that
6a + 9b + 20c = n.

(1)

We will call (a, b, c) a McNugget expansion
Figure 1: The 6 piece box
of n (again see [22]). Since both (3, 0, 0) and
(0, 2, 0) are McNugget expansions of 18, it is clear that McNugget expansions
are not unique. This phenomenon will be the central focus of the remainder
of this article.
If max{a, b, c} ≥ 8 in (1), then n ≥ 48 and hence determining the numbers x with 0 ≤ x ≤ 48 which are McNugget numbers can be checked either
by hand or your favorite computer algebra system. The only such x’s which
are not McNugget numbers are: 1, 2, 3, 4, 5, 7, 8, 10, 11, 13, 14, 16, 17, 19,
22, 23, 25, 28, 31, 34, 37, and 43. (The non-McNugget numbers are sequence
A065003 in the On-Line Encyclopedia of Integer Sequences4 .) We demonstrate this in Table 1 with a chart that offers the McNugget expansions
(when they exist) of all numbers ≤ 50.
What happens with larger values? Table 1 has already verified that 44,
45, 46, 47, 48, and 49 are McNugget numbers. Hence, we have a sequence
of 6 consecutive McNugget numbers, and by repeatedly adding 6 to these
values, we obtain the following.
Proposition 1.1. Any x > 43 is a McNugget number.
Thus, 43 is the largest number of McNuggets that cannot be ordered with
packs of 6, 9, and 20.
Our aim in this paper is to consider issues related to the multiple occurances of McNugget expansions as seen in Table 1. Such investigations fall
4

http://oeis.org/A065003.

2

#
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

(a, b, c)
(0, 0, 0)
NONE
NONE
NONE
NONE
NONE
(1, 0, 0)
NONE
NONE
(0, 1, 0)
NONE
NONE
(2, 0, 0)
NONE
NONE
(1, 1, 0)
NONE

#
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

(a, b, c)
NONE
(3, 0, 0) (0, 2, 0)
NONE
(0, 0, 1)
(2, 1, 0)
NONE
NONE
(4, 0, 0) (1, 2, 0)
NONE
(1, 0, 1)
(0, 3, 0) (3, 1, 0)
NONE
(0, 1, 1)
(5, 0, 0) (2, 2, 0)
NONE
(2, 0, 1)
(1, 3, 0) (4, 1, 0)

#
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

(a, b, c)
NONE
(1, 1, 1)
(0, 4, 0) (3, 2, 0) (6, 0, 0)
NONE
(0, 2, 1) (3, 0, 1)
(2, 3, 0) (5, 1, 0)
(0, 0, 2)
(2, 1, 1)
(1, 4, 0) (4, 2, 0) (7, 0, 0)
NONE
(1, 2, 1) (4, 0, 1)
(0, 5, 0) (3, 3, 0) (6, 1, 0)
(1, 0, 2)
(0, 3, 1) (3, 1, 1)
(2, 4, 0) (5, 2, 0) (8, 0, 0)
(0, 1, 2)
(2, 2, 1) (5, 0, 1)

Table 1: The McNugget numbers and their expansions from 0 to 50
under the more general purview of the theory of non-unique factorizations
in integral domains and monoids (a good technical reference on this subject
is [20]). Using a general context, we show in Section 2 that the McNugget
numbers form an additive monoid and discuss some properites shared by
the class of additive submonoids of the nonnegative integers. In Section 3,
we define the particular combinatorial characteristics of McNugget expansions which we will consider. Computations of these characteristics for the
McNugget Monoid will appear in Section 4.
By emphasizing results concerning McNugget numbers, we offer the
reader a glimpse into vast literature surrounding non-unque factorizations.
While we stick to the calculation of basic factorization invariants, our results
indicate that such computations involve a fair amount of complexity. Many
of the results we touch on have appeared in papers authored or co-authored

3

by undergraduates in National Science Foundation Sponsored REU Programs. This is an area which remains rich in open problems, and we hope
our discussion here spurs our readers (both young and old) to explore this
rewarding subject more deeply.

2

A brief diversion into generality

As illustrated above, Chicken McNugget numbers fit into a long studied
mathematical concept. Whether called the Postage Stamp Problem [25],
the Coin Problem [15], or the Knapsack Problem [21], the idea is as follows.
Given a set of k objects with predetermined values n1 , n2 , . . . , nk , what
possible values of n can be had from combinations of these objects? Thus, if
a value of n can be obtained, then there is an ordered k-tuple of nonnegative
integers (x1 , . . . , xk ) which satisfy the linear diophatine equation
n = x1 n1 + x2 n2 + · · · + xk nk .

(2)

We view this in a more algebraic manner. Given integers n1 , . . . , nk > 0, set
hn1 , . . . , nk i = {x1 n1 + · · · + xk nk | x1 , . . . , xk ∈ N0 }.
Notice that if s1 and s2 are in hn1 , . . . , nk i, then s1 +s2 is also in hn1 , . . . , nk i
(where + represents regular addition). Since 0 ∈ hn1 , . . . , nk i and + is an
associative operation, the set hn1 , . . . , nk i under + forms a monoid. Monoids
of nonnegative integers under addition, like the one above, are known as
numerical monoids, and n1 , . . . , nk are called generators. We will call the
numerical monoid h6, 9, 20i the Chicken McNugget monoid, and denote it
by .
Since
consists of the same elements as h6, 9, 20, 27i, it is clear that
generating sets are not unique. Using elementary number theory, it is easy
to argue that any numerical monoid hn1 , . . . , nk i does have a unique generating set with minimal cardinality, obtained by eliminating those generators
ni that lie in the numerical monoid generated by {n1 , . . . , nk } − {ni }. In
this way, it is clear that 6, 9, 20 is indeed the minimal generating set of .

4

When dealing with a general numerical monoid hn1 , . . . , nk i, we will assume
without loss of generality that given generating set n1 , . . . , nk is minimal.
In view of this broader setting, the Chicken McNugget Problem can be
generalized as follows.
The Numerical Monoid Problem. If n1 , . . . , nk are positive integers,
then which nonnegative integers lie in hn1 , . . . , nk i?
Example 2.1. We have already determined above exactly which nonnegative integers are McNugget numbers. Suppose the Post Office issues stamps
in denominations of 4 cents, 7 cents, and 10 cents. What values of postage
can be placed on a letter (assuming that as many stamps as necessary can
be placed on the envelope)? In particular, we are looking for the elements
of h4, 7, 10i. We can again use brute force to find all the solutions to
4a + 7b + 10c = n
and conclude that 1, 2, 3, 5, 6, 9, and 13 cannot be obtained. Since 14, 15,
16, and 17 can, all postage values larger than 13 are possible.
2

Figure 2: The 9 piece box

Let’s return to the largest number of
McNuggets that can’t be ordered (namely,
43) and the companion number 13 obtained
in Example 2.1. The existence of these
numbers is no accident. To see this in general, let n1 , . . . , nk be a set of positive integers which are relatively prime. By elementary number theory, there is a set y1 , . . . , yk
of (possibly negative) integers such that
1 = y1 n 1 + · · · + yk n k .

By choosing an element V = x1 n1 +· · ·+xk nk ∈ hn1 , . . . , nk i with sufficiently
large coefficients (for instance, if each xi ≥ n1 |yi |), we see V + 1, . . . , V + n1
all lie in hn1 , . . . , nk i as well. As such, any integers greater than V can be
obtained in hn1 , . . . , nk i by adding copies of n1 .
This motivates the following definition.
5

Definition 2.2. If n1 , . . . , nk are relatively prime positive integers, then
the Frobenius number of hn1 , . . . , nk i, denoted F (hn1 , . . . , nk i), is the largest
positive integer n such that n ∈
/ hn1 , . . . , nk i.
We have already shown that F ( ) = 43
and F (h4, 7, 10i) = 13. A famous result
of Sylvester from 1884 [29] states that if a
and b are relatively prime, then F (ha, bi) =
ab − a − b (a nice proof of this can be
found in [6]). This is where the fun begins, as strictly speaking no formula exists to compute the Frobenius number of
numerical monoids that require 3 or more
generators. While there are fast algorithms
Figure 3: The 20 piece box
which can compute F (hn1 , n2 , n3 i) (see for
instance [17]), at best formulas for F (hn1 , . . . , nk i) exist only in special cases
(you can find one such special case where F ( ) = 43 pops out in [1, p. 14]).
Our purpose is not to compile or expand upon the vast literature behind the
Frobenius number; in fact, we direct the reader to the excellent monograph
of Ramı́rez Alfonsı́n [27] for more background reading on the Diophatine
Frobenius Problem.

3

The McNugget factorization toolkit

We focus now on the multiple McNugget expansions we saw in Table 1.
In particular, notice that there are McNugget numbers which have unique
triples associated to them (6, 9, 12, 15, 20, 21, 26, 29, 32, 35, 40, 41, 46, and
49), some of which have two (18, 24, 27, 30, 33, 35, 39, 44, 47, and 50), and
even some which have three (36, 42, 45, and 48). While the “normal” notion
of factoring occurs in systems where multiplication prevails, notice that the
ordered triples representing McNugget numbers are actually factorizations
of these numbers into “additive” factors of 6, 9, and 20.
Let’s borrow some terminology from abstract algebra ([18] is a good
beginning reference on the topic). Let x and y ∈ hn1 , . . . , nk i. We say
6

that x divides y in hn1 , . . . , nk i if there exists a z ∈ hn1 , . . . , nk i such that
y = x+z. We call a nonzero element x ∈ hn1 , . . . , nk i irreducible if whenever
x = y + z, either y = 0 or z = 0. (Hence, x is irreducible if its only proper
divisors are 0 and itself). Both of these definitions are obtained from the
usual “multiplicative” definition by replacing “·” with “+” and 1 with 0.
We leave the proof of the following to the reader.
Proposition 3.1. If hn1 , . . . , nk i is a numerical monoid, then its irreducible
elements are precisely n1 , . . . , nk .
Related to irreducibility is the notion of prime elements. A nonzero
element x ∈ hn1 , . . . , nk i is prime if whenever x divides a sum y + z, then
either x divides y or x divides z (this definition is again borrowed from the
multiplicative setting). It is easy to check from the definitions that prime
elements are always irreducible, but it turns out that in general irreducible
elements need not be prime. In fact, the irreducible elements n1 , . . . , nk
of a numerical monoid are never prime. To see this, let ni be an irreducible
element and let T be the numerical monoid generated by {n1 , . . . , nk }−{ni }.
Although ni ∈
/ T , some multiple of ni must lie in T (take, for instance, n2 ni ).
P
Let kn = j6=i xj nj (for some k > 1) be the smallest multiple of ni in T .
P
Then n divides
j6=i xj nj over hn1 , . . . , nk i, but by the minimality of k,
n does not divide any proper subsum. Thus ni is not prime.
For our purposes, we restate Proposition 3.1 in terms of .
Corollary 3.2. The irreducible elements of the McNugget monoid are 6, 9,
and 20. There are no prime elements.

3.1

The set of factorizations of an element

We refer once again to the elements in Table 1 with multiple irreducible
factorizations. For each x ∈ , let
Z(x) = {(a, b, c) | 6a + 9b + 20c = x}.
We will refer to Z(x) as the complete set of factorizations x in , and as
such, we could relabel columns 2, 4, and 6 of Table 1 as “Z(x).” While we
7

will not dwell on general structure problems involving Z(x), we do briefly
address one in the next example.
Example 3.3. What elements x in the McNugget monoid are uniquely
factorable (i.e., |Z(x)| = 1)? A quick glance at Table 1 yields 14 such
nonzero elements (namely, 6, 9, 12, 15, 20, 21, 26, 29, 32, 35, 40, 41, 46, 49).
Are there others? We begin by noting in Table 1 that
(3, 0, 0), (0, 2, 0) ∈ Z(18)

and

(10, 0, 0), (0, 0, 3) ∈ Z(60).

This implies that in any factorization in , 3 copies of 6 can be freely replaced
with 2 copies of 9 (this is called a trade). Similarly, 2 copies of 9 can be
traded for 3 copies of 6, and 3 copies of 20 can be traded for 10 copies of 6.
In particular, for n = 6a + 9b + 20c ∈ , if either a ≥ 3, b ≥ 2 or c ≥ 3,
then n has more than one factorization in . As such, if n is to have unique
factorization, then 0 ≤ a ≤ 2, 0 ≤ b ≤ 1, and 0 ≤ c ≤ 2. This leaves
18 possibilities, and a quick check yields that the 3 missing elements are
52 = (2, 0, 2), 55 = (1, 1, 2) and 61 = (2, 1, 2).
2.
The argument in Example 3.3 easily generalizes – every numerical monoid
which requires more than one generator has finitely many elements that factor uniquely – but note that minimal trades need not be as simple as replacing a multiple of one generator with a multiple of another. Indeed, in the
numerical monoid h5, 7, 9, 11i, there is a trade (1, 0, 0, 1), (0, 1, 1, 0) ∈ Z(16),
though 16 is not a multiple of any generator. Determining the “minimal”
trades of a numerical monoid, even computationally, is known to be a very
hard problem in general [28].

3.2

The length set of an element and related invariants

Extracting information from the factorizations of numerical monoid elements
(or even simply writing them all down) can be a tall order. To this end,
combinatorially-flavored factorization invariants are often used, assigning
to each element (or to the monoid as a whole) a value measuring its failure
to admit unique factorization. We devote the remainder of this paper to
examining several factorization invariants, and what they tell us about the
McNugget monoid as compared to more general numerical monoids.
8

We begin by considering a set, derived from the set of factorizations,
that has been the focus of many papers in the mathematical literature over
the past 30 years. If x ∈
and (a, b, c) ∈ Z(x), then the length of the
factorization (a, b, c) is denoted by
|(a, b, c)| = a + b + c.
We have shown earlier that factorizations in may not be unique, and a
quick look at Table 1 shows that their lengths can also differ. For instance,
42 has three different factorizations, with lengths 5, 6 and 7, respectively.
Thus, we denote the set of lengths of x in by
L(x) = {|(a, b, c)| : (a, b, c) ∈ Z(x)}.
In particular, L(42) = {5, 6, 7}. Moreover, set
`(x) = min L(x)

and

L(x) = max L(x).

(In our setting, it is easy to argue that L(x) must be finite, so the maximum
and minimum above are both well-defined.) To give the reader a feel for
these invariants, in Table 2 we list all the McNugget numbers from 1 to 50
and their associated values L(x), `(x), and L(x).
The following recent result describes the functions L(x) and `(x) for
elements x ∈ hn1 , . . . , nk i that are sufficiently large with respect to the
generators. Intuitively, Theorem 3.4 says that for “most” elements x, any
factorization with maximal length is almost entirely comprised of n1 , so
L(x + n1 ) is obtained by taking a maximum length factorization for x and
adding one additional copy of n1 . In general, the “sufficiently large” hypothesis is needed, since, for example, both 41 = 2 · 9 + 1 · 23 and 50 = 5 · 10
are maximum length factorizations in the numerical monoid h9, 10, 23i.
Theorem 3.4 ([4, Theorems 4.2 and 4.3]). Suppose hn1 , . . . , nk i is a numerical monoid. If x > n1 nk , then
L(x + n1 ) = L(x) + 1,
and if x > nk−1 nk , then
`(x + nk ) = `(x) + 1.
9

x
0
6
9
12
15
18
20
21
24
26

L(x) `(x) L(x)
{0}
0
0
{1}
1
1
{1}
1
1
{2}
2
2
{2}
2
2
{2, 3}
2
3
{1}
1
1
{3}
3
3
{3, 4}
3
4
{2}
2
2

x
27
29
30
32
33
35
36
38
39
40

L(x)
{3, 4}
{2}
{4, 5}
{3}
{4, 5}
{3}
{4, 5, 6}
{3, 4}
{5, 6}
{2}

`(x) L(x)
3
4
2
2
4
5
3
3
4
5
3
3
4
6
3
4
5
6
2
2

x
L(x)
41
{4}
42 {5, 6, 7}
44 {4, 5}
45 {5, 6, 7}
46
{3}
47 {4, 5}
48 {6, 7, 8}
49
{3}
50 {5, 6}

`(x) L(x)
4
4
5
7
4
5
5
7
3
3
4
5
6
8
3
3
5
6

Table 2: The McNugget numbers from 0 to 50 with L(x), `(x), and L(x)
We will return to this result in Section 4.1, where we give a closed formula
for L(x) and `(x) that holds for all x ∈ .
Given our definitions to this point, we can now mention perhaps the
most heavily studied invariant in the theory of non-unique factorizations.
For x ∈ hn1 , . . . , nk i, the ratio
ρ(x) =

L(x)
,
`(x)

is called the elasticity of x, and
ρ(hn1 , . . . , nk i) = sup{ρ(x) | x ∈ hn1 , . . . , nk i}
is the elasticity of hn1 , . . . , nk i. The elasticity of an element n ∈ hn1 , . . . , nk i
measures how “spread out” its factorization lengths are; the larger ρ(n) is,
the more spread out L(n) is. To this end, the elasticity ρ(hn1 , . . . , nk i)
encodes the highest such “spread” throughout the entire monoid. For example, if ρ(hn1 , . . . , nk i) = 2, then the maximum factorization length of any
element n ∈ hn1 , . . . , nk i is at most twice its minimum factorization length.
A formula for the elasticity of a general numerical monoid, given below,
was given in [10], and was the result of an undergraduate research project.
10

3
2.5
2
1.5
1
0.5
100

200

300

400

Figure 4: A plot depicting the elasticity function ρ(n) for n ∈ .
Theorem 3.5 ([10], Theorem 2.1 and Corollary 2.3). The elasticity of the
numerical monoid hn1 , . . . , nk i is
ρ(hn1 , . . . , nk i) =

nk
.
n1

Moreover, ρ(n) = nnk1 precisely when n is an integer multiple of the least
common multiple of n1 and nk , and for any rational r < nnk1 , there are only
finitely many elements x ∈ hn1 , . . . , nk i with ρ(x) ≤ r.
The significance of the final statement in Theorem 3.5 is that there are
rationals 1 ≤ q ≤ nnk1 which do not lie in the set {ρ(x) | x ∈ hn1 , . . . , nk i}
and hence {ρ(x) | x ∈ hn1 , . . . , nk i} ( Q ∩ [1, nnk1 ] (to use terminology from
the literature, numerical monoids are not fully elastic). Figure 4 depicts
the elasticities of elements of up to n = 400; indeed, as n increases, the
elasticity ρ(n) appears to converge to 10
3 = ρ( ). In general, the complete
image {ρ(x) | x ∈ hn1 , . . . , nk i} has been determined by Barron, O’Neill, and
Pelayo in another student co-authored paper [4, Corollary 4.5]; we direct the
reader there for a thorough mathematical description of Figure 4.
We close our discussion of elasticity with the following.

11

Corollary 3.6. The elasticity of the McNugget monoid is
ρ( ) =

10
.
3

While a popular invariant to study, the elasticity only tells us about the
largest and smallest elements of L(x). Looking at Table 2, it appears that
the length sets of the first few McNugget numbers are uniformly constructed
(each is of the form [a, b] ∩ N for positive integers a and b). One need not
look too much further to break this pattern; the element 60 ∈ has
Z(60) = {(0, 0, 3), (1, 6, 0), (4, 4, 0), (7, 2, 0), (10, 0, 0)}
and thus
L(60) = {3, 7, 8, 9, 10}.
This behavior motivates the following “finer” factorization invariant. Fix
x ∈ hn1 , . . . , nk i, and let L(x) = {m1 , . . . , mt } with m1 < m2 < · · · < mt .
Define the delta set of x as
∆(x) = {mi − mi−1 | 2 ≤ i ≤ t},
and the delta set of hn1 , . . . , nk i as
∆(hn1 , . . . , nk i) =

[

∆(x).

x∈hn1 ,...,nk i

The study of the Delta sets of numerical monoids (and more generally, of
cancellative commutative monoids) has been an extremely popular topic;
many such papers feature results from REU programs (see, for instance,
[7, 8, 9, 11, 12, 14]).
From Table 1 we see that the McNugget numbers from 1 to 50 all have
Delta set ∅ or {1}, and we have further showed that ∆(60) = {1, 4}. What
is the Delta set of and moreover, what possible subsets of this set occur as
∆(x) for some x ∈ ? We will address those questions is Section 4.2, with
the help of a result from [11], stated below as Theorem 3.7.
One of the primary difficulties in determining the set ∆(hn1 , . . . , nk i) is
that even though each element’s delta set ∆(x) is finite, the definition of
12

∆(hn1 , . . . , nk i) involves the union of infinitely many such sets. The key
turns out to be a description of the sequence {∆(x)}x∈hn1 ,...,nk i for large x
(note that this is a sequence of sets, not integers). Baginski conjectured
during the writing of [7] that this sequence is eventually periodic, and three
years later this was settled in the affirmative, again in an REU project.
Theorem 3.7 ([11, Theorem 1 and Corollary 3]). For x ∈ hn1 , . . . , nk i,
∆(x) = ∆(x + n1 nk )
whenever x > 2kn2 n2k . In particular,
∆(hn1 , . . . , nk i) =

[

∆(x)

x∈D

where D = {x ∈ hn1 , . . . , nk i | x ≤ 2kn2 n2k + n1 nk } is a finite set.
Thus ∆(hn1 , . . . , nk i) can be computed in finite time. The bound given
in Theorem 3.7 is far from optimal; it is drastically improved in [19], albeit
with a much less concise formula. For convenience, we will use the bound
given above in our computation of ∆( ) in Section 4.2.

3.3

Beyond the length set

We remarked earlier that no element of a numerical monoid is prime. Let’s
consider this more closely in . For instance, since 6 is not prime, there is
a sum x + y in such that 6 divides x + y, but 6 does not divide x nor
does 6 divide y (take, for instance, x = y = 9). But note that 6 satisfies the
following slightly weaker property. Suppose that 6 divides a sum x1 +· · ·+xt
where t > 3. Then there is a subsum of at most 3 of the xi ’s that 6 does
divide. To see this, notice that if 6 divides any of the xi ’s, then we are
done. So suppose it does not. If 9 divides both xi and xj , then 6 divides
xi + xj since 6 divides 9 + 9. If no two xi ’s are divisible by 9, then at least 3
xi ’s are divisible by 20, and nearly identical reasoning to the previous case
completes the argument. This value of 3 offers some measure as to how far
6 is from being prime, and motivates the following definition.

13

Definition 3.8. Let hn1 , . . . , nk i be a numerical monoid. For any nonzero
x ∈ hn1 , . . . , nk i, define ω(x) = m if m is the smallest positive integer such
that whenever x divides x1 + · · · + xt , with xi ∈ hn1 , . . . , nk i, then there is
P
a set T ⊂ {1, 2, . . . , t} of indices with |T | ≤ m such that x divides i∈T xi .
Using Definition 3.8, a prime element would have ω-value 1, so ω(x) can
be interpreted as a measure of how far x is from being prime. In , we
argued that ω(6) = 3; a similar argument yields ω(9) = 3 and ω(20) = 10.
Notice that the computation of ω(x) is dependent more on Z(x) than L(x),
and hence encodes much different information than either ρ(x) or ∆(x).
Let us more closely examine the argument that ω(6) = 3. The key is that
6 divides 9 + 9 and 20 + 20 + 20, but does not divide any subsum of either.
Indeed, the latter of these expressions yields a lower bound of ω(6) ≥ 3,
and the given argument implies that equality holds. With this in mind, we
give the following equivalent form of Definition 3.8, which often simplifies
computation of ω(x).
Theorem 3.9 ([24, Proposition 2.10]). Suppose hn1 , . . . , nk i is a numerical
monoid and x ∈ hn1 , . . . , nk i. The following conditions are equivalent.
(a) ω(x) = m.
(b) m is the maximum length of a sum x1 + · · · + xt of irreducible elements
in hn1 , . . . , nk i with the property that (i) x divides x1 + · · · + xt , and
(ii) x does not divide x1 + · · · + xj−1 + xj+1 + · · · + xt for 1 ≤ j ≤ t.
The sum x1 + · · · + xt alluded to in part (b) above is called a bullet for x.
Hence, 20 + 20 + 20 is a bullet for 6 in , and moreover has maximal length.
The benefit of Theorem 3.9 is twofold: (i) each x ∈ hn1 , . . . , nk i has only
finitely many bullets, and (ii) the list of bullets can be computed in a similar
fashion to the set Z(x) of factorizations. We refer the reader to [3, 5], both of
which give explicit algorithms (again resulting from undergraduate research
projects) for computing ω-values.
Our goal is to completely describe the behavior of the ω-function of the
McNugget Monoid. We do so in Section 4.3, using the following result,
which is clearly similar in spirit to Theorems 3.4 and 3.7.
14

Theorem 3.10 ([23, Theorem 3.6]). For x ∈ hn1 , . . . , nk i sufficiently large,
ω(x + n1 ) = ω(x) + 1.
In particular, this holds for
x>

F + n2
n2 /n1 − 1

where F = F (hn1 , . . . , nk i) is the Frobenius number.
The similarity between Theorems 3.4 and 3.10 is not a coincidence.
While L(x) and ω(x) are indeed different functions (for instance, L(6) = 1
while ω(6) = 3), they are closely related; the ω-function can be expressed in
terms of max factorization length that is computed when some collections
of generators are omitted. We direct the interested reader to [5, Section 6],
where an explicit formula of this form for ω(n) is given.

3.4

Computer software for numerical monoids

Many of the computations referenced in this paper can be performed using the numericalsgps package [16] for the computer algebra system GAP.
The brief snippet of sample code below demonstrates how the package is
used to compute various quantities discussed in this paper.
gap> LoadPackage("num");
true
gap> McN:=NumericalSemigroup(6,9,20);
<Numerical semigroup with 3 generators>
gap> FrobeniusNumberOfNumericalSemigroup(McN);
43
gap> 43 in McN;
false
gap> 44 in McN;
true
gap> FactorizationsElementWRTNumericalSemigroup(18,McN);
[ [ 3, 0, 0 ], [ 0, 2, 0 ] ]
15

gap> OmegaPrimalityOfElementInNumericalSemigroup(6,McN);
3
This only scratches the surface of the extensive functionality offered by
the numericalsgps package. We encourage the interested reader to install
and experiment with the package; instructions can be found on the official
webpage, whose URL is included below.
https://www.gap-system.org/Packages/numericalsgps.html

4

Calculations for the Chicken McNugget monoid

In the final section of this paper, we give explicit expressions for L(x), `(x),
∆(x) and ω(x) for every x ∈ . The derivation of each such expression
makes use of a theoretical result in Section 3.
We note that each of the formulas provided in this section could also be
derived in a purely computational manner, using Theorems 3.4, 3.7, and 3.10
and the inductive algorithms introduced in [5] (indeed, these computations
finish in a reasonably short amount of time using the implementation in
the numericalsgps package discussed in Section 3.4). However, several of
the following results identify an interesting phenomenon that distinguish
from more general numerical monoids (see the discussion preceeding Question 4.5), and the arguments that follow give the reader an idea of how
theorems involving factorization in numerical monoids can be proven.

4.1

Calculating factorization lengths

Theorem 3.4 states that L(x + n1 ) = L(x) + 1 and `(x + nk ) = `(x) + 1 for
sufficiently large x ∈ hn1 , . . . , nk i. but, it was observed during the writing
of [4] that for many numerical monoids, the “sufficiently large” requirement
is unecessary. As it turns out, one such example is the McNugget monoid ,
which we detail below.

16

Theorem 4.1. For each x ∈ , L(x + 6) = L(x) + 1. In particular, if we
write x = 6q + r for q, r ∈ N and r < 6, then


q
if r = 0 or 3



 q−5
if r = 1
L(x) =

q−2
if r = 2 or 5



 q−4
if r = 4
for each x ∈ .
and a factorization (a, b, c) of x. If b > 1, then x has
Proof. Fix x ∈
another factorization (a + 3, b − 2, c) with length a + b + c + 1. Similarly,
if c ≥ 3, then (a + 10, b, c − 3) is also a factorization of x and has length
a + b + c + 7. This implies that if (a, b, c) has maximum length among
factorizations of x, then b ≤ 1 and c ≤ 2. Upon inspecting Table 1, we see
that unless x ∈ {0, 9, 20, 29, 40, 49}, we must have a > 0.
Now, assume (a, b, c) has maximum length among factorizations of x.
We claim (a + 1, b, c) is a factorization of x + 6 with maximum length. From
/ {0, 9, 20, 29, 40, 49},
Table 1, we see that since x ∈ , we must have x + 6 ∈
meaning any maximum length factorization of x + 6 must have the form
(a0 + 1, b0 , c0 ). This yields a factorization (a0 , b0 , c0 ) of x, and since (a, b, c)
has maximum length, we have a + b + c ≥ a0 + b0 + c0 . As such, (a + 1, b, c)
is at least as long as (a0 + 1, b0 , c0 ), and the claim is proved. Thus,
L(x + 6) = a + 1 + b + c = L(x) + 1.
From here, the given formula for L(x) now follows from the first claim
and the values L(0), L(9), L(20), L(29), L(40), and L(49) in Table 3.2.
A similar expression can be obtained for `(x), ableit with 20 cases instead
of 6, this time based on the value of x modulo 20. We encourage the reader
to adapt the argument above for Theorem 4.2.
Theorem 4.2. For each x ∈ , `(x + 20) = `(x) + 1. In particular, if we

17

write x = 20q + r for q, r ∈ N and


q





 q+1


 q+2
`(x) =

q+3





q+4



 q+5

r < 20, then
if
if
if
if
if
if

r
r
r
r
r
r

=0
= 6, 9
= 1, 4, 7, 12, 15, 18
= 2, 5, 10, 13, 16
= 8, 11, 14, 19
= 3, 17

for each x ∈ .
Theorems 4.1 and 4.2 together yield a closed form for ρ(x) that holds for
all x ∈ . Since lcm(6, 20) = 60 cases are required, we leave the construction
of this closed form to the interested reader.

4.2

Calculating delta sets

Unlike maximum and minimum factorization length, ∆(x) is only periodic
for sufficiently large x ∈ . For example, a computer algebra system can
be used to check that ∆(91) = {1} while ∆(211) = {1, 2}. Theorem 3.7
only guarantees ∆(x + 120) = ∆(x) for x > 21600, but some considerable
reductions can be made. In particular, we will reduce the period from 120
down to 20, and will show that equality holds for all x ≥ 92 (that is to say,
91 is the largest value of x for which ∆(x + 20) 6= ∆(x)).
Theorem 4.3. Each x ∈ with x ≥ 92 has ∆(x + 20) = ∆(x). Moreover,


if r = 3, 8, 14, 17
 {1}


 {1, 2}
if r = 2, 5, 10, 11, 16, 19
∆(x) =

{1, 3}
if r = 1, 4, 7, 12, 13, 18



 {1, 4}
if r = 0, 6, 9, 15
where x = 20q + r for q, r ∈ N and r < 20. Hence ∆( ) = {1, 2, 3, 4}.
Proof. We will show that ∆(x+20) = ∆(x) for each x > 103. The remaining
claims can be verified by extending Table 2 using computer software.

18

Suppose x > 103, fix a factorization (a, b, c) for x, and let l = a + b + c.
If c ≥ 3, then x also has factorizations (a + 10, b, c − 3), (a + 7, b + 2, c − 3),
(a + 4, b + 4, c − 3), and (a + 1, b + 6, c − 3), meaning
{l, l + 4, l + 5, l + 6, l + 7} ⊂ L(x).
Alternatively, since x > 103, if c ≤ 2, then 6a + 9b ≥ 63, and thus
l ≥ a + b + 2 ≥ 9 ≥ `(x) + 4.
The above arguments imply (i) any gap in successive lengths in L(x) occurs
between `(x) and `(x) + 4, and (ii) every factorization with length in that
interval has at least one copy of 20. As such, x + 20 has the same gaps
between `(x + 20) and `(x + 20) + 4 as x does between `(x) and `(x) + 4,
which proves ∆(x + 20) = ∆(x) for all x > 103.
With a slightly more refined argument than the one given above, one
can prove without the use of software that ∆(x + 20) = ∆(x) for all x ≥ 92.
We encourage the interested reader to work out such an argument.

4.3

Calculating ω-primality

We conclude our study of with an expression for the ω-primality of x ∈
and show (in some sense) how far a McNugget number is from being prime.
We proceed in a similar fashion to Theorems 4.1 and 4.2, showing that with
only two exceptions, ω(x + n1 ) = ω(x) + 1 for all x ∈ .
Theorem 4.4. With the exception of x = 6 and x = 12, every nonzero
x ∈ satisfies ω(x + 6) = ω(x) + 1. In particular, we have


q
if r = 0





q+5
if r = 1



 q+7
if r = 2
ω(x) =
 q+2
if r = 3




 q+4
if r = 4



 q+9
if r = 5
for each x 6= 6, 12, where x = 6q + r for q, r ∈ N and r < 6.
19

Proof. Fix x ∈ . Following the spirit of the proof of Theorem 4.1, we begin
by proving each x > 12 has a maximum length bullet (a, b, c) with a > 0.
Indeed, suppose (0, b, c) is a bullet for x for some b, c ≥ 0. The element x ∈
also has some bullet of the form (a0 , 0, 0), where a0 the smallest integer such
that 6a0 − x ∈ . Notice a0 ≥ 3 since x > 12. We consider several cases.
/ . If b ≤ 3, then a0 ≥ b.
• If c = 0, then 9b − x ∈ but 9b − x − 9 ∈
Otherwise, either 9(b − 1) or 9(b − 2) is a multiple of 6, and since
9(b − 2) − x ∈
/ as well, we see a0 ≥ 23 (b − 2) + 1 ≥ b.
• If b = 0, then there are two possibilities. If c ≤ 3, then a0 ≥ c.
Otherwise, either 20(c − 1), 20(c − 2) or 20(c − 3) is a multiple of 6,
so we conclude a0 ≥ 10
3 (c − 3) + 1 ≥ c.
• If b, c > 0, then 9b + 20c − x − 9, 9b + 20c − x − 20 ∈
/ , so 9b + 20c − x
is either 0, 6, or 12. This means either (3, b − 1, c), (2, b − 1, c), or
(1, b − 1, c) is also a bullet for x, respectively.
In each case, we have constructed a bullet for x at least as long as (0, b, c),
but with positive first coordinate, so we conclude x has a maximal bullet
with nonzero first coordinate.
Now, using a similar argument to that given in the proof of Theorem 4.1,
if (a+1, b, c) is a maximum length bullet for x+6, then (a, b, c) is a maximum
length bullet for x. This implies ω(x + 6) = ω(x) + 1 whenever x + 6 has
a maximum length bullet with positive first coordinate, which by the above
argument holds whenever x > 12. This proves the first claim.
The formula for ω(x) now follows from the first claim, the computations
ω(9) = 3 and ω(20) = 10 from Section 3.3, and analogous computations for
ω(15) = 4, ω(18) = 3, ω(29) = 13, ω(40) = 10, and ω(49) = 13.
Figure 5 plots ω-values of elements of the McNugget monoid . Since
ω(x + 6) = ω(x) + 1 for large x ∈ , most of the plotted points occur on one
of 6 lines with slope 16 . It is also evident in the plot that x = 6 and x = 12
are the only exceptions.
Although ω(x + 6) = ω(x) + 1 does not hold for every x ∈ , there
are some numerical monoids for which the “sufficiently large” hypothesis in
20

20
15
10
5
0

20

40

60

80

100

Figure 5: A plot depicting the ω-primality function ω(n) for n ∈ .
Theorem 3.10 can be dropped (for instance, any numerical monoids with 2
minimal generators has this property). Hence, we conclude with a problem
suitable for attack by undergraduates.
Question 4.5. Determine which numerical monoids hn1 , . . . , nk i satisfy
each of the following conditions for all x (i.e. not just sufficiently large x):
1. L(x + n1 ) = L(x) + 1,
2. `(x + nk ) = `(x) + 1, or
3. ω(x + n1 ) = ω(x) + 1.

References
[1] G. Alon, P. Clark, On the number of representations of an integer by a
linear form, J. Integer Sequences 8(2005) 05.5.2.
[2] D. F. Anderson, S. T. Chapman, On bounding measures of primeness
in integral domains, Inter. J. Algebra Comp. 22(2012) 1250040.

21

[3] D. F. Anderson, S. T. Chapman, N. Kaplan, D. Torkornoo, An algorithm to compute ω-primality in a numerical monoid, Semigroup Forum
82(2011) 96–108.
[4] T. Barron, C. O’Neill, R. Pelayo, On the set of elasticities in numerical
monoids, Semigroup Forum 94 no. 1 (2017) 37–50.
[5] T. Barron, C. O’Neill, R. Pelayo, On dymamic algorithms for factorization invariants in numerical monoids, Mathematics of Computation
86(2017) 2429–2447.
[6] M Beck, How to change coins, M&M’s, or Chicken McNuggets: the linear Diophatine problem of Frobenius, http://math.sfsu.edu/beck/
papers/frobprojects.pdf.
[7] C. Bowles, S. T. Chapman, N. Kaplan, D. Reiser. On delta sets of
numerical monoids. Journal of Algebra and its Applications 5(2006)
695–718.
[8] S. T. Chapman, J. Daigle, R. Hoyer, N. Kaplan, Delta sets of numerical
monoids using nonminimal sets of generators, Comm. Algebra 38(2010)
2622–2634.
[9] S. T. Chapman, P. A. Garcı́a-Sánchez, D. Llena, A. Malyshev, D. Steinberg, On the delta set and the Betti elements of a BF-monoid, Arabian
J. of Mathematics 1(2012) 53–61.
[10] S. T. Chapman, M. T. Holden, T. A. Moore. Full elasticity in atomic
monoids and integral domains, Rocky Mountain J. Math 37(2006)
1437–1455.
[11] S. T. Chapman, R. Hoyer, N. Kaplan, Delta sets of numerical monoids
are eventually periodic, Aequationes Mathematicae 77(2009) 273–279.
[12] S. T. Chapman, N. Kaplan, T. Lemburg, A. Niles, C. Zlogar, Shifts of
generators and delta sets of numerical monoids, Inter. J. Algebra and
Computation 24(2014) 655–669.

22

[13] S. T. Chapman, W. Puckett, K. Shour, On the omega values of generators of embedding dimension-three numerical monoids generated by an
interval, Involve 7(2014) 657–667.
[14] S. Colton, N. Kaplan, The realization problem for delta sets of numerical semigroups, J. Comm. Algebra, to appear.
[15] https://en.wikipedia.org/wiki/Coin_problem.
[16] M. Delgado, P. Garcı́a-Sánchez, J. Morais, NumericalSgps, A package
for numerical semigroups, Version 0.980 dev (2013), (GAP package),
http://www.fc.up.pt/cmup/mdelgado/numericalsgps/.
[17] D. Einstein, D. Lichtblau, A. Strzebonski, S. Wagon, Frobenius numbers by lattice point enumeration, Integers 7(2007) #A15.
[18] J. Gallian, Contemporary Abstract Algebra. Ninth Ed., Cengage Learning, Boston, MA, 2016.
[19] J. I. Garca-Garca, M. A. Moreno-Fras, A. Vigneron-Tenorio, Computation of Delta sets of numerical monoids, Monatshefte für Mathematik
178(2015) 457–472.
[20] A. Geroldinge, F. Halter-Koch, Nonunique Factorizations: Algebraic,
Combinatorial and Analytic Theory, Pure and Applied Mathematics,
vol. 278, Chapman & Hall/CRC, 2006.
[21] https://en.wikipedia.org/wiki/Knapsack_problem.
[22] http://mathworld.wolfram.com/McNuggetNumber.html.
[23] C. O’Neill, R. Pelayo, On the linearity of ω-primality in numerical
monoids, J. Pure Appl. Algebra 218(2014) 1620–1627.
[24] C. O’Neill, R. Pelayo, How do you measure primality?, Amer. Math.
Monthly 122(2015) 121–137.
[25] https://en.wikipedia.org/wiki/Postage_stamp-problem.

23

[26] H. Picciotto, A. Wah, Algebra: Themes, Tools, Concepts, Creative Publications, Mountain View, CA, 1994, p. 186.
[27] J. L. Ramı́rez Alfonsı́n, The Diophantine Frobenius Problem, Oxford
Lecture Series in Mathematics and Its Applications 30, Oxford University Press, 2005, 256 pp.
[28] B. Sturmfels, Gröbner bases and convex polytopes, University Lecture Series, 8. American Mathematical Society, Providence, RI, 1996.
xii+162 pp. ISBN: 0-8218-0487-1.
[29] J. J. Sylvester, Mathematical questions with their solutions, Educational Times 41(1884) 171–178.
[30] I. Vardi, Computational Recreations in Mathematics, Addison-Wesley,
Reading, MA, 1992, pp. 19–20 and 233–234.

24

