Intuitionistische Lineare Logik

Ähnliche Dokumente
Formale Systeme. Aussagenlogik: Sequenzenkalkül. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Aussagenlogische Kalküle

Funktionale Programmierung ALP I. λ Kalkül WS 2012/2013. Prof. Dr. Margarita Esponda. Prof. Dr. Margarita Esponda

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Kapitel 1. Aussagenlogik

Theorie der Informatik

3. Grundlegende Begriffe von Logiken - Aussagenlogik

Beweisen mit Semantischen Tableaux

Kapitel 11. Prädikatenlogik Quantoren und logische Axiome

1 Aussagenlogischer Kalkül

Logik für Informatiker

Geschichte der Logik ist eng verknüpft mit (Sprach-) Philosophie. Logik untersucht, wie aus wahren Aussagen andere wahre Aussagen folgen

Einführung in die Logik

Unvollständigkeit der Arithmetik

Rhetorik und Argumentationstheorie.

Informationsverarbeitung auf Bitebene

Der Sequenzenkalkül. Charakterisierung der logischen Schlussfolgerung: Sequenzenkalkül für die Prädikatenlogik

Einführung in die mathematische Logik

Grundlagen von Datenbanken

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

Logik Vorlesung 3: Äquivalenz und Normalformen

Was ist Logik? Was ist Logik? Logische Konnektoren. Aussagenlogik. Logik stellt Sprachen zur Darstellung von Wissen zur Verfügung

Mathematik für Informatiker I

Syntax der Prädikatenlogik: Komplexe Formeln

5 Logische Programmierung

Vorsemesterkurs Informatik

GTI. Hannes Diener. 18. Juni. ENC B-0123,

Grundlagen der Theoretischen Informatik

Logik für Informatiker

Logik für Informatiker

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Inferenzmethoden. Einheit 18. Logik höherer Stufe

Alphabet, formale Sprache

Entwicklung eines korrekten Übersetzers

4.1 Motivation. Theorie der Informatik. Theorie der Informatik. 4.1 Motivation. 4.2 Syntax der Prädikatenlogik. 4.3 Semantik der Prädikatenlogik

Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen

Klassische Aussagenlogik

SE PHILOSOPHISCHE LOGIK WS 2014 GÜNTHER EDER

Kapitel 1.0. Aussagenlogik: Einführung. Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1

Einführung in die Fuzzy Logic

Einführung in die formale Logik. Prof. Dr. Andreas Hüttemann

Normalformen boolescher Funktionen

Systemtheorie 1. Einführung Systemtheorie 1 Formale Systeme 1 # WS 2006/2007 Armin Biere JKU Linz Revision: 1.4

Das Postsche Korrespondenzproblem

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1

Erfüllbarkeit und Allgemeingültigkeit

Binäre Suchbäume (binary search trees, kurz: bst)

Konjunktive und disjunktive Normalformen

Resolutionsalgorithmus

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen

Einstieg in die Informatik mit Java

Boolesche Algebra. Hans Joachim Oberle. Vorlesung an der TUHH im Wintersemester 2006/07 Montags, 9:45-11:15 Uhr, 14täglich TUHH, DE 22, Audimax 2

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Was bisher geschah. deklarative Programmierung. funktionale Programmierung (Haskell):

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs)

Aussagenlogische Widerlegungsverfahren zum Nachweis logischer Eigenschaften und Beziehungen

Computational Logic Algorithmische Logik Boolesche Algebra und Resolution

Grundlagen der Theoretischen Informatik

Beschreibungslogiken. Daniel Schradick

3. Logik 3.1 Aussagenlogik

Die Folgerungsbeziehung

Interdisziplinäre fachdidaktische Übung: Modelle für Sprachen in der Informatik. SS 2016: Grossmann, Jenko

Grundlagen der Informationverarbeitung

Programmierung WS12/13 Lösung - Übung 1 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik

5. Aussagenlogik und Schaltalgebra

Einführung Grundbegriffe

$Id: linabb.tex,v /01/09 13:27:34 hk Exp hk $

Bisher. minimale DNF. logischen Formeln Booleschen Funktionen Schaltungen

Binärbäume als weiteres Beispiel für abstrakte Datentypen in PVS mit in Knoten gespeicherten Werten vom Typ T:

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010

EIGENSCHAFTEN VON SPRACHEN

Einführung. Ablesen von einander zugeordneten Werten

Algorithmen & Programmierung. Ausdrücke & Operatoren (1)

Hilbert-Kalkül (Einführung)

7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});

Kontextfreie Grammatiken

Logic in a Nutshell. Christian Liguda

Algebraische Kurven. Vorlesung 26. Die Schnittmultiplizität

Beispiel. Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio)

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Ableitungen im Kalkül des Natürlichen Schließens

Algorithmen & Programmierung. Logik

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur

Theoretische Grundlagen der Informatik

Spieltheorie. Nash-Gleichgewichts-Berechnung. Bernhard Nebel und Robert Mattmüller. Arbeitsgruppe Grundlagen der Künstlichen Intelligenz 14.

