Articulo de referencia

Permutación

Según el primer significado de permutación, cada una de las seis filas es una permutación diferente de tres bolas distintas. En matemáticas , una permutación de un conjunto pued...

Las seis formas posibles de ordenar tres bolas de diferentes colores: (rojo, verde, azul), (rojo, azul, verde), (verde, rojo, azul), (verde, azul, rojo), (azul, rojo, verde) y (azul, verde, rojo).
Según el primer significado de permutación, cada una de las seis filas es una permutación diferente de tres bolas distintas.

En matemáticas , una permutación de un conjunto puede significar una de dos cosas diferentes:

  • una disposición de sus miembros en una secuencia u orden lineal , o
  • el acto o proceso de cambiar el orden lineal de un conjunto ordenado. [ 1 ]

Un ejemplo del primer significado son las seis permutaciones (ordenaciones) del conjunto {1, 2, 3}: escritas como tuplas , son (1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2) y (3, 2, 1). Los anagramas de una palabra cuyas letras son todas diferentes también son permutaciones: las letras ya están ordenadas en la palabra original, y el anagrama las reordena. El estudio de las permutaciones de conjuntos finitos es un tema importante en combinatoria y teoría de grupos .

Las permutaciones se utilizan en casi todas las ramas de las matemáticas y en muchos otros campos de la ciencia. En informática , se emplean para analizar algoritmos de ordenación ; en física cuántica , para describir estados de partículas; y en biología , para describir secuencias de ARN .

El número de permutaciones de n objetos distintos es n factorial , que normalmente se escribe como n !, lo que significa el producto de todos los enteros positivos menores o iguales a n . 

Según el segundo significado, una permutación de un conjunto S se define como una biyección de S a sí mismo. [ 2 ] [ 3 ] Es decir, es una función de S a S para la cual cada elemento aparece exactamente una vez como valor de imagen . Tal funciónσ:SS{\displaystyle \sigma :S\to S}es equivalente a la reorganización de los elementos de S en la que cada elemento i es reemplazado por el correspondienteσ(i){\displaystyle \sigma (i)}. Por ejemplo, la permutación (3, 1, 2) corresponde a la funciónσ{\displaystyle \sigma }definido como σ(1)=3,σ(2)=1,σ(3)=2.{\displaystyle \sigma (1)=3,\quad \sigma (2)=1,\quad \sigma (3)=2.} El conjunto de todas las permutaciones de un conjunto forma un grupo llamado grupo simétrico del conjunto. La operación de grupo consiste en la composición de funciones (realizando una reordenación tras otra), lo que da como resultado otra función (reordenación).

En combinatoria elemental, las k -permutaciones , o permutaciones parciales , son arreglos ordenados de k elementos distintos seleccionados de un conjunto. Cuando k es igual al tamaño del conjunto, se trata de permutaciones en el sentido anterior.

Un cubo de Rubik en pleno giro.
En el popular rompecabezas Cubo de Rubik, inventado en 1974 por Ernő Rubik , cada giro de las caras del rompecabezas crea una permutación de los colores de la superficie.

Historia

En China, ya en el año 1000 a. C., se utilizaban en el I Ching ( Pinyin : Yi Jing) objetos que se asemejan a permutaciones, llamados hexagramas .

En Grecia, Plutarco escribió que Jenócrates de Calcedonia (396-314 a. C.) descubrió el número de sílabas diferentes posibles en la lengua griega. Este habría sido el primer intento registrado de resolver un problema difícil de permutaciones y combinaciones. [ 4 ]

Al-Khalil (717–786), matemático y criptógrafo árabe , escribió el Libro de los mensajes criptográficos . Contiene el primer uso de permutaciones y combinaciones para enumerar todas las palabras árabes posibles con y sin vocales. [ 5 ]

La regla para determinar el número de permutaciones de n objetos era conocida en la cultura india alrededor del año 1150 d. C. El Lilavati del matemático indio Bhāskara II contiene un pasaje que se traduce como sigue:

El producto de la multiplicación de la serie aritmética que comienza y aumenta de uno en uno y continúa hasta el número de posiciones, serán las variaciones de números con cifras específicas. [ 6 ]

En 1677, Fabian Stedman describió los factoriales al explicar el número de permutaciones de campanas en el repique de campanas . Partiendo de dos campanas: "primero, se debe admitir que dos pueden variar de dos maneras", lo cual ilustra mostrando 1 2 y 2 1. [ 7 ] Luego explica que con tres campanas hay "tres veces dos figuras que se pueden producir a partir de tres", lo cual también se ilustra. Su explicación implica "descartar 3, y quedará 1.2; descartar 2, y quedará 1.3; descartar 1, y quedará 2.3". [ 8 ] Luego pasa a cuatro campanas y repite el argumento de descarte mostrando que habrá cuatro conjuntos diferentes de tres. Efectivamente, este es un proceso recursivo. Continúa con cinco campanas usando el método de "descarte" y tabula las 120 combinaciones resultantes. [ 9 ] En este punto se da por vencido y comenta:

Ahora bien, la naturaleza de estos métodos es tal que los cambios en un número comprenden los cambios en todos los números menores, ... de tal manera que un Peal completo de cambios en un número parece formarse al unir los Peals completos en todos los números menores en un solo cuerpo; [ 10 ]

Stedman amplía la consideración de las permutaciones; pasa a considerar el número de permutaciones de las letras del alfabeto y de caballos de un establo de 20. [ 11 ]

Un primer caso en el que se estudiaron cuestiones matemáticas aparentemente inconexas mediante permutaciones se produjo alrededor de 1770, cuando Joseph Louis Lagrange , en el estudio de ecuaciones polinómicas, observó que las propiedades de las permutaciones de las raíces de una ecuación están relacionadas con las posibilidades de resolverla. Esta línea de investigación culminó, gracias al trabajo de Évariste Galois , en la teoría de Galois , que ofrece una descripción completa de lo que es posible e imposible al resolver ecuaciones polinómicas (con una incógnita) mediante radicales. En matemáticas modernas, existen muchas situaciones similares en las que comprender un problema requiere estudiar ciertas permutaciones relacionadas con él.

El estudio de las permutaciones como sustituciones en n elementos condujo a la noción de grupo como estructura algebraica , a través de los trabajos de Cauchy (memoria de 1815).

Las permutaciones desempeñaron un papel importante en el criptoanálisis de la máquina Enigma , un dispositivo de cifrado utilizado por la Alemania nazi durante la Segunda Guerra Mundial . En particular, una propiedad importante de las permutaciones, a saber, que dos permutaciones son conjugadas exactamente cuando tienen el mismo tipo de ciclo, fue utilizada por el criptólogo Marian Rejewski para descifrar la máquina Enigma alemana entre 1932 y 1933. [ 12 ] [ 13 ]

Definición

En los textos de matemáticas es costumbre denotar las permutaciones usando letras griegas minúsculas. [ 14 ]

Una permutación se puede definir como una biyección (una aplicación invertible, una función biyectiva) de un conjunto S en sí mismo:σ:S  S.{\displaystyle \sigma :S\ {\stackrel {\sim }{\longrightarrow }}\ S.} La permutación identidad se define porσ(incógnita)=incógnita{\displaystyle \sigma (x)=x}para todos los elementosincógnitaS{\displaystyle x\in S}y puede denotarse mediante el número1{\displaystyle 1}, [ a ] ​​poridentificación=identificaciónS{\displaystyle {\text{id}}={\text{id}}_{S}}, o mediante un único ciclo 1 (x). [ 15 ] [ 16 ]

El conjunto de todas las permutaciones de un conjunto con n elementos forma el grupo simétrico.Snorte{\displaystyle S_{n}}, donde la operación de grupo es la composición de funciones . Por lo tanto, para dos permutacionesσ{\displaystyle \sigma }yτ{\displaystyle \tau }en el grupoSnorte{\displaystyle S_{n}}, su productoπ=στ{\displaystyle \pi =\sigma \tau }se define por π(i)=σ(τ(i)).{\displaystyle \pi (i)=\sigma (\tau (i)).} La composición se suele escribir sin punto ni otro signo. En general, la composición de dos permutaciones no es conmutativa ; es decir, típicamente las permutacionesτσ{\displaystyle \tau \sigma }yστ{\displaystyle \sigma \tau }no son iguales.

Como biyección de un conjunto a sí mismo, una permutación es una función que realiza una reordenación de un conjunto, denominada permutación activa o sustitución . Un punto de vista anterior ve una permutación como una disposición ordenada o lista de todos los elementos de S , llamada permutación pasiva . [ 17 ] Según esta definición, todas las permutaciones en la notación de  una línea son pasivas. Este significado es sutilmente distinto de cómo se usa pasivo (es decir, alias ) en Transformación activa y pasiva y en otros lugares, [ 18 ] [ 19 ] que consideraría todas las permutaciones abiertas a interpretación pasiva (independientemente de si están en notación de una línea, notación de dos líneas, etc.).

Una permutaciónσ{\displaystyle \sigma }puede descomponerse en uno o más ciclos disjuntos que son las órbitas del grupo cíclicoσ={1,σ,σ2,}{\displaystyle \langle \sigma \rangle =\{1,\sigma ,\sigma ^{2},\ldots \}}actuando sobre el conjunto S. Se encuentra un ciclo aplicando repetidamente la permutación a un elemento:incógnita,σ(incógnita),σ(σ(incógnita)),,σk1(incógnita){\displaystyle x,\sigma (x),\sigma (\sigma (x)),\ldots ,\sigma ^{k-1}(x)}donde asumimosσk(incógnita)=incógnita{\displaystyle \sigma ^{k}(x)=x}Un ciclo que consta de k elementos se denomina k -ciclo. (Véase la sección  Notación de ciclos más adelante).

Un punto fijo de una permutaciónσ{\displaystyle \sigma }es un elemento x que se toma a sí mismo, es decirσ(incógnita)=incógnita{\displaystyle \sigma (x)=x}, formando un ciclo de 1(incógnita){\displaystyle (\,x\,)}Una permutación sin puntos fijos se llama desordenamiento . Una permutación que intercambia dos elementos (un único ciclo de 2 elementos) y deja los demás fijos se llama transposición .

Notaciones

Se utilizan varias notaciones para representar permutaciones de forma conveniente. Las propiedades de las permutaciones no dependen de la naturaleza de los elementos que se permutan, sino solo de su número, por lo que a menudo se considera el conjunto estándar.{1,2,,norte}{\displaystyle \{1,2,\ldots ,n\}}La notación cíclica es una opción popular , ya que es compacta y muestra claramente la estructura de la permutación. Este artículo utilizará la notación cíclica a menos que se especifique lo contrario.

Notación de dos líneas

La notación de dos líneas de Cauchy [ 20 ] [ 21 ] enumera los elementos de S en la primera fila y la imagen de cada elemento debajo de él en la segunda fila. Por ejemplo, la permutación de S = {1, 2, 3, 4, 5, 6} dada por la función

