2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.5.

Slides:



Advertisements
Similar presentations
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
Advertisements

Lecture 24 MAS 714 Hartmut Klauck
Theory Of Automata By Dr. MM Alam
4/25/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella.
Behavioral Equivalence Hossein Hojjat Formal Lab University of Tehran.
Finite Automata Section 1.1 CSC 4170 Theory of Computation.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture2: Non Deterministic Finite Automata Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
CS5371 Theory of Computation
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Regular.
07/06/98 知的インタフェース特論 1 Operational Semantics Again, the question? Operational Model = Labeled Transition System If P and Q yields a same LTS. How to define.
January 14, 2015CS21 Lecture 51 CS21 Decidability and Tractability Lecture 5 January 14, 2015.
CS5371 Theory of Computation Lecture 6: Automata Theory IV (Regular Expression = NFA = DFA)
Transparency No. 3-1 Formal Language and Automata Theory Chapter 3 Nondeterministic Finite Automata (NFA) (include lecture 5 and 6)
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
CS5371 Theory of Computation Lecture 4: Automata Theory II (DFA = NFA, Regular Language)
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG)
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Great Theoretical Ideas in Computer Science.
Theory of Computation, Feodor F. Dragan, Kent State University 1 Regular expressions: definition An algebraic equivalent to finite automata. We can build.
SDS Foil no 1 Process Algebra Process Algebra – calculating with behaviours.
Pushdown Automata (PDAs)
Advanced Topics in SE Spring Process Algebra Hossein Hojjat Formal Methods Lab University of Tehran.
Theory of Computation - Lecture 3 Regular Languages What is a computer? Complicated, we need idealized computer for managing mathematical theories... Hence:
XML Data Management 10. Deterministic DTDs and Schemas Werner Nutt.
Reactive systems – general
2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Operational Semantics And Process Algebra Mads Dam Reading: Peled 8.3, 8.4, 8.6 – rest of ch. 8.
1 Bisimulations as a Technique for State Space Reductions.
CHAPTER 1 Regular Languages
11/19/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella.
MPRI 3 Dec 2007Catuscia Palamidessi 1 Why Probability and Nondeterminism? Concurrency Theory Nondeterminism –Scheduling within parallel composition –Unknown.
Fundamentals of Informatics
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
INHERENT LIMITATIONS OF COMPUTER PROGAMS CSci 4011.
2G1516/2G1521 Formal Methods2004 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.1, 8.2, 8.5.
CS 203: Introduction to Formal Languages and Automata
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
UNIT - I Formal Language and Regular Expressions: Languages Definition regular expressions Regular sets identity rules. Finite Automata: DFA NFA NFA with.
On the origins of Bisimulation & Coinduction
Transparency No. 4-1 Formal Language and Automata Theory Chapter 4 Patterns, Regular Expressions and Finite Automata (include lecture 7,8,9) Transparency.
CSCI 3130: Formal languages and automata theory Tutorial 1 Lee Chin Ho.
Process Algebra (2IF45) Basic Process Algebra Dr. Suzana Andova.
 2004 SDU Lecture4 Regular Expressions.  2004 SDU 2 Regular expressions A third way to view regular languages. Say that R is a regular expression if.
