Towards a characterization of regular languages generated by finite splicing systems: where are we?...

24
“Towards a characterization of regular languages generated by finite splicing systems: where are we?” Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo Mauri Dipartimento di Informatica Sistemistica e Comunicazioni, Univ. of Milano - Bicocca, ITALY Clelia De Felice, Rosalba Zizza Dipartimento di Informatica e Applicazioni, Univ. of Salerno, ITALY

Transcript of Towards a characterization of regular languages generated by finite splicing systems: where are we?...

Page 1: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

“Towards a characterization of regular languages generated by finite splicing

systems: where are we?”

Ravello, 19-21 Settembre 2003

Paola Bonizzoni, Giancarlo Mauri

Dipartimento di Informatica Sistemistica e Comunicazioni,

Univ. of Milano - Bicocca, ITALY

Clelia De Felice, Rosalba Zizza

Dipartimento di Informatica e Applicazioni,

Univ. of Salerno, ITALY

Page 2: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

COFINauditorium

COFINauditorium working on

splicing themes

after this talk

Page 3: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

: (x u1u2 y, wu3u4 z)r = u1 | u2 $ u3 | u4 rule

(x u1 u4 z , wu3 u2 y)

Paun’s linear splicing operation (1996)

cut

paste

Pattern recognition

x y w z

sites

u1 u2 u3 u4

xw

zy

u1

u2 u3

u4

x u1 zu4 w u3 u2 y

Page 4: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Example

mesto, passo s| s $ s | t

me s s o, pa s t ou2u1 u4u3

Page 5: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

L(SPA) = I (I) 2(I) ... = n0 n(I) splicing language

H(F1, F2) = {L=L(SPA) | SPA = (A,I,R), IF1, R F2, F1, F2 families in the Chomsky hierarchy}

Paun’s linear splicing system (1996) SPA = (A, I, R)

A=finite alphabet; I A* initial language; RA*|A*$A*|A* set of rules;

I \ R FIN REG LIN CF CS RE

FIN FIN,REG FIN,RE FIN,RE FIN,RE FIN,RE FIN,RE

REG REG REG,RE REG,RE REG,RE REG,RE REG,RE

LIN LIN,CF LIN,RE LIN,RE LIN,RE LIN,RE LIN,RE

CF CF CF,RE CF,RE CF,RE CF,RE CF,RE

CS CS,RE CS,RE CS,RE CS,RE CS,RE CS,RE

RE RE RE RE RE RE RE

{ L | L=L(SPA), I, R finite sets } Regular

{ L | L=L(SPA), I regular, R finite } = Regular

(aa)* L(SPA) (proper subclass)

[Head, Paun, Pixton,Handbook of Formal Languages, 1996]H(F1, F2)

Page 6: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Finite linear splicing system: SPA = ( A, I, R) with A, I, R finite sets

In the following…In the following…

Characterize regular languages generated by finite linear Paun splicing

systemsProblem 1

Problem 2Given L regular,

can we decide whether L H(FIN,FIN) ?

Page 7: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Computational power of splicing languages and regular languages: a short survey…

Head 1987 (Bull. Math. Biol.): SLT=languages generated by Null Context splicing systems

(triples (1,x,1))

Gatterdam 1992 (SIAM J. of Comp.): specific finite Head’s splicing systems

Culik, Harju 1992 (Discr. App. Math.): (Head’s) splicing and domino languages

Kim 1997 (SIAM J. of Comp.): from the finite state automaton recognizing I to the f.s.a.

recognizing L(SH)

Kim 1997 (Cocoon97): given LREG, a finite set of triples X, we can decide whether IL s.t.

L= L(SH)

Pixton 1996 (Theor. Comp. Sci.): if F is a full AFL, then H(FA,FIN) FA

Mateescu, Paun, Rozenberg, Salomaa 1998 (Discr. Appl. Math.): simple splicing systems

(all rules a|1 $ a|1, aA); we can decide whether LREG, L= L(SPA ), SPA simple splicing system.

Head 1998 (Computing with Bio-Molecules): given LREG, we can decide whether L= L(SPA )

with

“special” one sided-contexts rR: r=u|1 $ v|1 (resp. r=1|u $ 1|v), u|1 $ u|1R (resp. 1|u $ 1|uR)

Head 1998 (Discr. Appl. Math.): SLT=hierarchy of simple splicing systems

Bonizzoni, Ferretti, Mauri, Zizza 2001 (IPL): Strict inclusion among finite splicing systems

Head 2002 Splicing systems: regular languages and below (DNA8)

Page 8: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Model Language

Generative process of the language

Consistency of the model

Main DifficultyMain Difficulty

c

z u v v’ c

u’ u v v’

Rules for generating...

z u c v

Page 9: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

TOOLS: Automata TheoryTOOLS: Automata Theory TOOLS: Automata TheoryTOOLS: Automata Theory

Syntactic Congruence (w.r.t. L) [x]

x L x’ Context of x and x’[ w,z A* wxz L wx’z L] C(x,L) = C(x’,L)

syntactic monoid M(L)= A*/ L L regular M (L) finite

Minimal Automaton

Constant [Schützenberger, 1975]

w A* is a CONSTANT for a language L if C(w,L)=Cl (w,L) Cr (w,L)

Left context Right context

Page 10: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Partial resultsPartial results[Bonizzoni, De Felice, Mauri, Zizza (2002)]

L=L([x])={y’1x’ y’2 A*|(q0 ,y’1 x’ y’2) F , x’ [x]} finite splicing

language

Marker Language

