Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 1 S heißt Menge der Sorten(namen),  Menge der Operatoren,  Sortigkeit.

Ähnliche Präsentationen


Präsentation zum Thema: "Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 1 S heißt Menge der Sorten(namen),  Menge der Operatoren,  Sortigkeit."—  Präsentation transkript:

1

2 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 1 S heißt Menge der Sorten(namen),  Menge der Operatoren,  Sortigkeit oder Arität Kapitel 2 Heterogene Algebren Signatur  :  = (S, ,  ) Mengen S  , S   =   :   S +

3 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 2 Signatur ,  = (S, ,  ),    gegeben.   (  )  S +  (  ) = (s 1,s 2,...,s n,s n+1 ) w = (s 1,s 2,...,s n ) heißt Eingang des Operators , kurz i  (  ). s n+1 heißt Ausgang des Operators , kurz o  (  ). n heißt Stelligkeit des Operators .  i  (  )  S *, o  (  )  S,  (  ) = (i  (  ), o  (  )) = (w, s)  :   S *  S

4 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 3 Aw ={Aw ={ A s 1  A s 2 ...  A s n, falls w = (s 1,s 2,...,s n ) {  }, falls w =  Bequeme Schreibweisen: A = (A s ) s  S und B = (B s ) s  S seien Mengenfamilien. A Teilfamilie von B, A  B, gdw. A s  B s für alle s  S. Analog wird Durchschnitt und Vereinigung von Mengenfamilien definiert. a  A ist Abkürzung für  s(s  S  a  A s ). Verallgemeinerung des Kreuzprodukts: für w  S*

5 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 4 Analog zu A w für w  S* wird auch für Abbildungsfamilien h = (h s ) s  S die Schreibweise h w eingeführt: Wenn h : A  B, (h s : A s  B s ) s  S, dann bei w = (s 1,s 2,...,s n ) : h w : A w  B w vermöge h w (a 1,a 2,...,a n ) = (h s 1 (a 1 ), h s 2 (a 2 ),..., h s n (a n )) Bequeme Schreibweisen (Forts.):

6 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 5 Signatur  = (S, ,  ) gegeben. Bilde für alle w  S *, s  S die Mengen  w,s = {  |      (  ) = (w, s) } Man beachte, daß bei Anwendungen fast alle  w,s leer sind.   (  ) = (w, s) ist gleichbedeutend mit    w,s    steht als Abkürzung für  s  w( s  S  w  S *     w,s ). Manchmal heißt dann auch die Familie  = (  w,s ) w  S*, s  S eine S-sortige Signatur. Die Elemente von S sind wieder die Sorten, die von  w,s Operatoren mit Eingang w, Ausgang s und Arität (w,s).

7 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 6 Zum Begriff der „heterogenen Algebra“: Signatur  mit  = (S, ,  ) gegeben. Heterogene Algebra mit Signatur , kurz  -Algebra: A = [(A s ) s  S, (f  )    ] Mengenfamilie Funktionenfamilie mit: wenn  (  ) = (w, s), so f  : A w  A s

8 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 7  -Algebra A = [(A s ) s  S, (f  )    ] gegeben. A s heißen Trägermengen von A, Trägermenge der Sorte s, (!) paarweise Disjunktheit ist nicht (!) gefordert, f  heißen Operationen von A. Wenn  (  ) = (s), d.h. i  (  ) = , so heißt f  Konstante der Sorte s. A = [(A s ) s  S, (f  )    ]  -Algebra  f  : A i  (  )  A o  (  )

9 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 8 Homogene Algebra A = [ A, (f  )    ] ist Spezialfall der heterogenen Algebren, und zwar mit einsortiger Signatur! Wenn bei  = (S, ,  ) die Sortenmenge einelementig ist, S = {s}, so wird Familie (A s ) s  S zu einer einzigen Trägermenge A, die Arität  (  ) = (s, s,...,s) gibt nur noch die Stellenzahl an, also äquivalent zu   Nz.   Nz beinhaltet alle notwendigen „Signatur“- Informationen und ersetzt damit .  heißt Typ der homogenen Algebra A

10 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 9 Beispiele für Algebren 1. MEALY -Automat : A = [ X, Y, Z ; , ] wie üblich definierter endlicher Automat: X - Eingabealphabet, Y - Ausgabealphabet, Z - Zustandsmenge,  Z  X  Z Überführungsfunktion,  Z  X  Y Ausgabefunktion. A ist eine  -Algebra A = [(A s ) s  S, (f  )    ] mit der Signatur  = (S, ,  ) mit z.B. S = {x, y, z},  = {1, 2},  (1) = (z, x, z),  (2) = (z, x, y). Dann ist A x =X, A y =Y, A z =Z und f 1 = , f 2 = 

11 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 10 Beispiele für Algebren 2. MOORE -Automat : A = [ X, Y, Z ; ,  ] kann analog als eine  -Algebra A = [(A s ) s  S, (f  )    ] mit z.B. der Signatur  = (S, ,  ) mit S = {x, y, z},  = { ,  },  (  ) = (z, x, z),  (  ) = (z, y) aufgefaßt werden. Beachte hier: f  = , f  =  absolut willkürlich !

12 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 11 Beispiele für Algebren 3. ROBIN-SCOTT -Automat (initialer Automat) : A = [ Z, X, z 0, F,  ] mit  Z  X  Z, z 0  Z, F  Z kann als eine  -Algebra A = [(A s ) s  S, (f  )    ] aufgefaßt werden mit S = {z, x},  = {  0,   }  {  t  t  F },  (  0 ) = (z),  (  t ) = (z) für alle t  F,  (   ) = (z,x,z).  A z =Z, A x =X und f  0 = z 0, f  t = t für alle t  F, (Initial-, Finalzustände) Konstanten ! f   =  (Überführungsfunktion)

13 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 12 Beispiele für Algebren 4. Homogene Algebren: [ P( M) ; ,  ] Potenzmenge über einer Menge M mit Vereinigung und Durchschnitt [ {W, F} ; ,  ] Menge der Wahrheitswerte mit Konjunktion und Disjunktion [ Nz ; +,  ] Menge der natürlichen Zahlen mit Addition und Multiplikation - alle drei Algebren vom Typ (2,2). Sie heißen deshalb ähnlich ( ! ).

14 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 13 Beispiele für Algebren weiter zu 4. Homogene Algebren: [ Nz ; 0, '] Menge der natürlichen Zahlen mit der Konstanten 0 und der Nachfolgerfunktion ' - homogene Algebra vom Typ (0,1). Das ist die allgemein bekannte PEANO-Algebra der natürlichen Zahlen.

15 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 14 Beispiele für Algebren 5. Aussagenlogische Ausdrucks-Algebra: [ AUS ; neg, con, alt ] Menge aller „pfeilfreien“ aussagenlogischen Ausdrücke mit neg als der syntaktischen Operation der Bildung negierter Ausdrücke, con bzw. alt den entsprechenden syntaktischen Operationen der Bildung von Konjunktionen bzw. Alternativen. Für A, B  AUS gilt z.B. neg( A) =  A con( A, B) = (A  B) alt ( A, B) = (A  B) - homogene Algebra vom Typ (1, 2, 2). - bemerkenswerte Eigenschaften!

16 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 15 Beispiele für Algebren 6. Semiotisches Quadrupel: S = [ W, X ; ,  ] X ist ein Alphabet, W ist die Wortmenge über diesem Alphabet,  das leere Wort, und  die Verkettung eines Wortes mit einem Zeichen. ( ! ) S ist heterogene Algebra mit der Signatur  = (S, ,  ) mit S = {w, z},  = { ,  },  (  ) = (w),  (  ) = (w,z,w).  A w = W, A z = X und f  = , f  =  : W  X  W (  Konstante der Sorte w)

17 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 16 Beispiele für Algebren 7. Syntax einer Programmiersprache kann man stets als heterogene Algebra auffassen! Einfache Beispielsprache: - Menge der Identifier sei beliebig gegeben Ausdrücke (expressions) ::= 0 | 1 | true | false | |  | ( = ) | ( + ) Anweisungen (commands) ::= := | ; | if then else fi

18 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / Syntax einer Programmiersprache (Forts.) : Man erhält drei Trägermengen Ide, Exp, Com. Zu jeder Einzelregel obiger BNF gehört eine Operation der Algebra, hinzu kommt für jeden Identifier eine Konstante: Beispiel: Operationen, die sich aus Regeln für ergeben: f := (I, E) = I := E f if (E, C 1, C 2 ) = if E then C 1 else C 2 fi f ; (C 1, C 2 ) = C 1 ;C 2

19 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / Syntax einer Programmiersprache (Forts.) : Die Operationen der Algebra lassen sich aus der BNF ablesen: f 0 = 0 f 1 = 1 f true = true Konstanten! f false = false f I = I für alle I  Ide f  (E)=  E für E  Exp f = (E 1, E 2 )= (E 1 = E 2 )für E 1, E 2  Exp f + (E 1, E 2 ) = (E 1 + E 2 )für E 1, E 2  Exp f := (I, E) = I := E für I  Ide, E  Exp f if (E, C 1, C 2 ) = if E then C 1 else C 2 fi für E  Exp, C 1, C 2  Com f ; (C 1, C 2 ) = C 1 ;C 2 für C 1, C 2  Com 

20 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / Syntax einer Programmiersprache (Forts.) : Die Signatur dieser Algebra kann man auch leicht aus folgenden Angaben ablesen: 0 :  Exp 1 :  Exp true :  Exp false :  Exp I :  Exp für alle I  Ide  : Exp  Exp = : Exp  Exp  Exp + : Exp  Exp  Exp := : Ide  Exp  Com if : Exp  Com  Com  Com ; : Com  Com  Com


Herunterladen ppt "Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 2 / 1 S heißt Menge der Sorten(namen),  Menge der Operatoren,  Sortigkeit."

Ähnliche Präsentationen


Google-Anzeigen