Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tiling Automata: a computational model for recognizable two-dimensional languages Marcella Anselmo Dora Giammarresi Maria Madonia Univ. of Salerno Univ.

Similar presentations


Presentation on theme: "Tiling Automata: a computational model for recognizable two-dimensional languages Marcella Anselmo Dora Giammarresi Maria Madonia Univ. of Salerno Univ."— Presentation transcript:

1 Tiling Automata: a computational model for recognizable two-dimensional languages Marcella Anselmo Dora Giammarresi Maria Madonia Univ. of Salerno Univ. Roma Tor Vergata Univ. of Catania ITALY

2 Topic: recognizability of 2dim languages (picture languages) by finite devices Motivation: define a computational device for 2dim languages based on tiling systems Results: definition of tiling automata, comparison of deterministic and non-deterministic models, with OTA, 4NFA Overview

3 Two-dimensional (2dim) Languages Problem: generalizing formal language theory from 1dim to 2dim Two-dimensional string (or picture) over a finite alphabet: abaab bcabc acbba  finite alphabet  ** all 2dim strings (pictures) over  L   ** 2dim language

4 From 1dim to 2dim Several attempts since 60s: Automata (4NFA and OTA, AFA, … ) Logics (monadic second-order, first-order, existential monadic second-order) Grammars (matrix, image, array, TRG,… grammars) Operations (column-, row- concatenation, stars, …) Definition of different classes of picture languages A unifying point of view (G, Restivo, 1992): Recognizability by tiling system (= local language + projection) REC family

5 4-way automata (4NFA) Transition function  (p,a) = (q, d ) d  { , , ,  } - L(4DFA)  L(4NFA) - L(4DFA), L(4NFA) not closed under concatenations and * Generalization of classical 2-way automata: They can move: Left, Right, Up, Down First model by Blum & Hewitt (1967) - The deterministic model is denoted by 4DFA

6 On-line tesselation automata (OTA) (i, j)  : Q  Q  Q    2 Q DOTA if  : Q  Q  Q    Q a q i-1,j q i,j-1 q i-1,j-1 L(DOTA)  L(OTA) / OTA: a restricted type of 2dim cellular automata ….computing by diagonal waves

7 REC family is defined in terms of local languages It is necessary to identify the boundary of a picture p using a boundary symbol    REC family I p =          L is local if there exists a set  of tiles (i. e. square pictures of size 2  2) such that, for any p in L, any sub-picture 2  2 of is in  p 

8 L d = the set of square pictures with symbol “1” in all main diagonal positions and symbol “0” in the other positions (Usual) Example of local language   1  1    1  0  0  0 00  01   0   00 0  0   0    1  = p = ##### #100# #010# #001# ##### 

9 L is recognizable by tiling system if L=  (L’) where L’ is a local language and  is a mapping from the alphabet  of L’ to the alphabet  of L REC family II Example: L Sq = all squares over  = {a} is recognizable by tiling system. Set L’=L d and  (1)=  (0)= a REC is the family of two-dimensional languages recognizable by tiling system ( , , ,  ), where L’=L(  ), is called tiling system

10 1dim case: from an automaton to a tiling system 0 2 a a b b 1 b b1b1 b2b2 a1a1 a0a0 # # b0b0 Θ =Θ = b0b0 #b0b0 b1b1 b0b0 a1a1 b1b1 b1b1 a1a1 b2b2 b2b2 b2b2 a1a1 a0a0 b2b2 a0a0 b1b1 a1a1 a0a0 b1b1 a0a0 a1a1 b0b0 # b1b1 # a0a0 # L= strings over  ={a,b} starting with b and with even occurrences of a w = b a b a a b a w’= # b 0 a 1 b 2 a 0 a 1 b 2 a 0 #  ( a 0 ) =  ( a 1 ) = a;  ( b 0 )=  ( b 1 ) =  ( b 2 ) =b ;

