Milners Kalkül Kommunizierender Systeme (CCS)

Slides:



Advertisements
Ähnliche Präsentationen
Hier einige Hieroglyphen:
Advertisements

XML-Programmierung mit XDuce
H - A - M - L - E - IC T Teachers Acting Patterns while Teaching with New Media in the Subjects German, Mathematics and Computer Science Prof. S. Blömeke,
Vorlesung Compilertechnik Sommersemester 2008
Baumautomaten Christian Klein Betreuer : Tim Priesnitz
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
8. Formale Sprachen und Grammatiken
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.
Hauptseminar Modellüberprüfung Kathrin Ott
Der Pi-Kalkül Vortrag von Erik Witzmann Im Seminar Prozessalgebra.
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
H 2 + -Molekül. Aus: R.A.Alberty & R.J.Silbey, Physical Chemistry, New York 1997, fig. 11.7, p. 392.
Rethinking Linguistic Relativity John A. Lucy. Gliederung Einführung in das Problem Kritik an bisherigen Untersuchungen der Anthropologen Psycholinguisten.
Automatentheorie „Berechnungsmodell für logische Sprachen“
Stoyan Mutafchiev Betreuer: Ilhan, Tim
von Reaktionen und chemischen Suppen
Seminar zum pi-Kalkül betreut von Andreas Rossberg
Bäume als Datenmodelle
Repräsentation von Datenstrukturen im -Kalkül Simon Pinkel, Betreuer: Guido Tack Seminar: Theorie kommunizierender Systeme: Der -Kalkül.
Monadische Logik 2.Ordnung (MSO)
Thomas Kloecker Betreuer: Tim Priesnitz
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Welcome DTD. Document Type Definition Graphic Services/Everything you already know about presentations Was ist eine DTD? DTD ist eine Schemasprache.
Prolog Grundkurs WS 98/99 Christof Rumpf
© Karin Haenelt 2005, Endliche Automaten: Alphabet, Zeichenreihe, Sprache, Endliche Automaten Grundlagen: Alphabet, Zeichenreihe, Sprache.
Prof. Dr. T. Kudraß1 Relationenkalkül. Prof. Dr. T. Kudraß2 Relationenkalkül Zwei Ausprägungen: Tupelrelationenkalkül (TRK) und Domänenrelationenkalkül.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
d.h. für alle  mit () = (s1,s2 ,...,sn,s) gilt: wenn
Beispiele für Ausdrucksalgebren
Seminar: Architekturbeschreibungssprachen
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 Model View Controller Pattern.
Numerical Methods in Electromagnetic Field Theory I (NFT I) / Numerische Methoden in der Elektromagnetischen Feldtheorie I (NFT I) 2nd Lecture / 2.
Numerical Methods in Electromagnetic Field Theory I (NFT I) / Numerische Methoden in der Elektromagnetischen Feldtheorie I (NFT I) 2nd Lecture / 2.
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Baustein- vs. Funktionsorientierte Organisation.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2010 © 2010 Albert Zündorf, University of Kassel 1 Gesamtvorgehen 1. Textuelle Szenarios 2. Objektdiagramme 3. Klassendiagramm 4.
Kurt Jürgen Warlies Siemens Business Services GmbH & Co. OHG
§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.
Summen in Produkte verwandeln
RDF MT Resource Description Framework Model Theory © 2002 by Emir Blažević
Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
OO implementieren Teil IV Objekte erzeugen. © René ProbstModul 226IV - 2 Von der Klasse zum Objekt Plan Bau Objekt Klasse Instanzierung Objekt Das Objekt.
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Einführung in die Politikfeldanalyse 3.Vorlesung Prof. Herbert Gottweis Sommersemester 2006 Studienassistent: Homepage:
Datenintegrität Integitätsbedingungen Schlüssel
Parallel Programming ( J ) CSP
Titelmasterformat durch Klicken bearbeiten Textmasterformate durch Klicken bearbeiten Zweite Ebene Dritte Ebene Vierte Ebene Fünfte Ebene 1 Development.
Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems Christian Gruber - Johannes Reiter.
Einführung Bild und Erkenntnis Einige Probleme Fazit Eberhard Karls Universität Tübingen Philosophische Fakultät Institut für Medienwissenschaft Epistemic.
Graph Pattern Semantik Michael Schmidt,
Dr.-Ing. René Marklein - NFT I - WS 06/07 - Lecture 6 / Vorlesung 6 1 Numerical Methods of Electromagnetic Field Theory I (NFT I) Numerische Methoden der.
1 Helmut Schauer Educational Engineering Lab Department for Informatics University of Zurich Algorithmen und Datenstrukturen FS 2008 BBäume.
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.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
Dr.-Ing. René Marklein - NFT I - L 9 / V 9 - WS 2006 / Numerical Methods of Electromagnetic Field Theory I (NFT I) Numerische Methoden der Elektromagnetischen.
VO D6/G6 H. Gottweis - SoSe 2oo7: (3) Theorien der Politikfeldanalyse VO D6/G6: Einführung in die Politikfeldanalyse 3. Stunde am 22. März 2007: Theorien.
An Approach to standardize a Service Life Cycle Management
7. Formale Sprachen und Grammatiken
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
? definierende Gleichungen  gültige Gleichungen ?
 Sortigkeit oder Arität

