Feasible Automata for Two-Variable Logic with Successor on Data ...

155
Feasible Automata for Two-Variable Logic with Successor on Data Words Ahmet Kara, Thomas Schwentick, and Tony Tan LATA 2012, A Coruña

Transcript of Feasible Automata for Two-Variable Logic with Successor on Data ...

Page 1: Feasible Automata for Two-Variable Logic with Successor on Data ...

Feasible Automata for Two-Variable Logic

with Successor on Data Words

Ahmet Kara, Thomas Schwentick, and Tony Tan

LATA 2012, A Coruña

Page 2: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 1

Page 3: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 4: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

• A system run

req

1

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 5: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2

• A system run

req

1

req

2

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 6: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2

• A system run

req

1

req

2

ack

1

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 7: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

• A system run

req

1

req

2

ack

1

req

3

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 8: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

• A system run

req

1

req

2

ack

1

req

3

req

4

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 9: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

• A system run

req

1

req

2

ack

1

req

3

req

4

ack

3

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 10: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

• A system run

req

1

req

2

ack

1

req

3

req

4

ack

3

req

1

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 11: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

• A system run

req

1

req

2

ack

1

req

3

req

4

ack

3

req

1. . .

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 12: Feasible Automata for Two-Variable Logic with Successor on Data ...

Systems with Unboundedly Many Processes

Server

process 1

process 2 process 3

process 4

• A system run

req

1

req

2

ack

1

req

3

req

4

ack

3

req

1. . .

• A system property

„Every req of a process is followed by some ack for the same process.”∀x∃y(req(x) → (x < y ∧ ack(y) ∧ x ∼ y))

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 2

Page 13: Feasible Automata for Two-Variable Logic with Successor on Data ...

Words and Data Words

A Word over Σ = {a, b, c}

c c a c a b c b

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 3

Page 14: Feasible Automata for Two-Variable Logic with Successor on Data ...

Words and Data Words

A Word over Σ = {a, b, c}

c c a c a b c b

A Data Word over Σ = {a, b, c}

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

Definition: Data Words

• Let◮ Σ be a finite alphabet◮ D be an infinite set of data values

• w ∈ (Σ × D)∗ is a data word over Σ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 3

Page 15: Feasible Automata for Two-Variable Logic with Successor on Data ...

Words and Data Words

A Word over Σ = {a, b, c}

c c a c a b c b

A Data Word over Σ = {a, b, c}

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

• D = {1, 2, 3, . . .}

Definition: Data Words

• Let◮ Σ be a finite alphabet◮ D be an infinite set of data values

• w ∈ (Σ × D)∗ is a data word over Σ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 3

Page 16: Feasible Automata for Two-Variable Logic with Successor on Data ...

Logics on Data Words – Data Logics

• Even very weak logics on data words have an undecidablesatisfiability problem.

◮ LTL in general not decidable [Demri et al. 06]

◮ FO3 (with only three variables) not decidable[Bojanczyk et al. 06]

◮ FO2 decidable but exact complexity not known[Bojanczyk et al. 06]

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 4

Page 17: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 18: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

is captured

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 19: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

is captured ?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 20: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 21: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 22: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 5

Page 23: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 24: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 25: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 26: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 27: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 28: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 29: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 30: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x

