On the Expressiveness of Infinite Behavior and Name Scoping in - - PowerPoint PPT Presentation

on the expressiveness of infinite behavior and name
SMART_READER_LITE
LIVE PREVIEW

On the Expressiveness of Infinite Behavior and Name Scoping in - - PowerPoint PPT Presentation

On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi Pablo Giambiagi (KTH, Sweden) Gerardo Schneider (IRISA/INRIA) Speaker: Frank D. Valencia (Uppsala Univ., Sweden) FOSSACS04, Barcelona, March 2004 FOSSACS04:


slide-1
SLIDE 1

On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi

Pablo Giambiagi (KTH, Sweden) Gerardo Schneider (IRISA/INRIA) Speaker: Frank D. Valencia (Uppsala Univ., Sweden) FOSSACS’04, Barcelona, March 2004

FOSSACS’04: Inf. Behaviour and Scoping – p.1/34

slide-2
SLIDE 2

Motivation: Process Calculi

CCS is an important representative of process calculi

FOSSACS’04: Inf. Behaviour and Scoping – p.2/34

slide-3
SLIDE 3

Motivation: Process Calculi

CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it.

FOSSACS’04: Inf. Behaviour and Scoping – p.2/34

slide-4
SLIDE 4

Motivation: Process Calculi

CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it. This talk: CCS Variants wrt infinite behavior and name scoping. Variants exhibits interesting connections wrt Relative Expressiveness. Verification.

FOSSACS’04: Inf. Behaviour and Scoping – p.2/34

slide-5
SLIDE 5

Motivation: Process Calculi

CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it. This talk: CCS Variants wrt infinite behavior and name scoping. Variants exhibits interesting connections wrt Relative Expressiveness. Verification.

FOSSACS’04: Inf. Behaviour and Scoping – p.2/34

slide-6
SLIDE 6

Motivation: Scoping Variants

Consider CCS construct

  • ✁✄✂

with rule: REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✟ ✠ ✡ ☎ ☛
  • ✁✄✂
☎ ✟ ✠ ✡ ☎ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.3/34

slide-7
SLIDE 7

Motivation: Scoping Variants

Consider CCS construct

  • ✁✄✂

with rule: REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✟ ✠ ✡ ☎ ☛
  • ✁✄✂
☎ ✟ ✠ ✡ ☎ ☛

Does

✆✁ ✞

involve name

  • conversion ?

FOSSACS’04: Inf. Behaviour and Scoping – p.3/34

slide-8
SLIDE 8

Motivation: Scoping Variants

Consider CCS construct

  • ✁✄✂

with rule: REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✟ ✠ ✡ ☎ ☛
  • ✁✄✂
☎ ✟ ✠ ✡ ☎ ☛

Does

✆✁ ✞

involve name

  • conversion ?

Name Scoping: If yes, Static else Dynamic.

FOSSACS’04: Inf. Behaviour and Scoping – p.3/34

slide-9
SLIDE 9

Motivation: Scoping Variants

Consider CCS construct

  • ✁✄✂

with rule: REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✟ ✠ ✡ ☎ ☛
  • ✁✄✂
☎ ✟ ✠ ✡ ☎ ☛

Does

✆✁ ✞

involve name

  • conversion ?

Name Scoping: If yes, Static else Dynamic. This affects not only semantics (e.g.,

  • equivalence), also

expressiveness and verification.

FOSSACS’04: Inf. Behaviour and Scoping – p.3/34

slide-10
SLIDE 10

Motivation: Infinite Behaviour

Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions

  • 1. Finitely many constants
  • ✁✄✂
☎ ✆ ☎
  • 2. Finitely many definitions
  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁ ✂ ☎ ✆ ☎

FOSSACS’04: Inf. Behaviour and Scoping – p.4/34

slide-11
SLIDE 11

Motivation: Infinite Behaviour

Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions

  • 1. Finitely many constants
  • ✁✄✂
☎ ✆ ☎
  • 2. Finitely many definitions
  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁ ✂ ☎ ✆ ☎

Can we encode (2) into (1) ? (Without Relabelling or Infinite Sums).

FOSSACS’04: Inf. Behaviour and Scoping – p.4/34

