Positive TAGED with a Bounded Number of Constraints P.-C. Ham, - - PowerPoint PPT Presentation

positive taged
SMART_READER_LITE
LIVE PREVIEW

Positive TAGED with a Bounded Number of Constraints P.-C. Ham, - - PowerPoint PPT Presentation

On Positive TAGED with a Bounded Number of Constraints P.-C. Ham, Vincent Hugot, O. Kouchnarenko {pheam,vhugot,okouchna}@femto-st.fr University of Franche-Comt DGA & INRIA/CASSIS & FEMTO-ST (DISC) July 2, 2013 Introduction


slide-1
SLIDE 1

On

Positive TAGED

with a

Bounded Number of Constraints

P.-C. Héam, Vincent Hugot, O. Kouchnarenko

{pheam,vhugot,okouchna}@femto-st.fr

University of Franche-Comté DGA & INRIA/CASSIS & FEMTO-ST (DISC)

July 2, 2013

slide-2
SLIDE 2

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 2/27

slide-3
SLIDE 3

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 2/27

slide-4
SLIDE 4

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

[Comon et al., 2008a]

Introduced in the fifties; regular tree languages: model-checking: programs, protocols,. . . automated theorem-proving XML schema and (esp. variants) query languages . . . and so much more Doesn’t deal with comparisons and non-linearity: { f(u, u) | u ∈ T(Σ) } e.g. password verification { f(u, v) | u, v ∈ T(Σ), u = v } e.g. primary keys R(ℓ), ℓ regular, R a TRS e.g. { g(x) → f(x, x) }(T(A))

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 3/27

slide-5
SLIDE 5

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

Bottom-Up, Non-Deterministic, Finite

Tree Automaton A = A, Q, F, ∆ :

A

finite ranked alphabet Q finite set of states F final states, F ⊆ Q ∆ finite set of transitions Transition r ∈ ∆ : σ(q1, . . . , qn) → q σ ∈ An q1, . . . , qn, q ∈ Q

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 4/27

slide-6
SLIDE 6

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

Bottom-Up, Non-Deterministic, Finite

A = { ∧, ∨/2, ¬/1, ⊤, ⊥/0 }, Q = { q0, q1 }, F = {q1}, ∆ =

⊤ → q1, ⊥ → q0, ¬(qb) → q¬b ∧(qb, qb′) → qb∧b′, ∨(qb, qb′) → qb∨b′

  • b, b′ ∈ { 0, 1 }
  • t =

∧ ∨ ¬ ⊥ ⊥ ¬ ∧ ⊤ ⊥

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 5/27

slide-7
SLIDE 7

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

Bottom-Up, Non-Deterministic, Finite

∧ ∨ ¬ ⊥ ⊥ ¬ ∧ ⊤ ⊥ →∗

∧ ∨ ¬ q0 q0 ¬ ∧ q1 q0 →∗

∧ ∨ q1 q0 ¬ q0 →∗

∧ q1 q1 →∆ q1

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 5/27

slide-8
SLIDE 8

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

Runs and Languages

The reduction t →∗

∆ q1 is captured by the run:

q1 q1 q1 q0 q0 q1 q0 q1 q0 decorated:

ε ∧ q1 2 ∨ q1 22 ¬ q1 221 ⊥ q0 21 ⊥ q0 1 ¬ q1 11 ∧ q0 112 ⊤ q1 111 ⊥ q0

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 6/27

slide-9
SLIDE 9

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

TAGE, TA=, Positive TAGED, A = A, Q, F, ∆, ≅ : A, Q, F, ∆ vanilla tree automaton ta(A) ≅ equality constraints, ≅ ⊆ Q2 Constraint p ≅ q : run ρ of A on t: run of ta(A) on t satisfying ≅: ∀α, β ∈ P(t); ρ(α) ≅ ρ(β) ⇒ t|α = t|β accepting run: accepting for ta(A)

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 7/27

slide-10
SLIDE 10

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

