stringtranslate.com

tupla

En matemáticas , una tupla es una secuencia finita o lista ordenada de números o, más generalmente, objetos matemáticos , que se denominan elementos de la tupla. Una n -tupla es una tupla de n elementos, donde n es un número entero no negativo . Sólo hay una tupla 0, llamada tupla vacía . Una tupla 1 y una tupla 2 comúnmente se denominan singleton y par ordenado , respectivamente.

La tupla puede definirse formalmente a partir de pares ordenados por recurrencia comenzando desde pares ordenados ; de hecho, una n -tupla se puede identificar con el par ordenado de sus ( n − 1 ) primeros elementos y su n ésimo elemento.

Las tuplas generalmente se escriben enumerando los elementos entre paréntesis " ( ) ", separados por una coma y un espacio; por ejemplo, (2, 7, 4, 1, 7) denota una tupla de 5. A veces se utilizan otros símbolos para rodear los elementos, como corchetes "[ ]" o corchetes angulares "⟨ ⟩". Las llaves "{ }" se utilizan para especificar matrices en algunos lenguajes de programación, pero no en expresiones matemáticas, ya que son la notación estándar para conjuntos . El término tupla puede aparecer a menudo cuando se habla de otros objetos matemáticos, como los vectores .

En informática , las tuplas se presentan en muchas formas. La mayoría de los lenguajes de programación funcional tipificados implementan tuplas directamente como tipos de productos , [1] estrechamente asociados con tipos de datos algebraicos , coincidencia de patrones y asignaciones de desestructuración . [2] Muchos lenguajes de programación ofrecen una alternativa a las tuplas, conocidas como tipos de registros , que presentan elementos desordenados a los que se accede por etiqueta. [3] Algunos lenguajes de programación combinan tipos de productos de tuplas ordenadas y tipos de registros desordenados en una sola construcción, como en las estructuras C y los registros Haskell. Las bases de datos relacionales pueden identificar formalmente sus filas (registros) como tuplas .

Las tuplas también ocurren en álgebra relacional ; al programar la web semántica con el Marco de Descripción de Recursos (RDF); en lingüística ; [4] y en filosofía . [5]

Etimología

El término se originó como una abstracción de la secuencia: simple, pareja/doble, triple, cuádruple, quíntuple, séxtuple, séptuple, óctuple, ..., n -tuple, ..., donde los prefijos se toman de los nombres latinos de los numerales. La tupla 0 única se llama tupla nula o tupla vacía . Una tupla 1 se llama singleton (o singleton ), una tupla 2 se llama par o pareja ordenada y una tupla 3 se llama triplete (o triplete ). El número n puede ser cualquier número entero no negativo . Por ejemplo, un número complejo se puede representar como una tupla de 2 reales, un cuaternión se puede representar como una tupla de 4, un octonión se puede representar como una tupla de 8 y un sedenión se puede representar como una tupla de 16. .

Aunque estos usos tratan -uple como sufijo, el sufijo original era -ple como en "triple" (tres veces) o "decuple" (diez veces). Esto se origina en el latín medieval plus (que significa "más") relacionado con el griego ‑πλοῦς, que reemplazó al clásico y antiguo tardío ‑plex (que significa "doblado"), como en "dúplex". [6] [un]

Propiedades

La regla general para la identidad de dos n -tuplas es

si y solo si .

Así, una tupla tiene propiedades que la distinguen de un conjunto :

  1. Una tupla puede contener varias instancias del mismo elemento, por lo que
    tupla ; pero listo .
  2. Los elementos de tupla están ordenados: tupla , pero conjunto .
  3. Una tupla tiene un número finito de elementos, mientras que un conjunto o multiconjunto puede tener un número infinito de elementos.

Definiciones

Existen varias definiciones de tuplas que les confieren las propiedades descritas en la sección anterior.

Tuplas como funciones

La tupla puede identificarse como la función vacía . Porque la tupla puede identificarse con la función ( sobreyectiva )

con dominio

y con codominio

que se define en por

Es decir, ¿la función definida por

en cuyo caso la igualdad

necesariamente se cumple.

Tuplas como conjuntos de pares ordenados

Las funciones se identifican comúnmente con sus gráficas , que es un conjunto determinado de pares ordenados. De hecho, muchos autores utilizan gráficas como definición de función. Usando esta definición de "función", la función anterior se puede definir como:

Tuplas como pares ordenados anidados