11 w’= # b 0 a 1 b 2 a 0 a 1 Θ corresponds to undirected edges! To use Θ for a computation we need to decide a scanning strategy + variable to keep current local symbol (state) # 0 2 a a b b b1b1 b2b2 a1a1 a0a0 # 1 b b0b0 1dim case: “Computing” by a tiling system (from a tiling system to an automaton) ##a0a0 w = b a b2b2 b a b a a Θ =Θ = b0b0 #b0b0 b1b1 b0b0 a1a1 b1b1 b1b1 a1a1 b2b2 b2b2 b2b2 a1a1 a0a0 b2b2 a0a0 b1b1 a1a1 a0a0 b1b1 a0a0 a1a1 b0b0 # b1b1 # a0a0 #

12 #### L Sq = squares over {a}. Use L’=L d  (1)=  (0)= a aaa aaa aaa   1  1    1  0  0  0 00  01   0   00 0  0   0    1  = ##### ## ## ## # p =  dim case: “Computing” by a tiling system (from a tiling system to an automaton) First, decide a scanning strategy! Recall last computed local symbols!

13 “Computing” by a tiling system (from a tiling system to an automaton) Remark : Tiling system = “undirectional” transitions For a 2dim finite tiling automaton we need Tiling system + scanning strategy + data structure Local picture is the run of the automaton.

14 ####### ## ## ## ####### ####### ## ## ## ####### Scanning strategies (I) Diagonal (“OTA”)By column

15 ####### ## ## ## ## ####### ####### ## ## ## ## ####### Scanning strategies (II) FreeSnake-like

16 Scanning strategy We need a “good” one! Start in a corner Filling-all-the-picture property Computable next-position function Contiguity property Mono-directional (tl2br or tr2bl or br2tl or bl2tr)

17 An example ####### ## ## ## ####### By column scanning strategy Filling-all-the-picture Start in a corner Mono-directional (tl2br) Contiguity property Comp. next-position function: (i, j) (i+1, j)

18 Supports updating operations extract 3 local symbols  1,  2,  3 needed to compute the next local symbol (ex. ) insert new local symbol 11 22 33 Data Structure Depends on the chosen scanning procedure In 1dim automata the data structure saves the current state (local symbol) and updates it. In 2dim

19 Tiling Automata (1) A Definition: A tiling automaton (TA) of type tl2br is A =(T, S, D 0,  ) where: T = ( , , ,  ) is a tiling system S is a tl2br-directed scanning strategy D 0 initial content of data structure  :         (  1,  2,  3, a) =  4 if  Θ and  (  4 )=a 11 22 33 44

20 Example ###### # 1000 # # 0100 # # 0aa # # aaaa # ###### 0100##0  (*) = a A Consider a tiling automaton A=(T Sq, S r, D 0,  ) where T sq tiling system for L Sq and S r a scanning strategy that goes row by row (from the left to the right) #00#001 0 a 1 * 0 0

21 Tiling Automata (2) Similarly define tiling automata of types tr2bl, br2tl,bl2tr L(TA-tl2br)= L(TA-tr2bl)= L(TA-br2tl)= L(TA-bl2tr)= = L(TA) = REC Acceptance defined as usual L(TA- tl2br)

22 Tiling Automata (3) Use standard definitions from string case and define: Unambiguos Tiling Automata (UTA) Deterministic Tiling Automata (DTA) L(DTA) = L(DTA-tl2br)  L(DTA-tr2bl)   L(DTA-br2tl)  L(DTA-bl2tr)

23 Languages of Tiling Automata 1)L(TA) = REC = L(OTA) 2)L(DTA)  L(DOTA) 3)L(DTA) is incomparable with L(4DFA) 4)L(UTA)  L(DTA)  L(4DFA) Proposition: The following properties hold

24 Sketch proof item 3) 3)L(DTA) is incomparable with L(4DFA) Remark : TA are conceptually different from 4NFA in L(4DFA) but not in L(DTA) in L(DTA) but not in L(4DFA) (K. Inoue, A. Nakamura 77)