A = { a/0, f/2 }, Q = { q, ^

q, qf }, F = { qf }, ^ q ≅ ^ q, and ∆ = { f(^ q, ^ q) → qf, f(q, q) → q, f(q, q) → ^ q, a → q, a → ^ q } u = f f a a f a a and v = f a f a a

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 8/27

slide-11
SLIDE 11

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

A = { a/0, f/2 }, Q = { q, ^

q, qf }, F = { qf }, ^ q ≅ ^ q, and ∆ = { f(^ q, ^ q) → qf, f(q, q) → q, f(q, q) → ^ q, a → q, a → ^ q } u, ρu = f qf f ^ q a q a q f ^ q a q a q and v = f a f a a

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 8/27

slide-12
SLIDE 12

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

A = { a/0, f/2 }, Q = { q, ^

q, qf }, F = { qf }, ^ q ≅ ^ q, and ∆ = { f(^ q, ^ q) → qf, f(q, q) → q, f(q, q) → ^ q, a → q, a → ^ q } u = f f a a f a a and v, ρv = f qf a ^ q f ^ q a q a q

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 8/27

slide-13
SLIDE 13

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

A = { ∧, ∨/2, ¬/1, ⊤, ⊥/0 } ⊎ X, Q = { q0, q1 } ⊎ { vx | x ∈ X } and

F = {q1}, new rules ⊤ → vx, ⊥ → vx, x(q0, vx) → q1, x(vx, q1) → q0 for each x ∈ X, vx ≅ vx. (x ∧ y) ∨ ¬x ≡ ∨ ¬ x ⊤ ⊥ ∧ y ⊤ ⊥ x ⊤ ⊥

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 9/27

slide-14
SLIDE 14

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata

With Global Equality Constraints [Filiot et al., 2008]

A = { ∧, ∨/2, ¬/1, ⊤, ⊥/0 } ⊎ X, Q = { q0, q1 } ⊎ { vx | x ∈ X } and

F = {q1}, new rules ⊤ → vx, ⊥ → vx, x(q0, vx) → q1, x(vx, q1) → q0 for each x ∈ X, vx ≅ vx. (x ∧ y) ∨ ¬x ≡ ∨ q1 ¬ q1 x q0 ⊤ q1 ⊥ vx ∧ q0 y q1 ⊤ vy ⊥ q0 x q0 ⊤ q1 ⊥ vx

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 9/27

slide-15
SLIDE 15

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

TA versus RTA versus TA=

Closure, Complexity and Decidability

TA RTA (p ≅ p) TA= ∪ PTime PTime PTime ∩ PTime ExpTime ExpTime ¬ ExpTime ∅ ∅ t ∈ L(A) ? PTime NP-c NP-c (a) L(A) = ∅ ? linear-time linear-time ExpTime-c |L(A)| ∈ N ? PTime PTime ExpTime-c L(A) = T(Σ) ? ExpTime-c undecidable undecidable L(A) ⊆ L(B) ? ExpTime-c undecidable undecidable L(

i Ai) = ∅ ?

ExpTime-c ExpTime-c ExpTime-c

(a)SAT solver approach: [Héam et al., 2010]. TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 10/27

slide-16
SLIDE 16

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

TA versus RTA versus TA=

Closure, Complexity and Decidability

TA RTA (p ≅ p) TA= ∪ PTime PTime PTime ∩ PTime ExpTime ExpTime ¬ ExpTime ∅ ∅ t ∈ L(A) ? PTime NP-c NP-c (a) L(A) = ∅ ? linear-time linear-time ExpTime-c |L(A)| ∈ N ? PTime PTime ExpTime-c L(A) = T(Σ) ? ExpTime-c undecidable undecidable L(A) ⊆ L(B) ? ExpTime-c undecidable undecidable L(

i Ai) = ∅ ?

ExpTime-c ExpTime-c ExpTime-c

