www.wikidata.de-de.nina.az
In mathematischer Logik und theoretischer Informatik sind Typentheorien formale Systeme in denen jeder Term einen Typ hat und Operationen auf bestimmte Typen beschrankt sind Einige Typentheorien werden als Alternative zur axiomatischen Mengenlehre als Grundlage fur die moderne Mathematik benutzt Typentheorien haben Uberschneidungen mit Typsystemen die ein Merkmal von Programmiersprachen zur Fehlervermeidung darstellen Zwei populare Typentheorien die als mathematische Grundlagen genutzt werden sind Alonzo Churchs typisierter Lambda Kalkul und Per Martin Lofs intuitionistische Typentheorie Inhaltsverzeichnis 1 Geschichte 2 Grundlegende Konzepte 3 Typentheorien 3 1 Lambda Kalkul nach Church 3 2 Intuitionistische Typentheorie nach Martin Lof 3 3 Calculus of Constructions nach Coquand 3 4 Homotopietypentheorie 4 Spezielle Typen 5 Typkonstruktoren 6 Siehe auch 7 Literatur 8 Weblinks 9 EinzelnachweiseGeschichte BearbeitenZwischen 1902 und 1908 schlug Bertrand Russell verschiedene Typentheorien vor mit denen die Russellsche Antinomie der naiven Mengenlehre Gottlob Freges vermieden werden sollte Seine verzweigte Typentheorie und das Reduzibilitatsaxiom spielten eine wichtige Rolle in den zwischen 1910 und 1913 veroffentlichten Principia Mathematica Whitehead und Russell versuchten dort Russells Paradoxon durch eine Hierarchie von Typen zu vermeiden wobei jeder mathematischen Entitat ein Typ zuzuordnen ist Objekte eines bestimmten Typs konnen nur aus Objekten niederen Typs aufgebaut sein so dass Schleifen vermieden werden In den 1920er Jahren schlugen Leon Chwistek und Frank P Ramsey eine einfachere Theorie vor die heute als einfache Typentheorie bekannt ist Ublicherweise besteht eine Typentheorie aus Typen und einem Termersetzungssystem Ein bekanntes Beispiel ist der Lambda Kalkul Auf ihm basiert die Logik hoherer Stufe In einigen Bereichen der konstruktiven Mathematik und auch fur den Beweisassistenten Agda wird die intuitionistische Typentheorie verwendet Dagegen beruht der Beweisassistent Coq auf dem Konstruktionskalkul CoC Ein aktives Forschungsgebiet ist die Homotopietypentheorie Grundlegende Konzepte BearbeitenIn einer Typentheorie hat jeder Term einen Typ und Operationen werden nur fur Terme eines bestimmten Typs definiert Ein Typurteil M A displaystyle M colon A nbsp besagt dass der Term M displaystyle M nbsp vom Typ A displaystyle A nbsp ist Zum Beispiel ist N a t displaystyle mathrm Nat nbsp der Typ der naturlichen Zahlen und 0 1 2 displaystyle 0 1 2 ldots nbsp sind Terme von diesem Typ 2 N a t displaystyle 2 colon mathrm Nat nbsp ist das Urteil dass 2 displaystyle 2 nbsp vom Typ N a t displaystyle mathrm Nat nbsp ist Eine Funktion wird in der Typentheorie durch einen Pfeil displaystyle to nbsp bezeichnet Die Nachfolger Funktion a d d O n e displaystyle mathrm addOne nbsp hat das Urteil a d d O n e N a t N a t displaystyle mathrm addOne colon mathrm Nat to mathrm Nat nbsp Der Aufruf einer Funktion wird gelegentlich auch ohne Klammer geschrieben also a d d O n e 2 displaystyle mathrm addOne 2 nbsp anstelle von a d d O n e 2 displaystyle mathrm addOne 2 nbsp Eine Typentheorie kann auch Termumformungsregeln enthalten Zum Beispiel sind 2 1 displaystyle 2 1 nbsp und 3 displaystyle 3 nbsp syntaktisch unterschiedliche Terme der erste lasst sich aber auf den zweiten reduzieren Man schreibt 2 1 3 displaystyle 2 1 twoheadrightarrow 3 nbsp Typentheorien BearbeitenLambda Kalkul nach Church Bearbeiten Hauptartikel Lambda Kalkul Alonzo Church benutzte den Lambda Kalkul um 1936 sowohl eine negative Antwort auf das Entscheidungsproblem zu geben als auch eine Fundierung eines logischen Systems zu finden wie es den Principia Mathematica von Bertrand Russell und Alfred North Whitehead zugrunde lag Mittels des untypisierten Lambda Kalkuls kann man klar definieren was eine berechenbare Funktion ist Die Frage ob zwei Lambda Ausdrucke s u aquivalent sind kann im Allgemeinen nicht algorithmisch entschieden werden In seiner typisierten Form kann der Kalkul benutzt werden um Logik hoherer Stufe darzustellen Der Lambda Kalkul hat die Entwicklung funktionaler Programmiersprachen die Forschung um Typsysteme von Programmiersprachen im Allgemeinen sowie moderne Teildisziplinen in der Logik wie die Typtheorie wesentlich beeinflusst Intuitionistische Typentheorie nach Martin Lof Bearbeiten Die intuitionistische Typentheorie nach Per Martin Lof ist eine auf den Prinzipien des Konstruktivismus aufbauende Typentheorie und alternative Grundlegung der Mathematik Sie beruht auf einer Analogie zwischen Propositionen und Typen eine Proposition wird mit dem Typ ihres Beweises identifiziert So ist z B der Typ aller geordneten Paare vergleichbar mit logischer Konjunktion Ein solches geordnetes Paar kann nur existieren falls beide Typen mindestens ein Element besitzen Hierdurch konnen viele logische Prinzipien verallgemeinert werden Ein ebenfalls sehr relevanter Aspekt der Typentheorie sind induktive Definitionen Ein Beispiel dafur sind die naturlichen Zahlen Sie werden explizit als Konstruktion aus der Null und einer Nachfolgerfunktion definiert Diese werden nicht wie in der Mengenlehre speziell definiert sondern ihre Existenz wird angenommen oder durch eine verallgemeinerte Konstruktion erlaubt Zusammen mit diesen Konstruktoren existiert auch ein Induktionsschema das die Erstellung von Funktionen uber die naturlichen Zahlen oder auch Beweisen die fur jede naturliche Zahl gelten erlaubt Im Allgemeinen wird die intuitionistische Typentheorie oft als naher zur mathematischen Praxis gesehen als fundamentale Mengenlehre da in dieser jegliches mathematisches Objekt als Menge betrachtet wird Calculus of Constructions nach Coquand Bearbeiten Die Typentheorie Calculus of Constructions CoC nach Thierry Coquand ist ein Lambda Kalkul hoherer Ordnung der die Grundlage sowohl fur einen konstruktiven Aufbau der Mathematik als auch fur das computerisierte Beweissystem Coq ist Homotopietypentheorie Bearbeiten Die Homotopietypentheorie HoTT bezeichnet Entwicklungen der intensionalen Typentheorie von Martin Lof basierend auf der Interpretation von Typen als Objekte der Homotopietheorie Vladimir Voevodsky Homotopietypentheorie kann als Alternative zur Mengenlehre als Grundlage fur jegliche Mathematik benutzt werden Aktuelle Forschung umfasst deshalb u a die Formulierung herkommlicher Mathematik auf Grundlage von Typentheorie und die Umsetzung in Beweisassistenten Im akademischen Jahr 2012 2013 entstand in einem gemeinsamen Forschungsprojekt am Institute for Advanced Study ein Buch uber die Grundlagen dieser Disziplin 1 Spezielle Typen BearbeitenEinheitstyp void oder 0 Tupel Englisch void type hat nur einen einzigen Wert ahnlich Bottom Typ leerer Typ ohne Werte null oder siehe auch Bottom type englisch hat keinen Wert Top Typ der universelle Typ object oder siehe auch Top type englisch alle anderen Typen sind Subtypen Typkonstruktoren BearbeitenMit einem Typkonstruktor lassen sich aus vorhandenen einfachen Typen neue konstruieren Beispiele sind setof 2 entsprechend der Russellschen Typhierarchie auch iteriert zu einem Basistyp und Konstruktoren fur geordnete Paare oder auch n Tupel Wenn Komponenten verschiedene Typen haben 3 ist eine Paardarstellung nach Kuratowski oder ahnlich nicht moglich und es muss die Existenz eines Paartyps axiomatisch per Paaraxiom gefordert werden In der Anwendung bei Programmiersprachen werden ahnliche Konstruktoren record oder struct genannt allerdings haben deren Komponenten gewohnlich Namen statt Indexnummern wie bei Tupelkoordinaten 4 Siehe dazu auch Monaden Lambda Kalkul Typisierter Lambda Kalkul Typkonstruktoren in der Programmiersprache Haskell Siehe auch BearbeitenVon Neumann Hierarchie der kumulativen TypenLiteratur BearbeitenBertrand Russell Mathematical logic as based on the theory of types englisch PDF 1 9 MB in American Journal of Mathematics 30 1908 S 222 262 im Web Archiv vom 23 August 2014 Alvaro Pelayo Michael A Warren Homotopy type theory and Voevodsky s univalent foundations englisch PDF in Bull Amer Math Soc N S 51 no 4 2014 S 597 648 Weblinks BearbeitenType Theory nLab Thierry Coquand Type Theory In Edward N Zalta Hrsg Stanford Encyclopedia of Philosophy Christoph Benzmuller Peter Andrews Church s Type Theory In Edward N Zalta Hrsg Stanford Encyclopedia of Philosophy Peter Dybjer Erik Palmgren Intuitionistic Type Theory In Edward N Zalta Hrsg Stanford Encyclopedia of Philosophy http glossar hs augsburg de Typentheorie zur TypentheorieEinzelnachweise Bearbeiten Homotopy Type Theory Univalent Foundations of Mathematics siehe PL PostgreSQL Jedenfalls wenn die Basistypen entsprechend der Russellschen Typhierarchie verschieden sind bei verschiedenen Typstufen innerhalb derselben Hierarchie kann man die Paardarstellung noch geeignet modifizieren Entsprechend einer Feature Logik Abgerufen von https de wikipedia org w index php title Typentheorie amp oldid 234188939