SMART Systems (Vorlesung: KI & XPS) zBeim vorigen Mal: yBeschreibungslogiken (DLs): ALC, ALCN yInferenzprobleme und Inferenzdienste zInhalt heute: yVertiefende.
Evaluating the effectiveness of a disease management program diabetes in the German Statutory Health Insurance – First results and methodological considerations 
Systemanalyse BA Heidenheim 2002.
OAI Protocol for Metadata Harvesting
§17 Produkte und Quotienten von Vektorräumen
 Präsentation transkript:

Milners Kalkül Kommunizierender Systeme (CCS) Arnaud Fietzke betreut durch Tim Priesnitz, Guido Tack Proseminar: Theorie kommunizierender Systeme Programming Systems Lab – Prof. Gert Smolka

Modellierung nebenläufiger Systeme a A = a.A‘ B = b.B‘ A‘ = b.A B‘ = c.B > A A‘ _ _ _ b b B‘ B < _ c

Modellierung nebenläufiger Systeme a A = a.A‘ B = b.B‘ A‘ = b.A B‘ = c.B A|B mit _ CCS A = a.A‘ B = b.B‘ A‘ = b.A B‘ = c.B > A A‘ _ b b B‘ B < _ c

Übersicht Einführung Syntax CCS Semantik CCS Idee Strukturelle Kongruenz Reaktion

Einführung Prozessalgebra: algebraische Modellierung von nebenläufigen Prozessen Darstellung komplexer Systeme mit Hilfe weniger Operatoren ermöglicht automatische Verifikation

Prozessalgebren: Ansätze CCS (Calculus of Communicating Systems) [Milner '80] CSP (Communicating Sequential Processes) [Hoare '85] ACP (Algebra of Communicating Processes) [Bergstra & Klop '84] LOTOS (Language of Temporal Ordered Specification) [Brinksma & Draft '88]

Syntax CCS Definition: P ::= A<a1,...,an> | S ai.Pi _ | P1|P2 Menge P der Prozessausdrücke: P ::= A<a1,...,an> mit I endliche Indexmenge iI | S ai.Pi 0 := mit I = 0 S ai.Pi a  N  N  { t } N = {a,b,c,…} Namen _ | P1|P2 | new a P System von nebenläufigen Prozessen: P1 | … | Pn mit P1 ... = Pn ... ...

