Cremona

43
Lights and Darks of the Star-Free Star Edward Ochmański & Krystyna Stawikowska Nicolaus Copernicus University, Toruń, Poland

description

Cremona

Transcript of Cremona

Page 1: Cremona

Lights and Darks of the

Star-Free Star

Edward Ochmański & Krystyna Stawikowska

Nicolaus Copernicus University, Toruń, Poland

Page 2: Cremona

Introduction:star may destroy recognizability

In (finitely generated) trace monoids we have:

� singletons are in REC

Corollary: If a rational language is not recognizable,

recognizability was broken by a star operation.

� REC is closed under union

� REC is closed under catenation

� REC is included in RAT

Page 3: Cremona

History:questions on recognizable star

Rational expressions are often more convenient (e.g. for inductive proofs) than the automata-oriented or algebraic descriptions of recognizable languages

Questions: Does recognizable star produce (jointly with

union and catenation) the whole class REC?

Definition: Recognizable star is the classical star, working only if its result is recognizable (and undefined otherwise)

Page 4: Cremona

History: recognizable stars in free and trace monoids

Answer 1 (Kleene): In finitely generated free monoid YES.

Questions: Does recognizable star produce (jointly with

union and catenation) the whole class REC?

Answer 1 (Kleene): In finitely generated free monoid YES.

Any star keeps recognizability!

Answer 2: In arbitrary trace monoid YES.

The connected star keeps recognizabilityand builds the whole REC.

Page 5: Cremona

Monoids, languages, free monoids

Monoid (M,⋅) −−−− a set M with an associative operation

(called product) and a neutral element ε (called unit).

Free Monoid (A*,⋅) − set of all finite words (including ε)

over an alphabet A, with concatenation.

Language in (M,⋅) − any subset of M.

Atomic languages (atoms) − empty language ∅

and singletons {m}, for m∈M.

Page 6: Cremona

Operations on languages

Set-theoretical operations: union X ∪ Y

intersection X ∩ Y

difference X \ Y

′complement X′ = M \ X

Algebraic operations: product: XY = {xy |x∈X,y∈Y }

power: X 0 = {ε}, Xn+1 = XX n

star: X* = U{X n |n=0,1,... }

Page 7: Cremona

Rational and star-free languages

Rational languages: languages built up from atoms with

operations of union, product and star.

Rational expressions: expressions describing such construction.

RAT(M): the class of rational subsets of M.

Star-free languages: languages built up from atoms with

operations of union, product and complement.

Star-free expressions: expressions describing such construction.

SF(M): the class of star-free subsets of M.

Page 8: Cremona

Syntactic monoid, recognizable and aperiodic languages

syntactic congruence ≈L⊆M×M of a language L⊆M:

u ≈Lv iff (∀x,y∈M) xuy∈L ⇔ xvy∈L

syntactic monoid of a language L⊆M:syntactic monoid of a language L⊆M:

quotient monoid ML=M/≈L

A language L⊆M is:

recognizable (REC) iff its syntactic monoid ML is finite;

aperiodic (AP) iff its syntactic monoid ML is finite and.

aperiodic, i.e. (∃n)(∀x∈ML) xn=xn+1.

Page 9: Cremona

Star-Free = Aperiodic (in A*)

Theorem (Schützenberger 1965):

In finitely generated free monoids SF(A*) = AP(A*)

i.e. a language is star-free iff it is aperiodici.e. a language is star-free iff it is aperiodic

Example: The language (aa)* has syntactic monoid:

εεεε a

εεεε εεεε a It is not aperiodic,

a a εεεε as an≠an+1 for any n.

By Schützenberger Theorem, (aa)* is not star-free.

Page 10: Cremona

Example: M={a,b}*, L=(ab)*

Syntactic monoid of (ab)*

The language (ab)* is star-free

(ab)* = (b∅′∪∅′a∪∅′aa∅′∪∅′bb∅′)′

Syntactic monoid of (ab)*

εεεε a b ab ba 0

εεεε εεεε a b ab ba 0

a a 0 ab 0 a 0

b b ba 0 b 0 0

ab ab a 0 ab 0 0

ba ba 0 b 0 ba 0

0 0 0 0 0 0 0

a2 = a3 = 0

b2 = b3 = 0

