Uniformisation of Two-Way Transducers Rodrigo de Souza UFRPE - - PowerPoint PPT Presentation

uniformisation of two way transducers
SMART_READER_LITE
LIVE PREVIEW

Uniformisation of Two-Way Transducers Rodrigo de Souza UFRPE - - PowerPoint PPT Presentation

Uniformisation of Two-Way Transducers Rodrigo de Souza UFRPE Recife Brazil Supported by CAPES Foundation A two-way transducer a | a a | 1 a | a b | b | 1 p q r


slide-1
SLIDE 1

Uniformisation of Two-Way Transducers

Rodrigo de Souza

UFRPE – Recife – Brazil Supported by CAPES Foundation

slide-2
SLIDE 2

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

slide-3
SLIDE 3

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

An input word

⊲aababaa⊳

slide-4
SLIDE 4

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

The initial configuration

⊲ paababaa ⊳

slide-5
SLIDE 5

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

A computation

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

The output : a

slide-6
SLIDE 6

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

A computation

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

The output : aa

slide-7
SLIDE 7

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

A computation

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

← − b

− − → ⊲aqababaa ⊳

The output : aab

slide-8
SLIDE 8

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

A computation

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

← − b

− − → ⊲aqababaa ⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r

The output : aabaababaa

slide-9
SLIDE 9

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

Another computation – same input

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

− → b

− − → ⊲aabpabaa ⊳

− → a

− − → ⊲aabapbaa⊳

← − b

− − → ⊲aabqabaa⊳

← − a

− − → ⊲aaqbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → ⊳

− − → ⊲aababaa ⊳ r

slide-10
SLIDE 10

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

Another computation – same input

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

− → b

− − → ⊲aabpabaa ⊳

− → a

− − → ⊲aabapbaa⊳

← − b

− − → ⊲aabqabaa⊳

← − a

− − → ⊲aaqbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → ⊳

− − → ⊲aababaa ⊳ r

The output : aababaababaa

slide-11
SLIDE 11

A two-way transducer

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

Another computation – same input

⊲ paababaa ⊳

− → a

− − → ⊲apababaa ⊳

− → a

− − → ⊲aapbabaa ⊳

− → b

− − → ⊲aabpabaa ⊳

− → a

− − → ⊲aabapbaa⊳

← − b

− − → ⊲aabqabaa⊳

← − a

− − → ⊲aaqbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → ⊳

− − → ⊲aababaa ⊳ r

The output : aababaababaa The behaviour : u → {xbu | xb prefix of u }

slide-12
SLIDE 12

Sequential ?

An (one-way) automaton... p q a b c b

slide-13
SLIDE 13

Sequential ?

An (one-way) automaton... p q a b c b

slide-14
SLIDE 14

Sequential ?

An (one-way) automaton... ... and a deterministic equivalent one p q a b c b 10 11 01 a b b a c c

slide-15
SLIDE 15

Sequential ?

An (one-way) automaton... ... and a deterministic equivalent one p q a b c b 10 11 01 a b b a c c One-way automata (Rabin–Scott 1959) Subset construction Two-way automata (Rabin–Scott 1959, Shepherdson 1959) Crossing sequence construction

slide-16
SLIDE 16

Sequential ?

A transducer for a function f ... p q a|a b|b a|1 b|1

(uban)f = u

slide-17
SLIDE 17

Sequential ?

A transducer for a function f ... p q a|a b|b a|1 b|1

(uban)f = u

slide-18
SLIDE 18

Sequential ?

A transducer for a function f ... ... which is not sequential p q a|a b|b a|1 b|1

||ban, banb|| = 1 ||(ban)f , (banb)f || = n + 1

Functional one-way transducers (Choffrut 1977) f sequential ⇔ f uniformly divergent

slide-19
SLIDE 19

Sequential ?

Functional 2-way transducers (Engelfriet–Hoogeboom 2001) Via MSO definable graph relations

slide-20
SLIDE 20

Sequential ?

Functional 2-way transducers (Engelfriet–Hoogeboom 2001) Via MSO definable graph relations Complexity ?

slide-21
SLIDE 21

Sequential ?

Functional 2-way transducers (Engelfriet–Hoogeboom 2001) Via MSO definable graph relations Complexity ? Functional 2-way transducers (RdS 2013) Via structural constructions

slide-22
SLIDE 22

Sequential ?

Functional 2-way transducers (Engelfriet–Hoogeboom 2001) Via MSO definable graph relations Complexity ? Functional 2-way transducers (RdS 2013) Via structural constructions 4-exp

slide-23
SLIDE 23

Our true result

Theorem (Kobayashi 1969) r one-way transducer admits uniformisation f functional unambigu-

  • us transducer
slide-24
SLIDE 24

Our true result

Theorem (Kobayashi 1969) r one-way transducer admits uniformisation f functional unambigu-

  • us transducer

