In einem letzten Thread auf der Agda Mailing - Liste, die Frage nach den tauchte Gesetze auf, in dem Peter Hancock machte zum Nachdenken anregende Bemerkung .
Mein Verständnis ist , dass Gesetze kommen mit negativen Typen, dh. Konnektive, deren Einführungsregeln umkehrbar sind. Um für Funktionen zu deaktivieren , schlägt Hank vor , anstelle der üblichen Anwendungsregel einen benutzerdefinierten Eliminator, funsplit , zu verwenden. Ich möchte Hanks Bemerkung in Bezug auf die Polarität verstehen.
Beispielsweise gibt es zwei Präsentationen Typen. Es gibt den traditionellen Martin-Löf- Split- Eliminator in einem positiven Stil:
Und da ist die negative Version:
Diese letztere Präsentation macht es einfach , zu erhalten für Paare, dh. für ein beliebiges Paar (wobei == für die definitive Gleichheit steht). In Bezug auf die Beweisbarkeit spielt dieser Unterschied keine Rolle: Intuitionistisch können Sie Projektionen mit Split implementieren oder umgekehrt.
Nun werden -Typen normalerweise (und meiner Meinung nach unumstritten) negativ bewertet:
Was uns für Funktionen gibt: .
In dieser Mail erinnert sich Hank jedoch an den funsplit eliminator (Programming in ML type theory, [http://www.cse.chalmers.se/research/group/logic/book/], S.56). Es wird im logischen Rahmen beschrieben durch:
Interessanterweise haben Nordstrom et al. Motivieren Sie diese Definition, indem Sie sagen, dass "[diese] alternative nichtkanonische Form auf dem Prinzip der strukturellen Induktion beruht". Diese Aussage riecht stark nach Positivität: Funktionen würden durch ihren Konstruktor 'definiert' .
Allerdings kann ich eine zufriedenstellende Darstellung dieser Regel in natürlicher Ableitung (oder, noch besser, in Folgerechnung) nicht ganz festlegen. Die (ab) Verwendung des logischen Rahmens zur Einführung von scheint hier entscheidend zu sein.
So wird funsplit eine positive Darstellung von -Typen? Haben wir auch etwas Ähnliches in der (nicht abhängigen) Folgerechnung? Wie würde es aussehen?
Wie verbreitet / neugierig ist das für die Beweistheoretiker auf dem Gebiet?