slide-12
SLIDE 12

Motivation: Infinite Behaviour

Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions

  • 1. Finitely many constants
  • ✁✄✂
☎ ✆ ☎
  • 2. Finitely many definitions
  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁ ✂ ☎ ✆ ☎

Can we encode (2) into (1) ? (Without Relabelling or Infinite Sums). What about other constructions: Replication or Recursive Expressions ?

FOSSACS’04: Inf. Behaviour and Scoping – p.4/34

slide-13
SLIDE 13

Motivation: Infinite Behaviour

Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions

  • 1. Finitely many constants
  • ✁✄✂
☎ ✆ ☎
  • 2. Finitely many definitions
  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁ ✂ ☎ ✆ ☎

Can we encode (2) into (1) ? (Without Relabelling or Infinite Sums). What about other constructions: Replication or Recursive Expressions ? In

  • calculus all forms coincide. What about less expressive cal-

culi?.

FOSSACS’04: Inf. Behaviour and Scoping – p.4/34

slide-14
SLIDE 14

Motivation and Contributions

We discuss: Static vs Dynamic Scoping. Parametric vs. Constant definitions. Recursion vs Replication.

FOSSACS’04: Inf. Behaviour and Scoping – p.5/34

slide-15
SLIDE 15

Motivation and Contributions

We discuss: Static vs Dynamic Scoping. Parametric vs. Constant definitions. Recursion vs Replication. ...and show that these issues affect Expressiveness Decidability of Divergency.

FOSSACS’04: Inf. Behaviour and Scoping – p.5/34

slide-16
SLIDE 16

Overview

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.6/34

slide-17
SLIDE 17

Overview

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.6/34

slide-18
SLIDE 18

The Finite Core: Syntax

Given: A set of names

✁ ✡ ✞ ✡ ✂ ✡ ✂ ✂ ✂ ✄ ✂

A set of co-names

✆ ☎

A set of actions

✂ ✡ ✞ ✡ ✂ ✂ ✂ ✄ ✟✡✠ ☛ ✆ ☞ ☞ ☎✍✌ ✝

FOSSACS’04: Inf. Behaviour and Scoping – p.7/34

slide-19
SLIDE 19

The Finite Core: Syntax

Given: A set of names

✁ ✡ ✞ ✡ ✂ ✡ ✂ ✂ ✂ ✄ ✂

A set of co-names

✆ ☎

A set of actions

✂ ✡ ✞ ✡ ✂ ✂ ✂ ✄ ✟✡✠ ☛ ✆ ☞ ☞ ☎✍✌ ✝

Processes specifying finite behaviour:

☎✁
✂ ✄ ☎ ✂ ✂ ✂ ☎ ✂ ✆ ☎ ✝
☎ ✞ ☎

FOSSACS’04: Inf. Behaviour and Scoping – p.7/34

slide-20
SLIDE 20

The Finite Core: Semantics

SUM

✂ ✄ ☎ ✂ ✂ ✂ ☎ ✂
✠ ✡ ☎✄✂

if

☎ ✄ ✆

RES

✡ ☎ ☛ ☎ ✝
✡ ☎ ☛ ✝
  • if
✂ ✝ ✄ ☎

PAR

✠ ☎
✡ ☎ ☛ ☎ ✞ ✞
✡ ☎ ☛ ✞ ✞

PAR

✟ ✞
✡ ✞ ☛ ☎ ✞ ✞
✡ ☎ ✞ ✞ ☛

COM

☎ ✠ ✠ ✡ ☎ ☛ ✞ ✠ ✠ ✡ ✞ ☛ ☎ ✞ ✞ ✡ ✠ ✡ ☎ ☛ ✞ ✞ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.8/34

slide-21
SLIDE 21

Overview of the presentation

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.9/34

slide-22
SLIDE 22

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.10/34
slide-23
SLIDE 23

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Consider the following rule:

REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞
✡ ☎ ☛
  • ✁✄✂
✡ ☎ ☛

without name

  • conversion.

FOSSACS’04: Inf. Behaviour and Scoping – p.10/34

slide-24
SLIDE 24

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then, for the unfolding
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.10/34
slide-25
SLIDE 25

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then, for the unfolding
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
✁ ✞
  • ✁✄✂