(a)SAT solver approach: [Héam et al., 2010]. TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 10/27

slide-17
SLIDE 17

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

TA= versus TA=

k

Restriction on the kind of constraints ⇒ lower complexity (RTA) Restriction on the number of constraints ⇒ ? TA=

k A = Σ, Q, F, ∆, ≅ :

Σ, Q, F, ∆, ≅ TA= A ≅ such that Card(≅) k

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 11/27

slide-18
SLIDE 18

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

TA= versus TA=

k

Restriction on the kind of constraints ⇒ lower complexity (RTA) Restriction on the number of constraints ⇒ ? TA=

k A = Σ, Q, F, ∆, ≅ :

Σ, Q, F, ∆, ≅ TA= A ≅ such that Card(≅) k Expressive power? TA = TA=

0 ⊂ TA= 1 ⊂ · · · ⊂ TA= k ⊂ TA= k+1 ⊂ · · · ⊂ TA= =

  • k∈N

TA=

k

so ∀k 0, L(TA=

k) ⊆ L

  • TA=

k+1

  • . Are the inclusions strict? Up

to some rank? Is there a k ∈ N such that L(TA=

k) = L(TA=)?

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 11/27

slide-19
SLIDE 19

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 11/27

slide-20
SLIDE 20

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

The Separation Languages L = (ℓk)k∈N [Hugot, 2013]

k

  • i=1

Ai ⊎ { σ/3, ⊥/0 } Ai = { ai, bi/0, fi, gi/2 }

ℓ0 = {⊥} ∀k 1, ℓk = { σ(u, u, tk−1) | u ∈ T(Ak), tk−1 ∈ ℓk−1 } σ σ σ ⊥ , u1 u1 uk−1 uk−1 uk uk ui ∈ T(Ai) ∀i

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 12/27

slide-21
SLIDE 21

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

The Separation Languages L = (ℓk)k∈N [Hugot, 2013]

σ σ σ ⊥ , u1 u1 uk−1 uk−1 uk uk ui ∈ T(Ai) ∀i ℓ1 ∈ L(TA=

1 ) \ L(TA)

≈ ground instances of f(x, x). ℓk ∈ L(TA=

k) \ L(TA= k−1),

∀k 1.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 12/27

slide-22
SLIDE 22

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk ∈ L(TA=

k): Ak ∈ TA= k such that L(Ak) = ℓk

Ui ∈ TA universal, Ui :F =

  • qu

i

  • , for all i. Ak is

Q = {qv

0} ⊎ k

  • i=1

Ui :Q ⊎ {qv

i}

F = {qv

1}

qu

i ≅ qu i, ∀i ∈ 1, k

∆ =

  • σ(qu

i, qu i, qv i−1) → qv i

  • i ∈ 1, k
  • ∪ { ⊥ → qv

0 } .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-23
SLIDE 23

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

active constrained states: acs ρ = { ρ(α) | α ∈ P(ρ), ∃β ∈ P(ρ) \ {α} : ρ(α) ≅ ρ(β) }

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-24
SLIDE 24

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-25
SLIDE 25

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β)

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-26
SLIDE 26

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-27
SLIDE 27

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

Suppose ∃α ∈ 3∗(1 + 2) such that ran ρ|α ∩ acs ρ = ∅. A acts as BUTA wrt. t|α; pump ρ|α, get t′ / ∈ ℓk, but t′ ∈ L(A).

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-28
SLIDE 28

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

∀α ∈ 3∗(1 + 2), ran ρ|α ∩ acs ρ = ∅

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-29
SLIDE 29

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

∀α ∈ 3∗(1 + 2), ran ρ|α ∩ acs ρ = ∅ i = j, pi acs for ui, pj for uj. ∃ acs qi, qj : pi ≅ qi, pj ≅ qj. Suppose qi in subrun of uj. Then ∃si ui, sj uj, si = sj. But ui ∈ T(Ai) and uj ∈ T(Aj), thus si ∈ T(Ai) and sj ∈ T(Aj). T(Ai) ∩ T(Aj) = ∅, thus si = sj ∈ ∅.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-30
SLIDE 30

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

