Ich bin relativ neu in der Typentheorie und der abhängigen Programmierung. Ich habe die Konstruktionsrechnung (CoC) und andere reine Typsysteme untersucht. Ich bin besonders daran interessiert, es als beweiserhaltende Zwischendarstellung für ein Compilersystem zu verwenden. Ich verstehe , dass (Mit-) rekursive Typen darstellbarer sind , rechnerisch , mit als einzigen …
Coq enthält Let-Ausdrücke in seiner Kernsprache. Wir können let-Ausdrücke in Anwendungen wie diese übersetzen: let x : t = v in b ~> (\(x:t). b) v Ich verstehe, dass dies nicht immer funktioniert, da der Wert vbeim Typchecking nicht verfügbar wäre b. Dies kann jedoch leicht durch ein spezielles Gehäuse …
Ich möchte wissen, inwieweit ein Typensystem in einer Programmiersprache von Vorteil sein kann. Ich weiß zum Beispiel, dass wir in einer abhängig typisierten Programmiersprache eine VectorKlasse erstellen können, die die Größe des Vektors in die Typensignatur einbezieht. Es ist wie ein De-facto-Beispiel. Wir können auch eine Funktion appendmit diesen Signaturen …
Natürliche Zahlen werden induktiv definiert als (am Beispiel der Coq-Syntax) Inductive nat: Set := | O: nat | S: nat -> nat. Gibt es eine Standardmethode, um Ganzzahlen (und möglicherweise andere Mengen wie Rationals und Reals) konstruktiv zu definieren?
Ist es möglich, abhängige Typen in der vorhandenen Typed Racket- Implementierung zu verwenden? (dh existieren sie darin?) Ist es vernünftigerweise möglich, ein System abhängiger Typen mit typisiertem Schläger zu implementieren?
Ich habe kürzlich festgestellt, dass eine Reihe von Problemen, die ich vor einigen Jahren beim Versuch hatte, verschiedene mathematische Theorien in Java zu implementieren, darauf zurückzuführen sind, dass das Typisierungssystem in Java nicht stark genug ist, um die gesamte Martin-Löf-abhängige Typentheorie zu modellieren . Vor Java 5 und Generika war …
Die Domänentheorie liefert eine erstaunliche Theorie der Berechenbarkeit bei Vorhandensein einfacher Typen. Aber wenn parametrischer Polymorphismus hinzugefügt wird, scheint es keine schöne Theorie zu geben, die erklärt, was ganz so gut vor sich geht, wie die Domänentheorie die Berechnung über einfache Typen erklärt. Sicher würde ich nicht erwarten, dass so …
Bei abhängigen Typen wird die Miller-Mustervereinigung verwendet, um ein entscheidbares Fragment einer Vereinigung höherer Ordnung zu lösen. Dadurch können abhängig typisierte Sprachen Metavariablen oder implizite Argumente enthalten. Es gibt viele Artikel, die beschreiben, wie man angesichts eines Vereinigungsproblems im Musterfragment eine Lösung findet, wenn es eine gibt. Beispiele sind (Gundry-McBride) …
In einer typisierten Einstellung können Datensätze als Karte von Feld zu Typ betrachtet werden. Gibt es einen echten Unterschied zwischen dem resultierenden Typ und einer abhängigen Karte in einer abhängig typisierten Sprache, wenn es eine gut typisierte Zusammenführungsoperation für Datensätze gibt (die überlappende Felder zulässt)?
Ich lerne etwas über Sprachmetatheorie und Typensysteme und verwende coq , um mein Studium zu formalisieren. Eines der Dinge, die ich tun möchte, ist die Untersuchung von Typsystemen, die abhängige Typen enthalten , was meines Wissens sehr kompliziert ist: Es wäre von unschätzbarem Wert, sich auf coq verlassen zu können. …
In Typentheorien wie Coqs können wir einen Typ mit folgenden Parametern definieren: Inductive ListP (Element : Type) : Type := NilP : ListP Element | ConsP : Element -> ListP Element -> ListP Element. Alternativ können wir einen Typ mit einem Index wie folgt definieren: Inductive ListI : Type -> …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.