(ab)2 = (ab)3 = ab

(ba)2 = (ba)3 = ba

εεεε2 = εεεε3 = εεεε

02 = 03 = 0n = 2

Hence (ab)* is aperiodic

Page 11: Cremona

Operation of STAR-FREE STAR

Star-free star operation:

L* if L* is star-freeL×××× =

undefined otherwise

SFS-language: a language built up from atoms withoperations of union, product and star-free star

SFS-expression: a rational expression, built fromatoms with symbols of union, product andstar-free star

undefined otherwise

Page 12: Cremona

Question: SFS = SF ?

Inclusion ⊆⊆⊆⊆ holds in any monoid, since union,

product and star-free star preserve star-freeness.

⊇⊇⊇⊇Inclusion ⊇⊇⊇⊇ is not general;

there are monoids in which it does not hold.

Example: (Z,+) − integers with addition

SF = { X⊆Z | X or X ′ is finite }

SFS = { X⊆Z | X=Z or X is finite }

Page 13: Cremona

Star-free star in free monoids

Theorem (O/S 2005):

In finitely generated free monoids SFS = SF

Inclusion ⊆⊆⊆⊆ holds in any monoid.

The proof of ⊇⊇⊇⊇ is based on McNaughton/Yamada (1960)

construction of regular expressions for automata and uses the Schützenberger Theorem.

Page 14: Cremona

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*)

Page 15: Cremona

Traces and trace languages

Concurrent alphabet − pair (A,I), where A is a finite alphabet,

I⊆A××××A is a symmetric and irreflexive independence relation;

complement of I, the relation D=A××××A − I, is called dependency.

Trace monoid M=A*/I − quotient of A* by the least congruencecontaining the relation {ab≈ ba | aIb}.

Free monoid − trace monoid with I=∅.

Trace languages − subset of trace monoids.

Traces − members of trace monoids.

Page 16: Cremona

Lemma on closing product

Closure of a word language:

Flattening of a trace language:

UT = { w∈A* | [w]∈T }

Closure of a word language:

L = U[L] = { w∈A* | [w]∈[L] }

L is closed iff L=L

Lemat: If K,L⊆A* are closed and star-free,

then KL is star-free.

Page 17: Cremona

Lemma on

closing productSF(A*)=SFS(A*)

Schützenberger

Theorem

Flat characterization of star-free trace languages

T∈SF(A*/I) iff

UT∈SF(A*)

Page 18: Cremona

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

Page 19: Cremona

Aperiodic characterization of star-free trace languages

Theorem (Guaiana/Restivo/Salemi 1992):

In any trace monoid,

T is star-free iff T is aperiodic. T is star-free iff T is aperiodic.

Proof: T∈AP(A*/I) ⇒⇒⇒⇒ T∈SF(A*/

I)

⇑⇑⇑⇑ ⇓⇓⇓⇓

UT∈AP(A*) ⇐⇐⇐⇐ UT∈SF(A*)

Page 20: Cremona

SF(A*/I)=AP(A*/I)

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

Page 21: Cremona

Logic for traces (Thomas 1989)

(A,I) – concurrent alphabet, w=a1…an∈A*.

Model for the trace [w]∈A*/I is the trace-graph

⟨⟨⟨⟨V,E,λ⟩⟩⟩⟩ where V={x …x } – vertices, E⊆V×V – edges

First order formula is build up from atomic formulas x=y,

xEy and λ(x)=a with logical connectives and quantifiers.

⟨⟨⟨⟨V,E,λ⟩⟩⟩⟩ where V={x1…xn} – vertices, E⊆V×V – edges

and λ:V→A is s.t. (∀i) λ(xi)=ai and xiExj iff i<j & aiDaj

Page 22: Cremona

First order definability

T(Ψ)={α∈A*/I |||| Ψ is satisfied in α} – trace language

defined by the sentence Ψ.

Trace language T is first-order definable iff

there is a first-order sentence Ψ s.t. T=T(Ψ).

Theorem (McNaughton/Papert 1971):

In finitely generated free monoids SF(A*)=FO(A*)

there is a first-order sentence Ψ s.t. T=T(Ψ).

FO(A*/I) – the class of first-order definable languages

in the trace monoid A*/I .

Page 23: Cremona

