Permutation Generation Methods* ROBERT Sedgewlck INTRODUCTION Over Thirty Algorithms Have Been Pub- Lished During the Past Twent

Total Page:16

File Type:pdf, Size:1020Kb

Permutation Generation Methods* ROBERT Sedgewlck INTRODUCTION Over Thirty Algorithms Have Been Pub- Lished During the Past Twent Permutation Generation Methods* ROBERT SEDGEWlCK Program ~n Computer Science and Dwlsmn of Applled Mathematics Brown Unwersity, Prowdence, Rhode Island 02912 This paper surveys the numerous methods that have been proposed for permutatmn enumeration by computer. The various algorithms which have been developed over the years are described in detail, and zmplemented in a modern ALc,oL-hke language. All of the algorithms are derived from one rumple control structure. The problems involved with implementing the best of the algorithms on real com- puters are treated m detail. Assembly-language programs are derived and analyzed fully. The paper is intended not only as a survey of permutation generation methods, but also as a tutomal on how to compare a number of different algorithms for the same task Key Words and Phrases: permutations, combmatomal algorithms, code optimlzatmn, analysis of algorithms, lexicographlc ordering, random permutatmns, recursion, cyclic rotatzon. CR Categories: 3.15, 4.6, 5 25, 5.30. INTRODUCTION tation generation was being used to solve problems. Most of the problems that he Over thirty algorithms have been pub- described are now handled with more so- lished during the past twenty years for phisticated techniques, but the paper stim- generating by computer all N! permuta- ulated interest in permutation generation tions of N elements. This problem is a by computer per se. The problem is simply nontrivial example of the use of computers stated, but not easily solved, and is often in combinatorial mathematics, and it is used as an example in programming and interesting to study because a number of correctness. (See, for example, [6]). different approaches can be compared. The study of the various methods that Surveys of the field have been published have been proposed for permutation gener- previously in 1960 by D. H. Lehmer [26] ation is still very instructive today because and in 1970-71 by R. J. Ord-Smith [29, 30]. together they illustrate nicely the rela- A new look at the problem is appropriate tionship between counting, recursion, and at this time because several new algo- iteration. These are fundamental concepts rithms have been proposed in the inter- in computer science, and it is useful to vening years. have a rather simple example which illus- Permutation generation has a long and trates so well the relationships between distinguished history. It was actually one them. We shall see that algorithms which of the first nontrivial nonnumeric prob- seem to differ markedly have essentially lems to be attacked by computer. In 1956, the same structure when expressed in a C. Tompkins wrote a paper [44] describing modern language and subjected to simple a number of practical areas 'where permu- program transformations. Many readers * Thin work was supported by the Natmnal Science may find it surprising to discover that Foundatmn Grant No. MCS75-23738 ~'top-down" (recursive) and '~bettom-up" Copyright © 1977, Associahon for Computing Machinery, Inc. General permismon to repubhsh, but not for profit, all or part of this materml is granted provided that ACM's copymght notice is given and that reference is made to the publication, to its date of issue, and to the fact that repnntmg privileges were granted by permission of the Association for Computing Machinery Computing Surveys, Vol 9, No 2, June 1977 138 • R. Sedgewick CONTENTS help, but not as much as one might think. Table 1 shows the values of N! for N -< 17 along with the time that would be taken by a permutation generation program that produces a new permutation each micro- second. For N > 25, the time required is far greater than the age of the earth! INTRODUCTION For many practical applications, the 1 METHODS BASED ON EXCHANGES sheer magnitude of N! has led to the devel- Recur~lve methods Adjacent exchanges opment of "combinatorial search" proce- Factorial counting dures which are far more efficient than "Loopless" algorithms permutation enumeration. Techniques Another lterahve method 2 OTHER TYPES OF ALGORITHMS such as mathematical programming and Nested cycling backtracking are used regularly to solve Lexlcograpluc algorlthras Random permutataons optimization problems in industrial situa- 3 IMPLEMENTATION AND ANALYSIS tions, and have led to the resolution of A recurslve method (Heap) several hard problems in combinatorial An lteratlve method (Ives) A cychc method (Langdon) mathematics (notably the four-color prob- CONCLUSION lem). Full treatment of these methods ACKNOWLEDGMENTS would be beyond the scope of this paper- REFERENCES they are mentioned here to emphasize that, in practice, there are usually alter- natives to the "brute-force" method of gen- erating permutations. We will see one ex- ample of how permutation generation can sometimes be greatly improved with a backtracking technique. v In the few applications that remain where permutation generation is really re- (iterative) design approaches can lead to quired, it usually doesn't matter much the same program. which generation method is used, since Permutation generation methods not the cost of processing the permutations far only illustrate programming issues in high-level (procedural) languages; they TABLE 1. APPROXIMATE TIME NEEDED TO GENERATE also illustrate implementation issues in ALL PERMUTATIONS OF N (1 /zsec per permutation) low-level (assembly) languages. In this pa- N NI Time per, we shall try to find the fastest possible way to generate permutations by com- 1 1 puter. To do so, we will need to consider 2 2 some program "optimization" methods (to 3 6 get good implementations) and some 4 24 mathematical analyses (to determine 5 120 which implementation is best). It turns out 6 720 that on most computers we can generate 7 5040 each permutation at only slightly more 8 40320 9 362880 than the cost of two store instructions. 10 3628800 3 seconds In dealing with such a problem, we must 11 39916800 40 seconds be aware of the inherent limitations. 12 479001600 8 minutes Without computers, few individuals had 13 6227020800 2 hours the patience to record all 5040 permuta- 14 87178291200 1 day tions of 7 elements, let alone all 40320 15 1307674368000 2 weeks permutations of 8 elements, or all 362880 16 20922789888000 8 months permutations of 9 elements. Computers 17 355689428096000 10 years Computing Surveys, Vol 9, No 2, June 1977 Permutation Generation Methods • 139 exceeds the cost of generating them. For P[1]:=:P[2] example, to evaluate the performance of to mean "exchange the contents of array an operating system, we might want to try elements P[1] and P[2]". This instruction all different permutations of a fLxed set of gives both arrangements of the elements tasks for processing, but most of our time P[1], P[2] (i.e., the arrangement before the would be spent simulating the processing, exchange and the one after). For N = 3, not generating the permutations. The several different sequences of five ex- same is usually true in the study of combi- changes can be used to generate all six natorial properties of permutations, or in permutations, for example the analysis of sorting methods. In such applications, it can sometimes be worth- P[1] =:P[2] P[2]:=:P[3] while to generate "random" permutations P[1] =:P[2] to get results for a typical case. We shall P[2]-=:P[3] examine a few methods for doing so in this P[1]:=-P[2]. paper. In short, the fastest possible permuta- If the initial contents of P[1] P[2] P[3] are tion method is of limited importance in A B C, then these five exchanges will pro- practice. There is nearly always a better duce the permutations B A C, B C A, way to proceed, and if there is not, the C B A,C A B, andA C B. problem becomes really hopeless when N It will be convenient to work with a is increased only a little. more compact representation describing Nevertheless, permutation generation these exchange sequences. We can think of the elements as passing through "permu- provides a very instructive exercise in the implementation and analysis of algo- tation networks" which produce all the rithms. The problem has received a great permutations. The networks are com- deal of attention in the literature, and the prised of "exchange modules" such as that techniques that we learn in the process of shown in Diagram 1 which is itself the carefully comparing these interesting al- gorithms can later be applied to the per- haps more mundane problems that we face from day to day. DIAGRAM 1 We shall begin with simple algorithms that generate permutations of an array by permutation network for N = 2. The net- successively exchanging elements; these work of Diagram 2 implements the ex- algorithms all have a common control change sequence given above for N = 3. structure described in Section 1. We then The elements pass from right to left, and a will study a few older algorithms, includ- new permutation is available after each ing some based on elementary operations exchange. Of course, we must be sure that other than exchanges, in the framework of the internal permutations generated are this same control structure (Section 2). Fi- distinct. For N = 3 there are 35 = 243 nally, we shall treat the issues involved in possible networks with five exchange mod- the implementation, analysis, and "opti- ules, but only the twelve shown in Fig. 1 mization" of the best of the algorithms are "legal" (produce sequences of distinct (Section 3). permutations). We shall most often repre- sent networks as in Fig. 1, namely drawn 1. METHODS BASED ON EXCHANGES vertically, with elements passing from top A natural way to permute an array of to bottom, and with the permutation se- elements on a computer is to exchange two of its elements.
Recommended publications
  • An Exploration of the Relationship Between Mathematics and Music
    An Exploration of the Relationship between Mathematics and Music Shah, Saloni 2010 MIMS EPrint: 2010.103 Manchester Institute for Mathematical Sciences School of Mathematics The University of Manchester Reports available from: http://eprints.maths.manchester.ac.uk/ And by contacting: The MIMS Secretary School of Mathematics The University of Manchester Manchester, M13 9PL, UK ISSN 1749-9097 An Exploration of ! Relation"ip Between Ma#ematics and Music MATH30000, 3rd Year Project Saloni Shah, ID 7177223 University of Manchester May 2010 Project Supervisor: Professor Roger Plymen ! 1 TABLE OF CONTENTS Preface! 3 1.0 Music and Mathematics: An Introduction to their Relationship! 6 2.0 Historical Connections Between Mathematics and Music! 9 2.1 Music Theorists and Mathematicians: Are they one in the same?! 9 2.2 Why are mathematicians so fascinated by music theory?! 15 3.0 The Mathematics of Music! 19 3.1 Pythagoras and the Theory of Music Intervals! 19 3.2 The Move Away From Pythagorean Scales! 29 3.3 Rameau Adds to the Discovery of Pythagoras! 32 3.4 Music and Fibonacci! 36 3.5 Circle of Fifths! 42 4.0 Messiaen: The Mathematics of his Musical Language! 45 4.1 Modes of Limited Transposition! 51 4.2 Non-retrogradable Rhythms! 58 5.0 Religious Symbolism and Mathematics in Music! 64 5.1 Numbers are God"s Tools! 65 5.2 Religious Symbolism and Numbers in Bach"s Music! 67 5.3 Messiaen"s Use of Mathematical Ideas to Convey Religious Ones! 73 6.0 Musical Mathematics: The Artistic Aspect of Mathematics! 76 6.1 Mathematics as Art! 78 6.2 Mathematical Periods! 81 6.3 Mathematics Periods vs.
    [Show full text]
  • 18.703 Modern Algebra, Permutation Groups
    5. Permutation groups Definition 5.1. Let S be a set. A permutation of S is simply a bijection f : S −! S. Lemma 5.2. Let S be a set. (1) Let f and g be two permutations of S. Then the composition of f and g is a permutation of S. (2) Let f be a permutation of S. Then the inverse of f is a permu­ tation of S. Proof. Well-known. D Lemma 5.3. Let S be a set. The set of all permutations, under the operation of composition of permutations, forms a group A(S). Proof. (5.2) implies that the set of permutations is closed under com­ position of functions. We check the three axioms for a group. We already proved that composition of functions is associative. Let i: S −! S be the identity function from S to S. Let f be a permutation of S. Clearly f ◦ i = i ◦ f = f. Thus i acts as an identity. Let f be a permutation of S. Then the inverse g of f is a permutation of S by (5.2) and f ◦ g = g ◦ f = i, by definition. Thus inverses exist and G is a group. D Lemma 5.4. Let S be a finite set with n elements. Then A(S) has n! elements. Proof. Well-known. D Definition 5.5. The group Sn is the set of permutations of the first n natural numbers. We want a convenient way to represent an element of Sn. The first way, is to write an element σ of Sn as a matrix.
    [Show full text]
  • Permutation Group and Determinants (Dated: September 16, 2021)
    Permutation group and determinants (Dated: September 16, 2021) 1 I. SYMMETRIES OF MANY-PARTICLE FUNCTIONS Since electrons are fermions, the electronic wave functions have to be antisymmetric. This chapter will show how to achieve this goal. The notion of antisymmetry is related to permutations of electrons’ coordinates. Therefore we will start with the discussion of the permutation group and then introduce the permutation-group-based definition of determinant, the zeroth-order approximation to the wave function in theory of many fermions. This definition, in contrast to that based on the Laplace expansion, relates clearly to properties of fermionic wave functions. The determinant gives an N-particle wave function built from a set of N one-particle waves functions and is called Slater’s determinant. II. PERMUTATION (SYMMETRIC) GROUP Definition of permutation group: The permutation group, known also under the name of symmetric group, is the group of all operations on a set of N distinct objects that order the objects in all possible ways. The group is denoted as SN (we will show that this is a group below). We will call these operations permutations and denote them by symbols σi. For a set consisting of numbers 1, 2, :::, N, the permutation σi orders these numbers in such a way that k is at jth position. Often a better way of looking at permutations is to say that permutations are all mappings of the set 1, 2, :::, N onto itself: σi(k) = j, where j has to go over all elements. Number of permutations: The number of permutations is N! Indeed, we can first place each object at positions 1, so there are N possible placements.
    [Show full text]
  • The Mathematics Major's Handbook
    The Mathematics Major’s Handbook (updated Spring 2016) Mathematics Faculty and Their Areas of Expertise Jennifer Bowen Abstract Algebra, Nonassociative Rings and Algebras, Jordan Algebras James Hartman Linear Algebra, Magic Matrices, Involutions, (on leave) Statistics, Operator Theory Robert Kelvey Combinatorial and Geometric Group Theory Matthew Moynihan Abstract Algebra, Combinatorics, Permutation Enumeration R. Drew Pasteur Differential Equations, Mathematics in Biology/Medicine, Sports Data Analysis Pamela Pierce Real Analysis, Functions of Generalized Bounded Variation, Convergence of Fourier Series, Undergraduate Mathematics Education, Preparation of Pre-service Teachers John Ramsay Topology, Algebraic Topology, Operations Research OndˇrejZindulka Real Analysis, Fractal geometry, Geometric Measure Theory, Set Theory 1 2 Contents 1 Mission Statement and Learning Goals 5 1.1 Mathematics Department Mission Statement . 5 1.2 Learning Goals for the Mathematics Major . 5 2 Curriculum 8 3 Requirements for the Major 9 3.1 Recommended Timeline for the Mathematics Major . 10 3.2 Requirements for the Double Major . 10 3.3 Requirements for Teaching Licensure in Mathematics . 11 3.4 Requirements for the Minor . 11 4 Off-Campus Study in Mathematics 12 5 Senior Independent Study 13 5.1 Mathematics I.S. Student/Advisor Guidelines . 13 5.2 Project Topics . 13 5.3 Project Submissions . 14 5.3.1 Project Proposal . 14 5.3.2 Project Research . 14 5.3.3 Annotated Bibliography . 14 5.3.4 Thesis Outline . 15 5.3.5 Completed Chapters . 15 5.3.6 Digitial I.S. Document . 15 5.3.7 Poster . 15 5.3.8 Document Submission and oral presentation schedule . 15 6 Independent Study Assessment Guide 21 7 Further Learning Opportunities 23 7.1 At Wooster .
    [Show full text]
  • Universal Invariant and Equivariant Graph Neural Networks
    Universal Invariant and Equivariant Graph Neural Networks Nicolas Keriven Gabriel Peyré École Normale Supérieure CNRS and École Normale Supérieure Paris, France Paris, France [email protected] [email protected] Abstract Graph Neural Networks (GNN) come in many flavors, but should always be either invariant (permutation of the nodes of the input graph does not affect the output) or equivariant (permutation of the input permutes the output). In this paper, we consider a specific class of invariant and equivariant networks, for which we prove new universality theorems. More precisely, we consider networks with a single hidden layer, obtained by summing channels formed by applying an equivariant linear operator, a pointwise non-linearity, and either an invariant or equivariant linear output layer. Recently, Maron et al. (2019b) showed that by allowing higher- order tensorization inside the network, universal invariant GNNs can be obtained. As a first contribution, we propose an alternative proof of this result, which relies on the Stone-Weierstrass theorem for algebra of real-valued functions. Our main contribution is then an extension of this result to the equivariant case, which appears in many practical applications but has been less studied from a theoretical point of view. The proof relies on a new generalized Stone-Weierstrass theorem for algebra of equivariant functions, which is of independent interest. Additionally, unlike many previous works that consider a fixed number of nodes, our results show that a GNN defined by a single set of parameters can approximate uniformly well a function defined on graphs of varying size. 1 Introduction Designing Neural Networks (NN) to exhibit some invariance or equivariance to group operations is a central problem in machine learning (Shawe-Taylor, 1993).
    [Show full text]
  • Lecture 9: Permutation Groups
    Lecture 9: Permutation Groups Prof. Dr. Ali Bülent EKIN· Doç. Dr. Elif TAN Ankara University Ali Bülent Ekin, Elif Tan (Ankara University) Permutation Groups 1 / 14 Permutation Groups Definition A permutation of a nonempty set A is a function s : A A that is one-to-one and onto. In other words, a pemutation of a set! is a rearrangement of the elements of the set. Theorem Let A be a nonempty set and let SA be the collection of all permutations of A. Then (SA, ) is a group, where is the function composition operation. The identity element of (SA, ) is the identity permutation i : A A, i (a) = a. ! 1 The inverse element of s is the permutation s such that 1 1 ss (a) = s s (a) = i (a) . Ali Bülent Ekin, Elif Tan (Ankara University) Permutation Groups 2 / 14 Permutation Groups Definition The group (SA, ) is called a permutation group on A. We will focus on permutation groups on finite sets. Definition Let In = 1, 2, ... , n , n 1 and let Sn be the set of all permutations on f g ≥ In.The group (Sn, ) is called the symmetric group on In. Let s be a permutation on In. It is convenient to use the following two-row notation: 1 2 n s = ··· s (1) s (2) s (n) ··· Ali Bülent Ekin, Elif Tan (Ankara University) Permutation Groups 3 / 14 Symmetric Groups 1 2 3 4 1 2 3 4 Example: Let f = and g = . Then 1 3 4 2 4 3 2 1 1 2 3 4 1 2 3 4 1 2 3 4 f g = = 1 3 4 2 4 3 2 1 2 4 3 1 1 2 3 4 1 2 3 4 1 2 3 4 g f = = 4 3 2 1 1 3 4 2 4 2 1 3 which shows that f g = g f .
    [Show full text]
  • Diagrams of Affine Permutations and Their Labellings Taedong
    Diagrams of Affine Permutations and Their Labellings by Taedong Yun Submitted to the Department of Mathematics in partial fulfillment of the requirements for the degree of Doctor of Philosophy at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY June 2013 c Taedong Yun, MMXIII. All rights reserved. The author hereby grants to MIT permission to reproduce and to distribute publicly paper and electronic copies of this thesis document in whole or in part in any medium now known or hereafter created. Author.............................................................. Department of Mathematics April 29, 2013 Certified by. Richard P. Stanley Professor of Applied Mathematics Thesis Supervisor Accepted by . Paul Seidel Chairman, Department Committee on Graduate Theses 2 Diagrams of Affine Permutations and Their Labellings by Taedong Yun Submitted to the Department of Mathematics on April 29, 2013, in partial fulfillment of the requirements for the degree of Doctor of Philosophy Abstract We study affine permutation diagrams and their labellings with positive integers. Bal- anced labellings of a Rothe diagram of a finite permutation were defined by Fomin- Greene-Reiner-Shimozono, and we extend this notion to affine permutations. The balanced labellings give a natural encoding of the reduced decompositions of affine permutations. We show that the sum of weight monomials of the column-strict bal- anced labellings is the affine Stanley symmetric function which plays an important role in the geometry of the affine Grassmannian. Furthermore, we define set-valued balanced labellings in which the labels are sets of positive integers, and we investi- gate the relations between set-valued balanced labellings and nilHecke words in the nilHecke algebra. A signed generating function of column-strict set-valued balanced labellings is shown to coincide with the affine stable Grothendieck polynomial which is related to the K-theory of the affine Grassmannian.
    [Show full text]
  • Affine Permutations and Rational Slope Parking Functions
    AFFINE PERMUTATIONS AND RATIONAL SLOPE PARKING FUNCTIONS EUGENE GORSKY, MIKHAIL MAZIN, AND MONICA VAZIRANI ABSTRACT. We introduce a new approach to the enumeration of rational slope parking functions with respect to the area and a generalized dinv statistics, and relate the combinatorics of parking functions to that of affine permutations. We relate our construction to two previously known combinatorial constructions: Haglund’s bijection ζ exchanging the pairs of statistics (area, dinv) and (bounce, area) on Dyck paths, and the Pak-Stanley labeling of the regions of k-Shi hyperplane arrangements by k-parking functions. Essentially, our approach can be viewed as a generalization and a unification of these two constructions. We also relate our combinatorial constructions to representation theory. We derive new formulas for the Poincar´epolynomials of certain affine Springer fibers and describe a connection to the theory of finite dimensional representations of DAHA and nonsymmetric Macdonald polynomials. 1. INTRODUCTION Parking functions are ubiquitous in the modern combinatorics. There is a natural action of the symmetric group on parking functions, and the orbits are labeled by the non-decreasing parking functions which correspond natu- rally to the Dyck paths. This provides a link between parking functions and various combinatorial objects counted by Catalan numbers. In a series of papers Garsia, Haglund, Haiman, et al. [18, 19], related the combinatorics of Catalan numbers and parking functions to the space of diagonal harmonics. There are also deep connections to the geometry of the Hilbert scheme. Since the works of Pak and Stanley [29], Athanasiadis and Linusson [5] , it became clear that parking functions are tightly related to the combinatorics of the affine symmetric group.
    [Show full text]
  • Week 3-4: Permutations and Combinations
    Week 3-4: Permutations and Combinations March 10, 2020 1 Two Counting Principles Addition Principle. Let S1;S2;:::;Sm be disjoint subsets of a ¯nite set S. If S = S1 [ S2 [ ¢ ¢ ¢ [ Sm, then jSj = jS1j + jS2j + ¢ ¢ ¢ + jSmj: Multiplication Principle. Let S1;S2;:::;Sm be ¯nite sets and S = S1 £ S2 £ ¢ ¢ ¢ £ Sm. Then jSj = jS1j £ jS2j £ ¢ ¢ ¢ £ jSmj: Example 1.1. Determine the number of positive integers which are factors of the number 53 £ 79 £ 13 £ 338. The number 33 can be factored into 3 £ 11. By the unique factorization theorem of positive integers, each factor of the given number is of the form 3i £ 5j £ 7k £ 11l £ 13m, where 0 · i · 8, 0 · j · 3, 0 · k · 9, 0 · l · 8, and 0 · m · 1. Thus the number of factors is 9 £ 4 £ 10 £ 9 £ 2 = 7280: Example 1.2. How many two-digit numbers have distinct and nonzero digits? A two-digit number ab can be regarded as an ordered pair (a; b) where a is the tens digit and b is the units digit. The digits in the problem are required to satisfy a 6= 0; b 6= 0; a 6= b: 1 The digit a has 9 choices, and for each ¯xed a the digit b has 8 choices. So the answer is 9 £ 8 = 72. The answer can be obtained in another way: There are 90 two-digit num- bers, i.e., 10; 11; 12;:::; 99. However, the 9 numbers 10; 20;:::; 90 should be excluded; another 9 numbers 11; 22;:::; 99 should be also excluded. So the answer is 90 ¡ 9 ¡ 9 = 72.
    [Show full text]
  • Section 5.3 Permutations and Combinations Permutations (Order Counts) • a Permutation of a Set Is an Arrangement of the Objects from a Set
    Section 5.3 Permutations and Combinations Permutations (order counts) • A permutation of a set is an arrangement of the objects from a set. • There are n! permutations of an n-element set, where 0! = 1 and n! = n · (n – 1)! • The number of permuations of length r chosen from an n-element set (where r ≤ n) is n! P(n,r) = . (n " r)! Example/Quiz. Let S = {a, b, c}. Calculate each expresssion and list the corresponding permutations of S: P(3, 3), P(3, 2), and P(3, 1). Solution. ! P(3, 3) = 3!/0!= 6 with permutations abc, acb, bac, bca, cab, cba. P(3, 2) = 3!/1! = 6 with permutations ab, ac, ba, bc,ca, cb. P(3, 1) = 3!/2!= 3 with permutations a, b, and c. Quiz. Find the number of permutations of the letters in the word radon. Answer. 5! = 120. Bag Permutations The number of permutations of an n-element bag with k distinct elements, where the ith distinct element is repeated mi times is n! . m ! m ! 1 L k 1 ! The idea behind the formula The idea is easy to see from an example. Suppose the bag is [a, a, b, b, b]. Then we can think of the letters as distinct elements of a set by placing subscripts on the repeated elements to obtain the set {a1, a2, b1, b2, b3}. There are 5! permutations of this set. But we don’t want to count permutations that are repeated if we drop the subscripts. For example, don’t want to count a1a2b1b2b3 and a2a1b1b2b3 as different.
    [Show full text]
  • CS 171 Lecture Outline Permutations of Multisets
    CS 171 Lecture Outline February 03, 2010 Permutations of Multisets. Let S be a multiset that consists of n objects of which n1 are of type 1 and indistinguishable from each other. n2 are of type 2 and indistinguishable from each other. nk are of type k and indistinguishable from each other. and suppose n1 + n2 + . + nk = n. What is the number of distinct permutations of the n objects in S? A permutation of S can be constructed by the following k-step process: Step 1. Choose n1 places out of n places for type 1 objects. Step 2. Choose n2 places out of the remaining n − n1 places for type 2 objects. ...... Step k. Choose nk places of the remaining unused places for type k objects. By the multiplication rule, the total number of permutations of n objects in S is n n − n1 n − n1 − n2 −···− nk−1 · · · n1 n2 nk n! (n − n1)! n − n1 − n2 −···− nk−1 = · · · · n1!(n − n1)! n2!(n − n1 − n2)! nk!(n − n1 −···− nk)! n! = n1!n2! · · · nk! Example 1. How many permutations are there of the word MISSISSIPPI? Solution. We want to find the number of permutations of the multiset {1 · M, 4 · I, 4 · S, 2 · P }. Thus, n = 11,n1 = 1,n2 = 4,n3 = 4,n4 = 2. Then number of permutations is given by n! 11! = n1!n2!n3!n4! 1!4!4!2! Example 2. Consider n distinct objects and k bins labeled B1,B2,...,Bk. How many ways are there to distribute the objects in the bins so that bin Bi receives ni objects and k i=1 ni = n? P 2 Lecture Outline February 03, 2010 Solution.
    [Show full text]
  • Affine Symmetric Group Joel Brewster Lewis¹*
    WikiJournal of Science, 2021, 4(1):3 doi: 10.15347/wjs/2021.003 Encyclopedic Review Article Affine symmetric group Joel Brewster Lewis¹* Abstract The affine symmetric group is a mathematical structure that describes the symmetries of the number line and the regular triangular tesselation of the plane, as well as related higher dimensional objects. It is an infinite extension of the symmetric group, which consists of all permutations (rearrangements) of a finite set. In addition to its geo- metric description, the affine symmetric group may be defined as the collection of permutations of the integers (..., −2, −1, 0, 1, 2, ...) that are periodic in a certain sense, or in purely algebraic terms as a group with certain gen- erators and relations. These different definitions allow for the extension of many important properties of the finite symmetric group to the infinite setting, and are studied as part of the fields of combinatorics and representation theory. Definitions Non-technical summary The affine symmetric group, 푆̃푛, may be equivalently Flat, straight-edged shapes (like triangles) or 3D ones defined as an abstract group by generators and rela- (like pyramids) have only a finite number of symme- tions, or in terms of concrete geometric and combina- tries. In contrast, the affine symmetric group is a way to torial models. mathematically describe all the symmetries possible when an infinitely large flat surface is covered by trian- gular tiles. As with many subjects in mathematics, it can Algebraic definition also be thought of in a number of ways: for example, it In terms of generators and relations, 푆̃푛 is generated also describes the symmetries of the infinitely long by a set number line, or the possible arrangements of all inte- gers (..., −2, −1, 0, 1, 2, ...) with certain repetitive pat- 푠 , 푠 , … , 푠 0 1 푛−1 terns.
    [Show full text]