∀α ∈ 3∗(1 + 2), ran ρ|α ∩ acs ρ = ∅ Each pair of ui needs its own fresh state(s) pi ≅ qi

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-31
SLIDE 31

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Expressive Power

Show ℓk ∈ L(TA=

k) \ L(TA= k−1) [Hugot, 2013]

Show ℓk / ∈ L(TA=

k−1):

Assume ℓk ∈ L(TA=

k−1) i.e. ∃A ∈ TA= k−1 : L(A) = ℓk

∀ρ, ∄α, β : α = β, α ∈ 3∗, ρ(α) ≅ ρ(β) Pick t ∈ ℓk such that

  • t|α
  • > |Q|, for all α ∈ 3∗(1 + 2)

∀α ∈ 3∗(1 + 2), ran ρ|α ∩ acs ρ = ∅ Each pair of ui needs its own fresh state(s) pi ≅ qi A does not exist, contradiction.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-32
SLIDE 32

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 13/27

slide-33
SLIDE 33

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

The Membership Problem

General Idea & Strategy

Membership complexity : t ∈ L(A) ? NP-complete for TA= PTime for TA=

k, ∀k ∈ N

Proof Strategy : Choose each P ⊆ dom ≅ = { p | ∃q : p ≅ q or q ≅ p } Given P, turn ≅ into an equivalence relation ≍P Try all possible “housings” of the ≅-classes into t For each housing, try to build an accepting run

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 14/27

slide-34
SLIDE 34

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

≅ is Not an Equivalence

(but we can pretend it is)

Example: Given p ≅ r and r ≅ q, what of p ≅ q ? Does r actually appear in the run ? yes : p ≅ q implied no : p ≅ r and r ≅ q are moot. Fix P ⊆ dom ≅. Any run ρ such that (ran ρ) ∩ (dom ≅) = P is accepting for A iff it is so for AP = A | ≅ :=

  • ≅ ∩P2≡ ,

symmetric, transitive, reflexive closure under dom(≅ ∩P2).

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 15/27

slide-35
SLIDE 35

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Groups & Similarity Classes

Groups GP : set of ≅-equivalence classes (given P)

GP = dom(≅ ∩P2)

(≅ ∩P2)≡ = dom(≅ ∩P2) ≍P Similarity Classes St of t : ∀α, β ∈ P(t); α ∼ β ⇐ ⇒ t|α = t|β classes St = P(t)/∼

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 16/27

slide-36
SLIDE 36

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Housings

And Their Compatibility with the Constraints

Characterisation of Satisfaction of ≅ : ∀G ∈ GP; ∃CG ∈ St : ρ−1(G) ⊆ CG Housings Ht

P of P within t :

The map G → CG is a P-housing of ρ in t, compatible with ρ

Ht

P = GP → St

is the set of all possible P-housings on t.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 17/27

slide-37
SLIDE 37

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

GP St

← − h ∈ Ht

P −

→ G1 = { p, q } G2 = { r, s, t } G3 = {qx} Gn . . . CG1 CG2 CG1 CGn

  • CG3
  • • • •
  • • • •

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 18/27

slide-38
SLIDE 38

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Proof Outline

For TA=

k

Operations Needed : Choose P: 22k possible P ⊆ dom ≅ Choose housing:

  • StGP

= |St||GP| t2k P-housings on t ⇒ 4k · t2k tests in total polynomial compatibility test = variant of reachability Is a final state reachable if states q ∈ P can only go in h([q]≍P)?

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 19/27

slide-39
SLIDE 39

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Compatibility Test

In Polynomial Time

Simple variant of reachability algorithm: Given P and h ∈ Ht

P, there exists a compatible run iff

ΦP,h

t

(ε) ∩ F = ∅ , where ΦP,h

t