Lexicographic representation

(A,<,I) − ordered concurrent alphabet

Lexicographic representative of trace α∈A*/I− a word Lex(α)∈A*, lexicographically first in α.

αααα ∈∈∈∈ α∈α∈α∈α∈

LEX = A*− U{A*b(Ia)*aA* | aIb ∧ a<b},

where Ia={c∈A | aIc}, hence LEX is star-free.

LEX = Lex (A*/I )− lexicographic representation of the trace monoid.

Lex (T) = { Lex(αααα)∈∈∈∈A* | α∈α∈α∈α∈T }− lexicographic representation of the trace language T.

Page 24: Cremona

Flat and Lex characterizations of first-order trace languages

Theorem (Ebinger/Muscholl 1993):

For any trace language T, For any trace language T, the following statements are equivalent:

(1) T is first-order definable in A*/I

(2) UT is first-order definable in A*

(3) Lex(T ) is first-order definable in A*

Page 25: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=AP(A*/I)

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

Page 26: Cremona

Logical characterization of star-free trace languages

Theorem (Ebinger/Muschol 93, Diekert/Metivier 97):

A trace language is star-free if and only ifif and only if

it is first-order definable

Proof. T∈∈∈∈SF(A*/I) if f UT∈∈∈∈SF(A*) i ff

UT∈∈∈∈FO(A*) i f f T∈∈∈∈FO(A*/I)

Page 27: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=FO(A*/I)SF(A*/I)=AP(A*/I)

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

Page 28: Cremona

Lexicographic characterization of star-free trace languages

Theorem:

A trace language is star-free in A*/I

if and only ifif and only if

its lexicographic representation is star-free in A*

Proof. T∈∈∈∈SF(A*/I) i ff T∈∈∈∈FO(A*/I) i ff

Lex(T)∈∈∈∈FO(A*) i ff Lex(T)∈∈∈∈SF(A*)

Page 29: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=FO(A*/I)SF(A*/I)=AP(A*/I)

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

T∈SF(A*/I) iff

Lex(T )∈SF(A*)

Page 30: Cremona

Star-free star in trace monoids

Lemma 1: If L∈∈∈∈SFS(A*) and L⊆⊆⊆⊆LEX,then [L]∈∈∈∈SFS(A*/I)

Proof. Structural induction on SFS-expressions.

Theorem: In trace monoids SFS = SF

Proof. T∈∈∈∈SF(A*/I) ⇒ UT∈∈∈∈SF(A*) ⇒

UT∈∈∈∈SFS(A*) ⇒ T∈∈∈∈SFS(A*/I) ⇒ T∈∈∈∈SF(A*/I)

Lemma 2: If UT∈∈∈∈SFS(A*), then T∈∈∈∈SFS(A*/I)

Page 31: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=FO(A*/I)SF(A*/I)=AP(A*/I)

Many-sided characterization of Star-Free Trace Languages

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

T∈SF(A*/I) iff

Lex(T )∈SF(A*)SF(A*/I)=SFS(A*/I)

Page 32: Cremona

Problems 1-3

Problem 1: To find syntactically formulatedconditions for star-free star in trace monoids.

Problem 2:

In which monoids SFS=SF? Does it hold inconcurrency monoids of Droste?

Page 33: Cremona

Decision Problems

Theorem (Muscholl/Petersen 1996):

The problem "Is T star-free?" is decidable for

rational trace languages only in trace monoids

with transitive independency.with transitive independency.

Problem 3 (star problem for s-f trace languages):

Is the question „Is T * star-free?” decidable for:

� star-free trace languages?

� finite trace languages?

Page 34: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=FO(A*/I)SF(A*/I)=AP(A*/I)

A part without logic

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

T∈SF(A*/I) iff

Lex(T )∈SF(A*)SF(A*/I)=SFS(A*/I)

Page 35: Cremona

T∈FO(A*/ ) iff

SF(A*/I)=FO(A*/I)SF(A*/I)=AP(A*/I)

A part without logic

SF(A*)=SFS(A*) T∈SF(A*/I) iff

UT∈SF(A*)

T∈FO(A*/I) iff

UT∈FO(A*) iff

Lex(T )∈FO(A*)

T∈SF(A*/I) iff