✁ ✞ ✁ ✌ ✝
✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.10/34
slide-26
SLIDE 26

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then, for the unfolding
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
✁ ✞
  • ✁✄✂
✁ ✞ ✁ ✌ ✝
✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.10/34
slide-27
SLIDE 27

Scoping: Example

Consider

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then, for the unfolding
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
✁ ✞
  • ✁✄✂
✁ ✞ ✁ ✌ ✝
✌ ✝
  • Then

may be executed.

FOSSACS’04: Inf. Behaviour and Scoping – p.10/34

slide-28
SLIDE 28

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.11/34
slide-29
SLIDE 29

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Consider now the following rule:

REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞
✡ ☎ ☛
  • ✁✄✂
✡ ☎ ☛

but applying name

  • conversion when necessary

FOSSACS’04: Inf. Behaviour and Scoping – p.11/34

slide-30
SLIDE 30

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then,
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✝✁
✁ ✞
  • ✁✄✂
☎ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.11/34
slide-31
SLIDE 31

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then,
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.11/34
slide-32
SLIDE 32

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then,
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.11/34
slide-33
SLIDE 33

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then,
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
✁ ✞
  • ✁✄✂
✁ ✞ ✁ ✌ ✝
✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.11/34
slide-34
SLIDE 34

Scoping: Example 2

Consider again

  • ✁✄✂

with

☎ ✆
✁ ✞ ✁ ✌ ✝
  • Then,
☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞ ✆
✁ ✞
  • ✁✄✂
☎ ✌ ✝
✁ ✞
  • ✁✄✂
✁ ✞ ✁ ✌ ✝
✌ ✝
  • Then

will never be executed.

FOSSACS’04: Inf. Behaviour and Scoping – p.11/34

slide-35
SLIDE 35

Static vs Dynamic Scoping

If name occurrences get dynamically (i.e. during execution) captured under the scope of a restriction, we talk about dynamic

  • scoping. Otherwise, static scoping.
  • conversion to avoid captures
  • static scoping

Otherwise

  • dynamic scoping

FOSSACS’04: Inf. Behaviour and Scoping – p.12/34

slide-36
SLIDE 36

Overview of the presentation

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.13/34

slide-37
SLIDE 37

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi:

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-38
SLIDE 38

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi: CCSp: Given by a finite set of parametric definitions

  • ✝✟✞
✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎

. Basically, the variant in Milner’s 99 book on

  • calculus.

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-39
SLIDE 39

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi: CCSp:

  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎

CCSk: Like CCSp but using constant definitions

  • ✁✄✂
☎ ✆ ☎

. Essentially CCS (Milner’89) without relabelling nor infinite summations.

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-40
SLIDE 40

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi: CCSp:

  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎

CCSk:

  • ✁✄✂
☎ ✆ ☎

CCS!: Given by replication !

. This variant is presented, e.g., in works by Busi, Gabbrielli and Zavattaro [2003,2004].

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-41
SLIDE 41

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi: CCSp:

  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎

CCSk:

  • ✁✄✂
☎ ✆ ☎

CCS!: !

CCS

  • : Given by recursive expressions of the form
  • ✁✄✂

as in Milner’89. We adopt, as in ECCS, static scoping of names.

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-42
SLIDE 42

Infinite Behaviour

At least four constructions specifying infinite behaviour in CCS-like calculi: CCSp:

  • ✝✟✞
✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎

CCSk:

  • ✁✄✂
☎ ✆ ☎

CCS!: !

CCS

  • :
  • ✁✄✂

FOSSACS’04: Inf. Behaviour and Scoping – p.14/34

slide-43
SLIDE 43

Parametric Definitions: CCSp

Syntax:

✂ ✂ ✂ ✆
✂ ✠ ✡ ✂ ✂ ✂ ✡ ✂ ☞ ✌

where

  • ✝✟✞
✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎✁

,

✂☎✄ ✝ ☎
✆ ☎ ✞ ✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✝

.

FOSSACS’04: Inf. Behaviour and Scoping – p.15/34

slide-44
SLIDE 44

Parametric Definitions: CCSp

Syntax:

✂ ✂ ✂ ✆
✂ ✠ ✡ ✂ ✂ ✂ ✡ ✂ ☞ ✌

where

  • ✝✟✞
✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌ ✁✄✂ ☎ ✆ ☎✁

,

✂☎✄ ✝ ☎
✆ ☎ ✞ ✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✝

. Semantics: CALL

☎✁ ✆ ✂ ✠ ✡ ✂ ✂ ✂ ✡ ✂ ☞ ✝✟✞ ✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✞
✡ ☎ ☛
✂ ✠ ✡ ✂ ✂ ✂ ✡ ✂ ☞ ✌
✡ ☎ ☛

if

✂ ✄☎ ☎ ☎ ✄ ✁✝✆ ✞

def

✟ ✠☛✡

name

  • conversion when necessary.

FOSSACS’04: Inf. Behaviour and Scoping – p.15/34

slide-45
SLIDE 45

Constant Definitions: CCSk

Syntax:

☎✁
✂ ✂ ✂ ✆
  • where
  • ✁✄✂
☎ ✆ ☎✁

FOSSACS’04: Inf. Behaviour and Scoping – p.16/34

slide-46
SLIDE 46

Constant Definitions: CCSk

Syntax:

☎✁
✂ ✂ ✂ ✆
  • where
  • ✁✄✂
☎ ✆ ☎✁

Semantics: CONS

✡ ☎ ☛
✡ ☎ ☛

if

  • def
✆ ☎✁

FOSSACS’04: Inf. Behaviour and Scoping – p.16/34

slide-47
SLIDE 47

Constant Definitions: CCSk

Syntax:

☎✁
✂ ✂ ✂ ✆
  • where
  • ✁✄✂
☎ ✆ ☎✁

Semantics (alternative): Use

  • ✁✄✂

instead and REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞
✡ ☎ ☛
  • ✁✄✂
✡ ☎ ☛

without name

  • conversion.

FOSSACS’04: Inf. Behaviour and Scoping – p.16/34

slide-48
SLIDE 48

Recursion Expressions: CCS

  • Syntax:
✂ ✂ ✂ ✆ ✁ ✆
  • ✁✄✂

FOSSACS’04: Inf. Behaviour and Scoping – p.17/34

slide-49
SLIDE 49

Recursion Expressions: CCS

  • Syntax:
✂ ✂ ✂ ✆ ✁ ✆
  • ✁✄✂

Semantics: REC

☎ ✆
  • ✁✄✂
☎ ✝ ✁ ✞
✡ ☎ ☛
  • ✁✄✂
✡ ☎ ☛

with name

  • conversion when necessary.

FOSSACS’04: Inf. Behaviour and Scoping – p.17/34

slide-50
SLIDE 50

Replication: CCS!

Syntax:

✂ ✂ ✂ ✆

!

FOSSACS’04: Inf. Behaviour and Scoping – p.18/34

slide-51
SLIDE 51

Replication: CCS!

Syntax:

✂ ✂ ✂ ✆

!

Semantics: REP

☎ ✞

!

✡ ☎ ☛

!

✡ ☎ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.18/34

slide-52
SLIDE 52

Overview of the presentation

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.19/34

slide-53
SLIDE 53

Expressiveness and Classification Criteria

Let

  • be weak bisimilarity.

Expressiveness: CCS

is as expressive as CCS

✁ ✂

iff for every

☎ ✄ ✄✆☎✝ ✠ ✁

, there exists

✞ ✄ ✄ ☎✝ ✠ ✁ ✂

such that

FOSSACS’04: Inf. Behaviour and Scoping – p.20/34

slide-54
SLIDE 54

Expressiveness and Classification Criteria

Let

  • be weak bisimilarity.

Expressiveness: CCS

is as expressive as CCS

✁ ✂

iff for every

☎ ✄ ✄✆☎✝ ✠ ✁

, there exists

✞ ✄ ✄ ☎✝ ✠ ✁ ✂

such that

Divergence:

FOSSACS’04: Inf. Behaviour and Scoping – p.20/34

slide-55
SLIDE 55

Expressiveness and Classification Criteria

Let

  • be weak bisimilarity.

Expressiveness: CCS