(α) =        q ∈ Q

  • t(α)(p1, . . . , pn) → q ∈ ∆

∀i ∈ 1, n, pi ∈ ΦP,h

t

(α.i) q ∈

GP =

⇒ α ∈ h([q]≍P) q / ∈ dom(≅) \ P        .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-40
SLIDE 40

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Compatibility Test

In Polynomial Time

Simple variant of reachability algorithm: Given P and h ∈ Ht

P, there exists a compatible run iff

ΦP,h

t

(ε) ∩ F = ∅ , where ΦP,h

t

(α) =        q ∈ Q

  • t(α)(p1, . . . , pn) → q ∈ ∆

∀i ∈ 1, n, pi ∈ ΦP,h

t

(α.i) q ∈

GP =

⇒ α ∈ h([q]≍P) q / ∈ dom(≅) \ P        .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-41
SLIDE 41

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Compatibility Test

In Polynomial Time

Simple variant of reachability algorithm: Given P and h ∈ Ht

P, there exists a compatible run iff

ΦP,h

t

(ε) ∩ F = ∅ , where ΦP,h

t

(α) =        q ∈ Q

  • t(α)(p1, . . . , pn) → q ∈ ∆

∀i ∈ 1, n, pi ∈ ΦP,h

t

(α.i) q ∈

GP =

⇒ α ∈ h([q]≍P) q / ∈ dom(≅) \ P        .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-42
SLIDE 42

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Compatibility Test

In Polynomial Time

Simple variant of reachability algorithm: Given P and h ∈ Ht

P, there exists a compatible run iff

ΦP,h

t

(ε) ∩ F = ∅ , where ΦP,h

t

(α) =        q ∈ Q

  • t(α)(p1, . . . , pn) → q ∈ ∆

∀i ∈ 1, n, pi ∈ ΦP,h

t

(α.i) q ∈

GP =

⇒ α ∈ h([q]≍P) q / ∈ dom(≅) \ P        .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-43
SLIDE 43

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Compatibility Test

In Polynomial Time

Simple variant of reachability algorithm: Given P and h ∈ Ht

P, there exists a compatible run iff

ΦP,h

t

(ε) ∩ F = ∅ , where ΦP,h

t

(α) =        q ∈ Q

  • t(α)(p1, . . . , pn) → q ∈ ∆

∀i ∈ 1, n, pi ∈ ΦP,h

t

(α.i) q ∈

GP =

⇒ α ∈ h([q]≍P) q / ∈ dom(≅) \ P        .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-44
SLIDE 44

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 20/27

slide-45
SLIDE 45

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Rigidification

Problem : Given TA= A, build equivalent RTA B.

General Result [Filiot, 2008, Lem. 5.3.5] Exponential construction: B O(2A2) In the case of TA=

1 :

Polynomial construction: B O(A2) Idea : Simulate a constraint p ≅ q, p = q by a TA intersection

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 21/27

slide-46
SLIDE 46

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Rigidification: Construction

B = B¬

p ⊎ B¬ q ⊎ A | Q′, ∆′, qf ≅ qf

p = A | Q \ {p}

q = A | Q \ {q}

Q′ = (Q \ {p, q}) ⊎ (Bpq :Q) ∆′ = ∆qf

pq ⊎ (Bpq :∆)

Bpq = Bp Bq qf = (p, q) Bp = B¬

q | F := {p}, ∆ := ∆p

Bq = B¬

p | F := {q}, ∆ := ∆q

∆p = B¬

q :∆ \ { . . . p . . . → . . . }

∆q = B¬

p :∆ \ { . . . q . . . → . . . }

∆qf

pq is A:∆ from which all left-hand side occurrences of p or q

have been replaced by qf.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 22/27

slide-47
SLIDE 47

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 22/27

slide-48
SLIDE 48

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Emptiness

Outline of the Result and Proof

Complexity of Emptiness : L(A) = ∅ ? PTime (quadratic) for TA=