σ(1)=2,  σ(2)=6,  σ(3)=5,  σ(4)=4,  σ(5)=3,  σ(6)=1{\displaystyle \sigma (1)=2,\ \ \sigma (2)=6,\ \ \sigma (3)=5,\ \ \sigma (4)=4,\ \ \sigma (5)=3,\ \ \sigma (6)=1}

se puede escribir como

σ=(123456265431).{\displaystyle \sigma ={\begin{pmatrix}1&2&3&4&5&6\\2&6&5&4&3&1\end{pmatrix}}.}

Los elementos de S pueden aparecer en cualquier orden en la primera fila, por lo que esta permutación también podría escribirse:

σ=(234561654312)=(654321134562).{\displaystyle \sigma ={\begin{pmatrix}2&3&4&5&6&1\\6&5&4&3&1&2\end{pmatrix}}={\begin{pmatrix}6&5&4&3&2&1\\1&3&4&5&6&2\end{pmatrix}}.}

Notación de una sola línea

Si existe un orden "natural" para los elementos de S , [ b ] digamosincógnita1,incógnita2,,incógnitanorte{\displaystyle x_{1},x_{2},\ldots ,x_{n}}, entonces se utiliza esto para la primera fila de la notación de dos líneas:

σ=(incógnita1incógnita2incógnita3incógnitanorteσ(incógnita1)σ(incógnita2)σ(incógnita3)σ(incógnitanorte)).{\displaystyle \sigma ={\begin{pmatrix}x_{1}&x_{2}&x_{3}&\cdots &x_{n}\\\sigma (x_{1})&\sigma (x_{2})&\sigma (x_{3})&\cdots &\sigma (x_{n})\end{pmatrix}}.}

Bajo esta suposición, se puede omitir la primera fila y escribir la permutación en notación de una sola línea como

σ=σ(incógnita1)σ(incógnita2)σ(incógnita3)σ(incógnitanorte){\displaystyle \sigma =\sigma (x_{1})\;\sigma (x_{2})\;\sigma (x_{3})\;\cdots \;\sigma (x_{n})},

es decir, como una disposición ordenada de los elementos de S. [ 22 ] [ 23 ] Debe tenerse cuidado de distinguir la notación de una línea de la notación de ciclo que se describe a continuación: un uso común es omitir los paréntesis u otras marcas de delimitación para la notación de una línea, mientras que se usan paréntesis para la notación de ciclo. La notación de una línea también se llama representación de palabra . [ 24 ]

El ejemplo anterior quedaría entonces así:

σ=(123456265431)=265431.{\displaystyle \sigma ={\begin{pmatrix}1&2&3&4&5&6\\2&6&5&4&3&1\end{pmatrix}}=265431.}

(Normalmente, se utilizan comas para separar estas entradas solo si algunas tienen dos o más dígitos).

Esta forma compacta es común en combinatoria elemental e informática . Resulta especialmente útil en aplicaciones donde se comparan permutaciones para determinar si son mayores o menores utilizando el orden lexicográfico .

Notación cíclica

La notación cíclica describe el efecto de aplicar repetidamente la permutación a los elementos del conjunto S , donde una órbita se denomina ciclo . La permutación se escribe como una lista de ciclos; dado que los ciclos distintos involucran conjuntos de elementos disjuntos , esto se conoce como "descomposición en ciclos disjuntos".

