Tupel
In der Mathematik ist ein Tupel eine endliche geordnete Liste (Folge) von Elementen. Ein n-Tupel ist eine Folge (oder geordnete Liste) von n Elementen, wobei n eine nichtnegative ganze Zahl ist. Es gibt nur ein 0-Tupel, das als leeres Tupel bezeichnet wird. Ein n-Tupel wird induktiv durch die Konstruktion eines geordneten Paares definiert. ⓘ
Mathematiker schreiben Tupel in der Regel, indem sie die Elemente in Klammern "( )" auflisten und durch Kommata trennen; zum Beispiel bezeichnet (2, 7, 4, 1, 7) ein 5-Tupel. Manchmal werden andere Symbole verwendet, um die Elemente zu umschließen, wie eckige Klammern "[ ]" oder spitze Klammern "⟨ ⟩". Klammern "{ }" werden in einigen Programmiersprachen zur Angabe von Arrays verwendet, nicht aber in mathematischen Ausdrücken, da sie die Standardnotation für Mengen sind. Der Begriff Tupel kommt häufig vor, wenn es um andere mathematische Objekte geht, wie z. B. Vektoren. ⓘ
In der Informatik kommen Tupel in vielen Formen vor. Die meisten typisierten funktionalen Programmiersprachen implementieren Tupel direkt als Produkttypen, die eng mit algebraischen Datentypen, Mustervergleichen und destrukturierenden Zuweisungen verbunden sind. Viele Programmiersprachen bieten eine Alternative zu Tupeln an, die als Record-Typen bekannt sind und ungeordnete Elemente enthalten, auf die über Labels zugegriffen wird. Einige wenige Programmiersprachen kombinieren geordnete Tupel-Produkttypen und ungeordnete Satztypen in einem einzigen Konstrukt, wie z. B. in C structs und Haskell records. Relationale Datenbanken können ihre Zeilen (Datensätze) formell als Tupel bezeichnen. ⓘ
Tupel kommen auch in der relationalen Algebra, bei der Programmierung des semantischen Webs mit dem Resource Description Framework (RDF), in der Linguistik und in der Philosophie vor. ⓘ
Etymologie
Der Begriff entstand als Abstraktion von der Abfolge: Einfach, Paar/Doppel, Dreifach, Vierfach, Fünffach, Sextupel, Septupel, Oktupel, ..., n-Tupel, ..., wobei die Präfixe von den lateinischen Namen der Ziffern übernommen wurden. Das einzige 0-Tupel wird als Null-Tupel oder leeres Tupel bezeichnet. Ein 1-Tupel wird als Single (oder Singleton) bezeichnet, ein 2-Tupel als geordnetes Paar oder Couple und ein 3-Tupel als Tripel (oder Triplet). Die Zahl n kann eine beliebige nichtnegative ganze Zahl sein. So kann beispielsweise eine komplexe Zahl als 2-Tupel von Realen, ein Quaternion als 4-Tupel, ein Oktonion als 8-Tupel und ein Sedonion als 16-Tupel dargestellt werden. ⓘ
Obwohl diese Verwendungen -uple als Suffix behandeln, war das ursprüngliche Suffix -ple wie in "triple" (dreifach) oder "decuple" (zehnfach). Dies stammt vom mittelalterlichen lateinischen plus (Bedeutung "mehr"), das mit dem griechischen -πλοῦς verwandt ist, das das klassische und spätantike -plex (Bedeutung "gefaltet") ersetzt, wie in "duplex". ⓘ
Bezeichnungen für Tupel mit bestimmten Längen
Tupellänge, | Bezeichnung | Alternative Namen ⓘ |
---|---|---|
0 | leeres Tupel | Nulltupel / leere Folge / Einheit / keine mehr |
1 | Monupel | einzeln / Singleton / Monade |
2 | Paar | Doppel / geordnetes Paar / Zweierpaar / Zwilling / Dual / Duad / Dyad / Twosome |
3 | dreifach | Dreifach / Drilling / Dreiklang / geordneter Dreiklang / Dreierlei |
4 | Vierfaches | Vierling / Tetrade / Quartett / Vierling |
5 | Fünffach | Pentupel / Fünflinge / Pentade |
6 | Sextupel | Hextupel / Hexade |
7 | Septupel | Heptupel / Heptad |
8 | Oktupel | Okta / Oktett / Oktade / Oktuplet |
9 | Nonupel | Nonad / Ennead |
10 | Dekupel | Dekade / Jahrzehnt (antiquiert) |
11 | Undezupel | hendecuple / hendecad |
12 | Duodezimel | Dutzend / Duodekade |
13 | dredecuple | Bäckerdutzend |
14 | Quattuordecuple | Doppelseptupel |
15 | Fünffach | dreifach fünffach |
16 | Sexdekupel | Vierfaches Vierfaches |
17 | septendecuple | |
18 | octodecuple | |
19 | novemdecuple | |
20 | vigintupel | |
21 | unvigintupel | |
22 | duovigintupel | |
23 | trevigintupel | |
24 | quattuorvigintuple | |
25 | quinvigintuple | |
26 | Sexvigintupel | |
27 | septenvigintupel | |
28 | octovigintuple | |
29 | novemvigintupel | |
30 | trigintupel | |
31 | untrigintupel | |
32 | duotrigintupel | |
33 | Tritrigintupel | |
40 | Vierfachtupel | |
41 | Nicht-Quadragintupel | |
50 | Quinquagintupel | |
60 | Sexagintupel | |
70 | Septuagintupel | |
80 | Oktogintupel | |
90 | Nicht-Pentupel | |
100 | Zentupel | |
1,000 | Millupel | chiliad |
Beachten Sie, dass für der Tupelname in der obigen Tabelle auch als Verb fungieren kann, das bedeutet "[das direkte Objekt] multiplizieren mit multiplizieren"; zum Beispiel bedeutet "verfünffachen" "mit 5 multiplizieren". Wenn dann ist das zugehörige Verb "verdoppeln". Es gibt auch ein Verb "sesquiple", das "mit 3/2 multiplizieren" bedeutet. Theoretisch könnte auch "monuple" auf diese Weise verwendet werden. ⓘ
Eigenschaften
Die allgemeine Regel für die Identität von zwei n-Tupeln lautet
- wenn und nur wenn . ⓘ
Ein Tupel hat also Eigenschaften, die es von einer Menge unterscheiden:
- Ein Tupel kann mehrere Instanzen desselben Elements enthalten, also
Tupel ; aber Menge . - Tupel-Elemente sind geordnet: tuple , aber Menge .
- Ein Tupel hat eine endliche Anzahl von Elementen, während eine Menge oder ein Multiset eine unendliche Anzahl von Elementen haben kann. ⓘ
Definitionen
Es gibt mehrere Definitionen von Tupeln, die ihnen die im vorherigen Abschnitt beschriebenen Eigenschaften verleihen. ⓘ
Tupel als Funktionen
Das -Tupel kann als die leere Funktion identifiziert werden. Für die -Tupel kann identifiziert werden mit der (surjektiven) Funktion
mit Domäne
und mit Codomain
die definiert ist bei durch
Das heißt, ist die Funktion definiert durch
definiert ist. In diesem Fall ist die Gleichheit ⓘ
notwendigerweise gilt. ⓘ
- Tupel als Mengen von geordneten Paaren ⓘ
Funktionen werden im Allgemeinen mit ihren Graphen identifiziert, d. h. einer bestimmten Menge geordneter Paare. In der Tat verwenden viele Autoren Graphen als Definition einer Funktion. Unter Verwendung dieser Definition von "Funktion" kann die obige Funktion als definiert werden:
Tupel als verschachtelte geordnete Paare
Eine weitere Möglichkeit, Tupel in der Mengenlehre zu modellieren, ist die Darstellung als verschachtelte geordnete Paare. Bei diesem Ansatz wird davon ausgegangen, dass der Begriff des geordneten Paares bereits definiert wurde.
- Das 0-Tupel (d. h. das leere Tupel) wird durch die leere Menge dargestellt .
- Ein n-Tupel mit n > 0 kann als geordnetes Paar aus seinem ersten Eintrag und einem (n - 1)-Tupel (das bei n > 1 die restlichen Einträge enthält) definiert werden:
Diese Definition kann rekursiv auf das (n - 1)-Tupel angewendet werden:
Also z.B.:
Eine Variante dieser Definition beginnt mit dem "Abschälen" von Elementen vom anderen Ende:
- Das 0-Tupel ist die leere Menge .
- Für n > 0:
Diese Definition kann rekursiv angewendet werden:
Also z.B.:
Tupel als verschachtelte Mengen
Unter Verwendung der Kuratowski-Darstellung für ein geordnetes Paar lässt sich die zweite obige Definition im Sinne der reinen Mengenlehre umformulieren:
- Das 0-Tupel (d. h. das leere Tupel) wird durch die leere Menge dargestellt ;
- Sei sei ein n-Tupel , und sei . dann, . (Der rechte Pfeil, kann als "angrenzend an" gelesen werden.) ⓘ
In dieser Formulierung:
n-Tupel von m-Mengen
In der diskreten Mathematik, insbesondere in der Kombinatorik und der Theorie der endlichen Wahrscheinlichkeiten, tauchen n-Tupel im Zusammenhang mit verschiedenen Zählproblemen auf und werden informeller als geordnete Listen der Länge n behandelt. n-Tupel, deren Einträge aus einer Menge von m Elementen stammen, werden auch als Anordnungen mit Wiederholung, Permutationen einer Multimenge und, in einiger nicht-englischer Literatur, als Variationen mit Wiederholung bezeichnet. Die Anzahl der n-Tupel einer m-Menge ist mn. Dies folgt aus der kombinatorischen Regel des Produkts. Wenn S eine endliche Menge der Kardinalität m ist, ist diese Zahl die Kardinalität der n-fachen kartesischen Potenz S × S × ⋯ × S. Tupel sind Elemente dieser Produktmenge. ⓘ
Typentheorie
In der in Programmiersprachen gebräuchlichen Typentheorie hat ein Tupel einen Produkttyp, der nicht nur die Länge, sondern auch die zugrundeliegenden Typen der einzelnen Komponenten festlegt. Formal:
und die Projektionen sind Termkonstruktoren:
Das im relationalen Modell verwendete Tupel mit beschrifteten Elementen hat einen Record-Typ. Diese beiden Typen können als einfache Erweiterungen des einfach typisierten Lambda-Kalküls definiert werden. ⓘ
Der Begriff des Tupels in der Typentheorie und der Begriff in der Mengenlehre sind auf folgende Weise miteinander verwandt: Betrachtet man das natürliche Modell einer Typentheorie und verwendet die Scott-Klammern zur Angabe der semantischen Interpretation, so besteht das Modell aus einigen Mengen (man beachte: die Verwendung von Kursivschrift hier, die Mengen von Typen unterscheidet), so dass
und die Interpretation der Grundbegriffe ist:
- . ⓘ
Das n-Tupel der Typentheorie hat die natürliche Interpretation wie ein n-Tupel der Mengenlehre:
Der Einheitstyp hat als semantische Interpretation das 0-Tupel. ⓘ
Ein -Tupel ist eine Zusammenfassung von mathematischen Objekten in einer Liste. Im Gegensatz zu Mengen müssen die Objekte dabei nicht notwendigerweise voneinander verschieden sein und ihre Reihenfolge ist von Bedeutung. Tupel werden meist mittels runder Klammern ⓘ
notiert, wobei zwei aufeinanderfolgende Objekte durch ein Komma getrennt werden. Das an der -ten Stelle stehende Objekt heißt dabei die -te Komponente des Tupels. Gelegentlich werden zur Notation aber auch andere Klammertypen, wie spitze oder eckige Klammern verwendet:
- oder ⓘ
Auch andere Trennzeichen, wie Semikolon oder senkrechter Strich sind üblich. Weitere Notationsvarianten sind ⓘ
oder auch kurz , wenn die Länge des Tupels aus dem Kontext klar ist. ⓘ
Zwei Tupel und sind genau dann gleich, wenn sie gleich lang sind und ihre entsprechenden Komponenten gleich sind, das heißt ⓘ
- und für . ⓘ
Verwendung
Tupel werden in der Mathematik zum Beispiel als Koordinaten von Punkten oder Vektoren in -dimensionalen Räumen und in der Informatik als Datenfelder und -strukturen verwendet. Folglich werden auch Zeilen oder Spalten von Matrizen ggf. als Tupel angesehen und behandelt. ⓘ