1

ExpTime-complete for TA=

k, k 2

TA=

1 : immediate by rigidification. Emptiness for RTA: linear time

TA=

2 : Reduction of intersection-emptiness of n TA A1, . . . , An.

Generalisation of the usual argument [Filiot et al., 2008, Thm. 1] from “unlimited constraints” to “two constraints”

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 23/27

slide-49
SLIDE 49

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

L = ∅ ⇐ ⇒

n

  • i=1

L(Ai) = ∅ σ σ u1 σ u2 σ u3 . . . σ un−1 un σ u σ u σ u . . . σ u u

Figure: Reduction of intersection-emptiness: the language.

where ∀i, xi ∈ L(Ai) and x = xi

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 24/27

slide-50
SLIDE 50

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 24/27

slide-51
SLIDE 51

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Finiteness

Outline of the Result and Proof

Complexity of Finiteness : |L(A)| ∈ N ? PTime for TA=

1

ExpTime-complete for TA=

k, k 2

TA=

1 : immediate by rigidification. Finiteness for RTA is PTime

TA=

2 : Reduction of Emptiness for TA= 2 .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 25/27

slide-52
SLIDE 52

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Finiteness

Outline of the Result and Proof

A′ = A | Q ⊎ {p}, F := {p}, Σ ⊎ {σ/1}, ∆′ where ∆′ = ∆ ∪ { σ(qf) → p | qf ∈ F } ∪ { σ(p) → p } if L(A) = ∅ then L(A′) = ∅ if t ∈ L(A) then σ+(t) ⊆ L(A′) L(A′) is finite ⇐ ⇒ L(A) is empty

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 26/27

slide-53
SLIDE 53

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

1

Introduction & Preliminaries

2

Effects on Expressive Power

3

The Membership Decision Problem

4

Rigidification of One Constraint

5

The Emptiness Decision Problem

6

The Finiteness Decision Problem

7

Conclusions & Future Works

8

Appendix: Taxonomy of Constraints

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 26/27

slide-54
SLIDE 54

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Summary

and Perspectives

Refined complexity and expressiveness results: Expressiveness: TA=

k form a strict hierarchy

Membership: NP-c for TA=, but PTime for TA=

k, ∀k

Emptiness: quadratic for TA=

1 , ExpTime-complete for TA= 2

Finiteness: PTime for TA=

1 , ExpTime-complete for TA= 2

Left to do: Effects of ≅, flat constraints, efficient heuristics, etcetera.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 27/27

slide-55
SLIDE 55

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Positional constraints: TALEDC [Mongy, 1981]: local equality and disequality

  • constraints. f(q1, q2, q3)[13 ≅ 2, 12 ≅ 13] → q.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-56
SLIDE 56

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Positional constraints: TALEDC [Mongy, 1981]: local equality and disequality

  • constraints. f(q1, q2, q3)[13 ≅ 2, 12 ≅ 13] → q.

TAPLEDC [Comon et al., 2008a, Chap. 4, as AWEDC]: propositional extension. C := β ≅ γ | β ≅ γ | C ∧ C | ¬C.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-57
SLIDE 57

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Positional constraints: TALEDC [Mongy, 1981]: local equality and disequality

  • constraints. f(q1, q2, q3)[13 ≅ 2, 12 ≅ 13] → q.

TAPLEDC [Comon et al., 2008a, Chap. 4, as AWEDC]: propositional extension. C := β ≅ γ | β ≅ γ | C ∧ C | ¬C. TABB [Bogaert and Tison, 1992]: restriction to constraints between brothers: β{ ≅, ≅ }γ such that |β| = |γ| = 1.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-58
SLIDE 58

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Positional constraints: TALEDC [Mongy, 1981]: local equality and disequality

  • constraints. f(q1, q2, q3)[13 ≅ 2, 12 ≅ 13] → q.

