En matemáticas , una tupla es una secuencia finita (o lista ordenada) de números . De forma más general, es una secuencia de objetos matemáticos , llamados elementos de la tupla. Una n -tupla es una tupla de n elementos, donde n es un entero no negativo . Solo existe una 0-tupla, llamada tupla vacía . Una 1-tupla y una 2-tupla se denominan comúnmente singleton y par ordenado , respectivamente. El término "tupla infinita" se usa ocasionalmente para referirse a "secuencias infinitas" .
Las tuplas se suelen escribir enumerando los elementos entre paréntesis " ( ) " y separados por comas; por ejemplo, (2, 7, 4, 1, 7) denota una tupla de 5 elementos. A veces se utilizan otros tipos de corchetes, aunque pueden tener un significado diferente. [ a ]
Una n -tupla se puede definir formalmente como la imagen de una función cuyo dominio es el conjunto de los primeros n números naturales ( 1, 2, ..., n ). Las tuplas también se pueden definir a partir de pares ordenados mediante una recurrencia que comienza con un par ordenado; de hecho, una n -tupla se puede identificar con el par ordenado de sus primeros ( n − 1) elementos y su n- ésimo elemento, por ejemplo,.
En informática , las tuplas se presentan en muchas formas. La mayoría de los lenguajes de programación funcional tipados implementan las tuplas directamente como tipos de producto , [ 1 ] estrechamente asociados con tipos de datos algebraicos , coincidencia de patrones y asignación de desestructuración . [ 2 ] Muchos lenguajes de programación ofrecen una alternativa a las tuplas, conocida como tipos de registro , que presentan elementos no ordenados a los que se accede por etiqueta. [ 3 ] Algunos lenguajes de programación combinan tipos de producto de tuplas ordenadas y tipos de registro no ordenados en una sola construcción, como en las estructuras de C y los registros de Haskell. Las bases de datos relacionales pueden identificar formalmente sus filas (registros) como tuplas .
Las tuplas también aparecen en el álgebra relacional ; al programar la web semántica con el Resource Description Framework (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 -tupla, ..., donde los prefijos se toman de los nombres latinos de los numerales. La única 0-tupla se llama tupla nula o tupla vacía . Una 1-tupla se llama simple (o singleton ), una 2-tupla se llama par ordenado o pareja , y una 3-tupla se llama triple (o triplete ). El número n puede ser cualquier entero no negativo . Por ejemplo, un número complejo se puede representar como una 2-tupla de reales, un cuaternión se puede representar como una 4-tupla, un octonión se puede representar como una 8-tupla, y un sedenión se puede representar como una 16-tupla.
Aunque estos usos tratan -tuple como el sufijo, el sufijo original era -ple como en "triple" (tres veces) o "decuple" (diez veces). Esto tiene su origen en el latín medieval plus (que significa "más") relacionado con el griego -πλοῦς, que reemplazó al clásico y tardoantiguo -plex (que significa "plegado"), como en "dúplex". [ 6 ] [ b ]
Propiedades
La regla general para la identidad de dos n -tuplas es
Por lo tanto, una tupla tiene propiedades que la distinguen de un conjunto :
- Una tupla puede contener múltiples instancias del mismo elemento, por lo que tupla; pero establecido.
- Los elementos de la tupla están ordenados: tupla, pero establecido.
- Una tupla tiene un número finito de elementos, mientras que un conjunto o un 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
El-tupla puede identificarse como la función vacía . Parael-tuplapuede identificarse con la función sobreyectiva
con dominio
y con codominio
que se define enpor
Eso es,es 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 son un conjunto determinado de pares ordenados. De hecho, muchos autores utilizan las gráficas como definición de una función. Usando esta definición de "función", la función anteriorse puede definir como:
Tuplas como pares ordenados anidados
Otra forma de modelar tuplas en la teoría de conjuntos es como pares ordenados anidados . Este enfoque presupone que la noción de par ordenado ya ha sido definida.
- La tupla 0 (es decir, la tupla vacía) está representada por el conjunto vacío..
- Una n -tupla, con n > 0 , se puede definir como un par ordenado formado por su primera entrada y una ( n − 1) -tupla (que contiene las entradas restantes cuando n > 1) :
Esta definición se puede aplicar recursivamente a la ( n − 1) -tupla:
Así, por ejemplo:
Una variante de esta definición comienza a "desprender" elementos del otro extremo:
- La 0-tupla es el conjunto vacío.
- Para n > 0 :
Esta definición puede aplicarse 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 :
- La tupla 0 (es decir, la tupla vacía) está representada por el conjunto vacío.;
- Dejarser una n -tuplay dejar. Entonces,. (La flecha derecha,, podría leerse como "junto con".)
En esta formulación:
n -tuplas de m- conjuntos
En matemáticas discretas , especialmente en 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 cierta literatura no inglesa, variaciones con repetición . El número de n -tuplas de un m -conjunto es m n . Esto se deduce 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 -ésima S × S × ⋯ × S. Las tuplas son elementos de este conjunto producto.
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 solo 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 pueden definirse como extensiones simples del cálculo lambda simplemente tipado . [ 9 ]
La noción de tupla en la teoría de tipos y en la teoría de conjuntos se relacionan de la siguiente manera: Si consideramos el modelo natural de una teoría de tipos y usamos los corchetes de Scott para indicar la interpretación semántica , entonces el modelo consta de algunos conjuntos.(nota: el uso de cursiva aquí distingue los conjuntos de los tipos) de tal manera 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 de una n -tupla de la teoría de conjuntos: [ 10 ]
El tipo de unidad tiene como interpretación semántica la 0-tupla.
Para obtener una lista de los tipos de tuplas en los lenguajes de programación, consulte Tipo de producto#Tipos de producto en los lenguajes de programación .
Véase también
Notas
- ↑ Los corchetes se utilizan para matrices , incluidos los vectores fila . Las llaves se utilizan para conjuntos . Cada lenguaje de programación tiene su propia convención para los diferentes corchetes.
- ↑ Compare la etimología de ploidía , del griego que significa -pliegue.
Referencias
- ↑ "Tipo de dato algebraico - HaskellWiki" . wiki.haskell.org .
- ↑ "Desestructuración de la asignación" . MDN Web Docs . 18 de abril de 2023.
- ↑ "¿Garantiza JavaScript el orden de las propiedades de los objetos?" . Stack Overflow .
- ↑ Matthews, PH, ed. (enero de 2007). «N-tupla» . The Concise Oxford Dictionary of Linguistics . Oxford University Press. ISBN 9780199202720. Consultado el 1 de mayo de 2015 .
- ↑ Blackburn, Simon (1994). «n-tupla ordenada». The Oxford Dictionary of Philosophy . Oxford guidelines quick reference (3.ª ed.). Oxford: Oxford University Press (publicado en 2016). p. 342. ISBN 9780198735304. Recuperado el 30-06-2017 .
n-tupla ordenada[:] Una generalización de la noción de un [...] par ordenado a secuencias de n objetos.
- ↑ OED , sv "triple", "cuádruple", "quíntuple", "decuple"
- ↑ D'Angelo y West 2000 , pág. 9
- ↑ D'Angelo y West 2000 , pág. 101
- ↑ Pierce, Benjamin (2002). Tipos y lenguajes de programación . MIT Press. págs. 126-132 . ISBN 0-262-16209-1.
- ↑ Steve Awodey, De conjuntos a tipos, a categorías, a conjuntos , 2009, preimpresión
Fuentes
- D'Angelo, John P .; West, Douglas B. (2000), Pensamiento matemático/Resolución de problemas y demostraciones (2.ª ed.), Prentice-Hall, ISBN 978-0-13-014412-6
- Keith Devlin , El placer de los conjuntos . Springer Verlag, 2.ª ed., 1993, ISBN 0-387-94094-4págs. 7–8
- Abraham Adolf Fraenkel , Yehoshua Bar-Hillel , Azriel Lévy , Fundamentos de la teoría de conjuntos escolar , Elsevier Studies in Logic, vol. 67, 2.ª edición, revisada, 1973, ISBN 0-7204-2270-1pág. 33
- Gaisi Takeuti , WM Zaring, Introducción a la teoría axiomática de conjuntos , Springer GTM 1, 1971, ISBN 978-0-387-90024-7pág. 14
- George J. Tourlakis, Apuntes de clase sobre lógica y teoría de conjuntos. Volumen 2: Teoría de conjuntos , Cambridge University Press, 2003, ISBN 978-0-521-75374-6págs. 182–193
Enlaces externos
Definición de tupla en el diccionario Wikcionario
- Gestión de datos
- Notación matemática
- Secuencias y series
- Conceptos básicos en teoría de conjuntos
- teoría de tipos