Lex(T )∈SF(A*)SF(A*/I)=SFS(A*/I)

Page 36: Cremona

Problem 4 – avoiding logic

Problem 4:

To prove the non-logic part of To prove the non-logic part of the characterization without logic

Page 37: Cremona

LSF languages

lexicographic product:

X°Y = XY if XY⊆LEX else undefined

lexicographic complement:

X" = LEX−X

LSF = the class of word languages that are built from

atoms with union, lexicographic productand lexicographic complement

Page 38: Cremona

Question: LSF = SF inside LEX ?

Lemma: If L∈∈∈∈LSF, then [L]∈∈∈∈SF(A*/I)

Proof: By lemma on closing product.

Question: Does the converse hold?

By definition: If L∈∈∈∈LSF, then L∈∈∈∈SF and L⊆⊆⊆⊆LEX

Page 39: Cremona

Transitively oriented alphabets

An ordered alphabet (A,<,I ) is transitively oriented

iff <<<< ∩ I is transitive.

Proposition: LSF = {L⊆⊆⊆⊆A* | L∈∈∈∈SF and L⊆⊆⊆⊆LEX}if (A,<,I ) is transitively oriented

Lemma: If L∈∈∈∈SF and L⊆⊆⊆⊆LEX, then L∈∈∈∈LSF

Problem 4a: Does the proposition hold for any ordered alphabet?

Page 40: Cremona

Example D: a c b

LEX = (a*b*c)*a*b* = a*b*(ca*b*)*

a* = LEX−−−−(LEX⋅⋅⋅⋅c⋅⋅⋅⋅LEX∪∪∪∪LEX⋅⋅⋅⋅b)

−−−− ⋅⋅⋅⋅ ⋅⋅⋅⋅ ∪∪∪∪ ⋅⋅⋅⋅b* = LEX−−−−(LEX⋅⋅⋅⋅c⋅⋅⋅⋅LEX∪∪∪∪a⋅⋅⋅⋅LEX)

c* = LEX−−−−((LEX−−−−LEX⋅⋅⋅⋅b)⋅⋅⋅⋅a⋅⋅⋅⋅LEX∪∪∪∪LEX⋅⋅⋅⋅b⋅⋅⋅⋅(LEX−−−−a⋅⋅⋅⋅LEX))

(a∪∪∪∪c)* = LEX−−−−(LEX⋅⋅⋅⋅b∪∪∪∪LEX⋅⋅⋅⋅bc⋅⋅⋅⋅LEX)

a*b* = LEX−−−−LEX⋅⋅⋅⋅c⋅⋅⋅⋅LEX

(ac)* = LEX−−−−(c⋅⋅⋅⋅LEX∪∪∪∪(LEX−−−−LEX⋅⋅⋅⋅b)⋅⋅⋅⋅a∪∪∪∪LEX⋅⋅⋅⋅cc⋅⋅⋅⋅LEX ∪∪∪∪

(LEX−−−−LEX⋅⋅⋅⋅b)⋅⋅⋅⋅aa⋅⋅⋅⋅LEX)

Page 41: Cremona

How is LSF in the Pentagon?

D:Pentagon cannot be transitively oriented

What about LSF in the pentagon?

Does a* belong to LSF?

Page 42: Cremona

Publications

Edward Ochmański, Krystyna Stawikowska: On Closures of Lexicographic Star-Free

Languages, Proceedings of AFL 2005, pp.227-234, University of Szeged, 2005.

Edward Ochmański, Krystyna Stawikowska: Star-Free Star and Trace Languages,

Fundamenta Informaticae 72, pp. 323-331, IOS Press 2006.

Krystyna Stawikowska, Edward Ochmański: On Star-Free Trace Languages and

their Lexicographic Representations, Proceedings of LATA 2007, pp. 541-551,

Universitat Rovira i Virgili, Tarragona, Spain, 2007.

Edward Ochmański, Krystyna Stawikowska: A Star Operation for Star-Free Trace

Languages, Proceedings of DLT 2007, LNCS 4588, pp. 337-345, Springer 2007.

Krystyna Stawikowska: Word Languages Inducing Recognizable and Star-Free

Trace Languages, PhD Thesis (in Polish), Toruń-Warszawa, 2007.

Page 43: Cremona

the end