L=L(A ) , A = (A, Q,, q0 ,F) minimal

[x]

only here

q0

>

>

>>

>

Marker [x]

Page 11: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

u1 | u2 $ u3 | u4 R u1 | u2 $ u1 | u2 , u3 | u4 $ u3 | u4 R

SPA = (A, I, R) finite + (reflexive hypothesis on R)

Reflexive splicing system[Handbook 1996]

Finite Head splicing systemFinite Paun splicing system,

reflexive and symmetric

RemarkRemark[Handbook 1996]

Page 12: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

We can decide the above property,

but only when ALL rules are either r=u|1 $ v|1 or r=1|u $ 1|v

L is a regular language generated by a reflexive SPA=(A, I, R) , where

rR: r=u|1 $ v|1 (resp. r=1|u $ 1|v)

finite set of constants F for L s.t. the set L\ {A*cA* : c F} is finite

[Head, Splicing languages generated by one-sided context (1998)]TheoremTheorem

Reflexive splicing system [Handbook 1996]

L is a reflexive splicing language L=L(SPA), SPA reflexive splicing system

Page 13: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Main result 1

The characterization of reflexive Paun splicing languages

structure described by means of

• finite set of (Schutzenberger) constants C

• finite set of factorizations of these constants into 2 words

Reflexive Paun splicing

languages

languages containing constants in C

languages containing mixed factorizations of constants

FINITE UNION OF

(and 2) Pixton

mapping of some pairs of constants into a word

Pixton

languages containing images of constants

[Bonizzoni, De Felice, Mauri, Zizza, DLT03]

Page 14: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Main result 3 The characterization of Head splicing languages

Head splicing languages

languages containing constants in C

languages containing “constrained” mixed factorizations of constants

FINITE UNION OF

Head splicing

languages

Reflexive Paun splicing languages

Reflexive and “transitive” Paun splicing languages

Page 15: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

T finite subset of N, {mt | mt is a constant for a regular language L,

t T}

L is a split language L = X t T L(mt) (j,j’)L(j,j’)

Finite set, s.t. no word in X has mt as a factor

Union of constant languages

m(j’,1) m(j’,2) L’1 m t’ L’2 = L’1m(j’,1) m(j’,2) L’2

L1m t L2 = L1 m(j,1) m(j,2) L2 L1 m(j,1) m(j’,2) L’2

L’1m(j’,1) m(j,2) L2

Constant language L(mt) = {x mt y L| x,yA*}

m(j,1) m(j,2)

mt

mt’

Theorem L is a regular reflexive splicing language L is a split-language.

Page 16: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

CIRCULAR SPLICING

restriction enzyme 1

restriction enzyme 2

ligase enzyme

Page 17: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

ResultResult [Bonizzoni, De Felice, Mauri, Zizza 2002]

L a* generated by a

finite circular splicing systemL =L 1 { ag | g G } +

subgroup of Znfinite set

shorter than

length of the closed path = p | n’, p | n

qn’

q0 q1 q2 ...a a

(minimal automaton A for

L)

All regular languages

> >> > > > > > >

> >

^

Decidable property for A

Page 18: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Star languages

L A* star language = L closed under the conjugacy relation and L=X*, X regular

Definition

Fingerprint closed languages

For any cycle c, L contains the Fingerprint of c

(“suitable” finite crossing of the closed path labelled with c)

Definition

X* star language AND fingerprint closed

X* generated (by Paun circular splicing)

Theorem

Example GROUP CODES

Page 19: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

2 : (x u1u2 y, wu3u4 z)r = u1 | u2 $ u3 | u4 rule

(x u1 u4 z , wu3 u2 y)

2-splicing (1996)

1 : (x u1u2 y, wu3u4 z)r = u1 | u2 $ u3 | u4 rule

x u1 u4 z

1-splicing (1996)

= ... ?

H2 (F1, F2) H1 (F1, F2) [Handbook 1996]

Page 20: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Result [Words03]

H2 (Fin,Fin)

H1 (Fin,Fin) Reg

L+cL+Ld, L+cL+Ld, L+LcL L+cLc

L+c*L, L+Lc*

CONSTANT LANGUAGES (2-splicing): Lc, cL, LcL, cLc (LA* regular, c A) [Head 98]

Page 21: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

al prossimo

COFIN !

Page 22: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Outline of the talk (and of the research steps…)

Let us recall the splicing

operation Let us manage splicing languages

Let us understand the “crux” of splicing languages

Let us construct reflexive splicing languages [DLT03]

1-splicing vs. 2-splicing: separating results [R.Z. & Sergey Verlan,

WORDS03]

Let us recall our results on circular splicing

Page 23: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

(aa)*b =L(SPA) , I={b, aab} , R={1| b$ 1| aab}

Example

(aa b , aab) = (aaaab, b)

(aaaa b , aab) = (aaaaaab, b)

Page 24: Towards a characterization of regular languages generated by finite splicing systems: where are we? Ravello, 19-21 Settembre 2003 Paola Bonizzoni, Giancarlo.

Example (reflexive language)

c c

a a

c

a

q0

c

qFa a a

b b

aac*a =L(SPA) , I={aaa, aaca} , R={c| 1$ 1|c}

caa c*ac =L(SPA) , I={caaac, aaacac} , R={caac| 1$ caa|1}

CONSTANT LANGUAGES!

aac*a + caac*ac NOT (FINITE UNION OF) CONSTANT LANGUAGES!

aac*a + caac*ac + bb + ab + bac*a

REFLEXIVE LANGUAGE