∀x

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 31: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 32: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 33: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →(x < y

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 34: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →(x < y ∧ b(y)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 35: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 36: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Example

„There are two neighbouring positions withdifferent data values."

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 37: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Example

„There are two neighbouring positions withdifferent data values."

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x

∃x

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 38: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Example

„There are two neighbouring positions withdifferent data values."

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∃x∃y

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 39: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Example

„There are two neighbouring positions withdifferent data values."

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∃x∃y(

Suc(x, y)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 40: Feasible Automata for Two-Variable Logic with Successor on Data ...

Existential Monadic Second Order Logic on Data Words

Existential Monadic Second Order Logic with twoposition variables (EMSO2(∼, Suc, ≤)):

• formulas are of the form∃M1 . . . ∃Mn ϕwhere ϕ is a first order formula

◮ uses only two position variables

◮ can test whether a position is containedin some set Mi

◮ can test whether a position is labelled bysome symbol

◮ can use order and successor relations onpositions

◮ can test whether the data values at twopositions are equal

Example

„Every a is followed by some b with the samedata value.”

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∀x∃y(

a(x) →

(x < y ∧ b(y) ∧ x ∼ y))

Example

„There are two neighbouring positions withdifferent data values."

c

1

c

4

a

3

c

2

a

2

b

3

c

7

b

2

x y

∃x∃y(

Suc(x, y) ∧ ¬(x ∼ y))

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 6

Page 41: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 7

Page 42: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

σ1

1

σ2

1

σ3

3

σ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 43: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

σ1

1

σ2

1

σ3

3

σ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 44: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

σ2

1

σ3

3

σ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 45: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

σ3

3

σ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 46: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

σ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 47: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

σ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 48: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

σ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 49: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

σ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 50: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

σ8

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 51: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 8

Page 52: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 53: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 54: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 55: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 56: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 57: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 58: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 59: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 60: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 61: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 62: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 63: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

γ1

1

γ2

1

γ3

3

γ4

2

γ5

2

γ6

3

γ7

1

γ8

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 9

Page 64: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 65: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 66: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 67: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 68: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 69: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 70: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 71: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 72: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 73: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 10

Page 74: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 75: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 76: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 77: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 78: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 79: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 80: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 81: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 82: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 83: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 84: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 85: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„There is an a which is followed by some b with a different data value.”

1

1

X

3

2

2

3

1

X

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 11

Page 86: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 87: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 88: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 89: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 90: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 91: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 92: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 93: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 94: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 95: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 12

Page 96: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 97: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 98: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 99: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 100: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 101: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 102: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 103: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 104: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 105: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 106: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C) C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 107: Feasible Automata for Two-Variable Logic with Successor on Data ...

Data Automata

Data Automata (DA) [Bojanczyk et al. 06]

A data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a class automaton C: a usual string automaton over Γ

Example

„Every a is followed by some b with the same data value.”

c

1

c

1

a

3

c

2

a

2

b

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 13

Page 108: Feasible Automata for Two-Variable Logic with Successor on Data ...

Known Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 14

Page 109: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Data Automata

Base

Automaton

B

Class

Automaton

C

Definition

A data automaton D = (B, C) over analphabet Σ consists of

• a base automaton B: a nondeterministicletter-to-letter string transducer with inputalphabet Σ and output alphabet Γ

• a class automaton C: a usual stringautomaton over Γ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 15

Page 110: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Data Automata

Base

Automaton

B

Class

Automaton

C

Definition

A data automaton D = (B, C) over analphabet Σ consists of

• a base automaton B: a nondeterministicletter-to-letter string transducer with inputalphabet Σ and output alphabet Γ

• a class automaton C: a usual stringautomaton over Γ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 15

Page 111: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Data Automata

Base

Automaton

B

Class

Automaton

C

Definition

A data automaton D = (B, C) over analphabet Σ consists of

• a base automaton B: a nondeterministicletter-to-letter string transducer with inputalphabet Σ and output alphabet Γ

• a class automaton C: a usual stringautomaton over Γ

Weak Data Automata

Base

Automaton

B

Set of

Constraints

C

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 15

Page 112: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Data Automata

Base

Automaton

B

Class

Automaton

C

Definition

A data automaton D = (B, C) over analphabet Σ consists of

• a base automaton B: a nondeterministicletter-to-letter string transducer with inputalphabet Σ and output alphabet Γ

• a class automaton C: a usual stringautomaton over Γ

Weak Data Automata

Base

Automaton

B

Set of

Constraints

C

Definition

A weak data automaton D = (B, C) over analphabet Σ consists of

• a base automaton B: a nondeterministicletter-to-letter string transducer with inputalphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 15

Page 113: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

c

3

b

1

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 114: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

c

3

b

1

• w |= key(a)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 115: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

• inclusion constraintsV (σ1) ⊆ V (σ2): all data values onσ1-positions occur on σ2-positions

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

b

1

• w |= key(a)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 116: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

• inclusion constraintsV (σ1) ⊆ V (σ2): all data values onσ1-positions occur on σ2-positions

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

b

1

• w |= key(a)

• w |= V (a) ⊆ V (c)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 117: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

• inclusion constraintsV (σ1) ⊆ V (σ2): all data values onσ1-positions occur on σ2-positions

• denial constraintsV (σ1) ∩ V (σ2) = ∅: σ1-positionsand σ2-positions do not share any datavalue

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

b

1

• w |= key(a)

• w |= V (a) ⊆ V (c)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 118: Feasible Automata for Two-Variable Logic with Successor on Data ...

Constraints on Data Words

Constraints on Data Words

• key constraintskey(σ): all σ-positions have different datavalues

• inclusion constraintsV (σ1) ⊆ V (σ2): all data values onσ1-positions occur on σ2-positions

• denial constraintsV (σ1) ∩ V (σ2) = ∅: σ1-positionsand σ2-positions do not share any datavalue

Example

w =

c

1

c

1

c

1

c

1

b

4

c

2

c

2

a

2

a

3

c

3

c

3

b

1

• w |= key(a)

• w |= V (a) ⊆ V (c)

• w |= V (a) ∩ V (b) = ∅

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 16

Page 119: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 17

Page 120: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 121: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 122: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 123: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 124: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 125: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 126: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 127: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 128: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

3

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 129: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

3

1

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 18

Page 130: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„There is an a and a b with different data values.”

1

1

b

3

2

a

2

3

1

2

(B, C)

• C = {V (a) ∩ V (b) = ∅}

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 19

Page 131: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 132: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 133: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 134: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 135: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 136: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 137: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 138: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 139: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C) B

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 140: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C)

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 20

Page 141: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C)

• C = {V (a) ⊆ V (b)}

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 21

Page 142: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak Data Automata

Weak Data Automata (WDA)