Para escribir la permutaciónσ{\displaystyle \sigma }En notación cíclica, se procede de la siguiente manera:

  1. Escriba un corchete de apertura seguido de un elemento arbitrario x deS{\displaystyle S}: (incógnita{\displaystyle (\,x}
  2. Traza la órbita de x , anotando los valores bajo sucesivas aplicaciones deσ{\displaystyle \sigma }:(incógnita,σ(incógnita),σ(σ(incógnita)),{\displaystyle (\,x,\sigma (x),\sigma (\sigma (x)),\ldots }
  3. Repita hasta que el valor vuelva a x, y cierre el paréntesis sin repetir x :(incógnitaσ(incógnita)σ(σ(incógnita))){\displaystyle (\,x\,\sigma (x)\,\sigma (\sigma (x))\,\ldots \,)}
  4. Continúa con un elemento y de S que aún no se haya escrito y repite el proceso anterior:(incógnitaσ(incógnita)σ(σ(incógnita)))(y){\displaystyle (\,x\,\sigma (x)\,\sigma (\sigma (x))\,\ldots \,)(\,y\,\ldots \,)}
  5. Repita el procedimiento hasta que todos los elementos de S estén escritos en ciclos.

Además, es común omitir los 1-ciclos, ya que estos se pueden inferir: para cualquier elemento x en S que no aparezca en ningún ciclo, se asume implícitamenteσ(incógnita)=incógnita{\displaystyle \sigma (x)=x}. [ 25 ]

Siguiendo la convención de omitir los ciclos de longitud 1, se puede interpretar un ciclo individual como una permutación que fija todos los elementos que no están en el ciclo (una permutación cíclica que tiene solo un ciclo de longitud mayor que 1). Entonces, la lista de ciclos disjuntos puede verse como la composición de estas permutaciones cíclicas. Por ejemplo, la permutación de una líneaσ=265431{\displaystyle \sigma =265431}se puede escribir en notación cíclica como: σ=(126)(35)(4)=(126)(35).{\displaystyle \sigma =(126)(35)(4)=(126)(35).} Esto puede verse como la composiciónσ=κ1κ2{\displaystyle \sigma =\kappa _{1}\kappa _{2}}de permutaciones cíclicas κ1=(126)=(126)(3)(4)(5),κ2=(35)=(35)(1)(2)(4)(6).{\displaystyle \kappa _{1}=(126)=(126)(3)(4)(5),\quad \kappa _{2}=(35)=(35)(1)(2)(4)(6).} Si bien las permutaciones en general no conmutan, los ciclos disjuntos sí lo hacen; por ejemplo: σ=(126)(35)=(35)(126).{\displaystyle \sigma =(126)(35)=(35)(126).} Además, cada ciclo puede reescribirse desde un punto de partida diferente; por ejemplo, σ=(126)(35)=(261)(53).{\displaystyle \sigma =(126)(35)=(261)(53).} Así, se pueden escribir los ciclos disjuntos de una permutación dada de muchas maneras diferentes.

Una característica conveniente de la notación de ciclos es que la inversión de la permutación se obtiene invirtiendo el orden de los elementos en cada ciclo. Por ejemplo, σ1=(A2(126)(35))1=(621)(53).{\displaystyle \sigma ^{-1}=\left({\vphantom {A^{2}}}(126)(35)\right)^{-1}=(621)(53).}

Notación de ciclo canónico

Toda permutación tiene una notación de ciclo particular que resulta útil en muchos contextos combinatorios, especialmente en la biyección de Foata que se describe a continuación. La notación de ciclo canónica se define de la siguiente manera:

  • En cada ciclo, el elemento más grande aparece primero;
  • Los ciclos están ordenados en orden ascendente según su primer elemento, sin omitir los ciclos de 1 elemento.

Por ejemplo,(513)(6)(827)(94){\displaystyle (513)(6)(827)(94)}es una permutación deS={1,2,,9}{\displaystyle S=\{1,2,\ldots ,9\}}en notación de ciclo canónico ( terminología de Miklós Bóna ). [ 26 ] Richard Stanley llama a esto la representación estándar , [ 27 ] y Martin Aigner usa la forma estándar . [ 24 ] Sergey Kitaev también usa la terminología de "forma estándar", pero invierte ambas elecciones; es decir, cada ciclo enumera primero su elemento mínimo, y los ciclos se ordenan en orden descendente de sus elementos mínimos. [ 28 ]

Composición de permutaciones

Hay dos maneras de denotar la composición de dos permutaciones. En la notación más común,στ{\displaystyle \sigma \cdot \tau }es la función que asigna cualquier elemento x aσ(τ(incógnita)){\displaystyle \sigma (\tau (x))}. La permutación más a la derecha se aplica primero al argumento, [ 29 ] porque el argumento se escribe a la derecha de la función.

Una regla diferente para multiplicar permutaciones proviene de escribir el argumento a la izquierda de la función, de modo que la permutación más a la izquierda actúa primero. [ 30 ] [ 31 ] [ 32 ] En esta notación, la permutación a menudo se escribe como un exponente, por lo que σ actuando sobre x se escribe x σ ; entonces el producto se define porincógnitaστ=(incógnitaσ)τ{\displaystyle x^{\sigma \cdot \tau }=(x^{\sigma })^{\tau }}Este artículo utiliza la primera definición, donde se aplica primero la permutación más a la derecha.

La operación de composición de funciones satisface los axiomas de un grupo . Es asociativa , lo que significa(ρσ)τ=ρ(στ){\displaystyle (\rho \sigma )\tau =\rho (\sigma \tau )}y los productos de más de dos permutaciones generalmente se escriben sin paréntesis. La operación de composición también tiene un elemento identidad (la permutación identidad).identificación{\displaystyle {\text{id}}}), y cada permutaciónσ{\displaystyle \sigma }tiene un inversoσ1{\displaystyle \sigma ^{-1}}(su función inversa ) conσ1σ=σσ1=identificación{\displaystyle \sigma ^{-1}\sigma =\sigma \sigma ^{-1}={\text{id}}}.

Otros usos del término permutación

El concepto de permutación como disposición ordenada admite varias generalizaciones que se han denominado permutaciones , especialmente en la literatura más antigua.

k -permutaciones de n

En la literatura antigua y en los libros de texto elementales, una k -permutación de n (a veces llamada permutación parcial , secuencia sin repetición , variación o arreglo ) significa un arreglo ordenado (lista) de un subconjunto de k elementos de un conjunto de n . [ c ] [ 33 ] [ 34 ] El número de tales k- permutaciones ( k -arreglos) denorte{\displaystyle n}se denota de diversas maneras mediante símbolos comoPAGknorte{\displaystyle P_{k}^{n}}, nortePAGk{\displaystyle _{n}P_{k}},nortePAGk{\displaystyle ^{n}\!P_{k}},PAGnorte,k{\displaystyle P_{n,k}},PAG(norte,k){\displaystyle P(n,k)}, oAnortek{\displaystyle A_{n}^{k}}, [ 35 ] calculado mediante la fórmula: [ 36 ]PAG(norte,k)=norte(norte1)(norte2)(nortek+1)k Fadotors,{\displaystyle P(n,k)=\underbrace {n\cdot (n-1)\cdot (n-2)\cdots (n-k+1)} _{k\ \mathrm {factores} },}

que es 0 cuando k > n , y en caso contrario es igual a norte¡(nortek)¡.{\displaystyle {\frac {n!}{(nk)!}}.}

El producto está bien definido sin asumir quenorte{\displaystyle n}es un entero no negativo y tiene importancia también fuera de la combinatoria; se le conoce como el símbolo de Pochhammer.(norte)k{\displaystyle (n)_{k}}o como elk{\displaystyle k}-octavo factorial descendentenortek_{\displaystyle n^{\underline {k}}}: PAG(norte,k)=nortePAGk=(norte)k=nortek_.{\displaystyle P(n,k)={_{n}}P_{k}=(n)_{k}=n^{\underline {k}}.}

Este uso del término permutación está estrechamente asociado con el término combinación para referirse a un subconjunto: es decir, una k-combinación de un conjunto S es un subconjunto de k elementos (no ordenado) de S. Ordenar las k -combinaciones de S de todas las maneras posibles produce las k -permutaciones de S. Por lo tanto, el número de k -combinaciones de un conjunto de n elementos, C ( n , k ), está relacionado con el número de k -permutaciones de n mediante: do(norte,k)=PAG(norte,k)PAG(k,k)=nortek_k¡=norte¡(nortek)¡k¡.{\displaystyle C(n,k)={\frac {P(n,k)}{P(k,k)}}={\frac {n^{\underline {k}}}{k!}}={\frac {n!}{(nk)!\,k!}}.}

Estos números también se conocen como coeficientes binomiales , generalmente denotados(nortek){\displaystyle {\tbinom {n}{k}}}: do(norte,k)=nortedok=(nortek).{\displaystyle C(n,k)={_{n}}C_{k}={\binom {n}{k}}.}

Permutaciones con repetición

Las disposiciones ordenadas de k elementos de un conjunto S , donde se permite la repetición, se denominan k -tuplas . A veces se las ha denominado permutaciones con repetición , aunque no son permutaciones en el sentido habitual. También se las llama palabras o cadenas sobre el alfabeto S. Si el conjunto S tiene n elementos, el número de k -tuplas sobre S esnortek.{\displaystyle n^{k}.}

Permutaciones de multiconjuntos

Permutaciones sin repetición a la izquierda, con repetición a su derecha.

Si M es un multiconjunto finito , entonces una permutación de multiconjunto es una disposición ordenada de elementos de M en la que cada elemento aparece un número de veces exactamente igual a su multiplicidad en M. Un anagrama de una palabra con algunas letras repetidas es un ejemplo de una permutación de multiconjunto. [ d ] Si las multiplicidades de los elementos de M (tomados en algún orden) sonmetro1{\displaystyle m_{1}},metro2{\displaystyle m_{2}}, ...,metrol{\displaystyle m_{l}}y su suma (es decir, el tamaño de M ) es n , entonces el número de permutaciones de multiconjuntos de M viene dado por un coeficiente multinomial : [ 37 ](nortemetro1,metro2,,metrol)=norte¡metro1¡metro2¡metrol¡=(i=1lmetroi)¡i=1lmetroi¡.{\displaystyle {n \choose m_{1},m_{2},\ldots ,m_{l}}={\frac {n!}{m_{1}!\,m_{2}!\,\cdots \,m_{l}!}}={\frac {\left(\sum _{i=1}^{l}{m_{i}}\right)!}{\prod _{i=1}^{l}{m_{i}!}}}.} Por ejemplo, el número de anagramas distintos de la palabra MISSISSIPPI es [ 38 ].11¡1¡4¡4¡2¡=34650.{\displaystyle {\frac {11!}{1!\,4!\,4!\,2!}}=34650.}

Una k -permutación de un multiconjunto M es una secuencia de k elementos de M en la que cada elemento aparece un número de veces menor o igual a su multiplicidad en M ( el número de repetición de un elemento ). En este caso, el número de permutaciones se puede determinar con funciones generadoras : esk¡{\displaystyle k!}veces el coeficiente deincógnitak{\displaystyle x^{k}}en el producto

i=1lj=0metroiincógnitajj¡{\displaystyle \prod _{i=1}^{l}\sum _{j=0}^{m_{i}}{\frac {x^{j}}{j!}}}. [ 39 ]

Continuando con el ejemplo anterior, en el caso del multiconjunto de letras en MISSISSIPPI, la función generadora resultante es (1+incógnita)(1+incógnita+incógnita2/2)(1+incógnita+incógnita2/2+incógnita3/6+incógnita4/24)2=1+4incógnita+152¡incógnita2+533¡incógnita3+1764¡incógnita4+5505¡incógnita5+16106¡incógnita6+43407¡incógnita7+104308¡incógnita8+214209¡incógnita9+3465010¡incógnita10+3465011¡incógnita11.{\displaystyle {\begin{aligned}&(1+x)\cdot (1+x+x^{2}/2)\cdot (1+x+x^{2}/2+x^{3}/6+x^{4}/24)^{2}=\\&1+4x+{\frac {15}{2!}}x^{2}+{\frac {53}{3!}}x^{3}+{\frac {176}{4!}}x^{4}+{\frac {550}{5!}}x^{5}+{\frac {1610}{6!}}x^{6}+{\frac {4340}{7!}}x^{7}+{\frac {10430}{8!}}x^{8}+{\frac {21420}{9!}}x^{9}+{\frac {34650}{10!}}x^{10}+{\frac {34650}{11!}}x^{11}.\end{aligned}}} Así, el número de 11-permutaciones es 34650 (el mismo resultado que el anterior), pero también tenemos el número de k -permutaciones con k que varía de 0 a 11.

permutaciones circulares

Las permutaciones, cuando se consideran como arreglos, a veces se denominan arreglos linealmente ordenados . Sin embargo, si los objetos se disponen de forma circular, este orden distintivo se debilita: no hay un "primer elemento" en el arreglo, ya que cualquier elemento puede considerarse como el inicio. Un arreglo de objetos distintos de forma circular se denomina permutación circular . [ 40 ] [ e ] Estas pueden definirse formalmente como clases de equivalencia de permutaciones ordinarias de estos objetos, para la relación de equivalencia generada al mover el último elemento del arreglo lineal al frente.

Dos permutaciones circulares son equivalentes si una puede transformarse en la otra mediante rotación. Las siguientes cuatro permutaciones circulares de cuatro letras se consideran iguales.

1432421323413124{\displaystyle {\begin{matrix}&1&\\4&&3\\&2&\end{matrix}}\qquad {\begin{matrix}&4&\\2&&1\\&3&\end{matrix}}\qquad {\begin{matrix}&2&\\3&&4\\&1&\end{matrix}}\qquad {\begin{matrix}&3&\\1&&2\\&4&\end{matrix}}}

Las disposiciones circulares deben leerse en sentido contrario a las agujas del reloj, por lo que las dos siguientes no son equivalentes, ya que ninguna rotación puede llevar una a la otra.

14321342{\displaystyle {\begin{matrix}&1&\\4&&3\\&2&\end{matrix}}\qquad {\begin{matrix}&1&\\3&&4\\&2&\end{matrix}}}

Hay ( n – 1)! permutaciones circulares de un conjunto con n elementos.

Propiedades

El número de permutaciones de n objetos distintos es n !.

El número de n -permutaciones con k ciclos disjuntos es el número de Stirling sin signo de primera especie , denotadodo(norte,k){\displaystyle c(n,k)}o[nortek]{\displaystyle [{\begin{smallmatrix}n\\k\end{smallmatrix}}]}. [ 41 ]

Tipo de ciclo

Los ciclos (incluidos los puntos fijos) de una permutaciónσ{\displaystyle \sigma }de un conjunto con n elementos particionan ese conjunto; por lo tanto, las longitudes de estos ciclos forman una partición entera de n , que se denomina tipo de ciclo (o a veces estructura de ciclo o forma de ciclo ) deσ{\displaystyle \sigma }. Hay un "1" en el tipo de ciclo para cada punto fijo deσ{\displaystyle \sigma }, un "2" por cada transposición, y así sucesivamente. El tipo de ciclo deβ=(125)(34)(68)(7){\displaystyle \beta =(1\,2\,5\,)(\,3\,4\,)(6\,8\,)(\,7\,)}es(3,2,2,1).{\displaystyle (3,2,2,1).}

Esto también puede escribirse de forma más compacta como [1 1 2 2 3 1 ] . Más precisamente, la forma general es[1α12α2norteαnorte]{\displaystyle [1^{\alpha _{1}}2^{\alpha _{2}}\dotsm n^{\alpha _{n}}]}, dóndeα1,,αnorte{\displaystyle \alpha _{1},\ldots ,\alpha _{n}}son los números de ciclos de longitud respectiva. El número de permutaciones de un tipo de ciclo dado es [ 42 ]

norte¡1α12α2norteαnorteα1¡α2¡αnorte¡{\displaystyle {\frac {n!}{1^{\alpha _{1}}2^{\alpha _{2}}\dotsm n^{\alpha _{n}}\alpha _{1}!\alpha _{2}!\dotsm \alpha _{n}!}}}.

El número de tipos de ciclos de un conjunto con n elementos es igual al valor de la función de partición.pag(norte){\displaystyle p(n)}.

El polinomio índice de ciclos de Polya es una función generadora que cuenta las permutaciones según su tipo de ciclo.

Permutaciones conjugadas

En general, la composición de permutaciones escritas en notación cíclica no sigue un patrón fácilmente descriptible: los ciclos de la composición pueden ser diferentes de los que se componen. Sin embargo, el tipo de ciclo se conserva en el caso especial de conjugar una permutación.σ{\displaystyle \sigma }por otra permutaciónπ{\displaystyle \pi }, lo que significa formar el productoπσπ1{\displaystyle \pi \sigma \pi ^{-1}}. Aquí,πσπ1{\displaystyle \pi \sigma \pi ^{-1}}es el conjugado deσ{\displaystyle \sigma }porπ{\displaystyle \pi }y su notación de ciclo se puede obtener tomando la notación de ciclo paraσ{\displaystyle \sigma }y aplicarπ{\displaystyle \pi }a todas las entradas en ella. [ 43 ] De ello se deduce que dos permutaciones son conjugadas exactamente cuando tienen el mismo tipo de ciclo.

Orden de una permutación

El orden de una permutaciónσ{\displaystyle \sigma }es el entero positivo más pequeño m tal queσmetro=id{\displaystyle \sigma ^{m}=\mathrm {id} }Es el mínimo común múltiplo de las longitudes de sus ciclos. Por ejemplo, el orden deσ=(152)(34){\displaystyle \sigma =(152)(34)}eslcm(3,2)=6{\displaystyle {\text{lcm}}(3,2)=6}.

Paridad de una permutación

Toda permutación de un conjunto finito puede expresarse como el producto de transposiciones. [ 44 ] Si bien pueden existir muchas expresiones de este tipo para una permutación dada, todas contienen un número par o un número impar de transposiciones. Por lo tanto, todas las permutaciones pueden clasificarse como pares o impares según este número.

Este resultado puede extenderse para asignar un signo , escritosgnσ{\displaystyle \operatorname {sgn} \sigma }, a cada permutación.sgnσ=+1{\displaystyle \operatorname {sgn} \sigma =+1}siσ{\displaystyle \sigma }es par ysgnσ=1{\displaystyle \operatorname {sgn} \sigma =-1}siσ{\displaystyle \sigma }es impar. Entonces, para dos permutacionesσ{\displaystyle \sigma }yπ{\displaystyle \pi }

sgn(σπ)=sgnσsgnπ.{\displaystyle \operatorname {sgn} (\sigma \pi )=\operatorname {sgn} \sigma \cdot \operatorname {sgn} \pi .}

Resulta quesgn(σσ1)=+1.{\displaystyle \operatorname {sgn} \left(\sigma \sigma ^{-1}\right)=+1.}

El signo de una permutación es igual al determinante de su matriz de permutación (abajo).

Representación matricial

Una matriz de permutación es una matriz n × n que tiene exactamente una entrada 1 en cada columna y en cada fila, y todas las demás entradas son 0. Hay varias maneras de asignar una matriz de permutación a una permutación de {1, 2, ..., n }. Un enfoque natural es definirLσ{\displaystyle L_{\sigma }}ser la transformación lineal deRnorte{\displaystyle \mathbb {R} ^{n}}que permuta la base estándar{mi1,,minorte}{\displaystyle \{\mathbf {e} _{1},\ldots ,\mathbf {e} _{n}\}}porLσ(mij)=miσ(j){\displaystyle L_{\sigma }(\mathbf {e} _{j})=\mathbf {e} _{\sigma (j)}}y definirMETROσ{\displaystyle M_{\sigma }}ser su matriz. Es decir,METROσ{\displaystyle M_{\sigma }}tiene su j -ésima columna igual al vector columna n × 1miσ(j){\displaystyle \mathbf {e} _{\sigma (j)}}: su entrada ( i , j ) es 1 si i = σ ( j ), y 0 en caso contrario. Dado que la composición de aplicaciones lineales se describe mediante la multiplicación de matrices , se deduce que esta construcción es compatible con la composición de permutaciones: METROσMETROτ=METROστ.{\displaystyle M_{\sigma }M_{\tau }=M_{\sigma \tau }.} Por ejemplo, las permutaciones de una sola líneaσ=213, τ=231{\displaystyle \sigma =213,\ \tau =231}tener productoστ=132{\displaystyle \sigma \tau =132}y las matrices correspondientes son: METROσMETROτ=(010100001)(001100010)=(100001010)=METROστ.{\displaystyle M_{\sigma }M_{\tau }={\begin{pmatrix}0&1&0\\1&0&0\\0&0&1\end{pmatrix}}{\begin{pmatrix}0&0&1\\1&0&0\\0&1&0\end{pmatrix}}={\begin{pmatrix}1&0&0\\0&0&1\\0&1&0\end{pmatrix}}=M_{\sigma \tau }.}

Composición de permutaciones correspondiente a una multiplicación de matrices de permutación.

También es común en la literatura encontrar la convención inversa, donde se asocia una permutación σ a la matriz.PAGσ=(METROσ)1=(METROσ)T{\displaystyle P_{\sigma }=(M_{\sigma })^{-1}=(M_{\sigma })^{T}}cuya entrada ( i , j ) es 1 si j = σ ( i ) y es 0 en caso contrario. En esta convención, las matrices de permutación se multiplican en el orden opuesto al de las permutaciones, es decir,PAGσPAGτ=PAGτσ{\displaystyle P_{\sigma }P_{\tau }=P_{\tau \sigma }}En esta correspondencia, las matrices de permutación actúan en el lado derecho de la matriz estándar.1×norte{\displaystyle 1\times n}vectores fila(mii)T{\displaystyle ({\bf {e}}_{i})^{T}}:(mii)TPAGσ=(miσ(i))T{\displaystyle ({\bf {e}}_{i})^{T}P_{\sigma }=({\bf {e}}_{\sigma (i)})^{T}}.

La tabla de Cayley de la derecha muestra estas matrices para permutaciones de 3 elementos.

Permutaciones de conjuntos totalmente ordenados

En algunas aplicaciones, los elementos del conjunto que se está permutando se comparan entre sí. Esto requiere que el conjunto S tenga un orden total tal que se puedan comparar cualesquiera dos elementos. El conjunto {1, 2, ..., n } con la relación ≤ habitual es el conjunto más utilizado en estas aplicaciones.

Varias propiedades de una permutación están directamente relacionadas con el orden total de S, considerando la permutación escrita en notación de una línea como una secuencia.σ=σ(1)σ(2)σ(norte){\displaystyle \sigma =\sigma (1)\sigma (2)\cdots \sigma (n)}.

Ascensos, descensos, carreras, superaciones, récords

Un ascenso de una permutación σ de n es cualquier posición i < n donde el valor siguiente es mayor que el actual. Es decir, i es un ascenso si   σ(i)<σ(i+1){\displaystyle \sigma (i)<\sigma (i{+}1)}. Por ejemplo, la permutación 3452167 tiene ascensos (en las posiciones) 1, 2, 5 y 6.

De manera similar, un descenso es una posición i < n con  σ(i)>σ(i+1){\displaystyle \sigma (i)>\sigma (i{+}1)}, así que cada yo con1i<norte{\displaystyle 1\leq i<n}es un ascenso o un descenso.

Una secuencia ascendente de una permutación es una subsecuencia contigua creciente no vacía que no se puede extender en ninguno de sus extremos; corresponde a una secuencia máxima de ascensos sucesivos (esta última puede estar vacía: entre dos descensos sucesivos aún existe una secuencia ascendente de longitud  1). Por el contrario, una subsecuencia creciente de una permutación no es necesariamente contigua: es una secuencia creciente obtenida al omitir algunos de los valores de la notación de una línea. Por ejemplo, la permutación 2453167 tiene las secuencias ascendentes 245, 3 y 167, mientras que tiene una subsecuencia creciente 2367.

Si una permutación tiene k  1 descensos, entonces debe ser la unión de k rachas ascendentes. [ 45 ]

El número de permutaciones de n con k ascensos es (por definición) el número euleriano .nortek{\displaystyle \textstyle \left\langle {n \atop k}\right\rangle }; este es también el número de permutaciones de n con k descensos. Sin embargo, algunos autores definen el número eulerianonortek{\displaystyle \textstyle \left\langle {n \atop k}\right\rangle }como el número de permutaciones con k rachas ascendentes, que corresponde a k − 1 descensos. [ 46 ]

Una superación de una permutación σ 1 σ 2 ... σ n es un índice j tal que σ j > j . Si la desigualdad no es estricta (es decir, σ jj ), entonces j se denomina superación débil . El número de n -permutaciones con k superaciones coincide con el número de n -permutaciones con k descensos. [ 47 ]

Un récord o máximo de izquierda a derecha de una permutación σ es un elemento i tal que σ ( j ) < σ ( i ) para todo j < i .

Lema de transición de Foata

La biyección fundamental de Foata transforma una permutación σ con una forma de ciclo canónico dada en la permutaciónF(σ)=σ^{\displaystyle f(\sigma )={\hat {\sigma }}}cuya notación de una sola línea tiene la misma secuencia de elementos sin paréntesis. [ 27 ] [ 48 ] Por ejemplo: σ=(513)(6)(827)(94)=(123456789375916824),{\displaystyle \sigma =(513)(6)(827)(94)={\begin{pmatrix}1&2&3&4&5&6&7&8&9\\3&7&5&9&1&6&8&2&4\end{pmatrix}},}

σ^=513682794=(123456789513682794).{\displaystyle {\hat {\sigma }}=513682794={\begin{pmatrix}1&2&3&4&5&6&7&8&9\\5&1&3&6&8&2&7&9&4\end{pmatrix}}.}

Aquí el primer elemento en cada ciclo canónico de σ se convierte en un registro (máximo de izquierda a derecha) deσ^{\displaystyle {\hat {\sigma }}}. Dadoσ^{\displaystyle {\hat {\sigma }}}, uno puede encontrar sus registros e insertar paréntesis para construir la transformación inversa.σ=F1(σ^){\displaystyle \sigma =f^{-1}({\hat {\sigma }})}. Subrayando los registros en el ejemplo anterior:σ^=5_136_8_279_4{\displaystyle {\hat {\sigma }}={\underline {5}}\,1\,3\,{\underline {6}}\,{\underline {8}}\,2\,7\,{\underline {9}}\,4}, lo que permite la reconstrucción de los ciclos de σ .

La siguiente tabla muestraσ^{\displaystyle {\hat {\sigma }}}y σ para las seis permutaciones de S = {1, 2, 3}, con el texto en negrita a cada lado que muestra la notación utilizada en la biyección: notación de una línea paraσ^{\displaystyle {\hat {\sigma }}}y notación de ciclo canónico para σ .

σ^=F(σ)σ=F1(σ^)123=(1)(2)(3)123=(1)(2)(3)132=(1)(32)132=(1)(32)213=(21)(3)213=(21)(3)231=(312)321=(2)(31)312=(321)231=(312)321=(2)(31)312=(321){\displaystyle {\begin{array}{l|l}{\hat {\sigma }}=f(\sigma )&\sigma =f^{-1}({\hat {\sigma }})\\\hline \mathbf {123} =(\,1\,)(\,2\,)(\,3\,)&123=\mathbf {(\,1\,)(\,2\,)(\,3\,)} \\\mathbf {132} =(\,1\,)(\,3\,2\,)&132=\mathbf {(\,1\,)(\,3\,2\,)} \\\mathbf {213} =(\,2\,1\,)(\,3\,)&213=\mathbf {(\,2\,1\,)(\,3\,)} \\\mathbf {231} =(\,3\,1\,2\,)&321=\mathbf {(\,2\,)(\,3\,1\,)} \\\mathbf {312} =(\,3\,2\,1\,)&231=\mathbf {(\,3\,1\,2\,)} \\\mathbf {321} =(\,2\,)(\,3\,1\,)&312=\mathbf {(\,3\,2\,1\,)} \end{array}}} Como primer corolario, el número de n -permutaciones con exactamente k registros es igual al número de n -permutaciones con exactamente k ciclos: este último número es el número de Stirling sin signo de primera especie ,do(norte,k){\displaystyle c(n,k)}. Además, el mapeo de Foata toma una n -permutación con k excedencias débiles a una n -permutación con k − 1 ascensos. [ 48 ] Por ejemplo, (2)(31) = 321 tiene k = 2 excedencias débiles (en el índice 1 y 2), mientras que f (321) = 231 tiene k − 1 = 1 ascenso (en el índice 1; es decir, de 2 a 3).

Inversiones

Un rompecabezas de 15 piezas con una configuración irresoluble; todas sus fichas numéricas están en orden numérico, excepto las fichas 14 y 15, que están intercambiadas.
En el rompecabezas 15, el objetivo es colocar las casillas en orden ascendente. Las posiciones iniciales que tienen un número impar de inversiones son imposibles de resolver. [ 49 ]

Una inversión de una permutación σ es un par ( i , j ) de posiciones donde las entradas de una permutación están en orden opuesto: i<j{\displaystyle i<j}yσ(i)>σ(j){\displaystyle \sigma (i)>\sigma (j)}. [ 50 ] Por lo tanto, un descenso es una inversión en dos posiciones adyacentes. Por ejemplo, σ = 23154 tiene ( i , j ) = (1, 3), (2, 3) y (4, 5), donde ( σ ( i ), σ ( j )) = (2, 1), (3, 1) y (5, 4).

A veces, una inversión se define como el par de valores ( σ ( i ), σ ( j )); esto no hace ninguna diferencia en cuanto al número de inversiones, y el par inverso ( σ ( j ), σ ( i )) es una inversión en el sentido anterior para la permutación inversa σ −1 .

El número de inversiones es una medida importante del grado de desorden de las entradas de una permutación; es el mismo para σ y para σ −1 . Para ordenar una permutación con k inversiones (es decir, transformarla en la permutación identidad), aplicando sucesivamente transposiciones adyacentes (multiplicación por la derecha) , siempre es posible y requiere una secuencia de k operaciones de este tipo. Además, cualquier elección razonable para las transposiciones adyacentes funcionará: basta con elegir en cada paso una transposición de i e i + 1, donde i es un descenso de la permutación modificada hasta el momento (de modo que la transposición elimine este descenso en particular, aunque podría crear otros). Esto se debe a que aplicar dicha transposición reduce el número de inversiones en  1; mientras este número no sea cero, la permutación no es la identidad, por lo que tiene al menos un descenso. El ordenamiento de burbuja y el ordenamiento por inserción pueden interpretarse como casos particulares de este procedimiento para ordenar una secuencia. Por cierto, este procedimiento demuestra que cualquier permutación σ puede escribirse como producto de transposiciones adyacentes; pues para ello basta con invertir cualquier secuencia de dichas transposiciones que transforme σ en la identidad. De hecho, al enumerar todas las secuencias de transposiciones adyacentes que transformarían σ en la identidad, se obtiene (tras la inversión) una lista completa de todas las expresiones de longitud mínima que escriben σ como producto de transposiciones adyacentes.

El número de permutaciones de n con k inversiones se expresa mediante un número de Mahon . [ 51 ] Este es el coeficiente deqk{\displaystyle q^{k}}en la expansión del producto

[norte]q¡=metro=1nortei=0metro1qi=1(1+q)(1+q+q2)(1+q+q2++qnorte1),{\displaystyle [n]_{q}!=\prod _{m=1}^{n}\sum _{i=0}^{m-1}q^{i}=1\left(1+q\right)\left(1+q+q^{2}\right)\cdots \left(1+q+q^{2}+\cdots +q^{n-1}\right),}

La notación[norte]q¡{\displaystyle [n]_{q}!}denota el q-factorial . Esta expansión aparece comúnmente en el estudio de collares .

DejarσSnorte,i,j{1,2,,norte}{\displaystyle \sigma \in S_{n},i,j\in \{1,2,\dots ,n\}}de tal manera quei<j{\displaystyle i<j}yσ(i)>σ(j){\displaystyle \sigma (i)>\sigma (j)}En este caso, digamos el peso de la inversión.(i,j){\displaystyle (i,j)}esσ(i)σ(j){\displaystyle \sigma (i)-\sigma (j)}Kobayashi (2011) demostró la fórmula de enumeración. i<j,σ(i)>σ(j)(σ(i)σ(j))=|{τSnorteτσ,τ es bigrassmanniano}{\displaystyle \sum _{i<j,\sigma (i)>\sigma (j)}(\sigma (i)-\sigma (j))=|\{\tau \in S_{n}\mid \tau \leq \sigma ,\tau {\text{ is bigrassmannian}}\}}

dónde{\displaystyle \leq }denota el orden de Bruhat en los grupos simétricos . Este orden parcial graduado aparece a menudo en el contexto de los grupos de Coxeter .

Permutaciones en computación

Permutaciones de numeración

Una forma de representar permutaciones de n elementos es mediante un entero N con 0  N < n !, siempre que se disponga de métodos convenientes para convertir entre el número y la representación de una permutación como una disposición ordenada (secuencia). Esto proporciona la representación más compacta de permutaciones arbitrarias y, en informática, resulta particularmente atractivo cuando n es lo suficientemente pequeño como para que N pueda almacenarse en una palabra de máquina; para palabras de 32 bits, esto significa n ≤ 12, y para palabras de 64 bits, n ≤ 20. La conversión puede realizarse mediante la forma intermedia de una secuencia de números d n , d n −1 , ..., d 2 , d 1 , donde d i es un entero no negativo menor que i (se puede omitir d 1 , ya que siempre es 0, pero su presencia facilita la descripción de la conversión posterior a una permutación). El primer paso consiste simplemente en expresar N en el sistema numérico factorial , que es una representación particular de base mixta , donde, para números menores que n !, las bases (valores posicionales o factores de multiplicación) para dígitos sucesivos son ( n − 1)!, ( n 2)!, ..., 2!, 1!. El segundo paso interpreta esta secuencia como un código de Lehmer o (de forma casi equivalente) como una tabla de inversión.       

En el código de Lehmer para una permutación σ , el número d n representa la elección realizada para el primer término σ 1 , el número d n −1 representa la elección realizada para el segundo término σ 2 entre los n − 1 elementos restantes del conjunto, y así sucesivamente. Más precisamente, cada d n +1− i da el número de elementos restantes estrictamente menores que el término σ i . Dado que esos elementos restantes necesariamente aparecerán como algún término posterior σ j , el dígito d n +1− i cuenta las inversiones ( i , j ) que involucran a i como índice menor (el número de valores j para los cuales i < j y σ i > σ j ). La tabla de inversión para σ es bastante similar, pero aquí d n + 1− k cuenta el número de inversiones ( i , j ) donde k = σ j aparece como el menor de los dos valores que aparecen en orden invertido. [ 52 ]         

Ambas codificaciones pueden visualizarse mediante un diagrama de Rothe de n x n [ 53 ] (llamado así por Heinrich August Rothe ), en el que los puntos en ( i , σi ) marcan las entradas de la permutación, y una cruz en ( i , σj ) marca la inversión ( i , j ); por definición de inversiones, aparece una cruz en cualquier casilla que se encuentre antes del punto ( j , σj ) en su columna y antes del punto ( i , σi ) en su fila. El código de Lehmer indica el número de cruces en filas sucesivas, mientras que la tabla de inversión indica el número de cruces en columnas sucesivas; es simplemente el código de Lehmer para la permutación inversa, y viceversa.  

Para convertir eficazmente un código de Lehmer d n , d n −1 , ..., d 2 , d 1 en una permutación de un conjunto ordenado S , se puede comenzar con una lista de los elementos de S en orden ascendente, y para i creciente de 1 a n establecer σ i al elemento en la lista que está precedido por d n +1− i otros, y eliminar ese elemento de la lista. Para convertir una tabla de inversión d n , d n −1 , ..., d 2 , d 1 en la permutación correspondiente, se pueden recorrer los números de d 1 a d n mientras se insertan los elementos de S de mayor a menor en una secuencia inicialmente vacía; en el paso usando el número d de la tabla de inversión, el elemento de S insertado en la secuencia en el punto donde está precedido por d elementos ya presentes. Alternativamente, se podrían procesar los números de la tabla de inversión y los elementos de S en orden inverso, comenzando con una fila de n espacios vacíos, y en cada paso colocar el elemento de S en el espacio vacío que está precedido por otros d espacios vacíos.

La conversión de números naturales sucesivos al sistema numérico factorial produce esas secuencias en orden lexicográfico (como ocurre con cualquier sistema numérico de base mixta), y su posterior conversión a permutaciones conserva el orden lexicográfico, siempre que se utilice la interpretación del código de Lehmer (usando tablas de inversión, se obtiene un orden diferente, donde se comienza comparando las permutaciones por la posición de sus entradas 1 en lugar de por el valor de sus primeras entradas). La suma de los números en la representación del sistema numérico factorial da el número de inversiones de la permutación, y la paridad de esa suma da la signatura de la permutación. Además, las posiciones de los ceros en la tabla de inversión dan los valores de los máximos de izquierda a derecha de la permutación (en el ejemplo 6, 8, 9) mientras que las posiciones de los ceros en el código de Lehmer son las posiciones de los mínimos de derecha a izquierda (en el ejemplo, las posiciones 4, 8, 9 de los valores 1, 2, 5); Esto permite calcular la distribución de tales extremos entre todas las permutaciones. Una permutación con código de Lehmer d n , d n −1 , ..., d 2 , d 1 tiene un ascenso ni si y solo si d id i +1 .

Algoritmos para generar permutaciones

En computación, puede ser necesario generar permutaciones de una secuencia de valores dada. Los métodos más adecuados para ello dependen de si se desean permutaciones elegidas al azar o todas las permutaciones, y en este último caso, si se requiere un orden específico. Otra cuestión es si se debe tener en cuenta la posible igualdad entre los elementos de la secuencia; de ser así, solo se deben generar permutaciones multiconjunto distintas de la secuencia.

Una forma obvia de generar permutaciones de n es generar valores para el código de Lehmer (posiblemente usando la representación del sistema numérico factorial de enteros hasta n !) y convertirlos en las permutaciones correspondientes. Sin embargo, este último paso, aunque sencillo, es difícil de implementar de manera eficiente, ya que requiere n operaciones de selección y eliminación de una secuencia en una posición arbitraria; de las representaciones obvias de la secuencia como un arreglo o una lista enlazada , ambas requieren (por diferentes razones) aproximadamente /4 operaciones para realizar la conversión. Dado que n probablemente sea bastante pequeño (especialmente si se necesita generar todas las permutaciones) , esto no representa un gran problema, pero resulta que tanto para la generación aleatoria como para la sistemática existen alternativas simples que funcionan considerablemente mejor. Por esta razón, no parece útil, aunque ciertamente posible, emplear una estructura de datos especial que permita realizar la conversión del código de Lehmer a permutación en tiempo O ( n log n ) .

Generación aleatoria de permutaciones

Para generar permutaciones aleatorias de una secuencia dada de n valores, no hay diferencia entre aplicar una permutación de n seleccionada al azar o elegir un elemento aleatorio del conjunto de permutaciones distintas (multiconjunto) de la secuencia. Esto se debe a que, aunque en el caso de valores repetidos puede haber muchas permutaciones distintas de n que den como resultado la misma secuencia permutada, el número de dichas permutaciones es el mismo para cada resultado posible. A diferencia de la generación sistemática, que se vuelve inviable para valores grandes de n debido al crecimiento del número n !, no hay razón para suponer que n será pequeño para la generación aleatoria.

La idea básica para generar una permutación aleatoria es generar al azar una de las n ! secuencias de enteros d 1 , d 2 ,..., d n que satisfacen 0 ≤ d i < i (ya que d 1 siempre es cero, puede omitirse) y convertirla en una permutación a través de una correspondencia biyectiva . Para esta última correspondencia, se podría interpretar la secuencia (inversa) como un código de Lehmer, lo que da lugar a un método de generación publicado por primera vez en 1938 por Ronald Fisher y Frank Yates . [ 54 ] Si bien en aquel entonces la implementación informática no era un problema, este método adolece de la dificultad esbozada anteriormente para convertir eficientemente del código de Lehmer a una permutación. Esto puede remediarse utilizando una correspondencia biyectiva diferente: después de usar d i para seleccionar un elemento entre los i elementos restantes de la secuencia (para valores decrecientes de i ), en lugar de eliminar el elemento y compactar la secuencia desplazando los elementos restantes un lugar hacia abajo, se intercambia el elemento con el último elemento restante. Así, los elementos restantes para la selección forman un rango consecutivo en cada instante, aunque no aparezcan en el mismo orden que en la secuencia original. La correspondencia entre secuencias de enteros y permutaciones es algo compleja, pero se puede observar que produce cada permutación de una sola manera, mediante inducción inmediata . Cuando el elemento seleccionado resulta ser el último elemento restante, se puede omitir la operación de intercambio. Esto no ocurre con la suficiente frecuencia como para justificar la comprobación de la condición, pero el último elemento debe incluirse entre los candidatos de la selección para garantizar que se puedan generar todas las permutaciones.

El algoritmo resultante para generar una permutación aleatoria de se puede describir de la siguiente manera en pseudocódigo :a[0], a[1], ..., a[n − 1]

para i desde n hasta 2 hacer d i ← elemento aleatorio de { 0, ..., i − 1 } intercambiar a [ d i ] y a [ i − 1]

Esto se puede combinar con la inicialización del array de la siguiente manera:a[i] = i

para i desde 0 hasta n −1 hacer d i +1 ← elemento aleatorio de { 0, ..., i } a [ i ] ← a [ d i +1 ] a [ d i +1 ] ← i

Si d i +1 = i , la primera asignación copiará un valor no inicializado, pero la segunda lo sobrescribirá con el valor correcto i .

Sin embargo, Fisher-Yates no es el algoritmo más rápido para generar una permutación, porque Fisher-Yates es esencialmente un algoritmo secuencial y los procedimientos de "divide y vencerás" pueden lograr el mismo resultado en paralelo. [ 55 ]

Generación en orden lexicográfico

Hay muchas maneras de generar sistemáticamente todas las permutaciones de una secuencia dada. [ 56 ] Un algoritmo clásico, simple y flexible se basa en encontrar la siguiente permutación en orden lexicográfico , si existe. Puede manejar valores repetidos, en cuyo caso genera cada permutación de multiconjunto distinta una vez. Incluso para permutaciones ordinarias es significativamente más eficiente que generar valores para el código de Lehmer en orden lexicográfico (posiblemente usando el sistema numérico factorial ) y convertirlos en permutaciones. Comienza ordenando la secuencia en orden (débilmente) creciente (lo que da su permutación lexicográficamente mínima), y luego repite avanzando a la siguiente permutación mientras se encuentre una. El método se remonta a Narayana Pandita en la India del siglo XIV y ha sido redescubierto con frecuencia. [ 57 ]

El siguiente algoritmo genera la siguiente permutación lexicográficamente después de una permutación dada. Modifica la permutación dada in situ.

  1. Encuentra el índice k más grande tal que a [ k ] < a [ k +1] . Si no existe tal índice, la permutación es la última permutación.
  2. Encuentra el índice l más grande mayor que k tal que a [ k ] < a [ l ] .
  3. Intercambia el valor de a [ k ] con el de a [ l ].
  4. Invierta la secuencia desde a [ k + 1] hasta el último elemento a [ n ] inclusive.

Por ejemplo, dada la secuencia [1, 2, 3, 4] (que está en orden ascendente), y dado que el índice comienza en cero , los pasos son los siguientes:

  1. Índice k = 2, porque 3 se coloca en un índice que satisface la condición de ser el índice más grande que aún es menor que a [ k + 1] que es 4.
  2. Índice l = 3, porque 4 es el único valor en la secuencia que es mayor que 3 para satisfacer la condición a [ k ] < a [ l ].
  3. Los valores de a [2] y a [3] se intercambian para formar la nueva secuencia [1, 2, 4, 3].
  4. La secuencia después del índice k [ 2] hasta el último elemento se invierte. Dado que solo hay un valor después de este índice (el 3), la secuencia permanece inalterada en este caso. Por lo tanto, el sucesor lexicográfico del estado inicial se permuta: [1, 2, 4, 3].

Siguiendo este algoritmo, la siguiente permutación lexicográfica será [1, 3, 2, 4], y la vigésimo cuarta permutación será [4, 3, 2, 1], en cuyo punto no existe a [ k ] < a [ k + 1], lo que indica que esta es la última permutación.

Este método utiliza aproximadamente 3 comparaciones y 1,5 intercambios por permutación, amortizados sobre toda la secuencia, sin contar la ordenación inicial. [ 58 ]

Generación con cambios mínimos

Una alternativa al algoritmo anterior, el algoritmo de Steinhaus-Johnson-Trotter , genera un ordenamiento de todas las permutaciones de una secuencia dada con la propiedad de que dos permutaciones consecutivas cualesquiera en su salida difieren al intercambiar dos valores adyacentes. Este ordenamiento de las permutaciones era conocido por los campaneros ingleses del siglo XVII, entre quienes se le conocía como "cambios simples". Una ventaja de este método es que la pequeña cantidad de cambio de una permutación a la siguiente permite que el método se implemente en tiempo constante por permutación. El mismo también puede generar fácilmente el subconjunto de permutaciones pares, también en tiempo constante por permutación, omitiendo una permutación de salida sí y otra no. [ 57 ]

Una alternativa al algoritmo de Steinhaus-Johnson-Trotter es el algoritmo de Heap , [ 59 ] que Robert Sedgewick afirmó en 1977 que era el algoritmo más rápido para generar permutaciones en aplicaciones. [ 56 ]

La siguiente figura muestra la salida de los tres algoritmos mencionados anteriormente para generar todas las permutaciones de longitudnorte=4{\displaystyle n=4}y de seis algoritmos adicionales descritos en la literatura.

Ordenación de todas las permutaciones de longitudnorte=4{\displaystyle n=4}generados por diferentes algoritmos . Las permutaciones están codificadas por colores, donde 1 , 2 , 3 , 4. [ 60 ]        
  1. Ordenación lexicográfica;
  2. Algoritmo de Steinhaus-Johnson-Trotter ;
  3. Algoritmo de Heap ;
  4. Algoritmo de transposición en estrella de Ehrlich: [ 57 ] en cada paso, la primera entrada de la permutación se intercambia con una entrada posterior;
  5. Algoritmo de inversión de prefijos de Zaks: [ 61 ] en cada paso, se invierte un prefijo de la permutación actual para obtener la siguiente permutación;
  6. Algoritmo de Sawada-Williams: [ 62 ] cada permutación difiere de la anterior ya sea por un desplazamiento cíclico a la izquierda de una posición o por un intercambio de las dos primeras entradas;
  7. Algoritmo de Corbett: [ 63 ] cada permutación difiere de la anterior por un desplazamiento cíclico a la izquierda de algún prefijo en una posición;
  8. Ordenación de una sola vía: [ 64 ] cada columna es un desplazamiento cíclico de las otras columnas;
  9. Código Gray de una sola vía : [ 64 ] cada columna es un desplazamiento cíclico de las otras columnas, además de que dos permutaciones consecutivas cualesquiera difieren solo en una o dos transposiciones.
  10. Algoritmo generador de intercambios anidados en pasos conectados a los subgrupos anidados.SkSk+1{\displaystyle S_{k}\subset S_{k+1}}Cada permutación se obtiene a partir de la anterior mediante una transposición y multiplicación a la izquierda. El algoritmo está conectado al sistema numérico factorial del índice.

Generación de permutaciones en pasos de intercambio anidados

Secuencia explícita de intercambios (transposiciones, ciclos de 2)(pagq){\displaystyle (pq)}), se describe aquí, cada intercambio aplicado (a la izquierda) a la cadena anterior proporciona una nueva permutación, de modo que todas las permutaciones se pueden recuperar, cada una solo una vez. [ 65 ] Este procedimiento de conteo/generación tiene una estructura adicional (llamémosla anidada), ya que se da en pasos: después de recuperar completamenteSk1{\displaystyle S_{k-1}}, continuar recuperandoSkSk1{\displaystyle S_{k}\backslash S_{k-1}}por clasesSk1τi{\displaystyle S_{k-1}\tau _{i}}deSk1{\displaystyle S_{k-1}}enSk{\displaystyle S_{k}}mediante la elección adecuada de los representantes de la claseτi{\displaystyle \tau _{i}}se describirá a continuación. Dado que cadaSmetro{\displaystyle S_{m}}se genera secuencialmente, hay un último elementoλmetroSmetro{\displaystyle \lambda _{m}\in S_{m}}. Entonces, después de generarSk1{\displaystyle S_{k-1}}mediante intercambios, la siguiente permutación enSkSk1{\displaystyle S_{k}\backslash S_{k-1}} tiene que serτ1=(pag1k)λk1{\displaystyle \tau _{1}=(p_{1}k)\lambda _{k-1}}para algunos1pag1<k{\displaystyle 1\leq p_{1}<k}. Luego todos los intercambios que generaron Sk1{\displaystyle S_{k-1}}se repiten, generando toda la clase lateralSk1τ1{\displaystyle S_{k-1}\tau _{1}}, llegando a la última permutación en esa clase lateralλk1τ1{\displaystyle \lambda _{k-1}\tau _{1}}; el siguiente intercambio tiene que mover la permutación al representante de otra clase lateralτ2=(pag2k)λk1τ1{\displaystyle \tau _{2}=(p_{2}k)\lambda _{k-1}\tau _{1}}.

Siguiendo el mismo camino, se obtienen representantes de coset.τj=(pagjk)λk1{\displaystyle \tau _{j}=(p_{j}k)\lambda _{k-1}\cdots }λk1(pagik)λk1{\displaystyle \lambda _{k-1}(p_{i}k)\lambda _{k-1}}λk1(pag1k)λk1{\displaystyle \cdots \lambda _{k-1}(p_{1}k)\lambda _{k-1}}para las clases laterales de Sk1{\displaystyle S_{k-1}}enSk{\displaystyle S_{k}}; el conjunto ordenado(pag1,,pagk1){\displaystyle (p_{1},\ldots ,p_{k-1})}(0pagi<k{\displaystyle 0\leq p_{i}<k}) se denomina el conjunto de inicios de clases laterales. Dos de estos representantes están en la misma clase lateral si y solo si τj(τi)1={\displaystyle \tau _{j}(\tau _{i})^{-1}=}(pagjk)λk1(pagj1k)λk1{\displaystyle (p_{j}k)\lambda _{k-1}(p_{j-1}k)\lambda _{k-1}\cdots }λk1(pagi+1k)={\displaystyle \lambda _{k-1}(p_{i+1}k)=}ϰijSk1{\displaystyle \varkappa _{ij}\in S_{k-1}}, eso es, ϰij(k)=k{\displaystyle \varkappa _{ij}(k)=k}. En conclusión, permutacionesτiSkSk1{\displaystyle \tau _{i}\in S_{k}-S_{k-1}}son todos representantes de clases laterales distintas si y solo si para cualquierk>j>i1{\displaystyle k>j>i\geq 1},(λk1)jipagipagj{\displaystyle (\lambda _{k-1})^{j-i}p_{i}\neq p_{j}}(sin condición de repetición). En particular, para que todas las permutaciones generadas sean distintas no es necesario quepagi{\displaystyle p_{i}}valores para ser distintos. En el proceso, uno obtiene queλk=λk1(pagk1k){\displaystyle \lambda _{k}=\lambda _{k-1}(p_{k-1}k)}λk1(pagk2k){\displaystyle \lambda _{k-1}(p_{k-2}k)}λk1{\displaystyle \lambda _{k-1}\cdots }λk1(pag1k){\displaystyle \lambda _{k-1}(p_{1}k)}λk1{\displaystyle \lambda _{k-1}}y esto proporciona el procedimiento recursivo.

EJEMPLOS: obviamente, paraλ2{\displaystyle \lambda _{2}}uno tieneλ2=(12){\displaystyle \lambda _{2}=(12)}; construirλ3{\displaystyle \lambda _{3}}Solo hay dos posibilidades para los comienzos de la clase que satisfacen la condición de no repetición; la elecciónpag1=pag2=1{\displaystyle p_{1}=p_{2}=1}conduce aλ3=λ2(13)λ2(13)λ2=(13){\displaystyle \lambda _{3}=\lambda _{2}(13)\lambda _{2}(13)\lambda _{2}=(13)}Para seguir generandoS4{\displaystyle S_{4}}Se necesitan inicios de clases laterales apropiados (que satisfagan la condición de no repetición): hay una opción conveniente:pag1=1,pag2=2,pag3=3{\displaystyle p_{1}=1,p_{2}=2,p_{3}=3}, lo que lleva a λ4=(13)(1234)(13)=(1432){\displaystyle \lambda _{4}=(13)(1234)(13)=(1432)}. Luego, construirλ5{\displaystyle \lambda _{5}}una opción conveniente para los inicios coset (que satisfacen la condición de no repetición) espag1=pag2=pag3=pag4=1{\displaystyle p_{1}=p_{2}=p_{3}=p_{4}=1}, lo que lleva aλ5=(15){\displaystyle \lambda _{5}=(15)}.

A partir de los ejemplos anteriores se puede llegar inductivamente a niveles superiores.k{\displaystyle k}De manera similar, elegir comienzos acogedores deSk{\displaystyle S_{k}}en Sk+1{\displaystyle S_{k+1}}, de la siguiente manera: parak{\displaystyle k}incluso eligiendo todos los inicios de clases laterales iguales a 1 y parak{\displaystyle k}comienzos de coset de elección extraña iguales a(1,2,,k){\displaystyle (1,2,\dots ,k)}. Con tales elecciones, la "última" permutación esλk=(1k){\displaystyle \lambda _{k}=(1k)}parak{\displaystyle k}extraño y λk=(1k)(12k)(1k){\displaystyle \lambda _{k}=(1k_{-})(12\cdots k)(1k_{-})}parak{\displaystyle k}incluso (k=k1{\displaystyle k_{-}=k-1}). Utilizando estas fórmulas explícitas, se puede calcular fácilmente la permutación de un índice determinado en los pasos de conteo/generación con un mínimo de cálculos. Para ello, es útil escribir el índice en base factorial. Por ejemplo, la permutación para el índice699=5(5¡)+4(4¡)+1(2¡)+1(1¡){\displaystyle 699=5(5!)+4(4!)+1(2!)+1(1!)}es:σ=λ2(13){\displaystyle \sigma =\lambda _{2}(13)}λ2(15){\displaystyle \lambda _{2}(15)}λ4(15){\displaystyle \lambda _{4}(15)}λ4(15){\displaystyle \lambda _{4}(15)}λ4(15){\displaystyle \lambda _{4}(15)}λ4(56){\displaystyle \lambda _{4}(56)}λ5(46){\displaystyle \lambda _{5}(46)}λ5(36){\displaystyle \lambda _{5}(36)}λ5(26){\displaystyle \lambda _{5}(26)}λ5(16){\displaystyle \lambda _{5}(16)}λ5={\displaystyle \lambda _{5}=}λ2(13)λ2((15)λ4)4(λ5)1λ6=(23){\displaystyle \lambda _{2}(13)\lambda _{2}((15)\lambda _{4})^{4}(\lambda _{5})^{-1}\lambda _{6}=(23)}(14325)1{\displaystyle (14325)^{-1}}(15){\displaystyle (15)}(15){\displaystyle (15)}(123456){\displaystyle (123456)}(15)={\displaystyle (15)=}(23){\displaystyle (23)}(15234){\displaystyle (15234)}(123456)(15){\displaystyle (123456)(15)}, cediendo finalmente,σ=(1653)(24){\displaystyle \sigma =(1653)(24)}.

Debido a que multiplicar por permutación de intercambio requiere poco tiempo de cálculo y cada nueva permutación generada requiere solo una multiplicación de intercambio, este procedimiento de generación es bastante eficiente. Además, como hay una fórmula simple, teniendo la última permutación en cadaSk{\displaystyle S_{k}} Se puede ahorrar aún más tiempo yendo directamente a una permutación con un índice determinado en menos pasos de lo esperado, ya que se puede hacer en bloques de subgrupos en lugar de intercambio por intercambio.

Aplicaciones

Las permutaciones se utilizan en el componente de entrelazado de los algoritmos de detección y corrección de errores , como los códigos turbo . Por ejemplo, el estándar de telecomunicaciones móviles 3GPP Long Term Evolution utiliza estas ideas (véase la especificación técnica 3GPP 36.212 [ 66 ] ). Estas aplicaciones plantean la cuestión de la generación rápida de permutaciones que satisfagan ciertas propiedades deseables. Uno de los métodos se basa en los polinomios de permutación . También como base para el hashing óptimo en Unique Permutation Hashing [ 67 ] .

Véase también

Notas

  1. 1 se usa frecuentemente para representar el elemento neutro en un grupo no conmutativo.
  2. El orden suele entenderse implícitamente. Un conjunto de números enteros se escribe naturalmente de menor a mayor; un conjunto de letras se escribe en orden lexicográfico. Para otros conjuntos, es necesario especificar explícitamente un orden natural.
  3. Más precisamente, variaciones sin repetición . El término aún es común en otros idiomas y aparece en inglés moderno con mayor frecuencia en traducciones.
  4. El orden natural en este ejemplo es el orden de las letras en la palabra original.
  5. En textos antiguos, la permutación circular se usaba a veces como sinónimo de permutación cíclica , pero esto ya no se hace. Véase Carmichael (1956 , p. 7).

Referencias

  1. Webster (1969)
  2. McCoy (1968 , pág. 152) 
  3. Nering (1970 , pág. 86) 
  4. Heath, Thomas Little (1981). Historia de las matemáticas griegas . Nueva York: Dover Publications. ISBN 0-486-24073-8OCLC 7703465 
  5. Broemeling, Lyle D. (1 de noviembre de 2011). "Un relato de la inferencia estadística temprana en la criptología árabe". The American Statistician . 65 (4): 255– 257. doi : 10.1198/tas.2011.10191 . S2CID 123537702 . 
  6. Biggs, NL (1979). "Las raíces de la combinatoria". Historia Math . 6 (2): 109– 136. doi : 10.1016/0315-0860(79)90074-0 .
  7. Stedman 1677 , pág. 4.
  8. Stedman 1677 , pág. 5.
  9. Stedman 1677 , págs. 6–7.
  10. Stedman 1677 , pág. 8.
  11. Stedman 1677 , págs. 13–18.
  12. Rejewski, Marian (1980). "Una aplicación de la teoría de permutaciones para descifrar el código Enigma" . Applicationes Mathematicae . 16 (4): 543– 559. doi : 10.4064/am-16-4-543-559 . ISSN 1233-7234 . 
  13. Cash, David (2019). "CMSC 28400 Introducción a la criptografía Otoño 2019 - Notas #2: Permutaciones y Enigma" (PDF) .
  14. Scheinerman, Edward A. (5 de marzo de 2012). «Capítulo 5: Funciones» . Matemáticas: Una introducción discreta (3.ª ed.). Cengage Learning. pág. 188. ISBN   978-0840049421. Archivado del original el 5 de febrero de 2020. Recuperado el 5 de febrero de 2020. Es costumbre usar letras griegas minúsculas (especialmente π, σ y τ) para representar permutaciones.
  15. Rotman 2002 , pág. 41 
  16. Bogart 1990 , pág. 487 
  17. Cameron 1994 , pág. 29, nota al pie 3.
  18. Conway, John H.; Burgiel, Heidi; Goodman-Strauss, Chaim (2008). Las simetrías de las cosas . AK Peters. p. 179. Una permutación —por ejemplo, de los nombres de varias personas— puede considerarse como un movimiento de los nombres o de las personas. La perspectiva del alias considera que la permutación asigna un nuevo nombre o alias a cada persona (del latín alias = de otro modo). Alternativamente, desde la perspectiva de la coartada, movemos a las personas a los lugares que corresponden a sus nuevos nombres (del latín alibi = en otro lugar). 
  19. "Notación de permutación - Wikiversidad" . en.wikiversity.org . Consultado el 4 de agosto de 2024 .
  20. ^ Cauchy, AL (enero de 1815). "Mémoire Sur le Nombre des Valeurs qu'une Fonction peut acquérir, lorsqu'on y permute de toutes les manières posibles les quantités qu'elle renferme" [ Memoria sobre el número de valores que puede adquirir una función cuando se permuta en ella, de todas las formas posibles, las variables que contiene ] . Journal de l'École Polytechnique (en francés). 10 : 1-28 . Véase la página 4.
    • Traducción al inglés
  21. Wussing, Hans (2007), La génesis del concepto de grupo abstracto: una contribución a la historia del origen de la teoría abstracta de grupos , Courier Dover Publications, pág. 94, ISBN  9780486458687Cauchy utilizó por primera vez su notación de permutación —en la que las disposiciones se escriben una debajo de la otra y ambas se encierran entre paréntesis— en 1815.
  22. Bogart 1990 , pág. 17 
  23. Gerstein 1987 , pág. 217 
  24. 1 2 Aigner, Martin (2007). Un curso de enumeración . Springer GTM 238. pp. 24–25 . ISBN  978-3-540-39035-0.
  25. Hall 1959 , pág. 54 
  26. Bona 2012 , pág. 87 [El libro tiene una errata/error aquí, ya que da (45) en lugar de (54).]
  27. 1 2 Stanley, Richard P. (2012). Combinatoria enumerativa: Volumen I, Segunda edición . Cambridge University Press. pág. 30, Prop. 1.3.1. ISBN  978-1-107-01542-5.
  28. Kitaev, Sergey (2011). Patrones en permutaciones y palabras . Springer Science & Business Media. pág. 119. ISBN  978-3-642-17333-2.
  29. Biggs, Norman L.; White, AT (1979). Grupos de permutación y estructuras combinatorias . Cambridge University Press. ISBN 978-0-521-22287-7.
  30. Dixon, John D.; Mortimer, Brian (1996). Grupos de permutación . Springer. ISBN 978-0-387-94599-6.
  31. Cameron, Peter J. (1999). Grupos de permutación . Cambridge University Press. ISBN 978-0-521-65302-2.
  32. Jerrum, M. (1986). "Una representación compacta de grupos de permutaciones". J. Algorithms . 7 (1): 60– 78. doi : 10.1016/0196-6774(86)90038-6 . S2CID 18896625 . 
  33. "Combinaciones y permutaciones" . www.mathsisfun.com . Consultado el 10 de septiembre de 2020 .
  34. Weisstein, Eric W. "Permutación" . mathworld.wolfram.com . Consultado el 10 de septiembre de 2020 .
  35. Uspensky 1937 , pág. 18 
  36. Charalambides, Ch A. (2002). Combinatoria enumerativa . CRC Press. pág. 42. ISBN  978-1-58488-290-9.
  37. Brualdi 2010 , pág. 46, Teorema 2.4.2
  38. Brualdi 2010 , pág. 47 
  39. Bays, Martin. "Generación de funciones" (PDF) . pág. 4. Consultado el 17 de mayo de 2026 . 
  40. Brualdi 2010 , pág. 39 
  41. Bona 2012 , págs. 97–103.
  42. Sagan, Bruce (2001), El grupo simétrico (2.ª ed.), Springer, pág. 3  
  43. Humphreys 1996 , pág. 84.
  44. Hall 1959 , pág. 60 
  45. Bóna 2004 , pág. 4 y ss.
  46. Bona 2012 , págs. 4–5.
  47. Bona 2012 , pág. 25.
  48. ^ Bona 2012 , págs. 109-110.
  49. Slocum, Jerry; Weisstein, Eric W. (1999). "15 – puzzle" . MathWorld . Wolfram Research, Inc. Recuperado el 4 de octubre de 2014 .
  50. Bóna 2004 , pág. 43.
  51. Bóna 2004 , págs. 43 y ss.
  52. Knuth 1973 , pág. 12.
  53. HA Rothe , Sammlung combinatorisch-analytischer Abhandlungen 2 (Leipzig, 1800), 263–305. Citado en Knuth 1973 , p. 14
  54. Fisher, RA; Yates, F. (1948) [1938]. Tablas estadísticas para la investigación biológica, agrícola y médica (3.ª ed.). Londres: Oliver & Boyd. págs. 26–27 . OCLC 14222135 .   
  55. Bacher, A.; Bodini, O.; Hwang, HK; Tsai, TH (2017). "Generación de permutaciones aleatorias mediante lanzamiento de moneda: algoritmos clásicos, nuevo análisis e implementación moderna" (ACM Trans. Algorithms 13(2): 24:1–24:43 ed.). pp. 24–43 .  
  56. 1 2 Sedgewick, R (1977). "Métodos de generación de permutaciones" ( PDF) . Computing Surveys . 9 (2): 137– 164. doi : 10.1145/356689.356692 . S2CID 12139332. Archivado (PDF) del original el 21 de febrero de 2008. 
  57. 1 2 3 Knuth 2005 , págs. 1–26.
  58. "std::next_permutation" . cppreference.com . 4 de diciembre de 2017. Consultado el 31 de marzo de 2018 .
  59. Heap, BR (1963). "Permutaciones por intercambios" . The Computer Journal . 6 (3): 293– 298. doi : 10.1093/comjnl/6.3.293 .
  60. Mütze, Torsten; Sawada, Joe; Williams, Aaron. "Generar permutaciones" . Combinatorial Object Server . Consultado el 29 de mayo de 2019 .
  61. Zaks, S. (1984). "Un nuevo algoritmo para la generación de permutaciones". BIT Numerical Mathematics . 24 (2): 196– 204. doi : 10.1007/BF01937486 . S2CID 30234652 . 
  62. Sawada, Joe; Williams, Aaron (2018). "Una ruta hamiltoniana para el problema sigma-tau". Actas del 29.º Simposio Anual ACM-SIAM sobre Algoritmos Discretos, SODA 2018. Nueva Orleans, Luisiana: Sociedad de Matemáticas Industriales y Aplicadas (SIAM). pp. 568–575 . doi : 10.1137/1.9781611975031.37 . 
  63. Corbett, PF (1992). "Grafos rotadores: una topología eficiente para redes multiprocesador punto a punto". IEEE Transactions on Parallel and Distributed Systems . 3 (5): 622– 626. Bibcode : 1992ITPDS...3..622C . doi : 10.1109/71.159045 .
  64. 1 2 Arndt, Jörg (2011). Asuntos Computacionales. Ideas, Algoritmos, Código Fuente . Springer . doi : 10.1007/978-3-642-14764-7 . ISBN 978-3-642-14763-0.
  65. Popp, OT (2002). Manejo rápido de grandes permutaciones . priv. comm.
  66. "3GPP TS 36.212" .
  67. Dolev, Shlomi; Lahiani, Limor; Haviv, Yinnon (2013). "Unique permutation hashing" . Theoretical Computer Science . 475 : 59–65 . doi : 10.1016/j.tcs.2012.12.047 .

Bibliografía

  • Bogart, Kenneth P. (1990), Combinatoria introductoria (2.ª  ed.), Harcourt Brace Jovanovich, ISBN 978-0-15-541576-8
  • Bóna, Miklós (2004), Combinatoria de permutaciones , Chapman Hall-CRC, ISBN 978-1-58488-434-7
  • Bona, Miklos (2012), Combinatoria de permutaciones (2ª  ed.), CRC Press, ISBN 978-1-4398-5051-0
  • Brualdi, Richard A. (2010), Combinatoria introductoria (5.ª  ed.), Prentice-Hall, ISBN 978-0-13-602040-0
  • Cameron, Peter J. (1994), Combinatoria: Temas, técnicas, algoritmos , Cambridge University Press, ISBN 978-0-521-45761-3
  • Carmichael, Robert D. (1956) [1937], Introducción a la teoría de grupos de orden finito , Dover, ISBN 978-0-486-60300-1{{citation}}: Incompatibilidad de ISBN/Fecha ( ayuda )
  • Fraleigh, John B. (1976), Un primer curso de álgebra abstracta (2.ª  ed.), Reading: Addison-Wesley , ISBN 0-201-01984-1
  • Gerstein, Larry J. (1987), Matemáticas discretas y estructuras algebraicas , WH Freeman and Co., ISBN 978-0-7167-1804-8
  • Hall, Marshall Jr. (1959), La teoría de los grupos , MacMillan
  • Humphreys, JF (1996), Un curso de teoría de grupos , Oxford University Press, ISBN 978-0-19-853459-4
  • Knuth, Donald (1973), Ordenación y búsqueda , El arte de la programación informática, vol.  3 Este libro menciona el código Lehmer (sin usar ese nombre) como una variante C 1 ,..., C n de tablas de inversión en el ejercicio 5.1.1–7 (pág.  19), junto con otras dos variantes.
  • Knuth, Donald (2005), Generación de todas las tuplas y permutaciones , El arte de la programación informática , vol.  4, Addison–Wesley, ISBN 978-0-201-85393-3Fascículo  2, primera edición.
  • McCoy, Neal H. (1968), Introducción al álgebra moderna, edición revisada , Boston: Allyn and Bacon , LCCN 68015225 
  • Nering, Evar D. (1970), Álgebra lineal y teoría de matrices (2.ª  ed.), Nueva York: Wiley , LCCN 76091646 
  • Rotman, Joseph J. (2002), Álgebra moderna avanzada , Prentice-Hall, ISBN 978-0-13-087868-7
  • Stedman, Fabian (1677), Campanalogia , Londres El editor aparece como "WS", que podría ser William Smith, posiblemente actuando como agente de la Sociedad de Jóvenes Universitarios , a la cual se dirige la "Dedicatoria". En las citas, la "S" larga original se ha sustituido por una "s" corta moderna.
  • Uspensky, James (1937), Introducción a la probabilidad matemática , McGraw-Hill
  • Séptima edición del nuevo diccionario colegiado de Webster , Springfield: G. & C. Merriam Company , 1969.

Lecturas adicionales

  • Biggs, Norman L. (2002), Matemáticas discretas (2.ª  ed.), Oxford University Press, ISBN 978-0-19-850717-8
  • Foata, Dominique; Schutzenberger, Marcel-Paul (1970), Théorie Géométrique des Polynômes Eulériens , Lecture Notes in Mathematics, vol.  138, Berlín, Heidelberg: Springer-Verlag, ISBN 978-3-540-04927-2El enlace lleva a una versión revisada y transcrita (en LaTeX) del texto publicado originalmente por Springer-Verlag, disponible gratuitamente.
  • Knuth, Donald (1998), Ordenación y búsqueda , El arte de la programación informática, vol.  3 (Segunda  ed.), Addison–Wesley, ISBN 978-0-201-89685-5. Sección 5.1: Propiedades combinatorias de las permutaciones, págs.  11–72.
  • Sedgewick, Robert (1977). "Métodos de generación de permutaciones" . ACM Computing Surveys . 9 (2): 137– 164. doi : 10.1145/356689.356692 . S2CID 12139332 . 
  • Masato, Kobayashi (2011). "Enumeración de permutaciones bigrassmannianas por debajo de una permutación en orden de Bruhat". Orden . 1 : 131– 137.