Es ist einfach zu erkennen, dass die Potenzen von 2 über dem Alphabet {0,1} regulär sind, da ein regulärer Ausdruck dafür ist.
Aber die Potenzen von 2, die im Ternär dargestellt werden, scheinen nicht regulär zu sein. Das Pumpen von Deckspelzen- oder Rückstandsklassen ist schwierig anzuwenden, da es unter den Saiten sehr wenig Muster zu geben scheint. Wie löse ich es?
Für welche Potenzen von die in der Basis , ist die Menge im Allgemeinen regulär?r
automata-theory
fl.formal-languages
Tsuyoshi Ito
quelle
quelle
Antworten:
Hier ist eine alternative Lösung (mit detaillierter Erklärung) unter Verwendung des Myhill-Nerode-Theorems. Ich werde Basis und 2 für die Lesbarkeit verwenden, aber der Beweis verallgemeinert für beliebige Basen r , k , die keine Potenzen derselben ganzen Zahl sind.3 2 r,k
(1) Zeigen Sie, dass bei jeder ternären Zeichenfolge eine andere Zeichenfolge y existiert , sodass x y eine Potenz von 2 ist .x y xy 2
Beweis: für jeden (lassen n die Zahl sei es darstellt), ∀ k und c ∈ { 0 , ... , 3 - k - 1 } , gibt es y , derart , daß x y repräsentiert 3 k n + c . Tatsächlich kennzeichnet dies alle Zahlen, die x y darstellen kann. Daher hängt das Finden des Minimums y, so dass x y eine Potenz von 2 ist, vom Finden der kleinsten ganzen Zahl k abx n ∀k c∈{0,…,3k−1} y xy 3kn+c xy y xy 2 k so dass wir im Intervall [ 3 k n , 3 k ( n + 1 ) - 1 ] eine Potenz von haben . Wenn wir die Log-Basis 2 nehmen , müssen wir k so finden, dass wir eine ganze Zahl im Intervall [ k log 3 + log x , k log 3 + log ( x + 1 ) ] haben (Löschen der - 1)2 [3kn,3k(n+1)−1] 2 k [klog3+logx,klog3+log(x+1)] −1 hier ist zweifelhaft, vereinfacht aber Berechnungen, die nicht darauf beruhen). Beachten Sie, dass sich das Ändern von nur auf den Teil k log 3 auswirkt , sodass wir ein k finden können , das uns beliebig nahe an eine ganze Zahl bringt.k klog3 k
(2) Zeigen Sie bei gegebenem und dem entsprechenden Minimum y , dass eine Zeichenfolge x 'existiert, so dass das entsprechende Minimum y ' größer als y sein muss . Wenn wir dies wiederholen, erhalten wir unendlich viele Äquivalenzklassen von Zeichenfolgen.x y y′ y
Beweisskizze: Da , können wir bei gegebenem x und den entsprechenden y und k immer x ' = 2 m x finden, wobei log ( 2 m x + 1 ) - log ( 2 m x ) ist ausreichend klein, so dass keine ganze Zahl in [ k log 3 + m + log x ,log2mx=m+logx x y k x'= 2mx Log( 2mx + 1 ) - log( 2mx ) . Beachten Sie, dass wir implizit die Tatsache verwenden, dass k log 3 + log x niemals eine ganze Zahl sein kann.[ k log3 + m + logx , k log3 + log( 2mx+1)] klog3+logx
quelle
Ihre Frage ist ein Teilfall von Cobhams Theorem (Alan Cobham, Über die Abhängigkeit von Mengen von Zahlen, die durch endliche Automaten erkennbar sind, Theory of Computing Systems 3 (2): 186-192, 1969, doi: 10.1007 / BF01746527 ):
Hier bedeutet durch multiplikativ unabhängig , dass es nicht ungleich Null und q gibt, so dass m p = n q ist . Cobham zitiert Büchi für Ihren speziellen Fall von Potenzen von einigen k in der Basis r , der nur erkennbar ist, wenn k und r multiplikativ abhängig sind .p q mp=nq k r k r
Wenn Sie an diesem Ergebnis interessiert sind, gibt es eine ziemlich schöne Umfrage von Véronique Bruyère, Georges Hansel, Christian Michaux und Roger Villemaire (Logik und erkennbare Mengen von ganzen Zahlen, Bulletin der Belgischen Mathematischen Gesellschaft 1 (2), 1994). PDF ), das auch die Beziehung zur Presburger-Arithmetik zeigt.p
quelle
Das Pump-Lemma impliziert, dass es für einige b , c , d eine Folge wie , so dass jedes x n eine Potenz von k ist . So log k ( x n ) = d n log k ( r ) + C o n s t +xn=c+b(rdn−1)/(rd−1) b,c,d xn k ist immer eine ganze Zahl, daher ist log k ( r ) rational.logk(xn)=dnlogk(r)+const+o(1) logk(r)
Hier ist eine Erklärung dieser Formel für . Das Pump-Lemma gibt die Strings u , v , w so, dass jeder String x n = u v n w eine Potenz von k ist . Interpretieren Sie diese Zeichenfolgen als Zahlen und schreiben Sie d und e für die Längen von v bzw. w . X n = u r d n + e + v r d ( n - 1 )xn u,v,w xn=uvnw k d e v w ist eine Potenz vond. Also
x n - x n - 1 =(u r d -u+v) r d ( n - 1 ) + e . Schreiben vonb=(u r d -uxn=urdn+e+vrd(n−1)+e+vrd(n−2)+e+⋯+vre+w d xn−xn−1=(urd−u+v)rd(n−1)+e und c = x 0 - b haben wir x n = c + b ( r d n - 1 ) / ( r d - 1 ) .b=(urd−u+v)re c=x0−b xn=c+b(rdn−1)/(rd−1)
quelle
SeiL die Menge der Potenzen von 2, die in Basis 3 codiert sind. Die Codierung von 4n in Basis 3 endet mit 1, während die Codierung von 2⋅4n in Basis 3 mit 2 endet. Daher ist L′=L∩Σ∗1 ist die Kodierung aller Potenzen von 4.
Die Codierung einer ganzen Zahlm>0 in Basis 3 dauert ⌈log3(m+1)⌉ Ziffern. Da weder 4n noch 4n+1 Potenzen von 3 für n>0 (da weder durch 3 teilbar ist), die Codierung von 4n nimmt ⌊log34n⌋+1 Ziffern.
SeiN={⌊log34n⌋:n≥0} (dies ist eine Beatty-Sequenz ). Angenommen, L regelmäßig. Dann wäre es auch L′ . Dies impliziert, dass der Satz von Wortlängen in L′ schließlich periodisch ist und N schließlich periodisch ist. Insbesondere hätte N eine rationale asymptotische Dichte. Jedoch N hat asymptotische Dichte 1/log34 , die irrational ist.
quelle