domr = domf , f ⊆ r

slide-25
SLIDE 25

Our true result

Theorem (Kobayashi 1969) r one-way transducer admits uniformisation f functional unambigu-

  • us transducer

domr = domf , f ⊆ r Theorem (RdS 2013) r two-way transducer admits uniformisation f sequential two-way transducer

slide-26
SLIDE 26

Our true result

Theorem (Kobayashi 1969) r one-way transducer admits uniformisation f functional unambigu-

  • us transducer

domr = domf , f ⊆ r Theorem (RdS 2013) r two-way transducer admits uniformisation f sequential two-way transducer functional two-way

uniformisation construction

  • equivalent sequential
slide-27
SLIDE 27

Outline of the proof

T A S B L R U = T ×L×R

slide-28
SLIDE 28

Outline of the proof

T A S B L R U = T ×L×R

underlying input automaton of T

slide-29
SLIDE 29

Outline of the proof

T A S B L R U = T ×L×R

folding of A

slide-30
SLIDE 30

Outline of the proof

T A S B L R U = T ×L×R

Proposition successful computations one-way S ↔ successful loop-free computations two-way A

slide-31
SLIDE 31

Outline of the proof

T A S B L R U = T ×L×R

lexicographic covering of S (JS & RdS 2007)

slide-32
SLIDE 32

Outline of the proof

T A S B L R U = T ×L×R

Proposition successful computations unambiguous one-way B ։ successful loop-free computations A

slide-33
SLIDE 33

Outline of the proof

T A S B L R U = T ×L×R

left (Hopcroft & Ullman 1967) / right pathfinders for B

slide-34
SLIDE 34

Outline of the proof

T A S B L R U = T ×L×R

T + L + R = sequential bidirectional reading folded computations

slide-35
SLIDE 35

Outline of the proof

T A S B L R U = T ×L×R

Main result sequential two-way U realises an uniformisation of T

slide-36
SLIDE 36

Outline of the proof

T A S B L R U = T ×L×R

The folding construction

slide-37
SLIDE 37

Foldings of computations

Back to our example...

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

⊲paababaa⊳

− → a

− − → ⊲apababaa⊳

− → a

− − → ⊲aapbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r

slide-38
SLIDE 38

Foldings of computations

Back to our example...

p q r ⊲ ⊳ − → a |a − → b |b ← − b |b ← − a |1 ← − b |1 − → ⊲ |1 − → a |a − → b |b

⊲paababaa⊳

− → a

− − → ⊲apababaa⊳

− → a

− − → ⊲aapbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r folding ∼ 2D perspective of computations

slide-39
SLIDE 39

Foldings of computations

⊲paababaa⊳

− → a

− − → ⊲apababaa⊳

− → a

− − → ⊲aapbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r

a a b a b a a ⊳ i p p p q q q r r r r r r r r − → ⊲ − → a − → a ← − b ← − a ← − a − → ⊲ − → a − → a − → b − → a − → b − → a − → a

slide-40
SLIDE 40

Foldings of computations

⊲paababaa⊳

− → a

− − → ⊲a

pababaa⊳

− → a

− − → ⊲aapbabaa⊳

← − b

− − → ⊲a

qababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲a

rababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r

a a b a b a a ⊳ i p p p q q q r r r r r r r r − → ⊲ − → a − → a ← − b ← − a ← − a − → ⊲ − → a − → a − → b − → a − → b − → a − → a

slide-41
SLIDE 41

Foldings of computations

⊲paababaa⊳

− → a

− − → ⊲apababaa⊳

− → a

− − → ⊲aa

pbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aaba

rbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → a

− − → ⊲aababaa ⊳ r

a a b a b a a ⊳ i p p p q q q r r r r r r r r − → ⊲ − → a − → a ← − b ← − a ← − a − → ⊲ − → a − → a − → b − → a − → b − → a − → a

slide-42
SLIDE 42

Foldings of computations

⊲paababaa⊳

− → a

− − → ⊲apababaa⊳

− → a

− − → ⊲aapbabaa⊳

− → b

− − → ⊲aabpabaa⊳

− → a

− − → ⊲aabapbaa⊳

← − b

− − → ⊲aabqabaa⊳

← − a

− − → ⊲aaqbabaa⊳

← − b

− − → ⊲aqababaa⊳

← − a

− − → ⊲qaababaa⊳

← − a

− − → q ⊲ aababaa⊳

− → ⊲

− − → ⊲raababaa⊳

− → a

− − → ⊲arababaa⊳

− → a

− − → ⊲aarbabaa⊳

− → b

− − → ⊲aabrabaa⊳

− → a

− − → ⊲aabarbaa⊳

− → b

− − → ⊲aababraa⊳

− → a

− − → ⊲aababara⊳

− → a

