Anzahl der Äquivalenzklassen in regulären Sprachen als Funktion der DFA-Größe

11

Diese Frage bezieht sich auf eine aktuelle Frage von Janoma .

Hintergrund

In Constraint - Programmierung, ein regelmäßiger globaler constraint c über einen Domain - D ist ein Paar (s,M) mit s einem Tupel von Variablen (der Umfang) , und M ein DFA über die Domäne D . Eine Zuordnung θ zu s erfüllt c wenn M die Zeichenkette θ(s1)θ(s2)θ(sn) akzeptiert .

Nehmen Sie unten an, dass die Domäne D festgelegt ist. Definieren Sie eine Äquivalenzbeziehung über die Menge der Zeichenfolgen T=D|s|so dass ab wenn für jeden DFA M entweder a,bL(M) oder a,bL(M) . Intuitiv sind zwei Zeichenfolgen gleichwertig, wenn kein DFA sie unterscheiden kann. Wenn dies zutrifft, erfüllen sie auch die gleichen regulären Einschränkungen.

Wenn wir die DFAs in keiner Weise einschränken, ist die Menge der Äquivalenzklassen T/ nur T selbst. Ich interessiere mich für die Anzahl der Äquivalenzklassen. als Funktion der Anzahl der Zustände n , die wir für den DFA zulassen. Klar, wenn n=|D||s|(Konstanten ignorieren) dann |T/|=|T|. (Natürlich wird n hier selbst eine Funktion von |s| .)

Fragen

  1. Was ist das kleinste n für welches |T/|=|T|?
  2. Was passiert darunter? Im Speziellen,
    • gibt es ein n so dass |T/|=O(|s||D|) ?
    • gibt es ein n so dass |T/|=O(|s|×|D|) ?

|s||D|

kk

Evgenij Thorstensen
quelle

Antworten:

1

Antwort auf Frage 1,

Was ist das kleinste n für welches | T / ∼ | = | T | n|T/|=|T|

n=max|w|=|x|=s,wxsep(w,x)
sep(w,x)wxn

n=O(s2/5(logs)3/5) .

welches in erhalten wurde

Robson, JM , Trennen von Strings mit kleinen Automaten , Inf. Prozess. Lette. 30, Nr. 4, 209-214 (1989). ZBL0666.68051 .

Bjørn Kjos-Hanssen
quelle