is as expressive as CCS

✁ ✂

iff for every

☎ ✄ ✄✆☎✝ ✠ ✁

, there exists

✞ ✄ ✄ ☎✝ ✠ ✁ ✂

such that

Divergence:

is divergent iff

☎ ✝ ✡ ✠ ✡ ✌
  • , i.e., there exists an infinite

sequence

☎ ✆ ☎✂✁ ✡ ✠ ✡ ☎ ✠ ✡ ✠ ✡ ✂ ✂ ✂

.

FOSSACS’04: Inf. Behaviour and Scoping – p.20/34

slide-56
SLIDE 56

Expressiveness and Classification Criteria

Let

  • be weak bisimilarity.

Expressiveness: CCS

is as expressive as CCS

✁ ✂

iff for every

☎ ✄ ✄✆☎✝ ✠ ✁

, there exists

✞ ✄ ✄ ☎✝ ✠ ✁ ✂

such that

Divergence:

is divergent iff

☎ ✝ ✡ ✠ ✡ ✌
  • , i.e., there exists an infinite

sequence

☎ ✆ ☎✂✁ ✡ ✠ ✡ ☎ ✠ ✡ ✠ ✡ ✂ ✂ ✂

. We’ll discuss:

  • 1. The relative expressiveness w.r.t. weak bisimilarity
  • 2. The decidability of divergence

FOSSACS’04: Inf. Behaviour and Scoping – p.20/34

slide-57
SLIDE 57

Expressiveness Results

Encodings: (weak) bisimulation preserving mappings

✆ ✆
☎✝ ✠ ✁ ✡ ✄✆☎✝ ✠ ✁ ✂

FOSSACS’04: Inf. Behaviour and Scoping – p.21/34

slide-58
SLIDE 58

Expressiveness Results

Encodings: (weak) bisimulation preserving mappings

✆ ✆
☎✝ ✠ ✁ ✡ ✄✆☎✝ ✠ ✁ ✂

Encoding CCSp into CCSk Encoding CCSk into CCSp Encoding CCS

  • into CCS!

Encoding CCS! into CCS

  • FOSSACS’04: Inf. Behaviour and Scoping – p.21/34
slide-59
SLIDE 59

Expressiveness Results

Encodings: (weak) bisimulation preserving mappings

✆ ✆
☎✝ ✠ ✁ ✡ ✄✆☎✝ ✠ ✁ ✂

Encoding CCSp into CCSk Encoding CCSk into CCSp Encoding CCS

  • into CCS!

Encoding CCS! into CCS

  • FOSSACS’04: Inf. Behaviour and Scoping – p.21/34
slide-60
SLIDE 60

Encoding CCSp into CCSk

✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠ ✁

. Idea: Given

in CCSp,

FOSSACS’04: Inf. Behaviour and Scoping – p.22/34

slide-61
SLIDE 61

Encoding CCSp into CCSk

✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠ ✁

. Idea: Given

in CCSp, Suppose

uses

✞ ✌

def

✆ ✞

. For each call

✂ ✌

that

may make, generate constant

def

✆ ✆ ✆ ✞ ✞ ✞ ✆ ✂ ✝✟✞ ✞

and replace

✂ ✌

with

  • .

FOSSACS’04: Inf. Behaviour and Scoping – p.22/34

slide-62
SLIDE 62

Encoding CCSp into CCSk

✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠ ✁

. Idea: Given

in CCSp, Suppose

uses

✞ ✌

def

✆ ✞

. For each call

✂ ✌

that

may make, generate constant

def

✆ ✆ ✆ ✞ ✞ ✞ ✆ ✂ ✝✟✞ ✞

and replace

✂ ✌

with

  • .

Problem: Potentially infinite generation of constants!

FOSSACS’04: Inf. Behaviour and Scoping – p.22/34

slide-63
SLIDE 63

Encoding CCSp into CCSk

✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠ ✁

. Idea: Given

in CCSp, Suppose

uses

✞ ✌

def

✆ ✞

. For each call

✂ ✌

that

may make, generate constant

def

✆ ✆ ✆ ✞ ✞ ✞ ✆ ✂ ✝✟✞ ✞

and replace

✂ ✌

