Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and...

74
Decidability and Complexity of Tree Share Formulas Decidability and Complexity of Tree Share Formulas Xuan Bach Le 1 Aquinas Hobor 1 Anthony W. Lin 2 1 National University of Singapore 2 University of Oxford December 14, 2016 1 / 30

Transcript of Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and...

Page 1: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity of Tree ShareFormulas

Xuan Bach Le1 Aquinas Hobor1 Anthony W. Lin2

1 National University of Singapore 2 University of Oxford

December 14, 2016

1 / 30

Page 2: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

tree(x , τ) ∧WRITE(τ)

tree(x , τ1) ∧ READ(τ1) tree(x , τ2) ∧ READ(τ2)

tree(x , τ) ∧WRITE(τ)

2 / 30

Page 3: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares are embedded into separation logic to reason aboutresource accounting:

addrτ1⊕τ2↦ val ⇔ addr

τ1↦ val ⋆ addrτ2↦ val

Allow resources to be split and shared in large scale:

tree(`, τ)def= (` = null ∧ emp) ∨ ∃`l , `r . (`

τ↦ (`l , `r) ⋆ tree(`l , τ) ⋆ tree(`r , τ))

tree(`, τ1 ⊕ τ2) ⇔ tree(`, τ1) ⋆ tree(`, τ2)

Share policies to reason about permissions for single writerand multiple readers:

WRITE(τ)READ(τ)

Write-Read

READ(τ)∃τ1, τ2. τ1 ⊕ τ2 = τ ∧

READ(τ1) ∧ READ(τ2)

Split-Read

3 / 30

Page 4: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares are embedded into separation logic to reason aboutresource accounting:

addrτ1⊕τ2↦ val ⇔ addr

τ1↦ val ⋆ addrτ2↦ val

Allow resources to be split and shared in large scale:

tree(`, τ)def= (` = null ∧ emp) ∨ ∃`l , `r . (`

τ↦ (`l , `r) ⋆ tree(`l , τ) ⋆ tree(`r , τ))

tree(`, τ1 ⊕ τ2) ⇔ tree(`, τ1) ⋆ tree(`, τ2)

Share policies to reason about permissions for single writerand multiple readers:

WRITE(τ)READ(τ)

Write-Read

READ(τ)∃τ1, τ2. τ1 ⊕ τ2 = τ ∧

READ(τ1) ∧ READ(τ2)

Split-Read

3 / 30

Page 5: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares are embedded into separation logic to reason aboutresource accounting:

addrτ1⊕τ2↦ val ⇔ addr

τ1↦ val ⋆ addrτ2↦ val

Allow resources to be split and shared in large scale:

tree(`, τ)def= (` = null ∧ emp) ∨ ∃`l , `r . (`

τ↦ (`l , `r) ⋆ tree(`l , τ) ⋆ tree(`r , τ))

tree(`, τ1 ⊕ τ2) ⇔ tree(`, τ1) ⋆ tree(`, τ2)

Share policies to reason about permissions for single writerand multiple readers:

WRITE(τ)READ(τ)

Write-Read

READ(τ)∃τ1, τ2. τ1 ⊕ τ2 = τ ∧

READ(τ1) ∧ READ(τ2)

Split-Read

3 / 30

Page 6: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares enable resource reasoning in concurrent programming

Rational numbers [Boyland (2003)]: disjointness problemmakes tree split equivalence false:¬(tree(`, τ1 ⊕ τ2)⇐ tree(`, τ1) ⋆ tree(`, τ2))Subsets of natural numbers [Parkinson (2005)]

Finite sets: recursion depth is finiteInfinite sets: intersections may not be in the model

4 / 30

Page 7: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares enable resource reasoning in concurrent programming

Rational numbers [Boyland (2003)]: disjointness problemmakes tree split equivalence false:¬(tree(`, τ1 ⊕ τ2)⇐ tree(`, τ1) ⋆ tree(`, τ2))

Subsets of natural numbers [Parkinson (2005)]

Finite sets: recursion depth is finiteInfinite sets: intersections may not be in the model

4 / 30

Page 8: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Shares

Shares enable resource reasoning in concurrent programming

