Prozessalgebra - Programmierung und Softwaretechnik (PST ...
Prozessalgebra - Programmierung und Softwaretechnik (PST ...
Prozessalgebra - Programmierung und Softwaretechnik (PST ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
¡<br />
¡<br />
¡<br />
3.2 Kommunikation 21<br />
3.2 Kommunikation<br />
Kommunikations- <strong>und</strong> Übertragungsaktionen<br />
Operator ‖ (bis jetzt): Parallelität ohne Kommunikation zwischen den beteiligten Prozessen.<br />
Erweiterung: Synchrone Kommunikation<br />
(über einen Kanal zwischen je zwei Prozessen, vgl. Abschnitt 1.2).<br />
Dazu:<br />
• A enthalte drei ausgezeichnete disjunkte Teilmengen:<br />
C (¨ ∈ C: “Senden (einer bestimmten Nachricht) auf Kanal ¨ ”);<br />
C = {¯¨ | ¨ ∈ C} (¯¨ : “Empfangen auf Kanal ¨ ”);<br />
C γ = {¨ γ | ¨ ∈ C} (¨ γ: “Synchrone Ausführung von ¨ <strong>und</strong> ¯¨ ”).<br />
(in beiden Fällen: Bezeichnung γ(¨ , ) für ¨ γ bzw. γ).<br />
∈ C ∪ C heißt Kommunikationsaktion.<br />
§<br />
, ∈ A heißen kommunizierend, wenn ¨ ∈ C, ≡ ¯¨ oder ∈ C, ¨ ≡ ¯<br />
¨<br />
§ ∈ C γ heißt Übertragung(saktion).<br />
• Kommunikationsoperator (communication merge operator) (zur Anpassung von ‖)<br />
£ , Prozesse: £ | Prozess; informelle Bedeutung: Verzahnung von £ <strong>und</strong> ,<br />
wobei die erste Aktion eine (passende) Übertragung ist.<br />
Die Sprache SKP<br />
Sprache SKP (“Sprache für kommunizierende Prozesse”):<br />
Erweiterung der Sprache SPP durch zusätzliche Syntaxregel (zu den Regeln von SPP; A wie<br />
oben):<br />
(SKP)<br />
Sind £ <strong>und</strong> Prozesse, so ist (£ | ) ein Prozess.<br />
P 2 : Menge aller Prozesse von SKP.<br />
Bindungsstärke der Operatoren: · “vor” ‖, ‖_, | “vor” +.<br />
Operationelle Semantik von SKP<br />
Die operationelle Semantik von SKP ergibt sich durch Erweiterung von (T1)-(T8) um:<br />
(T9) Falls −→ ′ , −→ ′ , ′ ≢ ̌, ′ ≢ ¨ ̌, ,<br />
£ £ £<br />
γ( , )<br />
so ¡ ‖ −→ ′ ′<br />
£<br />
γ( , )<br />
‖ ¡ <strong>und</strong> £ | −→ ′ ‖ £ ′ £ .<br />
(T10) Falls −→ ′ , £ −→ ̌, ′ ¨ ≢ ̌, £ £ ,<br />
γ( , )<br />
so ¡ ‖ −→ ′ γ( , )<br />
, ¡ | £ −→ ′ ‖£<br />
γ( , )<br />
¡<br />
, £<br />
′<br />
−→ |£<br />
£ £ £ <strong>und</strong><br />
kommunizierend,<br />
kommunizierend,<br />
(T11) Falls −→ ¨ ̌, £ −→ ̌, , kommunizierend,<br />
γ( , )<br />
γ( , )<br />
¡<br />
so ¡ ‖ −→ ̌ <strong>und</strong> | £ −→ £ ̌.<br />
γ( , ¡ )<br />
−→ £ ′ .