with

  • .

Problem: Potentially infinite generation of constants!

  • Due to name
  • conversion in CCSp, an infinite number of fresh

names may be generated.

FOSSACS’04: Inf. Behaviour and Scoping – p.22/34

slide-64
SLIDE 64

Encoding CCSp into CCSk

...nevertheless, Theorem: Let

☎ ✄

CCSp with set of definitions

. One can effectively construct

✆ ✆ ☎ ✞ ✞

and its set of constants

✁ ✠ ✆ ✆ ✆
✞ ✞

s.t.,

☎✄✂ ✆ ✆ ☎ ✞ ✞ ✂

FOSSACS’04: Inf. Behaviour and Scoping – p.23/34

slide-65
SLIDE 65

Encoding CCSp into CCSk

...nevertheless, Theorem: Let

☎ ✄

CCSp with set of definitions

. One can effectively construct

✆ ✆ ☎ ✞ ✞

and its set of constants

✁ ✠ ✆ ✆ ✆
✞ ✞

s.t.,

☎✄✂ ✆ ✆ ☎ ✞ ✞ ✂

But CCSp can encode the perhaps most used kind of relabellings: The injective ones.

FOSSACS’04: Inf. Behaviour and Scoping – p.23/34

slide-66
SLIDE 66

Encoding CCSp into CCSk

...nevertheless, Theorem: Let

☎ ✄

CCSp with set of definitions

. One can effectively construct

✆ ✆ ☎ ✞ ✞

and its set of constants

✁ ✠ ✆ ✆ ✆
✞ ✞

s.t.,

☎✄✂ ✆ ✆ ☎ ✞ ✞ ✂

But CCSp can encode the perhaps most used kind of relabellings: The injective ones. Corollary: Injective relabellings are derivable in CCSk

FOSSACS’04: Inf. Behaviour and Scoping – p.23/34

slide-67
SLIDE 67

Encoding CCS

  • into CCS!
✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠

! Idea:

✆ ✆ ✁ ✂ ✞ ✞ ✆ ✞ ✂ ✂
✂ ✂ ☎ ✞ ✞ ✆ ✝

!

✞ ✂ ✂ ✆ ✆ ☎ ✞ ✞ ✞ ✞ ✂ ✂
✝✟✞ ✂

FOSSACS’04: Inf. Behaviour and Scoping – p.24/34

slide-68
SLIDE 68

Encoding CCS

  • into CCS!
✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠

! Idea:

✆ ✆ ✁ ✂ ✞ ✞ ✆ ✞ ✂ ✂
✂ ✂ ☎ ✞ ✞ ✆ ✝

!

✞ ✂ ✂ ✆ ✆ ☎ ✞ ✞ ✞ ✞ ✂ ✂
✝✟✞ ✂

... But the encoding does not work if we hadn’t assumed

  • conversion

in CCS

  • .

FOSSACS’04: Inf. Behaviour and Scoping – p.24/34

slide-69
SLIDE 69

Encoding CCS

  • into CCS!: Example

Let be the following CCS

  • process:
☎ ✆
  • ✁✄✂
✁ ✌

FOSSACS’04: Inf. Behaviour and Scoping – p.25/34

slide-70
SLIDE 70

Encoding CCS

  • into CCS!: Example

Let be the following CCS

  • process:
☎ ✆
  • ✁✄✂
✁ ✌

Then the corresponding encoding is:

✆ ✆ ☎ ✞ ✞ ✆ ✝

!

✞ ✂
✌ ✝✟✞

FOSSACS’04: Inf. Behaviour and Scoping – p.25/34

slide-71
SLIDE 71

Encoding CCS

  • into CCS!: Example

Let be the following CCS

  • process:
☎ ✆
  • ✁✄✂
✁ ✌

Then the corresponding encoding is:

✆ ✆ ☎ ✞ ✞ ✆ ✝

!

✞ ✂
✌ ✝✟✞

Clearly

and

✆ ✆ ☎ ✞ ✞

are not strongly bisimilar. However, Theorem: For

☎ ✄ ✄ ☎✝ ✠
  • ,
✆ ☎ ✞ ✞

. Moreover,

diverges iff

