SlideShare une entreprise Scribd logo
1  sur  39
Télécharger pour lire hors ligne
Unambiguous Recognizable
Two-dimensional Languages
[M. Anselmo, D. Giammarresi, M. Madonia, A. Restivo]

          Davide Eynard, Antonino Tumeo
   eynard@elet.polimi.it, tumeo@elet.polimi.it


      Department of Electronics and Information
                Politecnico di Milano




                                            Unambiguous Recognizable Two-dimensional Languages – p. 1/2
Concetti preliminari

  • Σ alfabeto finito
  • Una stringa bidimensionale (o picture) su Σ è un array
    rettangolare di elementi di Σ
  • L’insieme di tutte le stringhe bidimensionali su Σ è denotato da
    Σ∗∗ e un linguaggio bidimensionale su Σ è un sottoinsieme di
    Σ∗∗ .
  • Data una picture p ∈ Σ∗∗ :
     ◦ pi,j simbolo in p con coordinate (i, j)
     ◦ ℓ1 (p) numero di righe di p
     ◦ ℓ2 (p) numero di colonne di p
     ◦ (ℓ1 (p), ℓ2 (p)) dimensione della picture p
  • Σm,n insieme di tutte le stringhe bidimensionali su Σ di
    dimensioni (m, n)

                                                     Unambiguous Recognizable Two-dimensional Languages – p. 2/2
Concetti preliminari

Siano p e q picture sull’alfabeto Σ, di grandezza (m, n) e (m′ , n′ ),
m, n, m′ , n′ ≥ 0. Si definiscono i seguenti operatori:
  • Concatenazione orizzontale di p e q (p        q ): solo se m = m′




                                              ⊖
  • Concatenazione verticale di p e q (p ⊖ q ): solo se n = n′


                                                                  p
          p       q=   p        q           p⊖q =
              ⊖




                                                                  q

Iterando le operazioni di concatenazione si ottiene la chiusura (o
star ) orizzontale e verticale.




                                                    Unambiguous Recognizable Two-dimensional Languages – p. 2/2