− − → ⊲aababaar⊳

− → ⊳

− − → ⊲aababaa ⊳ r

a a b a b a a ⊳ i p p p p p q q q q q r r r r r r r r − → ⊲ − → a − → a − → b − → a ← − b ← − a ← − b ← − a ← − a − → ⊲ − → a − → a − → b − → a − → b − → a − → a

slide-43
SLIDE 43

The folding of two-way A

States are columns (− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b)

slide-44
SLIDE 44

The folding of two-way A

Transitions are tuples of left/right moves (− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b

slide-45
SLIDE 45

The folding of two-way A

Computations are foldings (− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b

slide-46
SLIDE 46

The folding of two-way A

Computations are foldings (− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (− → p , ← − q , − → r , a) (← − p , − → r , b) (− → r , a) (− → r , a) (− → r , a) a a b b b a a

⊲paababaa⊳

− → a

− → ⊲apababaa⊳

− → a

− → ⊲aapbabaa⊳

− → b

− → ⊲aabpabaa⊳

− → a

− → ⊲aabapbaa⊳

← − b

− → ⊲aabqabaa⊳

← − a

− → ⊲aaqbabaa⊳

← − b

− → ⊲aqababaa⊳

← − a

− → ⊲qaababaa⊳

← − a

− → q ⊲ aababaa⊳

− → ⊲

− → ⊲raababaa⊳

− → a

− → ⊲arababaa⊳

− → a

− → ⊲aarbabaa⊳

− → b

− → ⊲aabrabaa⊳

− → a

− → ⊲aabarbaa⊳

− → b

− → ⊲aababraa⊳

− → a

− → ⊲aababara⊳

− → a

− → ⊲aababaar⊳

− → ⊳

− → ⊲aababaa ⊳ r

slide-47
SLIDE 47

The folding of two-way A

behaviour two-way A = behaviour one-way S

p q r ⊲ ⊳ − → a − → b ← − b ← − a ← − b − → ⊲ − → a − → b

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b

slide-48
SLIDE 48

Outline of the proof

T A S B L R U = T ×L×R

lexicographic covering of S (JS & RdS 2007)

slide-49
SLIDE 49

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

slide-50
SLIDE 50

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

slide-51
SLIDE 51

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

< <

slide-52
SLIDE 52

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

slide-53
SLIDE 53

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

|A| = |S| = |B|

slide-54
SLIDE 54

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

|B| unambiguous

slide-55
SLIDE 55

The lexicographic covering

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) (− → r , b) ⊲ ⊲ ⊲ ⊳ ⊳ a b a a b b b b b a a b 00000 01000 11000 11100 ⊲ ⊲ ⊲ ⊳ a a b b a b b a

u ∈ |A| 1 folded computation

slide-56
SLIDE 56

Outline of the proof

T A S B L R U = T ×L×R

the pathfinder construction

slide-57
SLIDE 57

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

ABC ABCD a b a b D C B A a b b a a a b b B B A B C D D D a a b a b a a

a a b a b a a

slide-58
SLIDE 58

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

ABC ABCD a b a b D C B A a b b a a a b b B B A B C D D D a a b a b a a

↓ a a b a b a a

slide-59
SLIDE 59

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

I J ABC ABCD a b a b D C B A a b b a a a b b B B A B C D D D a a b a b a a

↓ a a b a b a a

I · a = {A, B, C} (ababaa) · J = {B}

slide-60
SLIDE 60

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

I J ABC ABCD a b a b D C B A a b b a a a b b B B A B C D D D a a b a b a a

↓ a a b a b a a

I · a ∩ (ababaa) · J = {B}

slide-61
SLIDE 61

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

I J ABC ABCD a b a b D C B A a b b a a a b b B B A B C D D D a a b a b a a

↓ a a b a b a a

I · (aa) = {A, B, C} (babaa) · J =?

slide-62
SLIDE 62

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

I J ABC ABCD a b a b D C B A a b b a a a b b A-rooted rev-det B-rooted rev-det C-rooted rev-det a b b a b a a b a b b a

↓ a a b a b a a

slide-63
SLIDE 63

The pathfinder construction

(− → p , ← − q , − → r , a) (− → p , ← − q , − → r , b) (← − p , − → r , b) (− → r , a) A B C D ⊲ ⊲ ⊲ ⊳ a a b b a b b a

Bdet B̺

det

I J ABC ABCD a b a b D C B A a b b a a a b b finding the way : reads bab and come back to the position where the rev-det’s meet a b b a b a a b a b b a

↓ a a b a b a a

slide-64
SLIDE 64

Complexity

T A S B L R U = T ×L×R

exp exp 2 − exp 2 − exp

2222n

slide-65
SLIDE 65

Perspectives

Lower complexity Application to the equivalence problem for functional two-way transducers (Culik–Karhum¨ aki 1987)