Beispiele für Ausdrucksalgebren

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Vorlesung Compilertechnik Sommersemester 2008
Sortieren I - Bubblesort -
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Default Logiken Zhao Li
8. Formale Sprachen und Grammatiken
Es sei SPEC = (, E) eine Spezifikation mit einer
Finale Semantik und beobachtbares Verhalten
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 4 / 1 Termalgebren Definition "Freie Algebra" Die -Algebra A = [A, F ] heißt.
Kapitel 4 Datenstrukturen
Imperative Programmierung
Syntax der Aussagenlogik
Grammatiken, Definitionen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Grammatiken beschreiben Sprachen L µ *, indem.
REKURSION + ITERATION. Bemerkung: Die in den folgenden Folien angegebenen "Herleitungen" sind keine exakten Beweise, sondern Plausibilitätsbetrachtungen.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Kapitel 5 Stetigkeit.
Kapitel 1 Die natürlichen und die ganze Zahlen. Kapitel 1: Die natürlichen und die ganzen Zahlen © Beutelspacher/Zschiegner April 2005 Seite 2 Inhalt.
Kapitel 6 Differenzierbarkeit. Kapitel 6: Differenzierbarkeit © Beutelspacher Juni 2005 Seite 2 Inhalt 6.1 Die Definition 6.2 Die Eigenschaften 6.3 Extremwerte.
M a r c – o l i v e r p a h l Informatik II – Kapitel 18 Übersetzung Zusammenfassung des Kapitel 18 Küchlin, Weber, Vorversion Einführung in die Informatik,
Prof. Dr. rer.nat. Ralph Großmann Fakultät Informatik / Mathematik Sommersemester 2012 Internet-Technologien XML-basierte Techniken Teil Metasprache der.
Prolog Grundkurs WS 98/99 Christof Rumpf
Datentyp  Zusammenfassung von Mengen von "Werten" mit auf
? Grammatik  Orthographie ?
d.h. für alle  mit () = (s1,s2 ,...,sn,s) gilt: wenn
Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),
Einführung Wat jibt´s denn? Mit Computa kenn´ ick mir aus! Guten Tag,
Gleichungskalkül und Induktion
Grammatik als Deduktionssystem
Folie 1 Kapitel II. Vom Raumbegriff zu algebraischen Strukturen Neubeginn: Herleitung des Begriffs Vektorraum aus intuitiven Vorstellungen über den Raumbegriff.
§14 Basis und Dimension (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
§9 Der affine Raum – Teil 2: Geraden
§9 Der affine Raum – Teil 2: Geraden
§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
§8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein weiteres.
Grundkurs Theoretische Informatik, Folie 7.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 7 Gottfried Vossen Kurt-Ulrich Witt.
§10 Vektorraum. Definition und Beispiele
§17 Produkte und Quotienten von Vektorräumen
§24 Affine Koordinatensysteme
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Grundlagen der Programmierung
§3 Allgemeine lineare Gleichungssysteme
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
Städtisches Gymnasium Beverungen Friedel Berlage
Dieser nicht Fehler finden Algorithmus enthält einfach einen gravierenden welcher zu ist.
Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S  Ac | Bd A  aAb | ab B  aBbb | abb Definieren Sie.
Noam CHOMSKY, Sheila GREIBACH
Noam CHOMSKY, Sheila GREIBACH
ENDLICHE KÖRPER RSA – VERFAHREN.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Informatik Formale Sprachen 1.2 Grammatiken formaler Sprachen
Mensch – Maschine - Kommunikation
Der Hund jagt die Katze. Theoretische Informatik Satz S P O
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele (Frist: ) Beispiel 1: Sei  = {a, b} ein Alphabet und Q = {q 0, q 1 } eine.
7. Formale Sprachen und Grammatiken
Kapitel 4:Die Chomsky Hierarchie
Folie 1 §21 Das Produkt von Matrizen (21.1) Definition: Für eine (m,n)-Matrix A und eine (n,s)-Matrix B ist das (Matrizen-) Produkt AB definiert als (21.2)
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 3 / 1 Algebraische Hülle und Homomorphie A = [A, F ] sei  -Algebra. Eine.
Grundkurs Theoretische Informatik, Folie 5.1 © 2004 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 5 Gottfried Vossen Kurt-Ulrich Witt.
Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 10 / 1 Kapitel 10 Initialität Eine beliebige gleichungsdefinierbare Klasse.
? definierende Gleichungen  gültige Gleichungen ?
 Sortigkeit oder Arität
Folie 1 §8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein.
 Präsentation transkript:

Beispiele für Ausdrucksalgebren 1. A = [ AUS ; neg, con, alt ] - die Algebra der pfeilfreien aussagenlogischen Ausdrücke ist ein klassisches Beispiel für eine homogene Ausdrucksalgebra (Namensgeber!) vergleiche dazu die Überlegungen zur Syntaxanalyse und die aus der Logik bekannten Sätze über die Ausdrücke 2. N = [ Nz ; 0 , suc] - „die“ (?) PEANO-Algebra der natürlichen Zahlen mit der Konstanten 0 und der Nachfolgerfunktion suc die PEANO-Axiome sind ein Spezialfall der verallgemeiner- ten PEANO-Axiome, folglich genügt N den Bedingungen (P1) - (P3), PEANO-Basis ist hier 

Beispiele für Ausdrucksalgebren (Forts.) 2. N = [ Nz ; 0 , suc] - ist PEANO-Algebra unabhängig von der „konkreten“ Gestalt der natürlichen Zahlen: Nz = {0,1,2, ...} , Nz = { |, ||, |||, ||||, ...} , Nz = Menge der Äquivalenzklassen gleichmächtiger endlicher Mengen, Nz = { O, L, LO, LL, LOO, ...} , Nz = Menge der Ordinalzahlen, . . . N ist homogene Algebra vom Typ  mit  = {O, ' }, (O) = 0, (') = 1.

Beispiele für Ausdrucksalgebren (Forts.) zu 2.:  bezeichne wie üblich die sich ergebende Signatur. (a) Terme der Standardtermalgebra T sind z.B. O, 'O, ''O, '''O, ... (b) die Termalgebra mit den (entsprechenden) Termen O, O', O'', O''', ... ist natürlich isomorph zu T ; genauso wie (c) N = [ Nz ; 0 , suc] . (d) die folgenden Ausdrücke gehören zu einer Ausdrucksalgebra derselben Signatur über der Variablenmenge X = { x1, x2, x3, ...} : x1, x2, x27, O, O''''''', x359'''''', ...

Beispiele für Ausdrucksalgebren (Forts.) 3. Algebra arithmetischer blauer Terme: Zeichenvorrat  = { 0, +, ), (, x1, x2, x3, ... } sei gegeben. Setze X = { x1, x2, x3, ... } ,  = {0, +} und bilde die homogene Algebra E = [E ; f0, f+] vom Typ (0,2) mit f0 = 0, f+(e1, e2) = (e1 + e2) für bel. e1, e2 E (a) Ausdrücke (d.h. Elemente von E) sind z.B. 0, ((x1 + 0) + x5), (x1 + (0 + x3)), (x34 + x87), ... (b) wenn man die Definition von f+ abändert in f+(e1, e2) = +e1e2 , so erhält man analog die Ausdrücke bzw. Terme 0, ++x10x5 , +x1+0x3 , +x34x87 , ...

Beispiele für Ausdrucksalgebren (Forts.) 4. Homogene Termalgebra über X = {p, q, r} mit  = { , } vom Typ (2,2) : Terme: (a) bei Benutzung der üblichen Folgenschreibweise vergleiche dazu die Def. von T(X) (p) , (, (, q, r), p) , (, (, p, r), (, p, p)) , ... (b) bei Verwendung von Zeichenreihenschreibweisen: Präfixschreibweise: p, qrp, prpp Infixschreibweise: p, ((q  r)  p) , ((p  r)  (p  p)) Postfixschreibweise: p, qrp , prpp Funktionsschreibweise: p, ((q, r), p) , ((p, r), (p, p))

Beispiele für Ausdrucksalgebren (Forts.) 5. Zum MEALY-Automaten :  = (S, ,  ) , S = {x, y, z},  = {1, 2},  (1) = (z, x , z),  (2) = (z, x , y). Bilde -Standardtermalgebra über V = (Vs)sS mit Vx = { x1, x2, x3, ...}, Vy = { y1, y2, y3, ...}, Vz = { z1, z2, z3}. Zu T(V) gehören z.B. folgende Terme: in Tx : x1, x2, x3, ... keine weiteren ! in Ty : y1, y2, y3, ... 2z1x1, 2z1x2, 2z1x3, ... 2z2x1, 2z2x2, 2z2x3, ... 2z3x1, 2z3x2, 2z3x3, ... zur Fortsetzung weitere "Zustandsterme" aus Tz nötig

Beispiele für Ausdrucksalgebren (Forts.) weiter zu 5: in Tz : z1, z2, z3 1z1x1, 1z1x2, 1z1x3, ... 1z2x1, 1z2x2, 1z2x3, ... 1z3x1, 1z3x2, 1z3x3, ... zur Fortsetzung diese schon gebildeten "Zustandsterme" aus Tz verwenden 11z1x1x1, 11z1x1x2, 11z1x1x3, ...  Tz . . . zu Ty kommen nun dazu: 21z1x1x1, 21z1x1x2, 21z1x1x3, ... 21z1x2x1, 21z1x2x2, 21z1x2x3, ...

Beispiele für Ausdrucksalgebren (Forts.) 6. Zum Datentyp „Keller“ :  = (S, ,  ) mit S = {d, s},  = {, #, , pop, push, top}, d für date, s für stack,  - date error, # - stack error,  - leerer Keller  () = (d),  (#) =  () = (s),  (push) = (d,s,s),  (pop) = (s,s),  (top) = (s,d). Bilde -Ausdrucksalgebra E(X) über X = [Xd , Xs] mit Xd = { x1, x2, x3, ...}, Xs =  in schwacher Abwandlung der Definition von T(X): in Es z.B.: #, , push(xipush(xj)), pop(push(xj)), ... für beliebige i und j in Ed z.B.: x1, x2, , top(), top(push(x1push(x27)), top(push(x7)), ...

G = (N, T, P, S) - gegebene kontextfreie Grammatik 7. Beispiel Zuordung der syntaktischen Algebra zu kontextfreier Grammatik G = (N, T, P, S) - gegebene kontextfreie Grammatik N - Alphabet der Nichtterminale, T - Alphabet der Terminalzeichen, P - Menge der Produktionen : P  N  (T  N )* S - Startsymbol: S  N Für jedes A  N setze LA = { w | A * w  w  T* } . Es ist dann L(G) = LS . Zu Regel p  P der Gestalt A  u1A1u2A2...unAnun+1 mit A, Ai  N , uj  T* definiere Operation fp : LA1  LA2  ...  LAn  LA mit fp (x1, x2, ... , xn ) = u1x1u2x2...unxnun+1

Die sich so ergebende Algebra wird mit SYNG bezeichnet: 7. Beispiel (Forts.) Die sich so ergebende Algebra wird mit SYNG bezeichnet: SYNG = [(LA)AN , (fp)pP] Sie heißt die zu G gehörige syntaktische Algebra. Deren Signatur G ist ebenfalls aus der Grammatik erkennbar: G = (N, P,  ) , wobei  (p) = (A1, A2, ... , An , A) zu setzen ist, falls die Regel p die Gestalt A  u1A1u2A2...unAnun+1 mit A, Ai  N , uj  T* besitzt.

Man erkennt, daß SYNG die verallgemeinerten PEANO-Axiome 7. Beispiel (Forts.) Man erkennt, daß SYNG die verallgemeinerten PEANO-Axiome erfüllt, falls alle Sprachen LA , nicht nur L(G) selbst, bzgl. G eindeutige Sprachen sind (im Sinne der Theorie formaler Sprachen!). Im Falle der „grammatikalischen“ Eindeutigkeit ist also SYNG eine Ausdrucks- bzw. PEANO-Algebra. Deren eindeutig bestimmtes Erzeugendensystem X ist dann das System leerer Mengen wegen XA = LA \  im ( fp ) =  . l(p) bezeichnet hier die linke Seite der Regel p . l(p) = A

7. Beispiel (Forts.) Die Signatur G, die durch die kontextfreie Grammatik G festgelegt ist, bestimmt auch die zugehörige initiale (variablenfreie) Standardtermalgebra TG , kurz TG . Entsprechend der allgemeinen Definition von T erhält man hier als Elemente der Trägermenge TG,A von TG alle Folgen von Regeln, die zu vollständigen Linksableitungen in G, beginnend mit A gehören. Vergleiche dazu die Erläuterungen am Beispiel Da zu jeder Linksableitung eineindeutig ein Ableitungsbaum gehört, sagt man, daß die initiale Termalgebra der Signatur G die Algebra der Ableitungsbäume ist. Diese Algebra TG heißt deshalb auch abstrakte Syntax.

mit P = { A  (A+B), A  a, B  b }. Also ist G = ({A, B}, P, ). 7. Beispiel (Forts.) Beispiel G = ({A, B}, { +, ), (, a, b }, P, A) mit P = { A  (A+B), A  a, B  b }. Also ist G = ({A, B}, P, ). Regelnamen Regeln (p) = (w,s) + A  (A+B) (AB, A) a A  a (A) b B  b (B) zu TG,B nur: B  b als Konstante zu TG,A : Wie sehen die „Standardterme“ der Sorte A aus? Es gibt zwei Operatoren mit Ausgang A !   Konstanten! 

zu TG,A z.B. : A  a als Konstante A  (A+B) A  a B  b  t1 t2 7. Beispiel (Forts.) Beispiel (Forts.) zu TG,A z.B. : A  a als Konstante A  (A+B) A  a B  b  t1 t2 A  (A+B) A  (A+B) A  a B  b B  b   t1 t2 Umbenennung der Operatoren ergibt folgende Schreibweise derselben Terme: a  a + ab + Ableitungsbäume ++abb a b + + b a b