Linguaggio Locale

  • Tile: picture quadrata di dimensioni (2, 2)
  • Data una picture x, B2,2 (x) è l’insieme di tutti i blocchi di x di
    grandezza (2, 2)
  • Un linguaggio 2D L ⊆ Γ∗∗ è locale se esiste un insieme finito Θ
    di tile sull’alfabeto Γ ∪ {#} tale che L = {x ∈ Γ∗∗ |B2,2 (x) ⊆ Θ}.
    In questo caso si scrive L = L(Θ)




                                                   Unambiguous Recognizable Two-dimensional Languages – p. 3/2
Proiezione

  • Siano Γ e Σ alfabeti finiti
  • Si definisce proiezione un mapping π : Γ → Σ
  • La proiezione π(x) di x ∈ Σ∗∗ è la picture x′ ∈ Σ∗∗ tale che
    x′ (i, j) = π(x(i, j)) per tutti gli 1 ≤ i ≤ ℓ1 (x), 1 ≤ j ≤ ℓ2 (x)
  • Se L ⊆ Γ∗∗ è un linguaggio di picture su Γ,
    π(L) = {x′ |x′ = π(x)∀x ∈ L} ⊆ Σ∗∗




                                                      Unambiguous Recognizable Two-dimensional Languages – p. 4/2
Tiling system

Una quadrupla (Σ, Γ, Θ, π) è chiamata Tiling System se:
  • Σ e Γ sono alfabeti finiti
  • Θ è un insieme finito di tile su Γ ∪ {#}
  • π : Γ → Σ è una proiezione
(Un Tiling System è composto da un linguaggio locale su Γ (definito dall’insieme Θ) e da una
proiezione)




                                                               Unambiguous Recognizable Two-dimensional Languages – p. 5/2
`
Tiling riconoscibilita

L ⊆ Σ∗∗ è tiling riconoscibile se esiste un Tiling System (Σ, Γ, Θ, π)
tale che L = π(L(Θ))
  •   L′ = L(Θ) è il linguaggio locale sottostante per L
  •   Γ è alfabeto locale per L
  •   Sia x ∈ L. Se x′ ∈ L′ è tale che π(x′ ) = x, allora x′ è controimmagine di x nel
      linguaggio locale L′

La famiglia di linguaggi 2D che sono tiling riconoscibili si chiama
REC




                                                                 Unambiguous Recognizable Two-dimensional Languages – p. 6/2
Esempio 1

Lcol−1n ∈ REC è il linguaggio delle picture p nelle quali la prima
colonna è uguale all’ultima, definito tramite:
  •   alfabeto locale Γ = {xy } con x, y ∈ Σ
  •   la proiezione π(xy ) = x
  •   un insieme di tile tali che se p′ = xy allora pi,j = x e pi,1 = y
                                      i,j

Il pedice y viene usato per trasportare l’informazione dalla prima
all’ultima colonna.
                      b   b      a   b   b            bb   bb   ab       bb        bb
                      a   a      b   a   a            aa   aa   ba       aa       aa
                p= b      a      a   a   b     p′ =   bb   ab   ab       ab        bb
                      a   b      b   b   a            aa   ba   ba       ba       aa
                      a   b      b   b   a            aa   ba   ba       ba       aa




                                                                     Unambiguous Recognizable Two-dimensional Languages – p. 7/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale




Esempio 2:
  •   Lcol−ij linguaggio di picture p di grandezza (m, n) con la proprietà che ∃1 ≤ i, j ≤ n
      tale che l’i-esima colonna di p è uguale alla j-esima colonna di p
  •   Lcol−ij = Σ∗∗       Lcol−1n       Σ∗∗
                      ⊖




                                    ⊖




  •   Lcol−1n ∈ REC, REC chiuso a                 : Lcol−ij ∈ REC
                                              ⊖




                                                                    Unambiguous Recognizable Two-dimensional Languages – p. 8/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale
  • star orizzontale e verticale




                                              Unambiguous Recognizable Two-dimensional Languages – p. 8/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale
  • star orizzontale e verticale
  • unione




                                              Unambiguous Recognizable Two-dimensional Languages – p. 8/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale
  • star orizzontale e verticale
  • unione
  • intersezione




                                              Unambiguous Recognizable Two-dimensional Languages – p. 8/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale
  • star orizzontale e verticale
  • unione
  • intersezione
  • rotazione




                                              Unambiguous Recognizable Two-dimensional Languages – p. 8/2
`
Proprieta di chiusura di REC

REC (in analogia con il caso monodimensionale) è chiuso rispetto
a:
  • concatenazione orizzontale e verticale
  • star orizzontale e verticale
  • unione
  • intersezione
  • rotazione

Tuttavia, REC NON è chiuso rispetto al complemento!




                                              Unambiguous Recognizable Two-dimensional Languages – p. 8/2
Automi 2D

  • Un modello interessante di automa bidimensionale per
    riconoscere i picture language è rappresentato dal
    two-dimensional on-line tessellation acceptor (2OTA)
     ◦   Può essere visto come un array infinito di automi a stati finiti identici in uno spazio
         2D (la computazione va in diagonale)
  • Deterministici (2DOTA) vs. non-deterministici
  • L(2DOT A)           L(2OT A)
  • REC = L(2OT A)




                                                                 Unambiguous Recognizable Two-dimensional Languages – p. 9/2
Linguaggi di stringhe non ambigui

  • L ⊆ Σ∗
  • Un automa per L è non ambiguo se ha un solo percorso
    accettante per ogni parola w ∈ L
  • L è non ambiguo se è accettato da un automa non ambiguo
  • Nota: un automa deterministico è non ambiguo, ma non
    viceversa
  • Linguaggi di stringhe: determinismo, non-determinismo e non
    ambiguità coincidono
  • Teorema: È decidibile se un dato automa è non ambiguo




                                            Unambiguous Recognizable Two-dimensional Languages – p. 10/2
Tiling system non ambigui

  • Definizione: una quadrupla (Σ, Γ, Θ, π) è un tiling system non
     ambiguo per un linguaggio bidimensionale L ⊆ Σ∗∗ se e solo se
     per ogni picture x ∈ L esiste un’unica picture locale y ∈ L(Θ)
     tale che x = π(y).
  • Alternativamente: la funzione π estesa a Γ∗∗ → Σ∗∗ è iniettiva

Informalmente, un tiling system è non ambiguo se ogni picture ha un’unica controimmagine
nel suo corrispondente linguaggio locale. Nota: generalizzazione in 2D della definizione di un
automa che riconosce un linguaggio di stringhe




                                                                Unambiguous Recognizable Two-dimensional Languages – p. 11/2
Linguaggi tiling riconoscibili non ambigui

  • Definizione: Un linguaggio L ⊆ Σ∗∗ è non ambiguo se e solo
    se ammette un tiling system non ambiguo (Σ, Γ, Θ, π)
  • U REC è la famiglia di tutti i linguaggi 2D riconoscibili non
    ambigui




                                                 Unambiguous Recognizable Two-dimensional Languages – p. 12/2
Linguaggi tiling riconoscibili non ambigui

  • Definizione: Un linguaggio L ⊆ Σ∗∗ è non ambiguo se e solo
    se ammette un tiling system non ambiguo (Σ, Γ, Θ, π)
  • U REC è la famiglia di tutti i linguaggi 2D riconoscibili non
    ambigui

Esempio: Il linguaggio Lcol−1n è in U REC .
  • Il suo tiling system è non ambiguo: c’è una sola possibile
    controimmagine per la prima colonna, un solo modo per
    costruire da essa la controimmagine della seconda colonna e
    cosi via.




                                                 Unambiguous Recognizable Two-dimensional Languages – p. 12/2
Domande

 • U REC   REC ?




                   Unambiguous Recognizable Two-dimensional Languages – p. 13/2
Domande

 • U REC    REC ?
 • U REC chiuso rispetto a quali operazioni?




                                               Unambiguous Recognizable Two-dimensional Languages – p. 13/2
Domande

 • U REC    REC ?
 • U REC chiuso rispetto a quali operazioni?
 • Controparte di U REC in L(2OT A)?




                                               Unambiguous Recognizable Two-dimensional Languages – p. 13/2
Domande

 • U REC     REC ?
 • U REC chiuso rispetto a quali operazioni?
 • Controparte di U REC in L(2OT A)?
 • La non ambiguità di un tiling system è decidibile?




                                               Unambiguous Recognizable Two-dimensional Languages – p. 13/2
Teorema di Hromkovic

Sia uns(L) la grandezza del minimo automa finito non
deterministico e non ambiguo che accetta L. Per ogni L ⊆ Σ∗ ,
linguaggio regolare di stringhe:
  • definiamo ML = aαβ                 α∈Σ∗ ,β∈Σ∗    dove aαβ = 1 se e solo se
      αβ ∈ L.
       ◦   Th. di Myhill-Nerode: il numero di righe differenti di ML è finito
  • Sia RankQ (M ) il rango di M nell’insieme dei razionali Q

Teorema (Hromkovic et al.): Per ogni linguaggio regolare L ⊆ Σ∗ ,
uns(L) ≥ RankQ (ML )
(Dà un limite minimo per il numero di stati di un automa che riconosce un linguaggio L)




                                                                  Unambiguous Recognizable Two-dimensional Languages – p. 14/2
`
Condizione necessaria per la non ambiguita

   •   L ⊆ Σ∗∗ linguaggio di picture
   •   Per ogni m ≥ 1, consideriamo L(m) ⊆ L (sottoinsieme di tutte le picture di m righe)
       L(m) è visto come linguaggio di stringhe sull’alfabeto Σm,1 delle colonne. Ad es:

                                                       2     32          32           32            32           3
         a   b   b   a   a                             a    b                     b   a    a
                                                     6   76   76                   76   76   7
         a   a   b   b   a                           6 a 76 a 76                   76 b 76 a 7
                                                                                 b 76
se p =                     ∈ L, allora la parola w = 6
                                                     6   76   76                        76   7
                                                         76   76                   76   76   7
         b   b   a   b   a                           6 b 76 b 76                 a 76 b 76 a 7
                                                     4   54   54                   54   54   5
         a   a   a   a   b                             a    a                    a    a    b

                                                                   82                 3                        9
                                                                   >
                                                                   >
                                                                   >6           x                              >
                                                                                                               >
                                                                                                               >
                                                                   >              7                            >
                                                                                y 7
                                                                   >6
                                                                   <                                           >
                                                                                                               =
 appartiene al linguaggio di stringhe L(4) sull′ alf abeto Σ4,1   = 6             7 |x, y, s, t ∈ Σ
                                                                     6            7
                                                                   >6
                                                                   >4
                                                                   >            s 7
                                                                                  5
                                                                                                    >
                                                                                                    >
                                                                                                    >
                                                                   >
                                                                   >                                >
                                                                                                    >
                                                                   :            t                   ;

   •   Si può definire ML = aαβ     α∈Σ∗ ,β∈Σ∗   dove aαβ = 1 se e solo se αβ ∈ L


                                                                  Unambiguous Recognizable Two-dimensional Languages – p. 15/2
`
Condizione necessaria per la non ambiguita

Teorema: Se L ∈ U REC, allora esiste un k tale che, per tutti gli
m ≥ 1, RankQ (ML (m)) ≤ k m

Dimostrazione:
  •   Supponiamo L ⊆ Σ∗∗ riconoscibile. (Σ, Γ, Θ, π) è il tiling system per L
  •   Esiste un k tale che per tutti gli m ≥ 1 c’è un automa (riconoscitore di stringhe) a stati
      finiti con km stati che accetta L(m)
       ◦   Caso 1D: Se abbiamo una rappresentazione di un linguaggio di stringhe
           riconoscibile S su ∆, nella forma di un linguaggio locale (costituito da un insieme
           di stringhe Z di lunghezza 2 su Γ ∪ {#}) e una proiezione π : Γ → ∆, possiamo
           definire un automa corrispondente
       ◦   Stati: lettere dell’alfabeto locale Γ più uno stato iniziale (corrispondente a #)
       ◦   Per ogni stringa xy ∈ Z aggiungiamo una transizione x −→ y con etichetta π(y)




                                                                    Unambiguous Recognizable Two-dimensional Languages – p. 15/2
`
Condizione necessaria per la non ambiguita

Teorema: Se L ∈ U REC, allora esiste un k tale che, per tutti gli
m ≥ 1, RankQ (ML (m)) ≤ k m

Dimostrazione:
  •   Tornando a L(m): alfabeti locali sono i corrispondenti insiemi di colonne locali
  •   k numero di simboli in Γ, allora l’alfabeto per L(m) ha al massimo km simboli
      (Nota: se il tiling system per L è non ambiguo, allora anche gli automi per L(m) sono
      non ambigui)
  •   Quindi: se L è in U REC, allora esiste un k tale che per ogni m ≥ 1 il linguaggio di
      stringhe L(m) è accettato da un automa di stringhe non ambiguo con km stati.
      Combinandolo con i risultati del teorema di Hromkovic si ottiene la prova.




                                                                  Unambiguous Recognizable Two-dimensional Languages – p. 15/2
`
Proprieta di UREC

Teorema: UREC è strettamente incluso in REC

Dimostrazione: Linguaggio L = Lcol−ij (Esempio 2)
  •   Per ogni m > 1, L(m): linguaggio di stringhe su Σm,1 con almeno due occorrenze
      dello stesso simbolo
  •   σ: cardinalità di Σ
  •   σ m : cardinalità di Σm,1
  •   Ora è un problema su stringhe: calcolare il rango di tutte le matrici ML (m).
  •   Dal lemma dimostrato in seguito si ottiene che RankQ (ML (m)) = 2σ
                                                                                    m+1
                                                                                            , dunque L
      non è in UREC.


Dato un linguaggio 2D riconoscibile L, L è inerentemente non ambiguo se non ci sono tiling
system non ambigui per L.

Teorema: Esistono linguaggi 2D riconoscibili che sono
inerentemente non ambigui
                                                                 Unambiguous Recognizable Two-dimensional Languages – p. 16/2
Lemma

Lemma: Sia ∆ un alfabeto finito, e S ⊆ ∆∗ un insieme di stringhe
con almeno due occorrenze dello stesso simbolo. Allora
RankQ (MS ) = 2Card(∆) + 1

Dimostrazione:
  •   Card(∆) = c
  •   ∆ = {a1 , a2 , . . . , ac }
  •   Il massimo numero di righe differenti in MS è 2c + 1 (ad esempio, righe indicizzate da
      a1 a1 , λ e da tutti gli α = ai1 ai2 . . . aih con 1 ≤ h ≤ c e i1 < i2 < . . . < ih )
  •   Consideriamo la matrice Mc composta da tutte queste diverse righe e colonne,
      riarrangiate come mostrato nella prossima slide




                                                                Unambiguous Recognizable Two-dimensional Languages – p. 17/2
Lemma

                         a1 a1   λ    a1   a2   a1 a2   a3   a1 a3        a2 a3        a1 a2 a3
               a1 a1      1      1    1    1     1      1     1              1               1
                 λ        1      0    0    0     0      0     0              0               0
                a1        1      0    1    0     1      0     1              0               1
                a2        1      0    0    1     1      0     0              1               1
      Mc =
               a1 a2      1      0    1    1     1      0     1              1               1
                a3        1      0    0    0     0      1     1              1               1
               a1 a3      1      0    1    0     1      1     1              1               1
               a2 a3      1      0    0    1     1      1     1              1               1
              a1 a2 a3    1      0    1    1     1      1     1              1               1

 •   La matrice Mc ha ordine 2c + 1
 •                                                    ′
     det(Mc ) = 0 (prova per induzione sulla matrice Mc , con m′ = 1 ∀1 ≤ i, j ≤ k con
                                                               ij
                       ′ = 0 ∀1 ≤ i, j ≤ k con i + j = k)
     i + j ≥ k + 1 e mij
 •   Allora RankQ (MS ) = 2c + 1


                                                                  Unambiguous Recognizable Two-dimensional Languages – p. 17/2
`
Proprieta di UREC

  • Proposizione: UREC è chiuso rispetto alle operazioni di
    intersezione e rotazione
      ◦ dim: se L1 , L2 ∈ REC si può costruire un tiling system per
        L1 ∩ L2 seguendo la prova che REC è chiuso rispetto
        all’intersezione. La chiusura rispetto alla rotazione
        consegue dalla definizione.
  • Proposizione:UREC non è chiuso rispetto alla
    concatenazione orizzontale e verticale e alla loro chiusura
     ◦ dim: Lcol−1n ∈ U REC , mentre Lcol−ij ∈ U REC . Ma:
                                               /
       Lcol−ij = Σ∗∗ Lcol−1n Σ∗∗
                    ⊖



                              ⊖
     ◦ Con tecniche simili (rotazioni) si dimostra che UREC non è
       chiuso rispetto alla concatenazione orizzontale e alla
       chiusura verticale e orizzontale



                                               Unambiguous Recognizable Two-dimensional Languages – p. 18/2
2OTA non ambigui

  • REC = L(2OT A)
  • U REC ?
  • Definizione: un 2OTA è non ambiguo (2U OT A) se ogni picture
    ha al massimo una sola computazione accettante
  • Proposizione: L(2U OT A) = U REC
  • Ogni 2DOT A è in particolare un 2U OT A
  • L(2DOT A)        L(2OT A)
  • L(2DOT A) ⊆ L(2U OT A) ⊆ L(2OT A)
  • . . . le inclusioni sono strette?

Teorema: le inclusioni L(2DOT A) ⊂ L(2U OT A) ⊂ L(2OT A) sono
tutte strette


                                              Unambiguous Recognizable Two-dimensional Languages – p. 19/2
2OTA non ambigui

Dimostrazione:
  •   L(2U OT A) ⊂ L(2OT A) può essere dedotta dal fatto che U REC ⊂ REC e che
      REC = L(2OT A) e U REC = L(2U OT A)
  •   L(2DOT A) ⊂ L(2U OT A):
       ◦   L linguaggio di quadrati su Σ = {a, b} con l’ultima riga uguale all’ultima colonna.
       ◦   L ∈ U REC perchè possiamo definire un tiling system dove l’informazione su ogni
           lettera dell’ultima riga può essere portata fino alla diagonale e da lì all’ultima
           colonna




                                                                  Unambiguous Recognizable Two-dimensional Languages – p. 19/2
2OTA non ambigui

Dimostrazione:

                       b   b    a   a    a             1b
                                                        a     2b
                                                               a   2a
                                                                    a    2a
                                                                          a        2a
                                                                                    a
                       a   a    a   b    b             0a
                                                        a     1a
                                                               b   2a
                                                                    b    2b
                                                                          b        2b
                                                                                    b
                 p= b      a    a   b    b      p′ = 0b
                                                      a       0a
                                                               b   1a
                                                                    b    2b
                                                                          b        2b
                                                                                    b
                       a   b    b   b    a             0a
                                                        a     0b
                                                               b   0b
                                                                    b    1b
                                                                          a        2a
                                                                                    a
                       a   b    b   a    a             0a
                                                        a     0b
                                                               b   0b
                                                                    b    0a
                                                                          a        1a
                                                                                    a


  •   Γ = {0y , 1y , 2y } con x, y ∈ {a, b} alfabeto locale
            x x x
  •   0: solo sotto la diagonale
  •   1: solo sulla diagonale
  •   2: solo sopra la diagonale
  •   Apici: valore reale del simbolo
  •   Pedici: informazione trasportata




                                                                    Unambiguous Recognizable Two-dimensional Languages – p. 19/2
2OTA non ambigui

Dimostrazione:

                      b   b   a   a   a            1b
                                                    a    2b
                                                          a   2a
                                                               a     2a
                                                                      a        2a
                                                                                a
                      a   a   a   b   b            0a
                                                    a    1a
                                                          b   2a
                                                               b     2b
                                                                      b        2b
                                                                                b
                p= b      a   a   b   b      p′ = 0b
                                                   a     0a
                                                          b   1a
                                                               b     2b
                                                                      b        2b
                                                                                b
                      a   b   b   b   a            0a
                                                    a    0b
                                                          b   0b
                                                               b     1b
                                                                      a        2a
                                                                                a
                      a   b   b   a   a            0a
                                                    a    0b
                                                          b   0b
                                                               b     0a
                                                                      a        1a
                                                                                a


 Ogni picture in L ha una unica controimmagine in questo linguaggio locale: quindi, visto che
L ∈ L(2U OT A) e L ∈ L(2DOT A) (dimostrato) l’inclusione L(2DOT A) ⊂ L(2U OT A) è
                      /
stretta.




                                                                Unambiguous Recognizable Two-dimensional Languages – p. 19/2
Un problema indecidibile

Problema di Unica Decifrabilità 2D:
  • Σ alfabeto finito, S = {(u1 , v1 ), . . . , (uk , vk )} sistema dove
    ui , vi ∈ Σ∗ per tutte le i = 1, . . . , k
  • S è unicamente decifrabile solo se ui1 . . . uip = uj1 . . . ujq e
    vi1 . . . vip = vj1 . . . vjq implicano che p = q e
    (i1 , . . . , ip ) = (j1 , . . . , jp )

Il Problema di Unica Decifrabilità 2D è indecidibile [Chrobak,
Ritter]




                                                      Unambiguous Recognizable Two-dimensional Languages – p. 20/2
Un problema indecidibile

Teorema: Dato un tiling system (Σ, ∆, Θ, π) è indecidibile se esso è
non ambiguo

Dimostrazione: si riconduce il problema a quello di Unica Decifrabilità 2D
  •   S = (u1 , v1 ), . . . , (uk , vk ) sistema dove ui , vi ∈ Σ∗ per tutti gli i = 1, . . . , k
  •   c∈Σ
       /
  •   Definiamo L(S) su Σ ∪ {c} come insieme di rettangoli tali che:
       ◦   per ogni combinazione (i1 , . . . , ip ) di 1, . . . , k c’è un rettangolo in L(S) tale che la
           prima riga è la stringa cui1 . . . uip e la prima colonna è la stringa cvi1 . . . vip e
           tutte le altre lettere sono c
       ◦   È facile dimostrare che L(S) ∈ REC (si può costruire un tiling system per esso)




                                                                            Unambiguous Recognizable Two-dimensional Languages – p. 20/2
Un problema indecidibile


                         c0       u′
                                   i1          u′
                                                i2         ...        u′
                                                                       ip
                          ′
                         vi1      ci1
                          ′
                         vi2                   ci2
                          .
                          .
                          .
                          ′
                         vip                                           cip

  •   Alfabeto locale: Γ = Σ′ ∪ {c0 , c1 , . . . , ck } dove Σ′ è l’alfabeto locale per le stringhe
            ′
      u′ , vj per tutti gli i, j = 1, . . . , k
       i
  •                                                              ′
      La proiezione π mette in corrispondenza ogni stringa u′ , vj su ui , vj e ci su c
                                                            i
  •   (Σ, ∆, Θ, π) è non ambiguo se e solo se S è unicamente decifrabile




                                                                       Unambiguous Recognizable Two-dimensional Languages – p. 20/2
Conclusioni

  • U REC     REC
  • U REC è chiuso rispetto a intersezione e rotazione
  • U REC non è chiuso rispetto a concatenazione orizzontale e
    verticale e loro chiusura
  • U REC = L(2U OT A)
  • La non ambiguità di un tiling system non è decidibile

Problemi aperti:
  • chiusura rispetto al complemento
  • decidibilità della non ambiguità di un picture language




                                               Unambiguous Recognizable Two-dimensional Languages – p. 21/2

Contenu connexe

Plus de Davide Eynard

ReSearch - Searching for Researchers
ReSearch - Searching for ResearchersReSearch - Searching for Researchers
ReSearch - Searching for ResearchersDavide Eynard
 
PhDLinux: A Linux Crash Course for PhD Students
PhDLinux: A Linux Crash Course for PhD StudentsPhDLinux: A Linux Crash Course for PhD Students
PhDLinux: A Linux Crash Course for PhD StudentsDavide Eynard
 
Exploiting user gratification for collaborative semantic annotation
Exploiting user gratification for collaborative semantic annotationExploiting user gratification for collaborative semantic annotation
Exploiting user gratification for collaborative semantic annotationDavide Eynard
 
Performance Attacks on Intrusion Detection Systems
Performance Attacks on Intrusion Detection SystemsPerformance Attacks on Intrusion Detection Systems
Performance Attacks on Intrusion Detection SystemsDavide Eynard
 
Cracking Codes With Genetic Algorithms
Cracking Codes With Genetic AlgorithmsCracking Codes With Genetic Algorithms
Cracking Codes With Genetic AlgorithmsDavide Eynard
 
Fast algorithms for large scale genome alignment and comparison
Fast algorithms for large scale genome alignment and comparisonFast algorithms for large scale genome alignment and comparison
Fast algorithms for large scale genome alignment and comparisonDavide Eynard
 
Research on collaborative information sharing systems
Research on collaborative information sharing systemsResearch on collaborative information sharing systems
Research on collaborative information sharing systemsDavide Eynard
 

Plus de Davide Eynard (8)

ReSearch - Searching for Researchers
ReSearch - Searching for ResearchersReSearch - Searching for Researchers
ReSearch - Searching for Researchers
 
PhDLinux: A Linux Crash Course for PhD Students
PhDLinux: A Linux Crash Course for PhD StudentsPhDLinux: A Linux Crash Course for PhD Students
PhDLinux: A Linux Crash Course for PhD Students
 
Exploiting user gratification for collaborative semantic annotation
Exploiting user gratification for collaborative semantic annotationExploiting user gratification for collaborative semantic annotation
Exploiting user gratification for collaborative semantic annotation
 
Performance Attacks on Intrusion Detection Systems
Performance Attacks on Intrusion Detection SystemsPerformance Attacks on Intrusion Detection Systems
Performance Attacks on Intrusion Detection Systems
 
Cracking Codes With Genetic Algorithms
Cracking Codes With Genetic AlgorithmsCracking Codes With Genetic Algorithms
Cracking Codes With Genetic Algorithms
 
Rewire the Net
Rewire the NetRewire the Net
Rewire the Net
 
Fast algorithms for large scale genome alignment and comparison
Fast algorithms for large scale genome alignment and comparisonFast algorithms for large scale genome alignment and comparison
Fast algorithms for large scale genome alignment and comparison
 
Research on collaborative information sharing systems
Research on collaborative information sharing systemsResearch on collaborative information sharing systems
Research on collaborative information sharing systems
 

Unambiguous Recognizable Two-dimensional Languages

  • 1. Unambiguous Recognizable Two-dimensional Languages [M. Anselmo, D. Giammarresi, M. Madonia, A. Restivo] Davide Eynard, Antonino Tumeo eynard@elet.polimi.it, tumeo@elet.polimi.it Department of Electronics and Information Politecnico di Milano Unambiguous Recognizable Two-dimensional Languages – p. 1/2
  • 2. Concetti preliminari • Σ alfabeto finito • Una stringa bidimensionale (o picture) su Σ è un array rettangolare di elementi di Σ • L’insieme di tutte le stringhe bidimensionali su Σ è denotato da Σ∗∗ e un linguaggio bidimensionale su Σ è un sottoinsieme di Σ∗∗ . • Data una picture p ∈ Σ∗∗ : ◦ pi,j simbolo in p con coordinate (i, j) ◦ ℓ1 (p) numero di righe di p ◦ ℓ2 (p) numero di colonne di p ◦ (ℓ1 (p), ℓ2 (p)) dimensione della picture p • Σm,n insieme di tutte le stringhe bidimensionali su Σ di dimensioni (m, n) Unambiguous Recognizable Two-dimensional Languages – p. 2/2
  • 3. Concetti preliminari Siano p e q picture sull’alfabeto Σ, di grandezza (m, n) e (m′ , n′ ), m, n, m′ , n′ ≥ 0. Si definiscono i seguenti operatori: • Concatenazione orizzontale di p e q (p q ): solo se m = m′ ⊖ • Concatenazione verticale di p e q (p ⊖ q ): solo se n = n′ p p q= p q p⊖q = ⊖ q Iterando le operazioni di concatenazione si ottiene la chiusura (o star ) orizzontale e verticale. Unambiguous Recognizable Two-dimensional Languages – p. 2/2
  • 4. Linguaggio Locale • Tile: picture quadrata di dimensioni (2, 2) • Data una picture x, B2,2 (x) è l’insieme di tutti i blocchi di x di grandezza (2, 2) • Un linguaggio 2D L ⊆ Γ∗∗ è locale se esiste un insieme finito Θ di tile sull’alfabeto Γ ∪ {#} tale che L = {x ∈ Γ∗∗ |B2,2 (x) ⊆ Θ}. In questo caso si scrive L = L(Θ) Unambiguous Recognizable Two-dimensional Languages – p. 3/2
  • 5. Proiezione • Siano Γ e Σ alfabeti finiti • Si definisce proiezione un mapping π : Γ → Σ • La proiezione π(x) di x ∈ Σ∗∗ è la picture x′ ∈ Σ∗∗ tale che x′ (i, j) = π(x(i, j)) per tutti gli 1 ≤ i ≤ ℓ1 (x), 1 ≤ j ≤ ℓ2 (x) • Se L ⊆ Γ∗∗ è un linguaggio di picture su Γ, π(L) = {x′ |x′ = π(x)∀x ∈ L} ⊆ Σ∗∗ Unambiguous Recognizable Two-dimensional Languages – p. 4/2
  • 6. Tiling system Una quadrupla (Σ, Γ, Θ, π) è chiamata Tiling System se: • Σ e Γ sono alfabeti finiti • Θ è un insieme finito di tile su Γ ∪ {#} • π : Γ → Σ è una proiezione (Un Tiling System è composto da un linguaggio locale su Γ (definito dall’insieme Θ) e da una proiezione) Unambiguous Recognizable Two-dimensional Languages – p. 5/2
  • 7. ` Tiling riconoscibilita L ⊆ Σ∗∗ è tiling riconoscibile se esiste un Tiling System (Σ, Γ, Θ, π) tale che L = π(L(Θ)) • L′ = L(Θ) è il linguaggio locale sottostante per L • Γ è alfabeto locale per L • Sia x ∈ L. Se x′ ∈ L′ è tale che π(x′ ) = x, allora x′ è controimmagine di x nel linguaggio locale L′ La famiglia di linguaggi 2D che sono tiling riconoscibili si chiama REC Unambiguous Recognizable Two-dimensional Languages – p. 6/2
  • 8. Esempio 1 Lcol−1n ∈ REC è il linguaggio delle picture p nelle quali la prima colonna è uguale all’ultima, definito tramite: • alfabeto locale Γ = {xy } con x, y ∈ Σ • la proiezione π(xy ) = x • un insieme di tile tali che se p′ = xy allora pi,j = x e pi,1 = y i,j Il pedice y viene usato per trasportare l’informazione dalla prima all’ultima colonna. b b a b b bb bb ab bb bb a a b a a aa aa ba aa aa p= b a a a b p′ = bb ab ab ab bb a b b b a aa ba ba ba aa a b b b a aa ba ba ba aa Unambiguous Recognizable Two-dimensional Languages – p. 7/2
  • 9. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale Esempio 2: • Lcol−ij linguaggio di picture p di grandezza (m, n) con la proprietà che ∃1 ≤ i, j ≤ n tale che l’i-esima colonna di p è uguale alla j-esima colonna di p • Lcol−ij = Σ∗∗ Lcol−1n Σ∗∗ ⊖ ⊖ • Lcol−1n ∈ REC, REC chiuso a : Lcol−ij ∈ REC ⊖ Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 10. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale • star orizzontale e verticale Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 11. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale • star orizzontale e verticale • unione Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 12. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale • star orizzontale e verticale • unione • intersezione Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 13. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale • star orizzontale e verticale • unione • intersezione • rotazione Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 14. ` Proprieta di chiusura di REC REC (in analogia con il caso monodimensionale) è chiuso rispetto a: • concatenazione orizzontale e verticale • star orizzontale e verticale • unione • intersezione • rotazione Tuttavia, REC NON è chiuso rispetto al complemento! Unambiguous Recognizable Two-dimensional Languages – p. 8/2
  • 15. Automi 2D • Un modello interessante di automa bidimensionale per riconoscere i picture language è rappresentato dal two-dimensional on-line tessellation acceptor (2OTA) ◦ Può essere visto come un array infinito di automi a stati finiti identici in uno spazio 2D (la computazione va in diagonale) • Deterministici (2DOTA) vs. non-deterministici • L(2DOT A) L(2OT A) • REC = L(2OT A) Unambiguous Recognizable Two-dimensional Languages – p. 9/2
  • 16. Linguaggi di stringhe non ambigui • L ⊆ Σ∗ • Un automa per L è non ambiguo se ha un solo percorso accettante per ogni parola w ∈ L • L è non ambiguo se è accettato da un automa non ambiguo • Nota: un automa deterministico è non ambiguo, ma non viceversa • Linguaggi di stringhe: determinismo, non-determinismo e non ambiguità coincidono • Teorema: È decidibile se un dato automa è non ambiguo Unambiguous Recognizable Two-dimensional Languages – p. 10/2
  • 17. Tiling system non ambigui • Definizione: una quadrupla (Σ, Γ, Θ, π) è un tiling system non ambiguo per un linguaggio bidimensionale L ⊆ Σ∗∗ se e solo se per ogni picture x ∈ L esiste un’unica picture locale y ∈ L(Θ) tale che x = π(y). • Alternativamente: la funzione π estesa a Γ∗∗ → Σ∗∗ è iniettiva Informalmente, un tiling system è non ambiguo se ogni picture ha un’unica controimmagine nel suo corrispondente linguaggio locale. Nota: generalizzazione in 2D della definizione di un automa che riconosce un linguaggio di stringhe Unambiguous Recognizable Two-dimensional Languages – p. 11/2
  • 18. Linguaggi tiling riconoscibili non ambigui • Definizione: Un linguaggio L ⊆ Σ∗∗ è non ambiguo se e solo se ammette un tiling system non ambiguo (Σ, Γ, Θ, π) • U REC è la famiglia di tutti i linguaggi 2D riconoscibili non ambigui Unambiguous Recognizable Two-dimensional Languages – p. 12/2
  • 19. Linguaggi tiling riconoscibili non ambigui • Definizione: Un linguaggio L ⊆ Σ∗∗ è non ambiguo se e solo se ammette un tiling system non ambiguo (Σ, Γ, Θ, π) • U REC è la famiglia di tutti i linguaggi 2D riconoscibili non ambigui Esempio: Il linguaggio Lcol−1n è in U REC . • Il suo tiling system è non ambiguo: c’è una sola possibile controimmagine per la prima colonna, un solo modo per costruire da essa la controimmagine della seconda colonna e cosi via. Unambiguous Recognizable Two-dimensional Languages – p. 12/2
  • 20. Domande • U REC REC ? Unambiguous Recognizable Two-dimensional Languages – p. 13/2
  • 21. Domande • U REC REC ? • U REC chiuso rispetto a quali operazioni? Unambiguous Recognizable Two-dimensional Languages – p. 13/2
  • 22. Domande • U REC REC ? • U REC chiuso rispetto a quali operazioni? • Controparte di U REC in L(2OT A)? Unambiguous Recognizable Two-dimensional Languages – p. 13/2
  • 23. Domande • U REC REC ? • U REC chiuso rispetto a quali operazioni? • Controparte di U REC in L(2OT A)? • La non ambiguità di un tiling system è decidibile? Unambiguous Recognizable Two-dimensional Languages – p. 13/2
  • 24. Teorema di Hromkovic Sia uns(L) la grandezza del minimo automa finito non deterministico e non ambiguo che accetta L. Per ogni L ⊆ Σ∗ , linguaggio regolare di stringhe: • definiamo ML = aαβ α∈Σ∗ ,β∈Σ∗ dove aαβ = 1 se e solo se αβ ∈ L. ◦ Th. di Myhill-Nerode: il numero di righe differenti di ML è finito • Sia RankQ (M ) il rango di M nell’insieme dei razionali Q Teorema (Hromkovic et al.): Per ogni linguaggio regolare L ⊆ Σ∗ , uns(L) ≥ RankQ (ML ) (Dà un limite minimo per il numero di stati di un automa che riconosce un linguaggio L) Unambiguous Recognizable Two-dimensional Languages – p. 14/2
  • 25. ` Condizione necessaria per la non ambiguita • L ⊆ Σ∗∗ linguaggio di picture • Per ogni m ≥ 1, consideriamo L(m) ⊆ L (sottoinsieme di tutte le picture di m righe) L(m) è visto come linguaggio di stringhe sull’alfabeto Σm,1 delle colonne. Ad es: 2 32 32 32 32 3 a b b a a a b b a a 6 76 76 76 76 7 a a b b a 6 a 76 a 76 76 b 76 a 7 b 76 se p = ∈ L, allora la parola w = 6 6 76 76 76 7 76 76 76 76 7 b b a b a 6 b 76 b 76 a 76 b 76 a 7 4 54 54 54 54 5 a a a a b a a a a b 82 3 9 > > >6 x > > > > 7 > y 7 >6 < > = appartiene al linguaggio di stringhe L(4) sull′ alf abeto Σ4,1 = 6 7 |x, y, s, t ∈ Σ 6 7 >6 >4 > s 7 5 > > > > > > > : t ; • Si può definire ML = aαβ α∈Σ∗ ,β∈Σ∗ dove aαβ = 1 se e solo se αβ ∈ L Unambiguous Recognizable Two-dimensional Languages – p. 15/2
  • 26. ` Condizione necessaria per la non ambiguita Teorema: Se L ∈ U REC, allora esiste un k tale che, per tutti gli m ≥ 1, RankQ (ML (m)) ≤ k m Dimostrazione: • Supponiamo L ⊆ Σ∗∗ riconoscibile. (Σ, Γ, Θ, π) è il tiling system per L • Esiste un k tale che per tutti gli m ≥ 1 c’è un automa (riconoscitore di stringhe) a stati finiti con km stati che accetta L(m) ◦ Caso 1D: Se abbiamo una rappresentazione di un linguaggio di stringhe riconoscibile S su ∆, nella forma di un linguaggio locale (costituito da un insieme di stringhe Z di lunghezza 2 su Γ ∪ {#}) e una proiezione π : Γ → ∆, possiamo definire un automa corrispondente ◦ Stati: lettere dell’alfabeto locale Γ più uno stato iniziale (corrispondente a #) ◦ Per ogni stringa xy ∈ Z aggiungiamo una transizione x −→ y con etichetta π(y) Unambiguous Recognizable Two-dimensional Languages – p. 15/2
  • 27. ` Condizione necessaria per la non ambiguita Teorema: Se L ∈ U REC, allora esiste un k tale che, per tutti gli m ≥ 1, RankQ (ML (m)) ≤ k m Dimostrazione: • Tornando a L(m): alfabeti locali sono i corrispondenti insiemi di colonne locali • k numero di simboli in Γ, allora l’alfabeto per L(m) ha al massimo km simboli (Nota: se il tiling system per L è non ambiguo, allora anche gli automi per L(m) sono non ambigui) • Quindi: se L è in U REC, allora esiste un k tale che per ogni m ≥ 1 il linguaggio di stringhe L(m) è accettato da un automa di stringhe non ambiguo con km stati. Combinandolo con i risultati del teorema di Hromkovic si ottiene la prova. Unambiguous Recognizable Two-dimensional Languages – p. 15/2
  • 28. ` Proprieta di UREC Teorema: UREC è strettamente incluso in REC Dimostrazione: Linguaggio L = Lcol−ij (Esempio 2) • Per ogni m > 1, L(m): linguaggio di stringhe su Σm,1 con almeno due occorrenze dello stesso simbolo • σ: cardinalità di Σ • σ m : cardinalità di Σm,1 • Ora è un problema su stringhe: calcolare il rango di tutte le matrici ML (m). • Dal lemma dimostrato in seguito si ottiene che RankQ (ML (m)) = 2σ m+1 , dunque L non è in UREC. Dato un linguaggio 2D riconoscibile L, L è inerentemente non ambiguo se non ci sono tiling system non ambigui per L. Teorema: Esistono linguaggi 2D riconoscibili che sono inerentemente non ambigui Unambiguous Recognizable Two-dimensional Languages – p. 16/2
  • 29. Lemma Lemma: Sia ∆ un alfabeto finito, e S ⊆ ∆∗ un insieme di stringhe con almeno due occorrenze dello stesso simbolo. Allora RankQ (MS ) = 2Card(∆) + 1 Dimostrazione: • Card(∆) = c • ∆ = {a1 , a2 , . . . , ac } • Il massimo numero di righe differenti in MS è 2c + 1 (ad esempio, righe indicizzate da a1 a1 , λ e da tutti gli α = ai1 ai2 . . . aih con 1 ≤ h ≤ c e i1 < i2 < . . . < ih ) • Consideriamo la matrice Mc composta da tutte queste diverse righe e colonne, riarrangiate come mostrato nella prossima slide Unambiguous Recognizable Two-dimensional Languages – p. 17/2
  • 30. Lemma a1 a1 λ a1 a2 a1 a2 a3 a1 a3 a2 a3 a1 a2 a3 a1 a1 1 1 1 1 1 1 1 1 1 λ 1 0 0 0 0 0 0 0 0 a1 1 0 1 0 1 0 1 0 1 a2 1 0 0 1 1 0 0 1 1 Mc = a1 a2 1 0 1 1 1 0 1 1 1 a3 1 0 0 0 0 1 1 1 1 a1 a3 1 0 1 0 1 1 1 1 1 a2 a3 1 0 0 1 1 1 1 1 1 a1 a2 a3 1 0 1 1 1 1 1 1 1 • La matrice Mc ha ordine 2c + 1 • ′ det(Mc ) = 0 (prova per induzione sulla matrice Mc , con m′ = 1 ∀1 ≤ i, j ≤ k con ij ′ = 0 ∀1 ≤ i, j ≤ k con i + j = k) i + j ≥ k + 1 e mij • Allora RankQ (MS ) = 2c + 1 Unambiguous Recognizable Two-dimensional Languages – p. 17/2
  • 31. ` Proprieta di UREC • Proposizione: UREC è chiuso rispetto alle operazioni di intersezione e rotazione ◦ dim: se L1 , L2 ∈ REC si può costruire un tiling system per L1 ∩ L2 seguendo la prova che REC è chiuso rispetto all’intersezione. La chiusura rispetto alla rotazione consegue dalla definizione. • Proposizione:UREC non è chiuso rispetto alla concatenazione orizzontale e verticale e alla loro chiusura ◦ dim: Lcol−1n ∈ U REC , mentre Lcol−ij ∈ U REC . Ma: / Lcol−ij = Σ∗∗ Lcol−1n Σ∗∗ ⊖ ⊖ ◦ Con tecniche simili (rotazioni) si dimostra che UREC non è chiuso rispetto alla concatenazione orizzontale e alla chiusura verticale e orizzontale Unambiguous Recognizable Two-dimensional Languages – p. 18/2
  • 32. 2OTA non ambigui • REC = L(2OT A) • U REC ? • Definizione: un 2OTA è non ambiguo (2U OT A) se ogni picture ha al massimo una sola computazione accettante • Proposizione: L(2U OT A) = U REC • Ogni 2DOT A è in particolare un 2U OT A • L(2DOT A) L(2OT A) • L(2DOT A) ⊆ L(2U OT A) ⊆ L(2OT A) • . . . le inclusioni sono strette? Teorema: le inclusioni L(2DOT A) ⊂ L(2U OT A) ⊂ L(2OT A) sono tutte strette Unambiguous Recognizable Two-dimensional Languages – p. 19/2
  • 33. 2OTA non ambigui Dimostrazione: • L(2U OT A) ⊂ L(2OT A) può essere dedotta dal fatto che U REC ⊂ REC e che REC = L(2OT A) e U REC = L(2U OT A) • L(2DOT A) ⊂ L(2U OT A): ◦ L linguaggio di quadrati su Σ = {a, b} con l’ultima riga uguale all’ultima colonna. ◦ L ∈ U REC perchè possiamo definire un tiling system dove l’informazione su ogni lettera dell’ultima riga può essere portata fino alla diagonale e da lì all’ultima colonna Unambiguous Recognizable Two-dimensional Languages – p. 19/2
  • 34. 2OTA non ambigui Dimostrazione: b b a a a 1b a 2b a 2a a 2a a 2a a a a a b b 0a a 1a b 2a b 2b b 2b b p= b a a b b p′ = 0b a 0a b 1a b 2b b 2b b a b b b a 0a a 0b b 0b b 1b a 2a a a b b a a 0a a 0b b 0b b 0a a 1a a • Γ = {0y , 1y , 2y } con x, y ∈ {a, b} alfabeto locale x x x • 0: solo sotto la diagonale • 1: solo sulla diagonale • 2: solo sopra la diagonale • Apici: valore reale del simbolo • Pedici: informazione trasportata Unambiguous Recognizable Two-dimensional Languages – p. 19/2
  • 35. 2OTA non ambigui Dimostrazione: b b a a a 1b a 2b a 2a a 2a a 2a a a a a b b 0a a 1a b 2a b 2b b 2b b p= b a a b b p′ = 0b a 0a b 1a b 2b b 2b b a b b b a 0a a 0b b 0b b 1b a 2a a a b b a a 0a a 0b b 0b b 0a a 1a a Ogni picture in L ha una unica controimmagine in questo linguaggio locale: quindi, visto che L ∈ L(2U OT A) e L ∈ L(2DOT A) (dimostrato) l’inclusione L(2DOT A) ⊂ L(2U OT A) è / stretta. Unambiguous Recognizable Two-dimensional Languages – p. 19/2
  • 36. Un problema indecidibile Problema di Unica Decifrabilità 2D: • Σ alfabeto finito, S = {(u1 , v1 ), . . . , (uk , vk )} sistema dove ui , vi ∈ Σ∗ per tutte le i = 1, . . . , k • S è unicamente decifrabile solo se ui1 . . . uip = uj1 . . . ujq e vi1 . . . vip = vj1 . . . vjq implicano che p = q e (i1 , . . . , ip ) = (j1 , . . . , jp ) Il Problema di Unica Decifrabilità 2D è indecidibile [Chrobak, Ritter] Unambiguous Recognizable Two-dimensional Languages – p. 20/2
  • 37. Un problema indecidibile Teorema: Dato un tiling system (Σ, ∆, Θ, π) è indecidibile se esso è non ambiguo Dimostrazione: si riconduce il problema a quello di Unica Decifrabilità 2D • S = (u1 , v1 ), . . . , (uk , vk ) sistema dove ui , vi ∈ Σ∗ per tutti gli i = 1, . . . , k • c∈Σ / • Definiamo L(S) su Σ ∪ {c} come insieme di rettangoli tali che: ◦ per ogni combinazione (i1 , . . . , ip ) di 1, . . . , k c’è un rettangolo in L(S) tale che la prima riga è la stringa cui1 . . . uip e la prima colonna è la stringa cvi1 . . . vip e tutte le altre lettere sono c ◦ È facile dimostrare che L(S) ∈ REC (si può costruire un tiling system per esso) Unambiguous Recognizable Two-dimensional Languages – p. 20/2
  • 38. Un problema indecidibile c0 u′ i1 u′ i2 ... u′ ip ′ vi1 ci1 ′ vi2 ci2 . . . ′ vip cip • Alfabeto locale: Γ = Σ′ ∪ {c0 , c1 , . . . , ck } dove Σ′ è l’alfabeto locale per le stringhe ′ u′ , vj per tutti gli i, j = 1, . . . , k i • ′ La proiezione π mette in corrispondenza ogni stringa u′ , vj su ui , vj e ci su c i • (Σ, ∆, Θ, π) è non ambiguo se e solo se S è unicamente decifrabile Unambiguous Recognizable Two-dimensional Languages – p. 20/2
  • 39. Conclusioni • U REC REC • U REC è chiuso rispetto a intersezione e rotazione • U REC non è chiuso rispetto a concatenazione orizzontale e verticale e loro chiusura • U REC = L(2U OT A) • La non ambiguità di un tiling system non è decidibile Problemi aperti: • chiusura rispetto al complemento • decidibilità della non ambiguità di un picture language Unambiguous Recognizable Two-dimensional Languages – p. 21/2