Otra forma de modelar tuplas en teoría de conjuntos es como pares ordenados anidados . Este enfoque supone que la noción de par ordenado ya ha sido definida.

  1. La tupla 0 (es decir, la tupla vacía) está representada por el conjunto vacío .
  2. Una n -tupla, con n > 0 , se puede definir como un par ordenado de su primera entrada y una ( n − 1) -tupla (que contiene las entradas restantes cuando n > 1) :

Esta definición se puede aplicar de forma recursiva a la ( n − 1 ) -tupla:

Así, por ejemplo:

Una variante de esta definición comienza a "despegar" elementos desde el otro extremo:

  1. La tupla 0 es el conjunto vacío .
  2. Para norte > 0 :

Esta definición se puede aplicar de forma recursiva:

Así, por ejemplo:

Tuplas como conjuntos anidados

Utilizando la representación de Kuratowski para un par ordenado , la segunda definición anterior puede reformularse en términos de teoría de conjuntos pura :

  1. La tupla 0 (es decir, la tupla vacía) está representada por el conjunto vacío ;
  2. Sea una n -tupla y sea . Entonces, . (La flecha derecha, , podría leerse como "junto a".)

En esta formulación:

n -tuplas de m -conjuntos

En matemáticas discretas , especialmente combinatoria y teoría de probabilidad finita , las n -tuplas surgen en el contexto de varios problemas de conteo y se tratan de manera más informal como listas ordenadas de longitud n . [7] Las n -tuplas cuyas entradas provienen de un conjunto de m elementos también se denominan arreglos con repetición , permutaciones de un multiconjunto y, en alguna literatura no inglesa, variaciones con repetición . El número de n -tuplas de un m -conjunto es m n . Esto se desprende de la regla combinatoria del producto . [8] Si S es un conjunto finito de cardinalidad m , este número es la cardinalidad de la potencia cartesiana n veces S × S × ⋯ × S. Las tuplas son elementos de este conjunto de productos.

Teoría de tipos

En la teoría de tipos , comúnmente utilizada en lenguajes de programación , una tupla tiene un tipo de producto ; esto fija no sólo la longitud, sino también los tipos subyacentes de cada componente. Formalmente:

y las proyecciones son constructores de términos:

La tupla con elementos etiquetados utilizada en el modelo relacional tiene un tipo de registro . Ambos tipos se pueden definir como extensiones simples del cálculo lambda de tipo simple . [9]

La noción de tupla en la teoría de tipos y la de la teoría de conjuntos están relacionadas de la siguiente manera: si consideramos el modelo natural de una teoría de tipos y utilizamos los corchetes de Scott para indicar la interpretación semántica, entonces el modelo consta de algunos conjuntos ( nota: el uso de cursiva aquí que distingue conjuntos de tipos) tales que:

y la interpretación de los términos básicos es:

.

La n -tupla de la teoría de tipos tiene la interpretación natural como una n -tupla de la teoría de conjuntos: [10]

El tipo de unidad tiene como interpretación semántica la tupla 0.

Ver también

Notas

  1. ^ Compárese la etimología de ploidía , del griego -fold.

Referencias

  1. ^ "Tipo de datos algebraicos - HaskellWiki". wiki.haskell.org .
  2. ^ "Asignación de desestructuración". Documentos web de MDN . 18 de abril de 2023.
  3. ^ "¿JavaScript garantiza el orden de las propiedades de los objetos?". Desbordamiento de pila .
  4. ^ "N-tupla". N‐tupla - Referencia de Oxford. Prensa de la Universidad de Oxford. Enero de 2007. ISBN 9780199202720. Consultado el 1 de mayo de 2015 . {{cite book}}: |work=ignorado ( ayuda )
  5. ^ Blackburn, Simón (1994). "n-tupla ordenada". El Diccionario Oxford de Filosofía. Referencia rápida de las directrices de Oxford (3 ed.). Oxford: Oxford University Press (publicado en 2016). pag. 342.ISBN _ 9780198735304. Consultado el 30 de junio de 2017 . n-tupla ordenada[:] Una generalización de la noción de un [...] par ordenado a secuencias de n objetos.
  6. ^ OED , sv "triple", "cuádruple", "quíntuple", "decuple"
  7. ^ D'Angelo y West 2000, pag. 9
  8. ^ D'Angelo y West 2000, pag. 101
  9. ^ Pierce, Benjamín (2002). Tipos y Lenguajes de Programación . Prensa del MIT. págs. 126-132. ISBN 0-262-16209-1.
  10. ^ Steve Awodey, De conjuntos a tipos, categorías y conjuntos, 2009, preimpresión

Fuentes

enlaces externos