1 Introduction to the Theory of Computation Regular Expressions.
Complexity and Computability Theory I Lecture #5 Rina Zviel-Girshin Leah Epstein Winter
7/7/20161 Formal Methods in software development a.a.2015/2016 Prof.Anna Labella.
1/29/02CSE460 - MSU1 Nondeterminism-NFA Section 4.1 of Martin Textbook CSE460 – Computability & Formal Language Theory Comp. Science & Engineering Michigan.
Formal Methods in software development
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
Nondeterministic Finite Automata
Equivalence, DFA, NDFA Sequential Machine Theory Prof. K. J. Hintz
CSC 4170 Theory of Computation Nondeterminism Section 1.2.
Regular Expression We shall build expressions from the symbols using simple operations include concatenation, union and kleen closure. Several intuitive.
High-Level Abstraction of Concurrent Finite Automata
CSE322 CONSTRUCTION OF FINITE AUTOMATA EQUIVALENT TO REGULAR EXPRESSION Lecture #9.
Formal Methods in software development
Intro to Data Structures
Formal Methods in software development
CSE322 Regular Expressions and their Identities
Formal Methods in software development
Formal Methods in software development
CSC 4170 Theory of Computation Nondeterminism Section 1.2.
Chapter 1 Regular Language
CSC 4170 Theory of Computation Finite Automata Section 1.1.
CSCI 2670 Introduction to Theory of Computing
Teori Bahasa dan Automata Lecture 6: Regular Expression
CHAPTER 1 Regular Languages
Presentation transcript:

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.5

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 2 Finite State Automata Coffee machine A 1 : Coffee machine A 2 : Are the two machines ”the same”? 1kr tea coffee 1kr tea coffee 1kr

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 3 Little Language Refresher Automata recognize strings, e.g. 1kr tea 1kr 1kr coffee Language = set of strings A 1 ”=” language recognized by A 1  empty string ST: concatenation of S and T S + T: union of S and T S*: Iteration of S S* = SS...S Arden’s rule: The equation X = SX + T has solution X = S*T If   S the solution is unique } 0 or more times

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 4 Now compute... For A 1 : p 1 = 1kr p 2 +  p 2 = 1kr p 3 + tea p 1 p 3 = coffee p 1  p 2 = 1kr coffee p 1 + tea p 1  (etc, use Arden) p 1 = (1kr 1kr coffee + 1kr tea)* = q 1 BUT: p 1, q 1 should be different! SO: need new theory to talk about behaviour instead of acceptance 1kr tea coffee 1kr tea coffee 1kr A1:A1: A2:A2: p1p1 p2p2 p3p3 q1q1 q2q2 q3q3 q4q4

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 5 Process Algebra Calculus of concurrent processes Main issues: How to specify concurrent processes in an abstract way? Which are the basic relations between concurrency and non- determinism? Which basic methods of construction (= operators) are needed? When do two processes behave differently? When do they behave the same? Rules of calculation: –Replacing equals for equals –Substitutivity Specification and modelling issues

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 6 Process Equivalences Sameness of behaviour = equivalence of states Many process equivalences have been proposed (cf. Peled 8.5) For instance: q 1 » q 2 iff –q 1 and q 2 have the same paths, or –q 1 and q 2 may always refuse the same interactions, or –q 1 and q 2 pass the same tests, or –q 1 and q 2 have identical branching structure CCS: Focus on bisimulation equivalence

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 7 Bisimulation Equivalence Intuition: q 1 » q 2 iff q 1 and q 2 have same branching structure Idea: Find relation which will relate two states with the same transition structure, and make sure the relation is preserved Example: aaa b b bc c c q1q1 q2q2

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 8 Strong Bisimulation Equivalence Given: Labelled transition system T = (Q, ,R) Looking for a relation S  Q  Q on states S is a strong bisimulation relation if whenever q 1 S q 2 then: –q 1   q 1 ’ implies q 2   q 2 ’ for some q 2 ’ such that q 1 ’ S q 2 ’ –q 2   q 2 ’ implies q 1   q 1 ’ for some q 1 ’ such that q 1 ’ S q 2 ’ q 1 and q 2 are strongly bisimilar iff q 1 S q 2 for some strong bisimulation relation S q 1  q 2 : q 1 and q 2 are strongly bisimilar Peled uses ´ bis for »

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 9 Example q1q1 q0q0 q2q2 p0p0 p1p1 p2p2 a a a a a a a b b b Does q 0 » p 0 hold?

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 10 Example q1q1 q0q0 q2q2 p0p0 p1p1 p2p2 c aa a c b b Does q 0 » p 0 hold? q3q3 q4q4 p3p3

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 11 Weak Transitions What to do about internal activity?  : Transition label for activity which is not externally visible q )  q’ iff q = q 0   q 1  ...   q n = q’, n  0 q )  q’ iff q )  q’ q )  q’ iff q )  q 1   q 2 )  q’ (    ) Beware that )  = )  (non-standard notation) Observational equivalence, v.1.0: Bisimulation equivalence with  in place of  Let q 1 ¼’ q 2 iff q 1 » q 2 with )  in place of !  Cumbersome definition: Too many transitions q )  q’ to check

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 12 Observational Equivalence Let S µ Q  Q. The relation S is a weak bisimulation relation if whenever q 1 S q 2 then: –q 1   q 1 ’ implies q 2   q 2 ’ for some q 2 ’ such that q 1 ’ S q 2 ’ –q 2   q 2 ’ implies q 1   q 1 ’ for some q 1 ’ such that q 1 ’ S q 2 ’ q 1 and q 2 are observationally equivalent, or weakly bisimulation equivalent, if q 1 S q 2 for some weak bisimulation relation S q 1  q 2 : q 1 and q 2 are observationally equivalent/weakly bisimilar Exercise: Show that ¼’ = ¼

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 13 Examples a a a a a a a a b b c c c      ¼ ¼ ¼

2G1516 Formal Methods2005 Mads Dam IMIT, KTH 14 Examples b a  b a  a  b All three are inequivalent