320 likes | 411 Views
Covering problems from a formal language point of view. Marcella ANSELMO Maria MADONIA. X. X. X. X. X. w. Covering a word. Covering a word w with words in a set X. Covering = concatenations +overlaps Example : X = ab+ba w = abababa. a b a b a b a.
E N D
Covering problemsfroma formal language point of view Marcella ANSELMO Maria MADONIA Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
X X X X X w Covering a word Covering a word w with words in a set X Covering = concatenations +overlaps Example: X = ab+ba w = abababa a b a b a b a Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Why study covering ? • Molecular biology: • manipulating DNA molecules (e.g. fragment assembly) • Data compression • Computer-assisted music analysis Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Apostolico, Ehrenfeucht (1993) • Brodal, Pedersen (2000) w is ‘quasiperiodic’ • Moore, Smyth (1995) x is a ‘cover’ of w • Iliopulos, Moore, Park (1993) x ‘covers’ w • Iliopulos, Smyth (1998) ‘set of k-covers’ of w • Sim, Iliopulos, Park, Smyth (2001) p ‘approximated • (complete references) period’ of w Literature All algorithmic problems!!! (given w find ‘optimal’ X) Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
If X A*, X cov = set of words ‘covered’ by words in X Formal language point of view Formal language point of view is needed! Madonia, Salemi, Sportelli (1999) [MSS99]: also Xcov = (X, A*), set of z-decompositions over (X, A*) Here: Coverings not simple generalizations of z-decompositions! Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
red(w) = canonical representative of the class of w in the free group Def. A covering (over X) of w in A* is =(w1, …, wn) s.t. 1. n is odd; for any odd i, wi X for any even i, wi 2. red(w1… wn) = w 3. for any i, red(w1…wi) is prefix of w Formal Definition Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
=(ab,,ba, , ba, , ab) is a covering of w over X • n is odd; for any odd i, wi X; • for any even i, wi * • 2. red(abba ba ab) = ababab • 3. for any i, red(w1…wi) is prefix of w a b a b a b : Example: X= ab+baw= ababab. Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Concatenation Zig-zag Covering Concatenation, zig-zag, covering submonoid X* z-submonoid X cov-submonoid Xcov cov-submonoid z-submonoid submonoid Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
COV2(X) = Start with: x $, xX or COV2(X) Rules: (, x, $), xX (, x, x3$), x=x1x2, x2x3 X x = ba a b a b $ x = ab b a a b $ a b a $ Splicing systems for Xcov X, finite S, splicing system s.t. L(S) = Xcov$ Example: X= ab+ba, w=#ababaab$ L(S) a b a b a $ a b a b a a b$ Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
1=(ab, ,ab, , ab) 2=(ab,,ba, , ba , , ba, , ab) 3=(ab, ,ba, , ab, , ab) 4=(ab, ,ab, , ba, , ab) 5=(ab, ,ba, , ab, , ba, ,ab) Coding problems [MSS99] How many coverings has a word? • Example: X=ab + ba, w = ababab Xcov • w has many different coverings over X: Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Example: X = ab + ba is not a covering code (remember δ1, δ2) Example: X = aabab + abb is a covering code Example: X= ab+a + a is a covering code Covering codes [MSS 99] X A* is a covering code if any word in A* has at most one minimal covering (over X). Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Let M A*, cov-submonoid. cov-G(M) is the minimal X A* such that M= Xcov. M is cov-free if cov-G(M) is a covering code. Fact: M free M stable (well-known) M z-free M z-stable (known) Question: M cov-free M ‘cov-stable’? Cov - freeness We want ‘cov-stability’ = global notion equivalent to cov-freeness. Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
stable u,w,uv,vwM implies wM z-stable w, vwM , uv, uZ-p-s(uvw) implies vZ-p-s(uvw) cov-stable? Not always! Example: X = abcd+bcde+cdef+defg Toward a cov-stability definition (I) w, vw, uvx, uyM, for x<w and y<vw, implies vx M ? Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Main observation in the classical proof of (stable implies free): • x minimal word with 2 different factorizations: • the last step in a factorization from the last step • in the other factorization u w Example: X = abc + bcd + cde Toward a cov-stability definition (II) New situation with covering: So we have to study the case v = . Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
If v, then vz M, for some z w • Moreover vx M if y v 2. If v=, u and x y then t M, for some t propersuffix of ux Cov – stability Def. M is cov-stable if w, vw, uvx, uyM, for x w and y vw Remark: cov-stable implies stable Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Theorem: M covering submonoid. M is cov-stable M is cov-free Cov-stable iff cov-free Proof: many cases and sub-cases (as in definition!) Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Fact 5: cov –free z-free free Some consequences Fact 1: (cov-free cov-free) cov-free Fact 2: cov-free implies free (not viceversa) Fact 3: cov-free implies very pure (not viceversa) Fact 4: M covering submonoid, X= cov-G(M). M cov-free implies X* free. Remark: Covering not simple generalization of z-decomposition! Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Let X A*, covering code. X is cov-complete if Fact(Xcov). X is cov-maximal if X X1, covering code X=X1 Remark[MSS99]: X cov-completeX infinite (unless X=A) Fact: X cov-complete X cov-maximal Remark complete cov-complete (not viceversa) maximal cov-maximal (not viceversa) Cov - maximality and cov-completeness Example: X=ab+a +a Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
X A*, regular language covX : w number of minimal coverings of w X X A 1 Counting minimal coverings A, 1DFA recognizing X B, 2FA recognizing Xcov Remark: B counts all coverings of w Xcov Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
w 1 1 1 1 1 1 1 1 1 Remark on minimal coverings Remark: In minimal coverings, no 2 steps to the left under the same occurrence of a letter Crossing sequences in B for minimal coverings of w: Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
b a 2 4 Example: X = ab + ba, A : 1 b 3 a 2 2 1 3 1 a b a b C : b a 1 b a 1 3 a b 1 2 3 A 1NFA automaton for covX CS3 = crossing sequences of length 3 and no twice state 1 (cs,a) =cs’ if cs matches cs’ on a C= (CS3, (1), , (1) ) Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Some remarks • Language recognized by C = X cov • X regular implies X cov regular • Behaviour of C is covX • X regular implies covX rational • X covering code iff C unambiguous (decidable) • (different proof in [MSS99]) Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Conclusions and future works • Formal language point of view is needed • Covering not generalization of zig-zag (or z-decomposition): • many new problems and results • Further problems: • covering codes: measure • special cases: |X| =1, XAk • suggestions … Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
x x x x w x x x x w X X X X X w w is‘quasiperiodic’ x is a ‘cover’ of w x ‘covers’ w X Ak ‘set of k-covers’ of w Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
a b a b a b Example: X = ab+ba w = ababab Xcov a b a b a b w = ababab (X, A*) Xcov = (ab + ba+ aba + bab)* Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
a b a b a b 1: a b a b a b 2: All the steps to the right are needed for covering w: δ1, δ2 are minimal coverings! Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
a b a b a b 3: a b a b a b 4: a b a b a b 5: All blue steps are useless for covering w : δ3, δ4, δ5 are not minimal. We count only minimal coverings. Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
v u w z-stable w, vwM , uv, uZ-prefix-strict(uvw) v Z -prefix-strict(uvw) v u w Toward a cov-stability definition (I) stableu,w,uv,vwMvM Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Example: X= abcd+bcde+cdef+defg M=Xcov vx a b c d e f g Set u=ab, v=c, w=defg, x=de, y=cd. Therefore w, vw, uvx, uy M but vx =cde M. • Note vz=cdef M, z w . Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
Example: X = abc + bcd + cde M=Xcov w x u a b c d e Set u=ab, v= , w=cde, x=cd, y=c. Therefore w, vw, uvx, uy M but vzM for no z w. • Note bcd M, bcd proper suffix of ux. Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
w u v v y v x y w u v v y v x y Case 1. vz M z w vx M Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia
w u x y Case 2. v x y u t M, t propersuffix of ux Covering Problems from a Formal Language Point of View M. Anselmo - M. Madonia