Semantik CCS Idee: "chemical machine" _ [Berry & Boudol '89] An “Ports“ können beobachtbare Aktionen stattfinden (a  N  N) _

Semantik CCS Idee: "chemical machine" _ [Berry & Boudol '89] Komplementäre “Ports“ sind Reaktionspunkte z.B. b und b _

Semantik CCS Idee: "chemical machine" [Berry & Boudol '89] "Moleküle" können sich annähern und reagieren annähern

Prozess-Kongruenz Definition : Äquivalenzrelation (reflexiv, symmetrisch, transitiv)  über P mit  a.P + M new a P P|R R|P a.Q + M new a Q Q|R R|Q falls P  Q

Prozess-Kontext Definition : C ::= | a.C+M | new a C | C|P | P|C C[Q] : Substitution von [] in C durch Q Für C=[] gilt: C[Q] = Q [] Eine bestimmte Prozess-Kongruenz  lässt sich durch ein Gleichungssystem definieren : 3

Prozess-Kongruenz  erfüllt alle Gleichungen aus 3 für jede Sequenz Q1,…Qn (n≥1) von Ausdrücken gilt Q1  Qn falls Qi = C[P] und Qi+1 = C[P‘] und es gilt: P  P‘ oder P‘  P 3 Eine bestimmte Prozess-Kongruenz  lässt sich durch ein Gleichungssystem definieren : 3

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (new b) a.b  (new c) a.c Beispiel:

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (2) Umordnung der Terme in Summen a.0 + b.0  b.0 + a.0 Beispiel:

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (2) Umordnung der Terme in Summen (3) P|0  P , P|Q  Q|P , P|(Q|R)  (P|Q)|R

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (2) Umordnung der Terme in Summen (3) P|0  P, P|Q  Q|P, P|(Q|R)  (P|Q)|R (4) new a (P|Q)  P|new a Q falls a nicht frei in P new a 0  0 , , new ab P  new ba P

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (2) Umordnung der Terme in Summen (3) P|0  P, P|Q  Q|P, P|(Q|R)  (P|Q)|R (4) new a (P|Q)  P|new a Q falls a nicht frei in P , new a 0  0 , new ab P  new ba P (5) A<b>  { } PA falls A(a) = PA b a

Strukturelle Kongruenz Definition: Prozess-Kongruenz  , definiert durch Gleichungen: (1) Änderung gebundener Namen (2) Umordnung der Terme in Summen (3) P|0  P, P|Q  Q|P, P|(Q|R)  (P|Q)|R (4) new a (P|Q)  P|new a Q falls a nicht frei in P , Notation: a Sequenz von Namen a1,…,an new a 0  0 , new ab P  new ba P (5) A<b>  { } PA falls A(a) = PA b a

Standardform Definition: Theorem: Ausdruck new a (M1|…|Mn) mit Mi nichtleere Summe (1 ≤ i ≤ n) ist in Standardform. Falls n=0, M1|…|Mn = 0 Falls a leer, fällt new a weg Theorem: Jeder Prozessausdruck ist strukturell kongruent zu einer Standardform.

Semantik nebenläufiger Prozessausdrücke Idee: "chemical machine" [Berry & Boudol '89] "Moleküle" können sich annähern und reagieren reagieren

Semantik nebenläufiger Prozessausdrücke Idee: "chemical machine" [Berry & Boudol '89] "Moleküle" können sich annähern und reagieren

Semantik nebenläufiger Prozessausdrücke Idee: "chemical machine" [Berry & Boudol '89] "Moleküle" können sich annähern und reagieren Reaktionen sind von aussen nicht mehr beobachtbar: t-Transitionen

Reaktion Definition: Relation  auf P wird durch Regeln definiert: TAU : t.P + M  P REACT : (a.P + M)|(a.Q + N)  P|Q PAR : P  P' P|Q  P'|Q RES : P  P' new a P  new a P' STRUCT : P  P' Q  Q' falls P  Q und P'  Q'

Beispiel Inferenzbaum: A‘|B mit _ A = a.A‘ B = b.B‘ b.A|b.B‘  A|B‘ REACT A = a.A‘ B = b.B‘ A‘ = b.A B‘ = c.B _ STRUCT _ A‘|B  A|B‘

Beispiel Alternative Reaktionen: P = a.0 | a.A | a.B _ _ P = a.0 | a.A | a.B Zwei Reaktionen sind möglich: _ P  A|a.B

Beispiel Alternative Reaktionen: P = a.0 | a.A | a.B _ _ P = a.0 | a.A | a.B Zwei Reaktionen sind möglich: _ P  A|a.B _ und P  a.A| B Indeterminismus durch Reaktion

Referenzen Milner, R., Communicating and Mobile Systems: the π – Calculus, Cambridge University Press, 1999 Milner, Operational & Algebraic Semantics of Concurrent Processes Handbook of Theoretical Computer Science B, Elsevier, 1990