25 Conclusions Tiling Automata necessary: - to use tiling system as computational devices - to introduce a “more computational” notion of determinism Tiling Automata reduce to classical string automata in the case of one-row pictures

26 Grazie

27 Complexity issue Proposition: Deterministic TA with - next-position function in O(1) time, - data structure occupies space O(m+n) and supports the operations in time O(1) parsing in time O(mn) and O(m+n) extra-space.

28 Baciamo le mani!

29 Why Tiling Automata? A Tiling System does not correspond to an effective procedure of recognition.

30 Θ =Θ = b0b0 #b0b0 b1b1 b0b0 a1a1 b1b1 b1b1 a1a1 b2b2 b2b2 b2b2 a1a1 a0a0 b2b2 a0a0 b1b1 a1a1 a0a0 b1b1 a0a0 a1a1 b0b0 # b1b1 # a0a0 # Θ corresponds to undirected edges! To use Θ for a computation we need to decide a scanning strategy + variable to keep current local symbol (state) # 0 2 a a b b b1b1 b2b2 a1a1 a0a0 # 1 b b0b0 1dim case: “Computing” by a tiling system (from a tiling system to an automaton) w’= # b 0 a 1 b 2 a 0 a 1 b 2 a 0 # w = b a b a a b a ## a0a0

31 Θ corresponds to undirected edges! To use Θ for a computation we need to decide a scanning strategy + variable to keep current local symbol (state) # 0 2 a a b b b1b1 b2b2 a1a1 a0a0 # 1 b b0b0 Θ =Θ = b0b0 #b0b0 b1b1 b0b0 a1a1 b1b1 b1b1 a1a1 b2b2 b2b2 b2b2 a1a1 a0a0 b2b2 a0a0 b1b1 a1a1 a0a0 b1b1 a0a0 a1a1 b0b0 # b1b1 # a0a0 # 1dim case: “Computing” by a tiling system (from a tiling system to an automaton) w = b a b a a b a w’= # b 0 a 1 b 2 a 0 a 1 b 2 a 0 #

32 “Computing” by a tiling system (from a tiling system to an automaton) Remark : Tiling system = “undirectional” transitions For a 2dim finite tiling automaton we need Tiling system + scanning strategy + data structure Local picture is the run of the automaton. Remark : All 2dim tiling automata “correspond” to family REC (i.e. scanning procedure does not matter!) BUT it is necessary to define determinism (= backtracking 0, where???)

33 Definition: String language L is local if all substrings of length 2 are in a finite set Θ. (L=L(Θ) ) Local (string) languages…(TOGLIERE w with border # # string w over Γ= {0, 1} w=w= finite set of strings of length 2 over Γ  #  allowed substrings Θ = … ## Sono equivalenti ai regular

34 (Usual) Example1DIM case: “Computing” by a tiling system (from a tiling system to an automaton) 0 1 a a b b w= a b b a a b a Θ corresponds to undirected edges! To use Θ for a computation we need to decide a scanning procedure +variable to keep current local symbol (state) b0b0 b1b1 a1a1 a0a0 # # # w’= # a 1 b 1 b 1 a 0 a 1 b 1 a 0 # Θ = b0b0 b0b0 b0b0 b0b0 b1b1 a0a0 # # a1a1 # b0b0 # a1a1 a1a1 a0a0 a1a1 b1b1 b1b1 a0a0 b1b1 b0b0 a0a0 a1a1 a0a0

35 A second example Diagonal scanning strategy (“2OTA”) ####### ## ## ## ####### Filling-all-the-picture Start in a corner Comp. next-position function: (i, j) (i+1, j-1) Mono-directional (tl2br) Contiguity property


Download ppt "Tiling Automata: a computational model for recognizable two-dimensional languages Marcella Anselmo Dora Giammarresi Maria Madonia Univ. of Salerno Univ."

Similar presentations


Ads by Google