Transkript:

Lineare Logik Intuitionistische Lineare Logik Zusammenhang zur intuitionistischen Logik Termzuweisung und funktionale Interpretation Intuitionistische Lineare Logik Sinn und Zweck : Kontrolle über Ressourcen im Rahmen der funktionalen Programmierung: Informationen bzw. Daten, die als Argumente verwandt werden stellen Ressourcen dar. im Sequenzenkalkül: Strukturregeln sind verantwortlich für Ressourcenmanagement. erlaubt das Kopieren von Ressouren erlaubt das Entfernen von Ressouren 1

Wirkung struktureller Regeln (Contraction) erlaubt mehrfaches Auftreten derselben Variable im Beweisterm (proof term) (Weakening) erlaubt die Verwendung von Variablen als Prämisse, die nicht im Beweisterm vorkommen In Linearer Logik werden diese beiden Regeln nicht verwendet! Also muß jedes Argument genau einmal verwendet werden, um die gewünschte Ausgabe zu erzeugen. Auswirkungen des Fehlens struktureller Regeln Zwei verschiedene Arten der Konjunktion: Tensorprodukt (multiplikativ): Beide Komponenten des Paares werden als Eingabe verwendet. Keine Projektion möglich! additive Konjunktion: Beim Verbrauch dieser Eingabe wird entweder die erste oder die zweite Komponente verwandt. Der andere Teil der Eingabe ist für die Berechnung nicht sichtbar! ==> Die additive Konjunktion entspricht externer Auswahl, d.h. der Benutzer bestimmt, welche Daten verbraucht werden. 2

Beispiel: multiplikative Konjunktion D D C C dime + dime ==> copy + copy Auswirkungen des Fehlens struktureller Regeln (2) und auch zwei verschiedene Disjunktionen, aber uns interessiert zunächst nur eine: additive Disjunktion: entspricht interner Auswahl, d.h. der Produzent der Information kann entscheiden, ob A (aus inl(t)) oder B aus inr(t)gewählt wird. multiplikative Implikation: ist die einzige Art der Implikation stellt Funktionen dar, die ihre Argumente genau einmal verwenden, d.h. intern der linearen Implikation gehorchen. 3

Linear Logische Modalitäten Zur Wiedererlangung der Ausdruckstärke der klassischen bzw. intuitionistischen Logik: Einführung der Modalitäten! (of course) und? (why not) of course stellt soviele Instanzen eines Wertees zur Verfügung, wie gebraucht werden intuitionistische Implikation wird ausgedrückt durch: strukturelle Regeln werden relativiert wieder eingeführt Lineare Logik und Petrinetze Beispiel eines Petrinetzes: a wechselseitiger Ausschluß c1 Prozeß 1 w1 w2 Prozeß 2 c2 b Konstruktion einer LL-Formel für obiges Netz: Die Transition wird beim Schalten nicht verbraucht.!(a B)!(B W 1 C 1 )!(B W 2 C 2 )!(C 1 A W 1 )!(C 2 A W 2 ) A W 1 W 2 und eine passende Startmarkierung 4

Lineare Logik und Petrinetze (2) Schalten des Netzes: a c1 Prozeß 1 w1 w2 Prozeß 2 c2 b Dargestellt als Ableitung in Linearer Logik: Wir verwenden die abgeleitete Regel A B, A B (Imp) D.h. für obiges Beispiel kann z.b. abgeleitet werden: Γ,!(A B),A Γ,!(A B),B Lineare Logik und Petrinetze (3) Schalten des Netzes: a c1 Prozeß 1 w1 w2 Prozeß 2 c2 b Dargestellt als Ableitung in Linearer Logik: weiter kann abgeleitet werden: Γ,!(B W 1 C 1 ),B W 1 Γ,!(B W 1 C 1 ),C 1 5

Linearlogische Codierung von Petrinetzen (1) Eine linearlogische Repräsentation des Verhaltens von Transition r: Ein einfaches S/T-Netz:... die Modalität stellt die Wiederverwendbarkeit von r dar. Die aktuelle Markierung: Linearlogische Codierung von Petrinetzen (2)... insgesamt ergibt sich für das Netz: Gleichbedeutend mit:!c Gleichbedeutend mit:!(a ) 6

Einweg-Transitionen (1) Transitionen, die maximal einmal Schalten können und daraufhin aus der Netzstruktur verschwinden. Zur Darstellung: Aus traditionellen Transitionen...... werden Einweg- Transitionen. Für i=1 entspricht ihr die Implikation Einweg-Transitionen (2) Schalten von Einweg-Transitionen: oder kurz: 1. Schalten 2. Schalten ist ableitbar 7

Linearlogische Codierung von erweiterten Petrinetzen (1) Linearlogische Codierung von erweiterten Petrinetzen (2) Adäquatheit der Repräsentation: Ein analoges Theorem ist auch für traditionelle S/T-Netze beweisbar [Brown 1989]. 8