A weak data automaton D = (B, C) over an alphabet Σ consists of

• a base automaton B: a nondeterministic letter-to-letter string transducer withinput alphabet Σ and output alphabet Γ

• a set C of constraints over Γ

Example

„For every a there exists some b with the same data value.”

c

1

c

1

b

3

c

2

a

2

a

3

c

1

b

2

(B, C)

• C = {V (a) ⊆ V (b)}

• Main difference between class automata and constraints:constraints cannot access the order of positions

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 21

Page 143: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 22

Page 144: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

Weak Data Automata

is captured:

translatable

in 2EXPTIME

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 22

Page 145: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

Weak Data Automata

is captured:

translatable

in 2EXPTIME

<

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 22

Page 146: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

?

Weak Data Automata

is captured:

translatable

in 2EXPTIME

<Theorem

WDA < DA

• inclusion: the class automaton can check all constraints

◮ e.g. key(a): class automaton checks that all class strings contain at mostone a

• separating property: „Every a is followed by some b with the same data value.”

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 23

Page 147: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results

DECIDABLE

EMSO2(∼, Suc, ≤)

Data Automata

2NEXPTIME

EMSO2(∼, Suc)

is captured ?

<

Weak Data Automata

is captured:

translatable

in 2EXPTIME

<

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 24

Page 148: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak ω-Data Automata

Data ω-words

• Let

◮ Σ be a finite alphabet

◮ D be an infinite set of data values

• w ∈ (Σ × D)ω is a data ω-word overΣ

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 25

Page 149: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak ω-Data Automata

Data ω-words

• Let

◮ Σ be a finite alphabet

◮ D be an infinite set of data values

• w ∈ (Σ × D)ω is a data ω-word overΣ

Data ω-Automata [Bojanczyk et al. 06]

A data ω-automaton D = (B, Cfin, Cinf) overan alphabet Σ consists of

• a base Büchi automaton B

• a class automaton Cfin

• a class Büchi automaton Cinf

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 25

Page 150: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak ω-Data Automata

Data ω-words

• Let

◮ Σ be a finite alphabet

◮ D be an infinite set of data values

• w ∈ (Σ × D)ω is a data ω-word overΣ

Data ω-Automata [Bojanczyk et al. 06]

A data ω-automaton D = (B, Cfin, Cinf) overan alphabet Σ consists of

• a base Büchi automaton B

• a class automaton Cfin

• a class Büchi automaton Cinf

Weak Data ω-Automata

A weak data ω-automaton D = (B, C) overan alphabet Σ consists of

• a base Büchi automaton B

• a set C of constraints

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 25

Page 151: Feasible Automata for Two-Variable Logic with Successor on Data ...

Weak ω-Data Automata

Data ω-words

• Let

◮ Σ be a finite alphabet

◮ D be an infinite set of data values

• w ∈ (Σ × D)ω is a data ω-word overΣ

Data ω-Automata [Bojanczyk et al. 06]

A data ω-automaton D = (B, Cfin, Cinf) overan alphabet Σ consists of

• a base Büchi automaton B

• a class automaton Cfin

• a class Büchi automaton Cinf

Weak Data ω-Automata

A weak data ω-automaton D = (B, C) overan alphabet Σ consists of

• a base Büchi automaton B

• a set C of constraints

E∞MSO2(∼, Suc)

Extension of EMSO2(∼, Suc):

• quantified sets can be restricted to bebound to infinite sets only

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 25

Page 152: Feasible Automata for Two-Variable Logic with Successor on Data ...

Our Results on Data ω-Words

DECIDABLE

EMSO2(∼, Suc, ≤)

Data ω-Automata

2NEXPTIME

E∞MSO2(∼, Suc)

is captured ?

<

Weak Data ω-Automata

is captured:

translatable

in 2EXPTIME

<

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 26

Page 153: Feasible Automata for Two-Variable Logic with Successor on Data ...

Conclusion

• WDA: automata model for EMSO2(∼, Suc) (and

E∞MSO2(∼, Suc)) with reasonable complexity

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 27

Page 154: Feasible Automata for Two-Variable Logic with Successor on Data ...

Conclusion

• WDA: automata model for EMSO2(∼, Suc) (and

E∞MSO2(∼, Suc)) with reasonable complexity

• Open Questions:

◮ Are WDA the best automata model for these logics?

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 27

Page 155: Feasible Automata for Two-Variable Logic with Successor on Data ...

Conclusion

• WDA: automata model for EMSO2(∼, Suc) (and

E∞MSO2(∼, Suc)) with reasonable complexity

• Open Questions:

◮ Are WDA the best automata model for these logics?

◮ What is the exact complexity of the emptiness problem for weak dataautomata?� The 2NEXPTIME upper bound yields only a 3NEXPTIME upper bound for

the satisfiability of EMSO2(∼, Suc)� which is in 2NEXPTIME [Niewerth et al. 09]

Ahmet Kara Feasible Automata for Two-Variable Logic with Successor on Data Words � � Slide 27