✆ ✆ ☎ ✞ ✞

diverges.

FOSSACS’04: Inf. Behaviour and Scoping – p.25/34

slide-72
SLIDE 72

Overview of the presentation

The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks

FOSSACS’04: Inf. Behaviour and Scoping – p.26/34

slide-73
SLIDE 73

Conclusions

CCSp

CCSk CCS

  • CCS!

Divergence: Undecidable Divergence: Decidable Slight variations of

  • ✁✄✂

lead to:

  • 1. Static Scoping

Replication.

  • 2. Dynamic Scoping
  • Param. Definitions.

FOSSACS’04: Inf. Behaviour and Scoping – p.27/34

slide-74
SLIDE 74

Conclusions

CCSp

CCSk CCS

  • CCS!

Divergence: Undecidable Divergence: Decidable Slight variations of

  • ✁✄✂

lead to:

  • 1. Static Scoping

Replication.

  • 2. Dynamic Scoping
  • Param. Definitions.

Injective relabellings are redundant in CCS with constants.

FOSSACS’04: Inf. Behaviour and Scoping – p.27/34

slide-75
SLIDE 75

Conclusions

CCSp

CCSk CCS

  • CCS!

Divergence: Undecidable Divergence: Decidable Slight variations of

  • ✁✄✂

lead to:

  • 1. Static Scoping

Replication.

  • 2. Dynamic Scoping
  • Param. Definitions.

Injective relabellings are redundant in CCS with constants. CCS with constants does not preserve

  • conversion.

FOSSACS’04: Inf. Behaviour and Scoping – p.27/34

slide-76
SLIDE 76

Conclusions

CCSp

CCSk CCS

  • CCS!

Divergence: Undecidable Divergence: Decidable Slight variations of

  • ✁✄✂

lead to:

  • 1. Static Scoping

Replication.

  • 2. Dynamic Scoping
  • Param. Definitions.

Injective relabellings are redundant in CCS with constants. CCS with constants does not preserve

  • conversion.

FOSSACS’04: Inf. Behaviour and Scoping – p.27/34

slide-77
SLIDE 77

Final Remarks

CCS variant in Milner’99 uses parametric definitions with static scoping. CWB uses parametric definitions with dynamic scoping.

FOSSACS’04: Inf. Behaviour and Scoping – p.28/34

slide-78
SLIDE 78

Final Remarks

CCS variant in Milner’99 uses parametric definitions with static scoping. CWB uses parametric definitions with dynamic scoping. ECCS advocates the static scoping of names. CHOCS advocates for dynamic name scoping—in the context of higher-order CCS.

FOSSACS’04: Inf. Behaviour and Scoping – p.28/34

slide-79
SLIDE 79

Thanks!

FOSSACS’04: Inf. Behaviour and Scoping – p.29/34

slide-80
SLIDE 80

Bisimilarity

A relation

✄✆☎✝ ✠ ✁ ✄ ☎✝ ✠

is a (strong) simulation if for all

✝ ☎ ✡ ✞ ✌ ✄
  • :
✡ ☎ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.30/34

slide-81
SLIDE 81

Bisimilarity

A relation

✄✆☎✝ ✠ ✁ ✄ ☎✝ ✠

is a (strong) simulation if for all

✝ ☎ ✡ ✞ ✌ ✄
  • :
✡ ☎ ☛
✡ ✞ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.30/34

slide-82
SLIDE 82

Bisimilarity

A relation

✄✆☎✝ ✠ ✁ ✄ ☎✝ ✠

is a (strong) simulation if for all

✝ ☎ ✡ ✞ ✌ ✄
  • :
✡ ☎ ☛
✡ ✞ ☛
  • is a (strong) bisimulation if both
  • and its converse are

(strong) simulations:

☎ ✂ ✞

.

FOSSACS’04: Inf. Behaviour and Scoping – p.30/34

slide-83
SLIDE 83

Bisimilarity

A relation

✄✆☎✝ ✠ ✁ ✄ ☎✝ ✠

is a weak simulation if for all

✝ ☎ ✡ ✞ ✌ ✄
  • :
  • is a weak bisimulation if both
  • and its converse are weak

simulations:

.

  • ” (where
☎ ☎ ☎ ☎

) is

  • ✂☎✄
✆ ✞ ✝ ✞ ✟ ✄ ✆
✄ ✆ ✞ ✝ ☎ ☎ ☎
✄ ✆ ✞ ✝ ✞✡✠ ✄ ✆
✄ ✆ ✞ ✝ ☛

FOSSACS’04: Inf. Behaviour and Scoping – p.30/34

slide-84
SLIDE 84

Encoding CCSp into CCSk

✆ ✆
  • ✄✆☎✝
✄✆☎✝ ✠ ✁

Idea: For each

☎ ✄

CCSp, let

CCSk replacing in

each

  • ccurrence of
✁ ✝ ✂ ✌

with

  • For each definition
  • ✝✟✞

def

✆ ☎
  • , generate a constant

definition

def

✆ ✂ ☎
  • FOSSACS’04: Inf. Behaviour and Scoping – p.31/34
slide-85
SLIDE 85

Encoding CCSk into CCSp

The encoding of

into CCSp is a process

✆ ✆ ☎ ✞ ✞

with associated set of definitions

✂☎✄ ✆✞✝✟ ✟ ✟ ✝ ✄ ✠ ✡ ☛✌☞ ✍✏✎ ✑ ✑ ✒ ✓ ✔ ✔✕ ✂ ✁ ☛✌☞ ✍✏✎ ✒ ✓ ✡ ✖ ✗✙✘ ✚ ✛✢✜ ✂ ✒ ✓ ✡ ✎ ✣ ✄ ✆ ✝ ✟ ✟ ✟ ✝ ✄ ✠ ✤ ✥

The encoding

✆ ✆
  • ✄✆☎✝
✠ ✁ ✡ ✄ ☎✝ ✠
  • :

It satisfies

✆ ✆
✞ ✆
✞ ✠ ✡ ✂ ✂ ✂ ✡ ✞ ☞ ✌

where

✂ ✄ ✝ ☎
✆ ☎ ✞ ✠☛✡ ✂ ✂ ✂ ✡ ✞ ☞ ✝

It is an homomorphism over all other operators

FOSSACS’04: Inf. Behaviour and Scoping – p.32/34

slide-86
SLIDE 86

Encoding CCS! into CCS

  • The encoding
✆ ✆
  • ✄✆☎✝

!

✡ ✄✆☎✝ ✠
  • :

It satisfies

✆ ✆

!

☎ ✞ ✞ ✆
  • ✁✄✂
✝ ✆ ✆ ☎ ✞ ✞ ✞ ✌ ✂ ✁ ✌

It is an homomorphism over all other operators

FOSSACS’04: Inf. Behaviour and Scoping – p.33/34

slide-87
SLIDE 87

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34

slide-88
SLIDE 88

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • FOSSACS’04: Inf. Behaviour and Scoping – p.34/34
slide-89
SLIDE 89

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • 2.
✁ ✁✄✂ ☎ ✆ ✝✁ ✂
✁ ✌ ✝✁

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34

slide-90
SLIDE 90

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • 2.
✁ ✁✄✂ ☎ ✆ ✝✁ ✂
✁ ✌ ✝✁

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34

slide-91
SLIDE 91

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • 2.
✁ ✁✄✂ ☎ ✆ ✝
✌ ✝

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34

slide-92
SLIDE 92

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • 2.
✁ ✁✄✂ ☎ ✆ ✝
✌ ✝

3.

✁✄✂ ☎ ✆ ✝✁ ✂
✝✁

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34

slide-93
SLIDE 93

Encoding CCSp into CCSk: Example

Let

✞ ✌ ✁✄✂ ☎ ✆ ✝✁ ✂ ✞ ✂
✞ ✂
  • ✝✁
✌ ✌ ✝✁

1.

✁✄✂ ☎ ✆ ✝
✞ ✂
✞ ✂
✁ ✌ ✝
  • 2.
✁ ✁✄✂ ☎ ✆ ✝
✌ ✝

3.

✁✄✂ ☎ ✆ ✝✁ ✂
✝✁

Remark: The generation of fresh names could continue forever!

FOSSACS’04: Inf. Behaviour and Scoping – p.34/34