Kombination von Linearer Logik mit Petrinetzen Grundgedanken: Transformation für intuitionistische Logik außer der Implikation lassen sich auch die anderen Konnektoren leicht mit Linearer Logik darstellen: Diese Übersetzung funktioniert nicht nur auf der Ebene von Theoremen, sondern auch auf der Beweisebene! Interessanter Aspekt des Curry-Howard-Isomorphismus: Die Übersetzung von LJ nach ILL induziert die Existenz eines Compilers von Programmen, die zu den Beweisen von LJ gehören, zu den Programmen der entsprechenden Beweise in ILL. 9

Sequenzenkalkül für intuitionistische Lineare Logik ILL zunächst einige Regeln, die unverändert bleiben: beliebige Formel intuitionistischer Kalkül Sequenzenkalkül für intuitionistische Lineare Logik ILL (2) nur eine Art der Implikation, da die Antezedenten und Sukzedenten multiplikativ interpretiert werden. 10

Sequenzenkalkül für intuitionistische Lineare Logik ILL (3) für Sequenzen Γ von Formeln wird definiert: := und nun das Wichtigste, die veränderten Strukturregeln: Nur anwendbar, wenn die Formel klassischen Charakter hat! Ein Ausflug zu den natürlichen Sprachen Lambda-Kalkül Der Lambda-Kalkül ist eine Kalkül über Funktionen. Hauptbestandteile: Abstraktion zur Definition von Funktionen Anwendung (Applikation) zur Berechnung von Funktionswerten Typisierung: Sei M ein Ausdruck, der (möglicherweise) die Variable x enthält. Dann ist λ x.m die Funktion, die x als Parameter hat und deren Funktionswert durch Auswertung des Ausdruckes M bestimmt wird. Dem formalen Parameter der Funktion wird der Vorbereich (domain) als Typ zugewiesen: z.b. λ x:int.x stellt die Identitätsfunktion auf den ganzen Zahlen dar. Anwendung: (λ x:int.x)5 = 5 11

nochmal zurück zur Termzuweisung für LJ Terme und Typen: (Formeln als Typen) konkreter Term vom Typ A Variable vom Typ A Term vom Typ B Variable x in u ersetzt durch t. Der Typ von u bleibt unverändert! Operationale Semantik Eager Evaluation Intuitionistische Logik (LJ) verhielt sich völlig neutral hinsichtlich der Evaluationsstrategie für den Lambdakalkül. In Linearer Logik ist dies fundamental anders: Die logische Struktur der Typen gibt vor, welche Art der Evaluation verwendet werden muß. z.b. multiplikative Konjunktion: Terme vom Typ A B werden beim Verbrauch zu einem Paar evaluiert. Es werden beide Komponenten verbraucht => eager evaluation. A B Lolli: Ein Term vom Typ evaluiert zu einer Abstraktion, Linearitätsbed. => call-by-value => eager evaluation. additive Konjunktion: Ein Term vom Typ A B wird evaluiert zu inl(t) oder inr(t) und t wird dann verwendet, um den rechten oder linken Zweig der case-anweisung zu evaluieren. 12

Operationale Semantik (2) Lazy Evaluation Anders verhalten sich: additive Konjunktion: Terme vom Typ A&B werden auch zu einem Paar evaluiert, bei dem jedoch genau eine Komponente verwandt wird. Es ist nicht vorhersehbar, welche der Komponenten dies sein wird!!! Wird also vorschnell evaluiert, so macht man im allgemeinen unnötige Berechnungsschritte => lazy evaluation ist angebrachter. of course : Ein Term vom Typ!A kann ganz verschwinden. (Weakening) Vorschnelle Evaluation führt wieder zu vermeidbarem Rechenaufwand => lazy evaluation. Termzuweisung für ILL Zu beachten: Die Syntax der Terme ist nicht kontextfrei! Linearitätsbedingung an die Instanzen von Variablen: Jede Eingabe muß genau einmal verbraucht werden. Zur Formalisierung verwenden wir syntaktische Kategorien von Mustern. X, Y, Z seien endliche Mengen von Variablen. Muster mit den im Index angegebenen Variablen. 13

Termzuweisung für ILL (2) lineare Terme mit freien Variablen gemäß der Indexmange: Termzuweisung für ILL (3) nun weisen wir den Sequenzen lineare Terme zu: LL-Formeln über den Konnektoren x i sind paarweise unterschiedliche Variablen und Folgende Regeln ergeben sich für den Termkalkül: 14

Termzuweisung für ILL (4) Termzuweisung für ILL (5) 15

Termzuweisung für ILL (6) und zum Schluß noch die neuen Strukturregeln : Jetzt soll hierfür eine operationale Semantik angegeben werden. Operationale Semantik (3) Klassifikation der Konnektoren: insbesondere ist für die Interpretation der intuitionistischen Datentypen Der intuitionistische Funktionstyp ist also operational call-by-name (lazy), da das Argument durch die lazy-evaluation von!a eingefroren wird. 16

Operationale Semantik (4) kanonische Formen: c, d sind kanonische Formen Evaluationsrelation: Operationale Semantik (5) Evaluationsrelation (Forts.): 17