TAPLEDC [Comon et al., 2008a, Chap. 4, as AWEDC]: propositional extension. C := β ≅ γ | β ≅ γ | C ∧ C | ¬C. TABB [Bogaert and Tison, 1992]: restriction to constraints between brothers: β{ ≅, ≅ }γ such that |β| = |γ| = 1. RA [Dauchet et al., 1995]: bounds equality constraints along any leaf-to-root path of execution.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-59
SLIDE 59

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Positional constraints: TALEDC [Mongy, 1981]: local equality and disequality

  • constraints. f(q1, q2, q3)[13 ≅ 2, 12 ≅ 13] → q.

TAPLEDC [Comon et al., 2008a, Chap. 4, as AWEDC]: propositional extension. C := β ≅ γ | β ≅ γ | C ∧ C | ¬C. TABB [Bogaert and Tison, 1992]: restriction to constraints between brothers: β{ ≅, ≅ }γ such that |β| = |γ| = 1. RA [Dauchet et al., 1995]: bounds equality constraints along any leaf-to-root path of execution. GRA [Caron et al., 1994]: relaxes RA, but only where constraints between brothers are involved.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-60
SLIDE 60

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Global constraints: TAGED [Filiot et al., 2008, Filiot et al., 2010, Filiot, 2008].

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-61
SLIDE 61

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Global constraints: TAGED [Filiot et al., 2008, Filiot et al., 2010, Filiot, 2008]. RTA [Jacquemard et al., 2009, Jacquemard et al., 2011, Vacher, 2010]: rigid states q ≅ q.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-62
SLIDE 62

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Global constraints: TAGED [Filiot et al., 2008, Filiot et al., 2010, Filiot, 2008]. RTA [Jacquemard et al., 2009, Jacquemard et al., 2011, Vacher, 2010]: rigid states q ≅ q. Parick+E, NParick+EDB [Barguñó et al., 2010]:

  • q∈Q

aq|q| b

  • r
  • q∈Q

aqq b with aq, b ∈ Z, ∀q ∈ Q .

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-63
SLIDE 63

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Global constraints: TAGED [Filiot et al., 2008, Filiot et al., 2010, Filiot, 2008]. RTA [Jacquemard et al., 2009, Jacquemard et al., 2011, Vacher, 2010]: rigid states q ≅ q. Parick+E, NParick+EDB [Barguñó et al., 2010]:

  • q∈Q

aq|q| b

  • r
  • q∈Q

aqq b with aq, b ∈ Z, ∀q ∈ Q . DAGA [Charatonik, 1999]: equivalent to TAGD.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-64
SLIDE 64

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

Tree Automata With Constraints

Brief survey: [Hugot, 2013]

Global constraints: TAGED [Filiot et al., 2008, Filiot et al., 2010, Filiot, 2008]. RTA [Jacquemard et al., 2009, Jacquemard et al., 2011, Vacher, 2010]: rigid states q ≅ q. Parick+E, NParick+EDB [Barguñó et al., 2010]:

  • q∈Q

aq|q| b

  • r
  • q∈Q

aqq b with aq, b ∈ Z, ∀q ∈ Q . DAGA [Charatonik, 1999]: equivalent to TAGD. TA1M [Comon and Cortier, 2005, Comon et al., 2008b]: one tree memory generalises pushdown automata.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 28/27

slide-65
SLIDE 65

FSA BUTA TWA GRA Parikh DTDTA NParikh+EDB TABB pebble TWA TA1M PDTA RTA DAGA VRTA TDTA RA kTAGE Parikh+E TALEDC TAGD TAGE TAGC DTWA VTAMSB PDA

  • RA

TAGErD TAGrD NParikh+ED TAPLEDC noRA vbTAGED 2FSA TAGED

SuperClass SubClass Concise Verbose Class1 Class2 Decidable

  • Dec. Inherited
  • Dec. Deterministic

Undecidable

slide-66
SLIDE 66

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References I

Barguñó, L., Creus, C., Godoy, G., Jacquemard, F., and Vacher,

  • C. (2010).