Rational numbers [Boyland (2003)]: disjointness problemmakes tree split equivalence false:¬(tree(`, τ1 ⊕ τ2)⇐ tree(`, τ1) ⋆ tree(`, τ2))Subsets of natural numbers [Parkinson (2005)]

Finite sets: recursion depth is finiteInfinite sets: intersections may not be in the model

4 / 30

Page 9: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Definition

A tree share τ ∈ T is a boolean binary tree equipped with thereduction rules R1 and R2 (their inverses are E1,E2 resp.):

τdef= ○ ∣ ● ∣ τ τ R1 ∶ ● ●↦ ● R2 ∶ ○ ○↦ ○

The tree domain T contains canonical trees which areirreducible with respect to the reduction rules.

● ● ○ ○ ○

Ri↦ ● ○ ○Ri↦ ● ○

○ is the empty tree, and ● the full tree.

READ(τ) def= τ ≠ ○ WRITE(τ) def= τ = ●

5 / 30

Page 10: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Definition

A tree share τ ∈ T is a boolean binary tree equipped with thereduction rules R1 and R2 (their inverses are E1,E2 resp.):

τdef= ○ ∣ ● ∣ τ τ R1 ∶ ● ●↦ ● R2 ∶ ○ ○↦ ○

The tree domain T contains canonical trees which areirreducible with respect to the reduction rules.

● ● ○ ○ ○

Ri↦ ● ○ ○Ri↦ ● ○

○ is the empty tree, and ● the full tree.

READ(τ) def= τ ≠ ○ WRITE(τ) def= τ = ●

5 / 30

Page 11: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Definition

A tree share τ ∈ T is a boolean binary tree equipped with thereduction rules R1 and R2 (their inverses are E1,E2 resp.):

τdef= ○ ∣ ● ∣ τ τ R1 ∶ ● ●↦ ● R2 ∶ ○ ○↦ ○

The tree domain T contains canonical trees which areirreducible with respect to the reduction rules.

● ● ○ ○ ○

Ri↦ ● ○ ○Ri↦ ● ○

○ is the empty tree, and ● the full tree.

READ(τ) def= τ ≠ ○ WRITE(τ) def= τ = ●

5 / 30

Page 12: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Definition

A tree share τ ∈ T is a boolean binary tree equipped with thereduction rules R1 and R2 (their inverses are E1,E2 resp.):

τdef= ○ ∣ ● ∣ τ τ R1 ∶ ● ●↦ ● R2 ∶ ○ ○↦ ○

The tree domain T contains canonical trees which areirreducible with respect to the reduction rules.

● ● ○ ○ ○

Ri↦ ● ○ ○Ri↦ ● ○

○ is the empty tree, and ● the full tree.

READ(τ) def= τ ≠ ○ WRITE(τ) def= τ = ●5 / 30

Page 13: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators

The complement 2:

●1 ○2 ○3¬↦○1 ●2 ●3

The Boolean function union ⊔ and intersection ⊓ operator:

● ○ ●⊔○ ● ○

Ei↦●1 ●2 ○3 ●4

⊔○1 ●2 ○3 ○4

∨↦●1 ●2 ○3 ●4

Ri↦ ● ○ ●

● ○ ●⊓○ ● ○

Ei↦●1 ●2 ○3 ●4

⊓○1 ●2 ○3 ○4

∧↦○1 ●2 ○3 ○4

Ri↦○ ● ○

6 / 30

Page 14: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators

The complement 2:

●1 ○2 ○3¬↦○1 ●2 ●3

The Boolean function union ⊔ and intersection ⊓ operator:

● ○ ●⊔○ ● ○

Ei↦●1 ●2 ○3 ●4

⊔○1 ●2 ○3 ○4

∨↦●1 ●2 ○3 ●4

Ri↦ ● ○ ●

● ○ ●⊓○ ● ○

Ei↦●1 ●2 ○3 ●4

⊓○1 ●2 ○3 ○4

∧↦○1 ●2 ○3 ○4

Ri↦○ ● ○

6 / 30

Page 15: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators

The complement 2:

●1 ○2 ○3¬↦○1 ●2 ●3

The Boolean function union ⊔ and intersection ⊓ operator:

● ○ ●⊔○ ● ○

Ei↦●1 ●2 ○3 ●4

⊔○1 ●2 ○3 ○4

∨↦●1 ●2 ○3 ●4

Ri↦ ● ○ ●

● ○ ●⊓○ ● ○

Ei↦●1 ●2 ○3 ●4

⊓○1 ●2 ○3 ○4

∧↦○1 ●2 ○3 ○4

Ri↦○ ● ○

6 / 30

Page 16: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators

The complement 2:

●1 ○2 ○3¬↦○1 ●2 ●3

The Boolean function union ⊔ and intersection ⊓ operator:

● ○ ●⊔○ ● ○

Ei↦●1 ●2 ○3 ●4

⊔○1 ●2 ○3 ○4

∨↦●1 ●2 ○3 ●4

Ri↦ ● ○ ●

● ○ ●⊓○ ● ○

Ei↦●1 ●2 ○3 ●4

⊓○1 ●2 ○3 ○4

∧↦○1 ●2 ○3 ○4

Ri↦○ ● ○

6 / 30

Page 17: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators

The complement 2:

●1 ○2 ○3¬↦○1 ●2 ●3

The Boolean function union ⊔ and intersection ⊓ operator:

● ○ ●⊔○ ● ○

Ei↦●1 ●2 ○3 ●4

⊔○1 ●2 ○3 ○4

∨↦●1 ●2 ○3 ●4

Ri↦ ● ○ ●

● ○ ●⊓○ ● ○

Ei↦●1 ●2 ○3 ●4

⊓○1 ●2 ○3 ○4

∧↦○1 ●2 ○3 ○4

Ri↦○ ● ○

6 / 30

Page 18: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Properties of ⊔, ⊓ and 2

M = (⊔,⊓,2, ●, ○) forms a Boolean Algebra [Dockins et al.(2009)]:

B1a. (τ1 ⊓ τ2) ⊓ τ3 = τ1 ⊓ (τ2 ⊓ τ3) B1b. (τ1 ⊔ τ2) ⊔ τ3 = τ1 ⊔ (τ2 ⊔ τ3) (associativity)B2a. τ1 ⊓ τ2 = τ2 ⊓ τ1 B2b. τ1 ⊔ τ2 = τ2 ⊔ τ1 (commutativity)B3a. τ1 ⊓ (τ2 ⊔ τ3) = (τ1 ⊓ τ2) ⊔ (τ1 ⊓ τ3) B3b. τ1 ⊔ (τ2 ⊓ τ3) = (τ1 ⊔ τ2) ⊓ (τ1 ⊔ τ3) (distributivity)B4a. τ1 ⊓ (τ1 ⊔ τ2) = τ1 B4b. τ1 ⊔ (τ1 ⊓ τ2) = τ1 (absorption)B5a. τ ⊓ ● = τ B5b. τ ⊔ ○ = τ (identity)B6a. τ ⊓ τ = ○ B6b. τ ⊔ τ = ● (complement)

7 / 30

Page 19: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The partial join function ⊕:

τ1 ⊕ τ2 = τ3 def= τ1 ⊔ τ2 = τ3 ∧ τ1 ⊓ τ2 = ○

● ○ ○ ●⊕ ○ ● ○

Ei↦●1 ○2 ○3 ●4

⊕○1 ○2 ●3 ○4

⊕↦●1 ○2 ●3 ●4

Ri↦● ○ ●

8 / 30

Page 20: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The partial join function ⊕:

τ1 ⊕ τ2 = τ3 def= τ1 ⊔ τ2 = τ3 ∧ τ1 ⊓ τ2 = ○

● ○ ○ ●⊕ ○ ● ○

Ei↦●1 ○2 ○3 ●4

⊕○1 ○2 ●3 ○4

⊕↦●1 ○2 ●3 ●4

Ri↦● ○ ●

8 / 30

Page 21: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The partial join function ⊕:

τ1 ⊕ τ2 = τ3 def= τ1 ⊔ τ2 = τ3 ∧ τ1 ⊓ τ2 = ○

● ○ ○ ●⊕ ○ ● ○

Ei↦●1 ○2 ○3 ●4

⊕○1 ○2 ●3 ○4

⊕↦●1 ○2 ●3 ●4

Ri↦● ○ ●

8 / 30

Page 22: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Properties of ⊕

O = (T,⊕) for fractional permission in Separation Logic [Dockinset al. (2009)]:

J1. τ1 ⊕ τ2 = τ3 ⇒ τ1 ⊕ τ2 = τ ′3 ⇒ τ3 = τ ′3 (functionality)J2. τ1 ⊕ τ2 = τ2 ⊕ τ1 (commutativity)J3. τ1 ⊕ (τ2 ⊕ τ3) = (τ1 ⊕ τ2)⊕ τ3 (associativity)J4. τ1 ⊕ τ2 = τ3 ⇒ τ ′1 ⊕ τ2 = τ3 ⇒ τ1 = τ ′1 (cancellation)J5. ∃u. ∀τ. τ ⊕ u = τ (unit)J6. τ1 ⊕ τ1 = τ2 ⇒ τ1 = τ2 (disjointness)

J7. a⊕ b = z ∧ c ⊕ d = z ⇒ ∃ac, ad ,bc,bd .a b ac

ad bdbcc

d

ac ⊕ ad = a ∧ bc ⊕ bd = b ∧ ac ⊕ bc = c ∧ ad ⊕ bd = d (cross split)J8. τ ≠ ○⇒ ∃τ1, τ2. τ1 ≠ ○ ∧ τ2 ≠ ○ ∧ τ1 ⊕ τ2 = τ (infinite split)

9 / 30

Page 23: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The injection bowtie function & replaces ● with tree:

● ○ ○ ●& ○ ● =

● ○ ○ ●& ○ ● =

○ ● ○ ○ ○ ●

Allow resources to be split uniformly:

τ1 ⋅ tree(`, τ2) def= tree(`, τ2 & τ1)

(τ1 ⊕ τ2) ⋅ tree(`, τ) ⇔ τ1 ⋅ tree(`, τ) ⋆ τ2 ⋅ tree(`, τ)τ1 ⋅ tree(`, τ2 & τ3) ⇔ (τ3 & τ1) ⋅ tree(`, τ2)

& can be hard to think about. Is this equation satisfiable?

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

10 / 30

Page 24: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The injection bowtie function & replaces ● with tree:

● ○ ○ ●& ○ ● =

● ○ ○ ●& ○ ● =

○ ● ○ ○ ○ ●

Allow resources to be split uniformly:

τ1 ⋅ tree(`, τ2) def= tree(`, τ2 & τ1)

(τ1 ⊕ τ2) ⋅ tree(`, τ) ⇔ τ1 ⋅ tree(`, τ) ⋆ τ2 ⋅ tree(`, τ)τ1 ⋅ tree(`, τ2 & τ3) ⇔ (τ3 & τ1) ⋅ tree(`, τ2)

& can be hard to think about. Is this equation satisfiable?

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

10 / 30

Page 25: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The injection bowtie function & replaces ● with tree:

● ○ ○ ●& ○ ● =

● ○ ○ ●& ○ ● =

○ ● ○ ○ ○ ●

Allow resources to be split uniformly:

τ1 ⋅ tree(`, τ2) def= tree(`, τ2 & τ1)

(τ1 ⊕ τ2) ⋅ tree(`, τ) ⇔ τ1 ⋅ tree(`, τ) ⋆ τ2 ⋅ tree(`, τ)τ1 ⋅ tree(`, τ2 & τ3) ⇔ (τ3 & τ1) ⋅ tree(`, τ2)

& can be hard to think about. Is this equation satisfiable?

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

10 / 30

Page 26: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Tree Share Operators(cont.)

The injection bowtie function & replaces ● with tree:

● ○ ○ ●& ○ ● =

● ○ ○ ●& ○ ● =

○ ● ○ ○ ○ ●

Allow resources to be split uniformly:

τ1 ⋅ tree(`, τ2) def= tree(`, τ2 & τ1)

(τ1 ⊕ τ2) ⋅ tree(`, τ) ⇔ τ1 ⋅ tree(`, τ) ⋆ τ2 ⋅ tree(`, τ)τ1 ⋅ tree(`, τ2 & τ3) ⇔ (τ3 & τ1) ⋅ tree(`, τ2)

& can be hard to think about. Is this equation satisfiable?

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

10 / 30

Page 27: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

Properties of &

S = (&, ●) forms an Monoid with additional properties [Dockinset al. (2009)]:

M1. (τ1 & τ2) & τ3 = τ1 & (τ2 & τ3) (associativity)M2. τ & ● = ● & τ = τ (identity)M3. τ & ○ = ○ & τ = ○ (collapse point)M4. τ1 & (τ2 ◇ τ3) = (τ1 ◇ τ2) & (τ1 ◇ τ3), ◇ ∈ {⊓,⊔,⊕} (distributivity)M5. τ & τ1 = τ & τ2 ⇒ τ ≠ ○⇒ τ1 = τ2 (left cancellation)M6. τ1 & τ = τ2 & τ ⇒ τ ≠ ○⇒ τ1 = τ2 (right cancellation)

11 / 30

Page 28: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Introduction

tree(x , τ)

(● ○ ⊕ ○ ●) ⋅ tree(x , τ)

● ○ ⋅ tree(x , τ) ○ ● ⋅ tree(x , τ)

(● ○ ⊕ ○ ●) ⋅ tree(x , τ)

12 / 30

Page 29: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Outline

1 Introduction

2 Decidability and Complexity resultsModel for Countable Atomless Boolean AlgebraFrom & to string concatenationTree Automatic Structures

3 Conclusion

13 / 30

Page 30: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Tree Shares as Countable Atomless Boolean Algebra

M = (⊔,⊓,2, ●, ○) is Countable Boolean Algebra because thedomain T is countable.

Atomless properties of M:Let τ1 ≠ τ2, we denote τ1 < τ2 iff τ1 ⊔ τ2 = τ2.M is atomless if for τ1 < τ3, there exists τ2 such thatτ1 < τ2 < τ3.Let τ1 =

○ ● ○ and τ3 = ● ○ then τ1 < τ3. We extend τ3

to the shape of τ1:

τ3Ei↦● ● ○

then replace one of the ● leaves of τ3 that is not in τ1 with

● ○:

● ● ○↦● ○ ● ○

14 / 30

Page 31: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Tree Shares as Countable Atomless Boolean Algebra

M = (⊔,⊓,2, ●, ○) is Countable Boolean Algebra because thedomain T is countable.Atomless properties of M:

Let τ1 ≠ τ2, we denote τ1 < τ2 iff τ1 ⊔ τ2 = τ2.

M is atomless if for τ1 < τ3, there exists τ2 such thatτ1 < τ2 < τ3.Let τ1 =

○ ● ○ and τ3 = ● ○ then τ1 < τ3. We extend τ3

to the shape of τ1:

τ3Ei↦● ● ○

then replace one of the ● leaves of τ3 that is not in τ1 with

● ○:

● ● ○↦● ○ ● ○

14 / 30

Page 32: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Tree Shares as Countable Atomless Boolean Algebra

M = (⊔,⊓,2, ●, ○) is Countable Boolean Algebra because thedomain T is countable.Atomless properties of M:

Let τ1 ≠ τ2, we denote τ1 < τ2 iff τ1 ⊔ τ2 = τ2.M is atomless if for τ1 < τ3, there exists τ2 such thatτ1 < τ2 < τ3.

Let τ1 =○ ● ○ and τ3 = ● ○ then τ1 < τ3. We extend τ3

to the shape of τ1:

τ3Ei↦● ● ○

then replace one of the ● leaves of τ3 that is not in τ1 with

● ○:

● ● ○↦● ○ ● ○

14 / 30

Page 33: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Tree Shares as Countable Atomless Boolean Algebra

M = (⊔,⊓,2, ●, ○) is Countable Boolean Algebra because thedomain T is countable.Atomless properties of M:

Let τ1 ≠ τ2, we denote τ1 < τ2 iff τ1 ⊔ τ2 = τ2.M is atomless if for τ1 < τ3, there exists τ2 such thatτ1 < τ2 < τ3.Let τ1 =

○ ● ○ and τ3 = ● ○ then τ1 < τ3. We extend τ3

to the shape of τ1:

τ3Ei↦● ● ○

then replace one of the ● leaves of τ3 that is not in τ1 with

● ○:

● ● ○↦● ○ ● ○

14 / 30

Page 34: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Tree Shares as Countable Atomless Boolean Algebra

M = (⊔,⊓,2, ●, ○) is Countable Boolean Algebra because thedomain T is countable.Atomless properties of M:

Let τ1 ≠ τ2, we denote τ1 < τ2 iff τ1 ⊔ τ2 = τ2.M is atomless if for τ1 < τ3, there exists τ2 such thatτ1 < τ2 < τ3.Let τ1 =

○ ● ○ and τ3 = ● ○ then τ1 < τ3. We extend τ3

to the shape of τ1:

τ3Ei↦● ● ○

then replace one of the ● leaves of τ3 that is not in τ1 with

● ○:

● ● ○↦● ○ ● ○

14 / 30

Page 35: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Model for Countable Atomless Boolean Algebra

Decidability of MThe first-order theory of M is decidable. The lower bound for itscomplexity is ⋃c<ω STA(∗,2cn,n) [Kozen (1980)].

15 / 30

Page 36: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Decidability of &

Decidability of S = (T,&)Let S = (T,&) then:

The existential theory of S is decidable in PSPACE.

The existential theory of S is NP-hard.

The general first-order theory over S is undecidable.

Decidability of S+ = (T/{○},&)Let S+ = (T/{○},&) then:

The existential theory of S+ is decidable in PSPACE.

The existential theory of S+ is NP-hard.

The general first-order theory over S+ is undecidable.

16 / 30

Page 37: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Decidability of &

Decidability of S = (T,&)Let S = (T,&) then:

The existential theory of S is decidable in PSPACE.

The existential theory of S is NP-hard.

The general first-order theory over S is undecidable.

Decidability of S+ = (T/{○},&)Let S+ = (T/{○},&) then:

The existential theory of S+ is decidable in PSPACE.

The existential theory of S+ is NP-hard.

The general first-order theory over S+ is undecidable.

16 / 30

Page 38: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Isomorphism between & and ⋅

To prove these results on S+ = (T/{○},&), we will construct anisomorphism between S+ equations and word equations.

In particular, we will transform & into string concatenation. Thetrick is that we must find an “alphabet” for S+ equations.

17 / 30

Page 39: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Isomorphism between & and ⋅

To prove these results on S+ = (T/{○},&), we will construct anisomorphism between S+ equations and word equations.

In particular, we will transform & into string concatenation. Thetrick is that we must find an “alphabet” for S+ equations.

17 / 30

Page 40: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Review of Word Equations

Let A = {a,b, . . .} be the finite set of alphabet andV = {v1, v2, . . .} the set of variables.

A word w is a string in (A ∪ V)∗. A word equation E is a pairof words w1 = w2.

E has a solution if there exists a homomorphismf ∶ A ∪ V ↦ A∗ that maps each letter in A to itself.

For example, the equation v1v2ab = bav2v1 has a solution:

f (v1) = b, f (v2) = a

The satisfiability problem of word equation: checking whethera word equation E has a solution.

18 / 30

Page 41: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Review of Word Equations

Let A = {a,b, . . .} be the finite set of alphabet andV = {v1, v2, . . .} the set of variables.

A word w is a string in (A ∪ V)∗. A word equation E is a pairof words w1 = w2.

E has a solution if there exists a homomorphismf ∶ A ∪ V ↦ A∗ that maps each letter in A to itself.

For example, the equation v1v2ab = bav2v1 has a solution:

f (v1) = b, f (v2) = a

The satisfiability problem of word equation: checking whethera word equation E has a solution.

18 / 30

Page 42: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Review of Word Equations

Let A = {a,b, . . .} be the finite set of alphabet andV = {v1, v2, . . .} the set of variables.

A word w is a string in (A ∪ V)∗. A word equation E is a pairof words w1 = w2.

E has a solution if there exists a homomorphismf ∶ A ∪ V ↦ A∗ that maps each letter in A to itself.

For example, the equation v1v2ab = bav2v1 has a solution:

f (v1) = b, f (v2) = a

The satisfiability problem of word equation: checking whethera word equation E has a solution.

18 / 30

Page 43: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Review of Word Equations

Let A = {a,b, . . .} be the finite set of alphabet andV = {v1, v2, . . .} the set of variables.

A word w is a string in (A ∪ V)∗. A word equation E is a pairof words w1 = w2.

E has a solution if there exists a homomorphismf ∶ A ∪ V ↦ A∗ that maps each letter in A to itself.

For example, the equation v1v2ab = bav2v1 has a solution:

f (v1) = b, f (v2) = a

The satisfiability problem of word equation: checking whethera word equation E has a solution.

18 / 30

Page 44: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Review of Word Equations

Let A = {a,b, . . .} be the finite set of alphabet andV = {v1, v2, . . .} the set of variables.

A word w is a string in (A ∪ V)∗. A word equation E is a pairof words w1 = w2.

E has a solution if there exists a homomorphismf ∶ A ∪ V ↦ A∗ that maps each letter in A to itself.

For example, the equation v1v2ab = bav2v1 has a solution:

f (v1) = b, f (v2) = a

The satisfiability problem of word equation: checking whethera word equation E has a solution.

18 / 30

Page 45: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Word Equation Results

Decidability and Complexity of Word Equation

The satisfiability problem of word equation is decidable. Thelower bound is NP-complete while the upper bound isPSPACE [Plandowski (1999)].

The satisfiability of a system of word equations with regularconstraints vi ∈ REGi can be reduced to the satisfiability of asingle word equation [Schulz (1990)].

The existential theory of string concatenation is decidablewith lower bound NP-complete and upper bound PSPACE.The first-order theory of string concatenation is undecidable(forklore).

19 / 30

Page 46: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Word Equation Results

Decidability and Complexity of Word Equation

The satisfiability problem of word equation is decidable. Thelower bound is NP-complete while the upper bound isPSPACE [Plandowski (1999)].

The satisfiability of a system of word equations with regularconstraints vi ∈ REGi can be reduced to the satisfiability of asingle word equation [Schulz (1990)].

The existential theory of string concatenation is decidablewith lower bound NP-complete and upper bound PSPACE.The first-order theory of string concatenation is undecidable(forklore).

19 / 30

Page 47: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Word Equation Results

Decidability and Complexity of Word Equation

The satisfiability problem of word equation is decidable. Thelower bound is NP-complete while the upper bound isPSPACE [Plandowski (1999)].

The satisfiability of a system of word equations with regularconstraints vi ∈ REGi can be reduced to the satisfiability of asingle word equation [Schulz (1990)].

The existential theory of string concatenation is decidablewith lower bound NP-complete and upper bound PSPACE.The first-order theory of string concatenation is undecidable(forklore).

19 / 30

Page 48: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization

Prime trees

A tree τ ∈ T/{●, ○} is prime iff τ = τ1 & τ2 then either τ1 = ● orτ2 = ●.

A tree share τ can be factorized into prime trees using &:

○○ ● ○ ● ○

= ○ ● &○ ● ○ ● ○

= ○ ● & ○ ● ● & ● ○

20 / 30

Page 49: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization

Prime trees

A tree τ ∈ T/{●, ○} is prime iff τ = τ1 & τ2 then either τ1 = ● orτ2 = ●.

A tree share τ can be factorized into prime trees using &:

○○ ● ○ ● ○

= ○ ● &○ ● ○ ● ○

= ○ ● & ○ ● ● & ● ○

20 / 30

Page 50: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization

Prime trees

A tree τ ∈ T/{●, ○} is prime iff τ = τ1 & τ2 then either τ1 = ● orτ2 = ●.

A tree share τ can be factorized into prime trees using &:

○○ ● ○ ● ○

= ○ ● &○ ● ○ ● ○

= ○ ● & ○ ● ● & ● ○

20 / 30

Page 51: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization

Prime trees

A tree τ ∈ T/{●, ○} is prime iff τ = τ1 & τ2 then either τ1 = ● orτ2 = ●.

A tree share τ can be factorized into prime trees using &:

○○ ● ○ ● ○

= ○ ● &○ ● ○ ● ○

= ○ ● & ○ ● ● & ● ○

20 / 30

Page 52: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization

Prime trees

A tree τ ∈ T/{●, ○} is prime iff τ = τ1 & τ2 then either τ1 = ● orτ2 = ●.

A tree share τ can be factorized into prime trees using &:

○○ ● ○ ● ○

= ○ ● &○ ● ○ ● ○

= ○ ● & ○ ● ● & ● ○

20 / 30

Page 53: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Tree factorization(cont.)

Unique factorization

Let τ ∈ T/{○, ●} then there exists a unique sequence of prime treesτ1, . . . , τn such that:

τ = τ1 & . . . & τnFurthermore, the factorization problem is in PTIME.

Proof sketch: By induction on the structure of the tree.

21 / 30

Page 54: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Infinite alphabet

Let Tp ⊂ T be the set of prime trees then Tp is countablyinfinite.

Tp is our alphabet for the word equation but we need toreduce it to finite alphabet.

22 / 30

Page 55: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Infinite alphabet

Let Tp ⊂ T be the set of prime trees then Tp is countablyinfinite.

Tp is our alphabet for the word equation but we need toreduce it to finite alphabet.

22 / 30

Page 56: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Infinite alphabet(cont.)

From infinity to finite

Let Σ be the set of word equations and inequations over infinitealphabet A then Σ has a solution iff it has a solution over somefinite alphabet B ⊂ A such that:

1 A(Σ) ⊂ B2 ∣B∣ = ∣A(Σ)∣ + n where n is the number of inequations in Σ.

The choice of the extra letters in B is not important.

23 / 30

Page 57: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Example

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

v1 & v2 & ● ○ & ○ ● = ○ ● & ● ○ & v2 & v1

v1v2ab = bav2v1 solution: v1 = b, v2 = a

○ ● & ● ○ & ● ○ & ○ ● = ○ ● & ● ○ & ● ○ & ○ ●

24 / 30

Page 58: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Example

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

v1 & v2 & ● ○ & ○ ● = ○ ● & ● ○ & v2 & v1

v1v2ab = bav2v1 solution: v1 = b, v2 = a

○ ● & ● ○ & ● ○ & ○ ● = ○ ● & ● ○ & ● ○ & ○ ●

24 / 30

Page 59: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Example

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

v1 & v2 & ● ○ & ○ ● = ○ ● & ● ○ & v2 & v1

v1v2ab = bav2v1

solution: v1 = b, v2 = a

○ ● & ● ○ & ● ○ & ○ ● = ○ ● & ● ○ & ● ○ & ○ ●

24 / 30

Page 60: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Example

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

v1 & v2 & ● ○ & ○ ● = ○ ● & ● ○ & v2 & v1

v1v2ab = bav2v1 solution: v1 = b, v2 = a

○ ● & ● ○ & ● ○ & ○ ● = ○ ● & ● ○ & ● ○ & ○ ●

24 / 30

Page 61: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Example

v1 & v2 &○ ● ○ = ○ ● ○

& v2 & v1

v1 & v2 & ● ○ & ○ ● = ○ ● & ● ○ & v2 & v1

v1v2ab = bav2v1 solution: v1 = b, v2 = a

○ ● & ● ○ & ● ○ & ○ ● = ○ ● & ● ○ & ● ○ & ○ ●

24 / 30

Page 62: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

From & to string concatenation

Find a decidable fragment for &

Since the first-order theory of S = (T,&) is undecidable, we wantto find a decidable fragment of & together with (⊔,⊓, 2).

25 / 30

Page 63: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Tree Automatic Structures

Connection to Tree Automatic Structures

Let &τ be the unary function over trees such that

&τ(τ ′) = τ ′ & τ

Example:&○ ●

(● ● ○) = ● ● ○

& ○ ● =○ ● ○ ● ○

Tree automatic structure

Let T = (T,⊔,⊓, 2,&τ) then T is tree automatic, i.e., its domainand relations are recognized by tree automata. Consequently, thefirst-order theory of T is decidable [Blumensath (1999);Blumensath and Gradel (2004)].

26 / 30

Page 64: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Tree Automatic Structures

Connection to Tree Automatic Structures

Let &τ be the unary function over trees such that

&τ(τ ′) = τ ′ & τExample:

&○ ●

(● ● ○) = ● ● ○

& ○ ● =○ ● ○ ● ○

Tree automatic structure

Let T = (T,⊔,⊓, 2,&τ) then T is tree automatic, i.e., its domainand relations are recognized by tree automata. Consequently, thefirst-order theory of T is decidable [Blumensath (1999);Blumensath and Gradel (2004)].

26 / 30

Page 65: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Decidability and Complexity results

Tree Automatic Structures

Connection to Tree Automatic Structures

Let &τ be the unary function over trees such that

&τ(τ ′) = τ ′ & τExample:

&○ ●

(● ● ○) = ● ● ○

& ○ ● =○ ● ○ ● ○

Tree automatic structure

Let T = (T,⊔,⊓, 2,&τ) then T is tree automatic, i.e., its domainand relations are recognized by tree automata. Consequently, thefirst-order theory of T is decidable [Blumensath (1999);Blumensath and Gradel (2004)].

26 / 30

Page 66: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Outline

1 Introduction

2 Decidability and Complexity resultsModel for Countable Atomless Boolean AlgebraFrom & to string concatenationTree Automatic Structures

3 Conclusion

27 / 30

Page 67: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Contributions

We show that M = (⊔,⊓,2, ●, ○) forms a Countably AtomlessBoolean Algebra.

We reduce & to string concatenation.

We show T = (T,⊔,⊓, 2,&τ) is tree-automatic.

28 / 30

Page 68: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Future Work

Complexity of (T,⊓,⊔) (∃-theory and first-order theory).

Decidability of (T,⊓,⊔,&) (∃-theory).

Complexity of T = (T,⊔,⊓, 2,&τ) (∃-theory and first-ordertheory).

Extension of word equation to tree equation.

Thank you! ,

29 / 30

Page 69: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Proof sketch:

Let f be a solution of Σ. For each inequation w1 ≠ w2 to hold,it suffices to have a single position where they differs.

Therefore, there is at most one letter ai /∈ A(Σ) in eachinequation that we need to preserve.

For other letters bi /∈ A(Σ), we simply replace them with aletter in A(Σ).As a result, the new solution satisfies the alphabet constraint.

30 / 30

Page 70: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Proof sketch:

Let f be a solution of Σ. For each inequation w1 ≠ w2 to hold,it suffices to have a single position where they differs.

Therefore, there is at most one letter ai /∈ A(Σ) in eachinequation that we need to preserve.

For other letters bi /∈ A(Σ), we simply replace them with aletter in A(Σ).As a result, the new solution satisfies the alphabet constraint.

30 / 30

Page 71: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Proof sketch:

Let f be a solution of Σ. For each inequation w1 ≠ w2 to hold,it suffices to have a single position where they differs.

Therefore, there is at most one letter ai /∈ A(Σ) in eachinequation that we need to preserve.

For other letters bi /∈ A(Σ), we simply replace them with aletter in A(Σ).

As a result, the new solution satisfies the alphabet constraint.

30 / 30

Page 72: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Proof sketch:

Let f be a solution of Σ. For each inequation w1 ≠ w2 to hold,it suffices to have a single position where they differs.

Therefore, there is at most one letter ai /∈ A(Σ) in eachinequation that we need to preserve.

For other letters bi /∈ A(Σ), we simply replace them with aletter in A(Σ).As a result, the new solution satisfies the alphabet constraint.

30 / 30

Page 73: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

References

A. Blumensath. Automatic Structures. PhD thesis, RWTHAachen, 1999.

A. Blumensath and E. Gradel. Finite presentations of infinitestructures: automata and interpretations. In Theory ofComputer Systems, pages 641–674, 2004.

John Boyland. Checking interference with fractional permissions.In Static Analysis, 10th International Symposium, SAS 2003,San Diego, CA, USA, June 11-13, 2003, Proceedings, pages55–72, 2003. doi: 10.1007/3-540-44898-5 4. URLhttp://dx.doi.org/10.1007/3-540-44898-5_4.

Robert Dockins, Aquinas Hobor, and Andrew W. Appel. A freshlook at separation algebras and share accounting. InProgramming Languages and Systems, 7th Asian Symposium,APLAS 2009, Seoul, Korea, December 14-16, 2009. Proceedings,pages 161–177, 2009. doi: 10.1007/978-3-642-10672-9 13.URL http://dx.doi.org/10.1007/978-3-642-10672-9_13.

30 / 30

Page 74: Decidability and Complexity of Tree Share Formulashobor/Publications/2016/...Decidability and Complexity of Tree Share Formulas Introduction Shares Shares are embedded into separation

Decidability and Complexity of Tree Share Formulas

Conclusion

Dexter Kozen. Complexity of boolean algebras. In TheoreticalComputer Science 10, pages 221–247, 1980.

Matthew Parkinson. Local Reasoning for Java. PhD thesis,University of Cambridge, 2005.

Wojciech Plandowski. Satisfiability of word equations withconstants is in PSPACE. In 40th Annual Symposium onFoundations of Computer Science, FOCS ’99, 17-18 October,1999, New York, NY, USA, pages 495–500, 1999. doi:10.1109/SFFCS.1999.814622. URLhttp://dx.doi.org/10.1109/SFFCS.1999.814622.

Klaus U. Schulz. Makanin’s algorithm for word equations - twoimprovements and a generalization. In Word Equations andRelated Topics, First International Workshop, IWWERT ’90,Tubingen, Germany, October 1-3, 1990, Proceedings, pages85–150, 1990. doi: 10.1007/3-540-55124-7 4. URLhttp://dx.doi.org/10.1007/3-540-55124-7_4.

30 / 30