Completeness for Concurrent Kleene Algebra e 1 Paul Brunet 1 - - PowerPoint PPT Presentation

completeness for concurrent kleene algebra
SMART_READER_LITE
LIVE PREVIEW

Completeness for Concurrent Kleene Algebra e 1 Paul Brunet 1 - - PowerPoint PPT Presentation

Completeness for Concurrent Kleene Algebra e 1 Paul Brunet 1 Alexandra Silva 1 Fabio Zanasi 1 Tobias Kapp 1 University College London NII Logic Seminar Introduction Kleene Algebra models program flow . abort (0) and skip (1) atomic actions ( a


slide-1
SLIDE 1

Completeness for Concurrent Kleene Algebra

Tobias Kapp´ e1 Paul Brunet1 Alexandra Silva1 Fabio Zanasi1

1University College London

NII Logic Seminar

slide-2
SLIDE 2

Introduction

Kleene Algebra models program flow. abort (0) and skip (1) atomic actions (a, b, . . . ) non-deterministic choice (+) sequential composition (·) indefinite repetition (∗)

(e + f)∗ ≡KA e∗ · (f · e∗)∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 2 20
slide-3
SLIDE 3

Introduction

Kleene Algebra models program flow. abort (0) and skip (1) atomic actions (a, b, . . . ) non-deterministic choice (+) sequential composition (·) indefinite repetition (∗) Thread 1 Thread 2 a c b d

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 2 20
slide-4
SLIDE 4

Introduction

Kleene Algebra models program flow. abort (0) and skip (1) atomic actions (a, b, . . . ) non-deterministic choice (+) sequential composition (·) indefinite repetition (∗) Concurrent KA1 adds parallel composition () Thread 1 Thread 2 a c b d

  • (a·b)(c·d)
1Hoare, M¨
  • ller, Struth, and Wehrman 2009
  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 2 20
slide-5
SLIDE 5

Introduction

KA is well-studied: Decision procedures [Hopcroft and Karp 1971; Bonchi and Pous 2013] Coalgebra, automata [Kleene 1956; Brzozowski 1964; Silva 2010] Axiomatisation of equivalence [Salomaa 1966; Conway 1971; Kozen 1994]

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 3 20
slide-6
SLIDE 6

Introduction

KA is well-studied: Decision procedures [Hopcroft and Karp 1971; Bonchi and Pous 2013] Coalgebra, automata [Kleene 1956; Brzozowski 1964; Silva 2010] Axiomatisation of equivalence [Salomaa 1966; Conway 1971; Kozen 1994] CKA is a work in progress: Decision procedures [Brunet, Pous, and Struth 2017] Coalgebra, automata [K., Brunet, Luttik, Silva, and Zanasi 2017] Axiomatisation of equivalence [Gischer 1988; Laurence and Struth 2014]

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 3 20
slide-7
SLIDE 7

Introduction

Theorem (Kozen 1994)

The axioms for KA are complete for equivalence: e ≡KA f ⇐

⇒ eKA = fKA

−KA is the regular language interpretation of e.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 4 20
slide-8
SLIDE 8

Introduction

Theorem (Kozen 1994)

The axioms for KA are complete for equivalence: e ≡KA f ⇐

⇒ eKA = fKA

−KA is the regular language interpretation of e.

Question

Can we find axioms for CKA that are complete for equivalence? That is, e ≡CKA f

?

⇐ ⇒ eCKA = fCKA

−CKA is a generalized regular language interpretation of e.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 4 20
slide-9
SLIDE 9

Preliminaries

Pomset: “word with parallelism” a · (b c) · d = a b c d

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 5 20
slide-10
SLIDE 10

Preliminaries

Pomset: “word with parallelism” a · (b c) · d = a b c d Pomset language: set of pomsets

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 5 20
slide-11
SLIDE 11

Preliminaries

Pomset: “word with parallelism” a · (b c) · d = a b c d Pomset language: set of pomsets Composition lifts: U · V = {U · V : U ∈ U, V ∈ V} U V = {U V : U ∈ U, V ∈ V}

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 5 20
slide-12
SLIDE 12

Preliminaries

Pomset: “word with parallelism” a · (b c) · d = a b c d Pomset language: set of pomsets Composition lifts: U · V = {U · V : U ∈ U, V ∈ V} U V = {U V : U ∈ U, V ∈ V} Kleene star: U∗ =

n<ω Un

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 5 20
slide-13
SLIDE 13

Preliminaries

T is the set generated by the grammar

e, f ::= 0 | 1 | a ∈ Σ | e + f | e · f | e f | e∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-14
SLIDE 14

Preliminaries

T is the set generated by the grammar

e, f ::= 0 | 1 | a ∈ Σ | e + f | e · f | e f | e∗ BKA semantics is given by −BKA : T → 2PomΣ.

0BKA = ∅ 1BKA = {1} aBKA = {a} e + fBKA = eBKA ∪ fBKA e · fBKA = eBKA · fBKA e fBKA = eBKA fBKA e∗BKA = e∗

BKA
  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-15
SLIDE 15

Preliminaries

Axioms for BKA : e + 0 ≡BKA e e · 1 ≡BKA e ≡BKA 1 · e e · 0 ≡BKA 0 ≡BKA 0 · e e + e ≡BKA e e + f ≡BKA f + e e + (f + g) ≡BKA (f + g) + h e · (f · g) ≡BKA (e · f) · g e · (f + g) ≡BKA e · f + e · h

(e + f) · g ≡BKA e · g + f · g

1 + e · e∗ ≡BKA e∗ e · f + g ≦BKA f =

⇒ e∗ · g ≦BKA f

e f ≡BKA f e e 1 ≡BKA e e 0 ≡BKA 0 e (f g) ≡BKA (e f) g e (f + g) ≡BKA e f + e g

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-16
SLIDE 16

Preliminaries

Axioms for BKA : e + 0 ≡BKA e e · 1 ≡BKA e ≡BKA 1 · e e · 0 ≡BKA 0 ≡BKA 0 · e e + e ≡BKA e e + f ≡BKA f + e e + (f + g) ≡BKA (f + g) + h e · (f · g) ≡BKA (e · f) · g e · (f + g) ≡BKA e · f + e · h

(e + f) · g ≡BKA e · g + f · g

1 + e · e∗ ≡BKA e∗ e · f + g ≦BKA f =

⇒ e∗ · g ≦BKA f

e f ≡BKA f e e 1 ≡BKA e e 0 ≡BKA 0 e (f g) ≡BKA (e f) g e (f + g) ≡BKA e f + e g

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-17
SLIDE 17

Preliminaries

Axioms for BKA : e + 0 ≡BKA e e · 1 ≡BKA e ≡BKA 1 · e e · 0 ≡BKA 0 ≡BKA 0 · e e + e ≡BKA e e + f ≡BKA f + e e + (f + g) ≡BKA (f + g) + h e · (f · g) ≡BKA (e · f) · g e · (f + g) ≡BKA e · f + e · h

(e + f) · g ≡BKA e · g + f · g

1 + e · e∗ ≡BKA e∗ e · f + g ≦BKA f =

⇒ e∗ · g ≦BKA f

e f ≡BKA f e e 1 ≡BKA e e 0 ≡BKA 0 e (f g) ≡BKA (e f) g e (f + g) ≡BKA e f + e g

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-18
SLIDE 18

Preliminaries

Axioms for BKA : e + 0 ≡BKA e e · 1 ≡BKA e ≡BKA 1 · e e · 0 ≡BKA 0 ≡BKA 0 · e e + e ≡BKA e e + f ≡BKA f + e e + (f + g) ≡BKA (f + g) + h e · (f · g) ≡BKA (e · f) · g e · (f + g) ≡BKA e · f + e · h

(e + f) · g ≡BKA e · g + f · g

1 + e · e∗ ≡BKA e∗ e · f + g ≦BKA f =

⇒ e∗ · g ≦BKA f

e f ≡BKA f e e 1 ≡BKA e e 0 ≡BKA 0 e (f g) ≡BKA (e f) g e (f + g) ≡BKA e f + e g

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-19
SLIDE 19

Preliminaries

Axioms for BKA : e + 0 ≡BKA e e · 1 ≡BKA e ≡BKA 1 · e e · 0 ≡BKA 0 ≡BKA 0 · e e + e ≡BKA e e + f ≡BKA f + e e + (f + g) ≡BKA (f + g) + h e · (f · g) ≡BKA (e · f) · g e · (f + g) ≡BKA e · f + e · h

(e + f) · g ≡BKA e · g + f · g

1 + e · e∗ ≡BKA e∗ e · f + g ≦BKA f =

⇒ e∗ · g ≦BKA f

e f ≡BKA f e e 1 ≡BKA e e 0 ≡BKA 0 e (f g) ≡BKA (e f) g e (f + g) ≡BKA e f + e g

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-20
SLIDE 20

Preliminaries

Theorem (Laurence and Struth 2014)

The axioms for BKA are complete for equivalence: e ≡BKA f ⇐

⇒ eBKA = fBKA

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 6 20
slide-21
SLIDE 21

Preliminaries

Pomset subsumption: a b c d

a b c d

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 7 20
slide-22
SLIDE 22

Preliminaries

Pomset subsumption: a b c d

a b c d U ⊑ V: U is “more sequential” than V

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 7 20
slide-23
SLIDE 23

Preliminaries

Pomset subsumption: a b c d

a b c d U ⊑ V: U is “more sequential” than V Closure under pomset subsumption: U↓ = {U ′ ⊑ U : U ∈ U}

U↓: all “sequentialisations” of pomsets in U.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 7 20
slide-24
SLIDE 24

Preliminaries

CKA semantics: eCKA = eBKA ↓.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 8 20
slide-25
SLIDE 25

Preliminaries

CKA semantics: eCKA = eBKA ↓. Axioms to build ≡CKA: all axioms for ≡BKA, as well as the exchange law:

(e f) · (g h) ≦CKA (e · g) (f · h)

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 8 20
slide-26
SLIDE 26

Preliminaries

CKA semantics: eCKA = eBKA ↓. Axioms to build ≡CKA: all axioms for ≡BKA, as well as the exchange law:

(e f) · (g h) ≦CKA (e · g) (f · h) Lemma (Hoare, M¨

  • ller, Struth, and Wehrman 2009)

The axioms of CKA are sound for equivalence, i.e., e ≡CKA f =

⇒ eCKA = fCKA

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 8 20
slide-27
SLIDE 27

Preliminaries

Theorem (Kozen 1994)

Let M be an n-by-n matrix over T, and b an n-dimensional vector over T. The inequation M · x + b ≦KA x admits a unique least solution (with respect to ≦KA).

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 9 20
slide-28
SLIDE 28

Preliminaries

Theorem (Kozen 1994)

Let M be an n-by-n matrix over T, and b an n-dimensional vector over T. The inequation M · x + b ≦KA x admits a unique least solution (with respect to ≦KA). This “fixpoint” can be constructed fully syntactically.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 9 20
slide-29
SLIDE 29

Preliminaries

Theorem (Kozen 1994)

Let M be an n-by-n matrix over T, and b an n-dimensional vector over T. The inequation M · x + b ≦KA x admits a unique least solution (with respect to ≦KA). This “fixpoint” can be constructed fully syntactically. The same works for BKA and CKA.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 9 20
slide-30
SLIDE 30

Preliminaries

Theorem (Kozen 1994)

Let M be an n-by-n matrix over T, and b an n-dimensional vector over T. The inequation M · x + b ≦KA x admits a unique least solution (with respect to ≦KA). This “fixpoint” can be constructed fully syntactically. The same works for BKA and CKA. In fact, the solution is the same in both systems!

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 9 20
slide-31
SLIDE 31

Preliminaries

Theorem (Kozen 1994)

Let M be an n-by-n matrix over T, and b an n-dimensional vector over T. The inequation M · x + b ≦KA x admits a unique least solution (with respect to ≦KA). This “fixpoint” can be constructed fully syntactically. The same works for BKA and CKA. In fact, the solution is the same in both systems! We use this as a device to find specific terms later on.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 9 20
slide-32
SLIDE 32

Closure

Definition

Let e ∈ T; a closure of e is a term e↓ such that

1 e↓ ≡CKA e 2 eCKA = e↓BKA

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 10 20
slide-33
SLIDE 33

Closure

Definition

Let e ∈ T; a closure of e is a term e↓ such that

1 e↓ ≡CKA e 2 eCKA = e↓BKA

Lemma (Laurence & Struth)

If every term e has a closure e↓, then eCKA = fCKA implies e ≡CKA f.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 10 20
slide-34
SLIDE 34

Closure

Definition

Let e ∈ T; a closure of e is a term e↓ such that

1 e↓ ≡CKA e 2 eCKA = e↓BKA

Lemma (Laurence & Struth)

If every term e has a closure e↓, then eCKA = fCKA implies e ≡CKA f.

Proof.

Observe that e↓BKA = f↓BKA, and therefore e ≡CKA e↓ ≡BKA f↓ ≡CKA f.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 10 20
slide-35
SLIDE 35

Closure

Lemma

If e, f have closures e↓ and f↓ respectively, then

1 e↓ + f↓ is a closure of e + f 2 e↓ · f↓ is a closure of e · f 3 e↓∗ is a closure of e∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 11 20
slide-36
SLIDE 36

Closure

Lemma

If e, f have closures e↓ and f↓ respectively, then

1 e↓ + f↓ is a closure of e + f 2 e↓ · f↓ is a closure of e · f 3 e↓∗ is a closure of e∗

One case remains: parallel composition.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 11 20
slide-37
SLIDE 37

Closure

Lemma

If e, f have closures e↓ and f↓ respectively, then

1 e↓ + f↓ is a closure of e + f 2 e↓ · f↓ is a closure of e · f 3 e↓∗ is a closure of e∗

One case remains: parallel composition. Induction hypothesis: for e ∈ T, we assume that: If f is a strict subterm of e, we can construct f↓. If |f| < |e| we can construct f↓.2

2|e| is the nesting level e w.r.t.
  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 11 20
slide-38
SLIDE 38

Preclosure

interlude

A preclosure is almost a closure, but not quite.

Definition

Let e ∈ T. A preclosure of e is a term ˜ e ∈ T such that

1 ˜

e ≡CKA e.

2 if U ∈ eCKA is non-sequential, then U ∈ ˜

eBKA

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 12 20
slide-39
SLIDE 39

Preclosure

interlude

Definition

Let e ∈ T; ∆e is the smallest relation on T such that 1 ∆e e e ∆e 1

ℓ ∆e0 r ℓ ∆e1+e0 r ℓ ∆e1 r ℓ ∆e0+e1 r ℓ ∆e r ℓ ∆e⋆ r ℓ ∆e0 r

1 ∈ e1CKA

ℓ ∆e0·e1 r ℓ ∆e1 r

1 ∈ e0CKA

ℓ ∆e0·e1 r ℓ0 ∆e0 r0 ℓ1 ∆e1 r1 ℓ0 ℓ1 ∆e0e1 r0 r1 Lemma

Let V, W = 1, e ∈ T, and V W ∈ eBKA; there exist ℓ ∆e r with V ∈ ℓBKA and W ∈ rBKA.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 12 20
slide-40
SLIDE 40

Preclosure

interlude

Definition

Let e, f ∈ T; the term e ⊙ f is defined as follows: e ⊙ f e f +

  • ℓ∆ef r

|ℓ|,|r|<|ef|

ℓ↓ r↓ Lemma

Let e, f ∈ T; then

1 e ⊙ f ≡CKA e f 2 if U ∈ e fCKA is non-sequential, then U ∈ e ⊙ fBKA

That is, e ⊙ f is a preclosure of e f.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 12 20
slide-41
SLIDE 41

Closure

Sketch: given e f, apply exchange law syntactically, “in the limit”.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 13 20
slide-42
SLIDE 42

Closure

Sketch: given e f, apply exchange law syntactically, “in the limit”. For instance: if e = a · b and f = c · d:

(a c) · (b d) ≦CKA e f

(e = a • b, f = c • d)

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 13 20
slide-43
SLIDE 43

Closure

Sketch: given e f, apply exchange law syntactically, “in the limit”. For instance: if e = a · b and f = c · d:

(a c) · (b d) ≦CKA e f

(e = a • b, f = c • d) a · (b (c · d)) ≦CKA e f (e = a • b, f = 1 • c · d)

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 13 20
slide-44
SLIDE 44

Closure

Sketch: given e f, apply exchange law syntactically, “in the limit”. For instance: if e = a · b and f = c · d:

(a c) · (b d) ≦CKA e f

(e = a • b, f = c • d) a · (b (c · d)) ≦CKA e f (e = a • b, f = 1 • c · d) c · ((a · b) d) ≦CKA e f (e = 1 • a · b, f = c • d) . . .

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 13 20
slide-45
SLIDE 45

Closure

Sketch: given e f, apply exchange law syntactically, “in the limit”. For instance: if e = a · b and f = c · d:

(a c) · (b d) ≦CKA e f

(e = a • b, f = c • d) a · (b (c · d)) ≦CKA e f (e = a • b, f = 1 • c · d) c · ((a · b) d) ≦CKA e f (e = 1 • a · b, f = c • d) . . . Goal: find enough of these terms to cover all pomsets in e fCKA.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 13 20
slide-46
SLIDE 46

Closure

Obstacles to overcome: How to split terms e and f into heads and tails?

❘ ❘

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 14 20
slide-47
SLIDE 47

Closure

Obstacles to overcome: How to split terms e and f into heads and tails?

What to do about recursion? For instance,

❘ (e f) · (e∗ f ∗) ≦CKA e∗ f ∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 14 20
slide-48
SLIDE 48

Closure

Obstacles to overcome: How to split terms e and f into heads and tails?

❘ splicing relations

What to do about recursion? For instance,

❘ (e f) · (e∗ f ∗) ≦CKA e∗ f ∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 14 20
slide-49
SLIDE 49

Closure

Obstacles to overcome: How to split terms e and f into heads and tails?

❘ splicing relations

What to do about recursion? For instance,

❘ fixpoints of inequations (e f) · (e∗ f ∗) ≦CKA e∗ f ∗

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 14 20
slide-50
SLIDE 50

Closure

Definition

Let e ∈ T. We define ∇e ⊆ T × T as the smallest relation such that 1 ∇1 1 a ∇a 1 1 ∇a a 1 ∇e∗ 1

ℓ ∇e r ℓ ∇e+f r ℓ ∇f r ℓ ∇e+f r ℓ ∇e r ℓ ∇e·f r · f ℓ ∇f r

e · ℓ ∇e·f r

ℓ0 ∇e r0 ℓ1 ∇f r1 ℓ0 ℓ1 ∇ef r0 r1 ℓ ∇e r

e∗ · ℓ ∇e∗ r · e∗

Lemma

Let e ∈ T and U · V ∈ eWCKA; there exist ℓ ∇e r such that U ∈ ℓCKA and V ∈ rCKA.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 15 20
slide-51
SLIDE 51

Closure

Suppose that for all g, h ∈ T, we have that Xgh is a closure of g h. Then we find e f +

  • ℓe ∇e re

ℓf ∇f rf

(ℓe ℓf) · (re rf) ≦CKA Xef

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 16 20
slide-52
SLIDE 52

Closure

Suppose that for all g, h ∈ T, we have that Xgh is a closure of g h. Then we find e f +

  • ℓe ∇e re

ℓf ∇f rf

(ℓe ⊙ ℓf) · (re rf) ≦CKA Xef

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 16 20
slide-53
SLIDE 53

Closure

Suppose that for all g, h ∈ T, we have that Xgh is a closure of g h. Then we find e f +

  • ℓe ∇e re

ℓf ∇f rf

(ℓe ⊙ ℓf) · Xrerf ≦CKA Xef

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 16 20
slide-54
SLIDE 54

Closure

Suppose that for all g, h ∈ T, we have that Xgh is a closure of g h. Then we find e f +

  • ℓe ∇e re

ℓf ∇f rf

(ℓe ⊙ ℓf) · Xrerf ≦CKA Xef

For Xrerf , we find another inequation, et cetera. . .

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 16 20
slide-55
SLIDE 55

Closure

Suppose that for all g, h ∈ T, we have that Xgh is a closure of g h. Then we find e f +

  • ℓe ∇e re

ℓf ∇f rf

(ℓe ⊙ ℓf) · Xrerf ≦CKA Xef

For Xrerf , we find another inequation, et cetera. . .

Lemma

Continuing this, we get a finite system of inequations M, bef.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 16 20
slide-56
SLIDE 56

Closure

Theorem

Let e ⊗ f be the least solution to Xef in M,

  • bef. Then the following hold:

1 e ⊗ f ≡CKA e f 2 e ⊗ fBKA = e fCKA

In other words, e ⊗ f is a closure of e f.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 17 20
slide-57
SLIDE 57

Closure

Theorem

Let e ⊗ f be the least solution to Xef in M,

  • bef. Then the following hold:

1 e ⊗ f ≡CKA e f 2 e ⊗ fBKA = e fCKA

In other words, e ⊗ f is a closure of e f.

Theorem

If e ∈ T, then we can compute a term e↓ that is a closure of e.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 17 20
slide-58
SLIDE 58

Closure

Theorem

Let e ⊗ f be the least solution to Xef in M,

  • bef. Then the following hold:

1 e ⊗ f ≡CKA e f 2 e ⊗ fBKA = e fCKA

In other words, e ⊗ f is a closure of e f.

Theorem

If e ∈ T, then we can compute a term e↓ that is a closure of e.

Corollary

Let e, f ∈ T be such that eCKA = fCKA; then e ≡CKA f.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 17 20
slide-59
SLIDE 59

Conclusion

Axiomatised equality of closed, rational pomset languages. Results establishes these as the carrier of the free CKA. Extends half of earlier Kleene theorem: terms to pomset automata. We also obtain a novel (but inefficient) decision procedure.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 18 20
slide-60
SLIDE 60

Further work

Explore coalgebraic perspective:

Efficient equivalence checking through bisimulation? Can completeness be shown coalgebraically?

Add “parallel star” operator — closure method does not apply. Endgame: lift results to KAT, then NetKAT.

  • T. Kapp´
e, P . Brunet, A. Silva, F. Zanasi Completeness for Concurrent Kleene Algebra NII Logic Seminar 19 20
slide-61
SLIDE 61

Thank you for your attention

CoNeCo

Implementation: https://doi.org/10.5281/zenodo.926651. Draft paper: https://arxiv.org/abs/1710.02787.