The emptiness problem for tree automata with global constraints. In Proceedings of the 25th Annual IEEE Symposium on Logic in Computer Science (LICS’10), pages 263–272, Edinburgh, Scotland, UK. IEEE Computer Society Press. Bogaert, B. and Tison, S. (1992). Equality and disequality constraints on direct subterms in tree automata. In Finkel, A. and Jantzen, M., editors, STACS, volume 577 of Lecture Notes in Computer Science, pages 161–171. Springer.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 30/27

slide-67
SLIDE 67

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References II

Caron, A.-C., Comon, H., Coquidé, J.-L., Dauchet, M., and Jacquemard, F. (1994). Pumping, cleaning and symbolic constraints solving. In Abiteboul, S. and Shamir, E., editors, ICALP, volume 820 of Lecture Notes in Computer Science, pages 436–449. Springer. Charatonik, W. (1999). Automata on DAG representations of finite trees.

  • Tech. Report, (-).

Comon, H. and Cortier, V. (2005). Tree automata with one memory set constraints and cryptographic protocols. Theoretical Computer Science, 331(1):143–214.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 31/27

slide-68
SLIDE 68

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References III

Comon, H., Dauchet, M., Gilleron, R., Löding, C., Jacquemard, F., Lugiez, D., Tison, S., and Tommasi, M. (2008a). Tree Automata Techniques and Applications. release November 18, 2008. Comon, H., Jacquemard, F., and Perrin, N. (2008b). Visibly tree automata with memory and constraints. Logical Methods in Computer Science, 4(2). Dauchet, M., Caron, A.-C., and Coquidé, J.-L. (1995). Automata for reduction properties solving.

  • J. Symb. Comput., 20(2):215–233.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 32/27

slide-69
SLIDE 69

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References IV

Filiot, E. (2008). Logics for n-ary queries in trees. PhD thesis, Université des Sciences et Technologie de Lille - Lille I. Filiot, E., Talbot, J.-M., and Tison, S. (2008). Tree automata with global constraints. In Developments in Language Theory, volume 5257 of Lecture Notes in Computer Science, pages 314–326. Springer. Filiot, E., Talbot, J.-M., and Tison, S. (2010). Tree automata with global constraints.

  • Int. J. Found. Comput. Sci., 21(4):571–596.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 33/27

slide-70
SLIDE 70

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References V

Héam, P., Hugot, V., and Kouchnarenko, O. (2010). SAT Solvers for Queries over Tree Automata with Constraints. In Third International Conference on Software Testing, Verification, and Validation Workshops, pages 343–348. IEEE. Hugot, V. (2013). Tree Automata, Approximations, and Constraints for Verification – Tree (Not Quite) Regular Model-Checking. Ph.D. thesis (to be defended), Université de Franche-Comté. Jacquemard, F., Klay, F., and Vacher, C. (2009). Rigid tree automata. In Horia Dediu, A., Mihai Ionescu, A., and Martín-Vide, C., editors, Proceedings of the 3rd International Conference on Language and Automata Theory and Applications (LATA’09),

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 34/27

slide-71
SLIDE 71

Introduction Expressivity Membership Rigidification Emptiness Finiteness Conclusions Appendix

References VI

volume 5457 of Lecture Notes in Computer Science, pages 446–457, Tarragona, Spain. Springer. Jacquemard, F., Klay, F., and Vacher, C. (2011). Rigid tree automata and applications.

  • Inf. Comput., 209(3):486–512.

Mongy, J. (1981). Transformation de noyaux reconnaissables d’arbres. Forêts RATEG. Ph.d. thesis, LIF de Lille, Université des Sciences et Technologies de Lille, Lille, France. Vacher, C. (2010). Tree automata with global constraints for the verification of security properties. Ph.D. thesis, ENS Cachan.

TAGE+ with Bounded Constraints Vincent HUGOT FORWAL 35/27