Pokroky matematiky, fyziky a astronomie
Ľubomíra Balková; Jiří Hladký Generátory pseudonáhodných čísel založené na nekonečných slovech Pokroky matematiky, fyziky a astronomie, Vol. 59 (2014), No. 3, 211–222
Persistent URL: http://dml.cz/dmlcz/144026
Terms of use: © Jednota českých matematiků a fyziků, 2014 Institute of Mathematics of the Czech Academy of Sciences provides access to digitized documents strictly for personal use. Each copy of any part of this document must contain these Terms of use. This document has been digitized, optimized for electronic delivery and stamped with digital signature within the project DML-CZ: The Czech Digital Mathematics Library http://dml.cz
Gener´atory pseudon´ahodn´ych ˇc´ısel zaloˇzen´e na nekoneˇcn´ych slovech L’ubom´ıra Balkov´ a, Jiˇr´ı Hladk´y, Praha
V ˇcl´ anku uk´ aˇzeme, jak lze vyuˇz´ıt nekoneˇcn´ ych aperiodick´ ych slov ke konstrukci gener´ ator˚ u n´ ahodn´ ych ˇc´ısel. Zavedeme tˇr´ıdu slov s dobˇ re rozm´ıstˇ en´ ymi v´ yskyty, pro niˇz jsme dok´ azali, ˇze pˇri kombinaci periodick´ ych gener´ator˚ u podle slov z t´eto tˇr´ıdy vznikaj´ı gener´ atory aperiodick´e, jeˇz nav´ıc nemaj´ı mˇr´ıˇzkovou strukturu. Slova s dobˇre rozm´ıstˇen´ ymi v´ yskyty zahrnuj´ı napˇr. slova sturmovsk´a a Arnouxova–Rauzyova slova, z nichˇz nˇekter´ a se daj´ı generovat rychl´ ym algoritmem, protoˇze jsou pevn´ ymi body morfism˚ u. Pr´ avˇe gener´ atory pseudon´ ahodn´ ych ˇc´ısel zaloˇzen´e na pevn´ ych bodech morfism˚ u, kter´e maj´ı dobˇre rozm´ıstˇen´e v´ yskyty, jsme tak´e otestovali bateriemi statistick´ ych test˚ u TestU01 a PractRand. Uk´ azalo se, ˇze nov´ a metoda podstatnˇe zlepˇsuje statistick´e vlastnosti generovan´ ych n´ahodn´ ych ˇc´ısel za cenu pouze zanedbatelnˇe zv´ yˇsen´e v´ ypoˇcetn´ı a pamˇet’ov´e n´ aroˇcnosti. ´ Uvod Kombinatorika na slovech je cca 100 let star´ a discipl´ına, za jej´ıhoˇz zakladatele se ˇcasto pokl´ ad´ a Axel Thue. Ten pˇri studiu jist´ ych kombinatorick´ ych vlastnost´ı nekoneˇcn´ ych slov [1] vysvˇetlil, ˇze nemˇel na mysli ˇz´ adnou konkr´etn´ı aplikaci, n´ ybrˇz studoval tyto ot´ azky, protoˇze se mu zd´ aly samy o sobˇe dostateˇcnˇe zaj´ımav´e. T´ımto tvrzen´ım dnes r´ adi h´ aj´ı svou pr´ aci teoretiˇct´ı kombinatorici na nekoneˇcn´ ych slovech“. V tomto ˇcl´anku ” ovˇsem uk´ aˇzeme, ˇze se znalosti kombinatoriky na slovech daj´ı aplikovat i v tak praktick´e oblasti, jakou je generov´ an´ı n´ ahodn´ ych ˇc´ısel. Gener´ atory pseudon´ ahodn´ ych ˇc´ısel se snaˇz´ı produkovat n´ahodn´a ˇc´ısla pouˇzit´ım deterministick´eho procesu. Je jasn´e, ˇze takov´e gener´atory maj´ı mnoho vad na kr´ase. Nejˇcastˇejˇs´ı a nejl´epe prostudovan´e gener´ atory – line´arn´ı kongruenˇcn´ı gener´atory – jsou periodick´e a jejich zn´ am´ ym defektem je tzv. mˇr´ıˇzkov´a struktura. V ˇcl´anku [8] je dok´ az´ ano, ˇze kdyˇz se dva line´ arn´ı kongruenˇcn´ı gener´atory (ale i jak´ekoliv jin´e periodick´e gener´ atory) zkombinuj´ı podle nekoneˇcn´ ych slov k´oduj´ıc´ıch jistou tˇr´ıdu kvazikrystal˚ u nebo ekvivalentnˇe cut-and-project mnoˇzin, v´ ysledn´a posloupnost je aperiodick´a a nem´ a mˇr´ıˇzkovou strukturu. Dalˇs´ı v´ ysledky spjat´e s kvazikrystaly jsou k nalezen´ı tak´e v ˇcl´ anc´ıch [6], [7]. Naˇs´ım pˇr´ınosem je nalezen´ı kombinatorick´e podm´ınky – dobˇ re rozm´ıstˇ en´ e v´ yskyty (DRV) – zaruˇcuj´ıc´ı aperiodicitu a absenci mˇr´ıˇzkov´e struktury [3], [2]. Uk´azali jsme, ˇze vlastnost DRV splˇ nuj´ı ˇsirok´e tˇr´ıdy nekoneˇcn´ ych slov: sturmovsk´a slova, Arnouxova–Rauzyova slova a dalˇs´ı, z nichˇz mnoh´e um´ıme generovat rychl´ ym zp˚ usobem,
ˇ ´ , Ph.D., Katedra matematiky, FJFI CVUT Ing. L’ubom´ıra Balkova v Praze, Trojanova 13, 120 00 Praha 2, e-mail:
[email protected],
[email protected]
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
211
protoˇze jsou pevn´ ymi body morfism˚ u. T´ım jsme v´ ysledky z [8] zobecnili pro ˇsirˇs´ı tˇr´ıdy bin´ arn´ıch slov, ale dokonce i pro slova nad v´ıcep´ısmennou abecedou, podle kter´ ych se kombinuje v´ıce line´ arn´ıch kongruenˇcn´ıch gener´ator˚ u (nebo i jin´ ych periodick´ ych gener´ ator˚ u). Pot´e jsme se vˇenovali testov´ an´ı kvality gener´ ator˚ u zaloˇzen´ ych na slovech z takov´ ych tˇr´ıd, konkr´etnˇe na Fibonacciovˇe a Tribonacciovˇe slovˇe, pˇriˇcemˇz jsme pouˇz´ıvali bal´ıˇcky statistick´ ych test˚ u TestU01 [5] a PractRand [4]. T´ım jsme potvrdili, ˇze kdyˇz se kombinuj´ı line´ arn´ı kongruenˇcn´ı gener´ atory pomoc´ı nekoneˇcn´ ych slov s dobˇre rozm´ıstˇen´ ymi v´ yskyty, vznik´ a aperiodick´ a pseudon´ ahodn´ a posloupnost, kter´a nejen ˇze nem´a mˇr´ıˇzkovou strukturu, ale i ˇrada jej´ıch dalˇs´ıch vlastnost´ı se v´ıce podob´a n´ahodn´e posloupnosti. V ˇcl´ anku nejprve uvedeme motivaci z oblasti generov´an´ı n´ahodn´ ych ˇc´ısel. Ve druh´e kapitole pot´e pˇripomeneme pojmy z kombinatoriky na slovech, kter´e se jiˇz v PMFA zˇca´sti objevily [1]. Ve tˇret´ı kapitole zavedeme gener´atory zaloˇzen´e na nekoneˇcn´ ych slovech. Ve ˇctvrt´e kapitole potom prostudujeme kombinatorickou vlastnost dobˇre rozm´ıstˇen´ ych v´ yskyt˚ u. P´at´ a kapitola shrne v´ ysledky empirick´eho testov´an´ı a na z´avˇer zformulujeme otevˇren´e probl´emy a smˇery dalˇs´ıho moˇzn´eho v´ yzkumu. 1. Mˇ r´ıˇ zkov´ a struktura gener´ ator˚ u pseudon´ ahodn´ ych ˇ c´ısel Pod pojmem pseudon´ ahodn´ a posloupnost nebo gener´ator pseudon´ahodn´ ych ˇc´ısel (PRNG – z anglick´eho pseudorandom number generator) rozum´ıme v dalˇs´ım textu jakoukoliv posloupnost ˇc´ısel z N = {0, 1, 2, . . .}. St´ale obl´ıben´e gener´atory – line´arn´ı kongruenˇcn´ı gener´ atory – jsou z´ aˇrn´ ym pˇr´ıkladem gener´ator˚ u, kter´e maj´ı slabinu zvanou mˇr´ıˇzkov´ a struktura (a to dokonce jiˇz od dimenze rovn´e dvˇema [10]). Necht’ Z = (Zn )n∈N ˇ ık´ame, ˇze Z m´a mˇr´ıˇzkovou je PRNG, jehoˇz v´ ystupem je koneˇcn´ a mnoˇzina M ⊂ N. R´ strukturu, pokud existuje kladn´e t ∈ N takov´e, ˇze mnoˇzina {(Zi , Zi+1 , . . . , Zi+t−1 ) i ∈ N} je pokryta soustavou rovnobˇeˇzn´ ych stejnˇe vzd´ alen´ ych nadrovin v eukleidovsk´em prostoru Rt a z´ aroveˇ n tyto nadroviny nepokr´ yvaj´ı vˇsechny body mˇr´ıˇzky M t = {(A1 , A2 , . . . , At ) Ai ∈ M pro kaˇzd´e i ∈ {1, . . . , t}}.
Pˇripomeˇ nme, ˇze line´ arn´ı kongruenˇcn´ı gener´ ator, zkr´acenˇe LCG, (Zn )n∈N je d´an parametry a, m, c ∈ N a definov´ an rekurentn´ım vztahem Zn+1 = aZn + c mod m. Pˇr´ıkladem LCG s v´ yraznou mˇr´ıˇzkovou strukturou je gener´ator RANDU, kter´ y se hojnˇe pouˇz´ıval v ˇsedes´ at´ ych letech 20. stolet´ ı. Pro t = 3 jsou po sobˇe jdouc´ı trojice ˇc´ısel z gener´ atoru, tj. {(Zi , Zi+1 , Zi+2 ) i ∈ N}, pokryty pouh´ ymi 15 rovnobˇeˇzn´ ymi stejnˇe vzd´ alen´ ymi rovinami, kter´e ani zdaleka nepokr´ yvaj´ı celou mˇr´ıˇzku {1, 2, . . . , m − 1}3 , viz obr. 1. Z ˇcl´ anku [8] lze vyˇc´ıst postaˇcuj´ıc´ı podm´ınku na absenci mˇr´ıˇzkov´e struktury, i kdyˇz pˇr´ımo v nˇem je formulov´ ana v m´enˇe obecn´e formˇe (Lemma 2.3). Vˇ eta 1. Necht’ Z je PRNG, jehoˇz v´ ystupem je koneˇcn´a mnoˇzina M ⊂ N obsahuj´ıc´ı alespoˇ n dva prvky. Pˇredpokl´ adejme, ˇze pro kaˇzd´e A, B ∈ M a pro kaˇzd´e ` ∈ N existuje `-tice (A1 , A2 , . . . , A` ) takov´ a, ˇze jak (A1 , A2 , . . . , A` , A), tak i (A1 , A2 , . . . , A` , B) jsou (` + 1)-tice z gener´ atoru Z. Potom Z nem´ a mˇr´ıˇzkovou strukturu. 212
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
Obr. 1. Trojice gener´ atoru RANDU, LCG s parametry a = (216 + 3), m = 231 , c = 0, jsou pokryty pouh´ ymi 15 rovnobˇeˇzn´ ymi stejnˇe vzd´ alen´ ymi rovinami.
Pozn´ amka 1. V ˇreˇci kombinatoriky na slovech, viz kapitola 2, lze znˇen´ı pˇredchoz´ı vˇety formulovat n´ asledovnˇe: Necht’ Z je PRNG, jehoˇz v´ ystupem je koneˇcn´a mnoˇzina M ⊂ N obsahuj´ıc´ı alespoˇ n dva prvky. Pokud Z obsahuje pro kaˇzd´a dvˇe p´ısmena A, B ∈ M a pro kaˇzdou d´elku ` ∈ N prav´ y speci´ aln´ı faktor ` s prav´ ymi extenzemi A a B, potom Z nem´ a mˇr´ıˇzkovou strukturu. 2. Slovn´ık kombinatoriky na slovech Abychom mohli zformulovat kombinatorickou podm´ınku na absenci mˇr´ıˇzkov´e struktury a tak´e pˇribl´ıˇzit tˇr´ıdy slov, kter´e onu vlastnost dobˇre rozm´ıstˇen´ ych v´ yskyt˚ u maj´ı, potˇrebujeme nejprve zav´est nˇekolik pojm˚ u z kombinatoriky na slovech. Abecedou A rozum´ıme koneˇcnou mnoˇzinu symbol˚ u, ˇr´ık´ ame jim p´ısmena. Slovem w naz´ yv´ame koneˇcnou posloupnost p´ısmen. Jeho d´elkou rozum´ıme poˇcet p´ısmen, kter´a obsahuje, a znaˇc´ıme ji |w|. Symbolem A∗ znaˇc´ıme mnoˇzinu vˇsech koneˇcn´ ych slov nad abecedou A s pˇrid´ an´ım pr´azdn´eho slova ε (jde o neutr´aln´ı prvek v˚ uˇci operaci ˇretˇezen´ı a jeho d´elku klademe rovnu nule). Mnoˇzina A∗ vybaven´a operac´ı ˇretˇezen´ı tvoˇr´ı monoid. Pod nekoneˇcn´ym slovem u nad abecedou A pak rozum´ıme nekoneˇcnou posloupnost p´ısmen z A, v n´ıˇz se kaˇzd´e p´ısmeno z A skuteˇcnˇe vyskytuje, tj. u = u0 u1 u2 . . . , kde ui ∈ A. Koneˇcn´e slovo w nazveme faktorem (podslovem) koneˇcn´eho ˇci nekoneˇcn´eho slova u, pokud existuje slovo v a slovo x (koneˇcn´e ˇci nekoneˇcn´e) tak, ˇze u = vwx. Je-li v pr´ azdn´e slovo, nazveme w prefixem slova u. Podobnˇe pokud je x = ε, ˇr´ık´ame, ˇze w je sufix slova u. Pro kaˇzd´ y faktor w nekoneˇcn´eho slova u naz´ yv´ ame v´yskytem w v u kaˇzd´ y index i, pro kter´ y plat´ı, ˇze slovo w je prefixem nekoneˇcn´eho slova ui ui+1 ui+2 . . . Nekoneˇcn´e slovo je rekurentn´ı, kdyˇz se v nˇem kaˇzd´ y jeho faktor vyskytuje nekoneˇcnˇekr´at. Symbolem |w|a znaˇc´ıme poˇcet v´ yskyt˚ u p´ısmene a ve slovˇe w. Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
213
ˇ Casto pracujeme s morfismem ϕ: A∗ → A∗ , tedy zobrazen´ım, kter´e splˇ nuje pro kaˇzd´ a dvˇe koneˇcn´ a slova v, w ∈ A∗ : ϕ(vw) = ϕ(v)ϕ(w). Morfismus je samozˇrejmˇe jednoznaˇcnˇe d´ an, pokud zn´ame obrazy p´ısmen abecedy A. Jeho p˚ usoben´ı lze pˇrirozenou cestou rozˇs´ıˇrit i na nekoneˇcn´a slova: ϕ(u0 u1 u2 . . .) := ϕ(u0 )ϕ(u1 )ϕ(u2 ) . . . Pokud nekoneˇcn´e slovo u splˇ nuje ϕ(u) = u, nazveme je pevn´ym bodem morfismu ϕ. Jazykem L(u) nekoneˇcn´eho slova u naz´ yv´ ame mnoˇzinu vˇsech faktor˚ u tohoto slova. ˇ ık´ R´ ame, ˇze jazyk je uzavˇren´y vzhledem k reverzi (angl. closed under reversal), kdyˇz s kaˇzd´ ym slovem obsahuje i jeho reverzi, tj. slovo vznikl´e ˇcten´ım pozp´atku. Necht’ n je pˇrirozen´e ˇc´ıslo, symbolem Ln (u) znaˇc´ıme mnoˇzinu vˇsech faktor˚ u d´elky n slova u. Nekoneˇcn´e slovo u naz´ yv´ ame posl´eze periodick´e (angl. eventually periodic), pokud je tvaru u = wv ω , kde w, v ∈ A∗ a ω znaˇc´ı nekoneˇcn´e opakov´an´ı. V opaˇcn´em pˇr´ıpadˇe naz´ yv´ ame slovo u aperiodick´e. (Faktorovou) komplexitou slova u je zobrazen´ı C : N → N definovan´e vztahem C(n) := poˇcet r˚ uzn´ ych faktor˚ u d´elky n obsaˇzen´ ych ve slovˇe u. Je zn´ amo, ˇze komplexita posl´eze periodick´ ych slov je omezen´a, zat´ımco komplexita aperiodick´ ych slov splˇ nuje C(n) ≥ n + 1 pro vˇsechna n ∈ N, viz [11]. Pravou extenz´ı faktoru w slova u nazveme libovoln´e p´ısmeno a ∈ A takov´e, ˇze wa je faktor slova u. Zˇrejmˇe kaˇzd´ y faktor m´ a alespoˇ n jednu pravou extenzi. Takov´e faktory, kter´e maj´ı alespoˇ n dvˇe prav´e extenze, se naz´ yvaj´ı prav´e speci´ aly. Podobnˇe lze definovat levou extenzi a lev´e speci´ aly. Pˇ r´ıklad 1. Ilustrujme uveden´e pojmy na nekoneˇcn´em slovˇe u = (abb)ω . Abeceda je A = {a, b}. Slovo babb je faktorem d´elky 4 slova u. Jeho jedinou pravou extenz´ı je p´ısmeno a a jeho jedinou levou extenz´ı je p´ısmeno b. Slovo abbabba je prefixem d´elky 7 slova u. Snadno nahl´edneme, ˇze mnoˇzina vˇsech faktor˚ u d´elky 5 slova u je L5 (u) = {abbab, bbabb, babba}. D´ ale si tak´e m˚ uˇzeme rozmyslet, ˇze vˇsechna slova d´elky alespoˇ n dva maj´ı vˇzdy jedinou pravou (a tak´e jedinou levou) extenzi, coˇz vlastnˇe znamen´ a, ˇze z kaˇzd´eho faktoru d´elky alespoˇ n dva se zrod´ı jedin´ y faktor d´elky o jednu vˇetˇs´ı. Proto komplexita bude C(n) = 3 pro kaˇzd´e n ≥ 2. (To odpov´ıd´a tvrzen´ı, ˇze komplexita periodick´ ych slov je omezen´ a.) Definujeme-li morfismus ϕ(a) := abb a ϕ(b) := abb, pak je zˇrejmˇe u pevn´ ym bodem ϕ. 3. Kombinov´ an´ı gener´ ator˚ u pseudon´ ahodn´ ych ˇ c´ısel Chceme-li eliminovat mˇr´ıˇzkovou strukturu, pom´ ah´ a kombinovat gener´atory ˇsikovn´ ym zp˚ usobem. Jednu z moˇzn´ ych metod pˇredstavili L.-S. Guimond, Jan Patera a Jiˇr´ı Patera v ˇcl´ anku [7]. Necht’ X = (Xn )n∈N a Y = (Yn )n∈N jsou dva ne nutnˇe r˚ uzn´e PRNG se stejn´ ym v´ ystupem M ⊂ N a stejnou periodou m ∈ N. D´ale necht’ u = u0 u1 u2 . . . je nekoneˇcn´e bin´ arn´ı slovo nad abecedou {a, b}. Potom gener´ ator Z = (Zn )n∈N
(1)
zaloˇzen´y na slovˇe u z´ısk´ ame n´ asleduj´ıc´ım algoritmem: 214
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
ˇ krok za krokem p´ısmena u. 1. Cti ˇ s-li a po i-t´e, zkop´ıruj i-t´ 2. Cteˇ y symbol z X na konec konstruovan´e posloupnosti Z. ˇ s-li b po i-t´e, zkop´ıruj i-t´ 3. Cteˇ y symbol z Y na konec konstruovan´e posloupnosti Z. Snadno lze konstrukci zobecnit pro nekoneˇcn´ a slova nad v´ıcep´ısmennou abecedou a kombinovat v´ıce PRNG. Pˇ r´ıklad 2. Necht’ X = (X1 X2 X3 X4 )ω , Y = (Y1 Y2 Y3 Y4 )ω a u = (abb)ω . Potom Z = X1 Y1 Y2 X2 Y3 Y4 X3 Y1 Y2 X4 Y3 Y4 X4 Y1 Y2 . . . 4. Slova s dobˇ re rozm´ıstˇ en´ ymi v´ yskyty V ˇcl´ anku [8] je dok´ az´ ano, ˇze PRNG zaloˇzen´ y na nekoneˇcn´ ych slovech k´oduj´ıc´ıch jistou tˇr´ıdu cut-and-project mnoˇzin je aperiodick´ y a nem´a mˇr´ıˇzkovou strukturu. N´am se podaˇrilo v´ ysledek zobecnit a naj´ıt ˇsirˇs´ı tˇr´ıdu slov, kter´a zaruˇcuj´ı aperiodicitu a absenci mˇr´ıˇzkov´e struktury pro gener´ atory zaloˇzen´e na takov´ ych slovech [2], [3]. ˇ ık´ame, ˇze aperiodick´e bin´arn´ı slovo u Definice 1. (Vlastnost DRV pro bin´ arn´ı slova.) R´ nad abecedou {a, b} m´ a dobˇre rozm´ıstˇen´e v´yskyty1 (nebo m´a vlastnost DRV), pokud u splˇ nuje pro kaˇzd´e m ∈ N a pro kaˇzd´ y faktor w slova u n´asleduj´ıc´ı podm´ınku. Oznaˇc´ıme-li i0 , i1 , i2 , . . . v´ yskyty slova w ve slovˇe u, potom |u0 u1 . . . uij −1 |a , |u0 u1 . . . uij −1 |b mod m | j ∈ N = Z2m , kde mod m je aplikov´ano po sloˇzk´ ach, |w|a znaˇc´ı poˇcet v´ yskyt˚ u p´ısmene a ve slovˇe w a Zm = {0, 1, . . . , m − 1}.
Vlastnost DRV definujeme pro aperiodick´ a slova, protoˇze je zˇrejm´e, ˇze nikdy neplat´ı pro slova posl´eze periodick´ a. Pro slova s vlastnost´ı DRV jsme dok´azali n´asleduj´ıc´ı vˇetu.
Vˇ eta 2. Necht’ Z je PRNG z (1) zaloˇzen´ y na bin´ arn´ım nekoneˇcn´em slovˇe u s vlastnost´ı DRV. Potom je Z aperiodick´ y a nem´ a mˇr´ıˇzkovou strukturu. Pozn´ amka 2. Pokud bychom mˇeli zadan´e konkr´etn´ı dva gener´atory s periodou m a pr´ avˇe pro nˇe chtˇeli garantovat absenci mˇr´ıˇzkov´e struktury, staˇcilo by zkontrolovat, ˇze plat´ı vlastnost DRV pouze pro modul rovn´ y m. Pˇ r´ıklad 3. Abychom vidˇeli, ˇze existuj´ı aperiodick´ a slova, kter´a vlastnost DRV nemaj´ı, prozkoumejme Thueovo–Morseovo slovo t = abbabaabbaababbabaababbaabbabaab . . . , kter´e je pevn´ ym bodem morfismu ϕ(a) = ab, ϕ(b) = ba. Vskutku, uvaˇzujeme-li m = 2 a w = aa, potom z tvaru morfismu plyne, ˇze se w vyskytuje pouze na lich´ ych pozic´ıch ij . Napˇr´ıklad i0 = 5, i1 = 9, i2 = 17, 1 Angl.
t0 . . . t4 = abbab, (|t0 . . . t4 |a , |t0 . . . t4 |b ) = (2, 3), t0 . . . t8 = abbabaabb, (|t0 . . . t8 |a , |t0 . . . t8 |b ) = (4, 5), t0 . . . t16 = abbabaabbaababbab, (|t0 . . . t16 |a , |t0 . . . t16 |b ) = (8, 9).
words with well-distributed occurrences
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
215
Proto je (|t0 t1 . . . tij −1 |a + |t0 t1 . . . tij −1 |b ) = ij lich´e ˇc´ıslo. Tud´ıˇz napˇr´ıklad (|t0 t1 . . . tij −1 |a , |t0 t1 . . . tij −1 |b ) mod 2 6= (0, 0). Definovali jsme kombinatorickou podm´ınku – dobˇre rozm´ıstˇen´e v´ yskyty – zaruˇcuj´ıc´ı absenci mˇr´ıˇzkov´e struktury. Nyn´ı je d˚ uleˇzit´e naj´ıt slova, kter´a takovou vlastnost maj´ı. V ˇcl´ anc´ıch [2], [3] jsme dok´ azali, ˇze sturmovsk´ a slova, coˇz jsou slova s minim´aln´ı komplexitou mezi slovy aperiodick´ ymi, tj. s komplexitou splˇ nuj´ıc´ı C(n) = n + 1, vlastnost DRV maj´ı. Uved’me alespoˇ n nejzn´ amˇejˇs´ıho z´ astupce t´eto tˇr´ıdy – slavn´e Fibonacciovo slovo: f je pevn´ ym bodem morfismu ϕ(a) = ab, ϕ(b) = a, tj. f = abaababaabaab . . . Kromˇe zobecnˇen´ı v´ ysledku z ˇcl´ anku [8] pro slova nad bin´arn´ı abecedou se n´am podaˇrilo tak´e naj´ıt kombinatorickou podm´ınku pro slova nad v´ıcep´ısmennou abecedou; gener´ atory na nich zaloˇzen´e pak kombinuj´ı v´ıce vstupn´ıch gener´ator˚ u a opˇet nemaj´ı mˇr´ıˇzkovou strukturu. Uk´ azalo se, ˇze staˇc´ı nejpˇrirozenˇejˇs´ım moˇzn´ ym zp˚ usobem zobecnit definici bin´ arn´ıho slova s dobˇre rozm´ıstˇen´ ymi v´ yskyty. ˇ ık´ame, ˇze aperiodick´e slovo u Definice 2. (Vlastnost DRV pro v´ıcep´ısmenn´ a slova.) R´ nad abecedou {a1 , a2 , . . . , ad } m´ a dobˇre rozm´ıstˇen´e v´yskyty (nebo m´a vlastnost DRV), pokud u splˇ nuje pro kaˇzd´e m ∈ N a pro kaˇzd´ y faktor w slova u n´asleduj´ıc´ı podm´ınku. Oznaˇc´ıme-li i0 , i1 , i2 , . . . v´ yskyty slova w ve slovˇe u, potom |u0 u1 . . . uij −1 |a1 , |u0 u1 . . . uij −1 |a2 , . . . , |u0 u1 . . . uij −1 |ad , mod m | j ∈ N = Zdm , kde mod m je aplikov´ano po sloˇzk´ ach.
Pozn´ amka 3. Vlastnost DRV je postaˇcuj´ıc´ı, nikoliv nutn´a podm´ınka pro absenci mˇr´ıˇzkov´e struktury. Nen´ı tˇeˇzk´e uk´ azat, ˇze modifikovan´e Fibonacciovo slovo, kter´e vzniklo z Fibonacciova slova tak, ˇze jsme za kaˇzd´e p´ısmeno napsali c, tj. u = acbcacacbcacbcac . . . , nem´ a vlastnost DRV, ale mˇr´ıˇzkovou strukturu tak´e nem´a. Jak se ale ukazuje ve statistick´ ych testech, vlastnost DRV je d˚ uleˇzit´ a nejen pro absenci mˇr´ıˇzkov´e struktury, ale zˇrejmˇe zaruˇcuje i dalˇs´ı dobr´e vlastnosti gener´ ator˚ u. Pˇ r´ıklad 4. Uved’me nejprve trivi´ aln´ı pˇr´ıklad slova s dobˇre rozm´ıstˇen´ ymi v´ yskyty. ˇ ık´ R´ ame, ˇze nekoneˇcn´e slovo nad abecedou A je univerz´ aln´ı, jestliˇze obsahuje vˇsechna koneˇcn´ a slova nad A jako sv´e faktory. Univerz´ aln´ı slovo nad {0, 1, . . . , d − 1} lze z´ıskat napˇr´ıklad ˇretˇezen´ım z´apis˚ u po sobˇe jdouc´ıch pˇrirozen´ ych ˇc´ısel v b´azi d. Je snadn´e si rozmyslet, ˇze univerz´ aln´ı slova maj´ı vlastnost DRV. Stejnˇe jako nad bin´ arn´ı abecedou i nad v´ıcep´ısmennou abecedou je potˇreba uk´azat, ˇze existuje ˇsirok´ a tˇr´ıda slov, kter´ a maj´ı vlastnost DRV. V hled´an´ı takov´eho pˇr´ıkladu jsme uspˇeli, protoˇze jsme zjistili, ˇze Arnouxova–Rauzyova slova vlastnost DRV maj´ı. Jde o slova, kter´ a maj´ı jazyk uzavˇren´ y vzhledem k reverzi a pro kaˇzdou d´elku n obsahuj´ı pr´ avˇe jeden prav´ y speci´ aln´ı faktor d´elky n, a tento prav´ y speci´al m´a nav´ıc jako prav´e extenze vˇsechna p´ısmena abecedy. Vˇsimnˇeme si, ˇze jde o pˇr´ım´e zobecnˇen´ı sturmovsk´ ych 216
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
slov na v´ıcep´ısmenn´e abecedy, protoˇze sturmovsk´ a slova jsou pˇresnˇe takov´ ymi vlastnostmi charakterizov´ ana nad bin´ arn´ı abecedou. Asi nejzn´amˇejˇs´ım tˇr´ıp´ısmenn´ ym pˇr´ıkladem je Tribonacciovo slovo u, kter´e je pevn´ ym bodem morfismu ϕ(a) = ab, ϕ(b) = ac, ϕ(c) = a, tj. u = abacabaabacab . . . Pozn´ amka 4. Existuje jednoduch´ a metoda, jak vyr´abˇet ze slov s vlastnost´ı DRV opˇet slova s DRV vlastnost´ı nad abecedou s menˇs´ım poˇctem p´ısmen. Je-li abeceda rovna {a1 , a2 , . . . , ad }, kde d ≥ 3, a slovo u m´ a vlastnost DRV, potom pokud ve slovˇe u pˇrep´ıˇseme p´ısmeno ad na jin´e ale pevnˇe dan´e p´ısmeno ai , bude m´ıt v´ ysledn´e slovo opˇet vlastnost DRV. Takov´ ym zp˚ usobem z´ısk´ ame slova odliˇsn´a od sturmovsk´ ych a Arnouxov´ ych–Rauzyov´ ych. Pozn´ amka 5. Dalˇs´ı transformac´ı slov, kter´ a zachov´av´a vlastnost DRV a tentokr´at zachov´ av´ a i abecedu, je vyuˇzit´ı morfismu, jehoˇz matice m´a determinant roven ±1 neboli je unimodul´ arn´ı. Matic´ı morfismu ϕ nad abecedou {a1 , a2 , . . . , ad } rozum´ıme matici Φ, jej´ıˇz ij-t´ y prvek je definov´ an jako Φij = |ϕ(ai )|aj . Pˇ r´ıklad 5. Uvaˇzujme morfismus ϕ : a → aab, b → ab. Pak jeho matice m´a tvar Φ = ( 21 11 ). Aplikujeme-li tento morfismus na Fibonacciovo slovo f = abaababaabaab . . ., pak dostaneme slovo ϕ(f ) = aababaabaababaababaabaababaabaabab . . ., kter´e m´a tak´e dobˇre rozm´ıstˇen´e v´ yskyty. 5. Statistick´ e testy gener´ ator˚ u pseudon´ ahodn´ ych ˇ c´ısel V pˇredchoz´ı ˇc´ asti jsme vysvˇetlili, ˇze PRNG zaloˇzen´e na slovech s DRV vlastnost´ı nemaj´ı mˇr´ıˇzkovou strukturu. V t´eto kapitole uk´ aˇzeme, ˇze tak´e v empirick´ ych statistick´ ych testech dopadnou velmi dobˇre, za pˇredpokladu, ˇze jsou kombinov´any dostateˇcnˇe kvalitn´ı LCG. Pro testov´ an´ı jsou potˇreba dlouh´e prefixy nekoneˇcn´ ych slov, podle kter´ ych kombinujeme LCG. Naˇstˇest´ı existuje cel´ a ˇrada sturmovsk´ ych a Arnouxov´ ych–Rauzyov´ ych slov, kter´ a jsou pevn´ ymi body morfism˚ u, a takov´e pevn´e body um´ıme efektivnˇe generovat [12]: prefix d´elky n z´ısk´ ame v ˇcase O(n) a pamˇet’ov´e n´aroky jsou O(log n). Chceme-li generov´ an´ı zrychlit, je v´ yhodnˇejˇs´ı si m´ısto obraz˚ u p´ısmen ϕ(a) pamatovat ϕk (a) pro kaˇzd´e a ∈ A. Pr´ avˇe takov´eho vylepˇsen´ı jsme vyuˇzili, ˇc´ımˇz se rychlost generov´ an´ı prefix˚ u stala vyˇsˇs´ı neˇz rychlost generov´an´ı v´ ystupu kombinovan´ ych LCG. Napˇr´ıklad pro z´ısk´ an´ı 1010 32bitov´ ych hodnot v´ ystupu LCG s modulem 264 jsme potˇrebovali 14.3 sekund, zat´ımco se stejn´ ym hardwarem jsme vygenerovali za p˚ ul sekundy 1010 p´ısmen pevn´eho bodu morfismu. Seˇcteno a podtrˇzeno, pouˇzit´ı PRNG zaloˇzen´ ych na pevn´ ych bodech morfism˚ u znamen´a oproti pouˇzit´ı p˚ uvodn´ıch LCG pouze zanedbatelnou ˇcasovou penalizaci. D´ ale uk´ aˇzeme v´ ysledky testov´ an´ı PRNG zaloˇzen´ ych: • na Fibonacciovˇe slovˇe (jako pˇr´ıklad slova sturmovsk´eho): jde o pevn´ y bod morfismu a 7→ ab, b 7→ a, • na modifikovan´em Fibonacciovˇe slovˇe – Fibonacci2 – s p´ısmenem c vloˇzen´ ym na kaˇzdou druhou pozici (viz pozn´ amka 3), • na Tribonacciovˇe slovˇe (jako ilustraci tern´ arn´ıho Arnouxova–Rauzyova slova): jde o pevn´ y bod morfismu a 7→ ab, b 7→ ac, c 7→ a. Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
217
slovo uloˇzen´ı ϕ uloˇzen´ı ϕk
Fibonacci Tribonacci 115 s 107 s 0.41 s 0.36 s
Tab. 1. Porovn´ an´ı ˇcasu v sekund´ ach pro generov´ an´ı 1010 p´ısmen Fibonacciova a Tribonacciova slova s vyuˇzit´ım p˚ uvodn´ıho algoritmu [12] a jeho vylepˇsen´e verze. Poˇcet iterac´ı k v pravidle ϕk je vyb´ır´ an tak, aby d´elka ϕk (a) nepˇrekroˇcila 4096 bajt˚ u pro ˇza ´dn´e p´ısmeno z abecedy. Mˇeˇren´ı bylo provedeno na Intel Core i7-3520M CPU s frekvenc´ı 2.90 GHz.
Implementovali jsme PRNG zaloˇzen´e na pevn´ ych bodech morfism˚ u pro v´ıce sturmovsk´ ych a tern´ arn´ıch Arnouxov´ ych–Rauzyov´ ych slov. Jelikoˇz jsou v´ ysledky podobn´e, pˇredstav´ıme zde pr´ avˇe jen v´ ysledky pro tˇri v´ yˇse uveden´e z´astupce. N´aˇs program generuj´ıc´ı PRNG zaloˇzen´e na pevn´ ych bodech morfism˚ u je dostupn´ y online spolu s popisem [9]. Do test˚ u jsme zahrnuli modifikovan´e Fibonacciovo slovo, kter´e nem´a vlastnost DRV, ale z´ aroveˇ n produkuje PRNG bez mˇr´ıˇzkov´e struktury. Ovˇsem je u nˇej vidˇet, ˇze v´ ysledky v testech jsou horˇs´ı neˇz pro Fibonacciovo slovo, a to aˇckoliv je Fibonacciovo slovo bin´ arn´ı a modifikovan´e Fibonacciovo slovo tern´ arn´ı. Pˇri kombinov´ an´ı LCG nepouˇz´ıv´ ame vˇsechny bity v´ ystupu. N´ami testovan´e LCG maj´ı periodu m v rozsahu od 247 − 115 do 264 , ale my pouˇz´ıv´ame pouze 32 horn´ıch bit˚ u jako v´ ystup, protoˇze pr´ avˇe 32bitov´e posloupnosti jsou potˇreba jako vstup sad statistick´ ych test˚ u.2 Aplikujeme dvˇe sady test˚ u n´ ahodn´ ych ˇc´ısel – TestU01 BigCrush a PractRand. Funguj´ı rozd´ılnˇe. Prvn´ı obsahuje 160 statistick´ ych test˚ u, pˇriˇcemˇz mnoho z nich je ˇsito na m´ıru konkr´etn´ım typ˚ um gener´ ator˚ u. Je to test s dobr´ ym renom´e, ovˇsem jeho nev´ yhodou je, ˇze pracuje s pevn´ ym poˇctem bit˚ u a nejniˇzˇs´ı jeden aˇz dva bity vˇzdy zahazuje. Druh´ a sada se skl´ ad´ a ze tˇr´ı r˚ uzn´ ych test˚ u, pˇriˇcemˇz jeden se soustˇred’uje na korelace na bl´ızko, druh´ y na korelace na d´ alku a posledn´ı je variac´ı klasick´eho gap testu“ (sledov´ an´ı mezer). Nav´ıc PractRand aplikuje na vstupn´ı data automa” ticky r˚ uzn´e filtry. Pro naˇse u ´ˇcely je zaj´ımav´ y filtr doln´ıch bit˚ u – pos´ıl´a na testov´an´ı r˚ uzn´ y, ale pˇredem dan´ y pevn´ y poˇcet bit˚ u z v´ ystupu gener´atoru (t´ım se d´a kontrolovat, zda byla odstranˇena v´ yˇse zm´ınˇen´ a slabina, kdy doln´ı bity LCG s modulem rovn´ ym mocninˇe dvojky maj´ı menˇs´ı periodu). PractRand um´ı testovat velmi dlouh´e posloupnosti, aˇz do nˇekolika exabajt˚ u. Abychom kontrolovali ˇcas, omezili jsme se na vstupu na posloupnosti d´elky 16 TB. Prvn´ı sloupec tabulky 2 ukazuje testovan´e LCG. Sloupec BigCrush ud´av´a, kolik test˚ u sady TestU01 BigCrush neuspˇelo. Sloupec PractRand ud´av´a log2 d´elky vstupn´ıch dat v bajtech, pro kter´ a zaˇcaly b´ yt v´ ysledky PractRand velmi podezˇrel´e (p-hodnota menˇs´ı neˇz 10−5 ). Jeden LCG neuk´ azal v PractRand testu ˇz´adn´e slabiny, coˇz jsme oznaˇcili jako > 44. Posledn´ı sloupec ukazuje ˇcas v sekund´ach pro generov´an´ı prvn´ıch 1010 32bitov´ ych posloupnost´ı v´ ystupu na Intel i7-3520M CPU s frekvenc´ı 2.90 GHz. Z tabulky 2 vid´ıme, ˇze LCG s m ∈ {247 − 115, 263 − 25} d´avaj´ı nejlepˇs´ı statistick´e v´ ysledky. Z´ aroveˇ n je ale ˇcas generov´ an´ı jejich v´ ystupu 20kr´at pomalejˇs´ı neˇz 2 Nepouˇ z´ıv´ ame pˇr´ımo LCG s modulem 232 , protoˇ ze u takov´ ych gener´ ator˚ u je zn´ amo, ˇ ze k-t´ y bit LCG s modulem 2` pro nˇ ejak´ e ` ∈ N m´ a periodu d´ elky pouze 2k . Nav´ıc i gener´ atory, kter´ e nemaj´ı modul ve tvaru 2` , ale maj´ı periodu bl´ızkou 232 , z˚ ust´ avaj´ı i po kombinov´ an´ı podle slov s dobˇre rozm´ıstˇ en´ ymi v´ yskyty v testech pˇr´ıliˇs slab´ e.
218
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
Gener´ator
Zkratka
LCG(247 − 115, 71971110957370, 0) L47-115 63
LCG(2
59
− 25, 2307085864, 0) 13
LCG(2 , 13 , 0) 63
19
LCG(2 , 5 , 1)
ˇ 1010 BigCrush PractRand Cas 14
40
281 s
L63-25
2
>44
277 s
L59
19
27
14.1 s
L63
19
33
14.4 s
64
L64 28
18
35
14.0 s
64
L64 32
14
34
14.1 s
64
L64 39
13
33
14.0 s
LCG(2 , 2862933555777941757, 1) LCG(2 , 3202034522624059733, 1) LCG(2 , 3935559000370003845, 1)
Tab. 2. Seznam pouˇzit´ ych LCG(m, a, c) a jejich v´ ysledky v testech BigCrush a PractRand
u ostatn´ıch pouˇzit´ ych LCG. To je d´ ano faktem, ˇze operaci modulo mus´ıme opravdu poˇc´ıtat, zat´ımco modulov´ an´ı 2` odpov´ıd´ a posouv´ an´ı bin´arn´ı teˇcky. V tabulk´ ach 3, 4, 5 uk´ aˇzeme v´ ysledky PRNG zaloˇzen´ ych na Fibonacciovˇe, modifikovan´em Fibonacciovˇe slovˇe a Tribonacciovˇe slovˇe pˇri kombinov´an´ı r˚ uzn´ ych LCG z tabulky 2. (Kombinujeme tak, ˇze ˇcten´ı p´ısmene a ve slovˇe odpov´ıd´a pouˇzit´ı v´ ystupu gener´ atoru ve sloupci a a analogicky pro dalˇs´ı p´ısmena b, c a sloupce b, c.) To zahrnuje tak´e pouˇzit´ı r˚ uzn´ ych instanc´ı stejn´eho gener´ atoru. Vˇsechny LCG maj´ı jako n´asadu ˇc´ıslo 1. PRNG pak byly “zahˇr´ aty” generov´ an´ım 109 hodnot, neˇz byly spuˇstˇeny statistick´e testy. Protoˇze frekvence p´ısmen jsou sn´e (napˇr. u Fibonacciova slova je √ odliˇ . pomˇer frekvence a ku b roven τ = 21 (1 + 5) = 1.618), zahˇr´ıvac´ı kolo zp˚ usob´ı, ˇze i dvˇe instance stejn´eho gener´ atoru se budou po chv´ıli hodnˇe liˇsit. Sloupec BigCrush pouˇz´ıv´ a n´ asleduj´ıc´ı znaˇcen´ı: prvn´ı ˇc´ıslo indikuje, kolik test˚ u sady BigCrush neuspˇelo, a druh´e ˇc´ıslo v z´ avorce ud´ av´ a, kolik test˚ u mˇelo podezˇrele malou p-hodnotu v rozsahu od 10−6 do 10−4 . Sloupec PractRand ukazuje log2 d´elky vstupn´ıch dat v bajtech, pro kter´e zaˇcaly b´ yt v´ ysledky PractRand velmi podezˇrel´e (p-hodnota menˇs´ı neˇz 10−5 ). . Maxim´ aln´ı objem vstupn´ıch dat byl 16TB = 244 B. Sloupec s ˇcasem ud´av´a dobu generov´ an´ı 1010 32bitov´ ych slov na Intel i7-3520M CPU s frekvenc´ı 2.90 GHz. Zdrojov´ y k´ od je dostupn´ y v [9]. Na z´ akladˇe v´ ysledk˚ u statistick´ ych test˚ u jsme uˇcinili n´asleduj´ıc´ı pozorov´an´ı: 1. Kvalita LCG se podstatnˇe zlepˇsila, kdyˇz jsme je zkombinovali podle slov s dobˇre rozm´ıstˇen´ ymi v´ yskyty. Toto je dobˇre patrn´e v testu BigCrush. Zat´ımco pro p˚ uvodn´ı LCG neuspˇelo 13 aˇz 19 test˚ u (jedinou v´ yjimkou byl gener´ator L63-25 s dvˇema ne´ uspˇechy – viz tabulka 2), po zkombinov´an´ı t´emˇeˇr vˇsechny BigCrush testy proˇsly. Nejhorˇs´ım v´ ysledkem byl jeden ne´ uspˇeˇsn´ y test pro kombinaci podle Tribonacciova slova, resp. podle Fibonacciova slova pro LCG L47-115. Pravdˇepodobnou pˇr´ıˇcinou je ovˇsem nejkratˇs´ı perioda tohoto gener´atoru mezi vˇsemi uvaˇzovan´ ymi LCG. V´ ysledky sady PractRand tak´e potvrzuj´ı zlepˇsen´ı. Napˇr´ıklad v pˇr´ıpadˇe LCG s modulem 264 zaˇcal test nach´ azet neregularity v distribuci posledn´ıho bitu ˇ aˇr necht’ tento fakt porovn´a s velikost´ı dat aˇz pro v´ ystup velikosti 2TB. Cten´ 8 GB aˇz 32 GB, kdy p˚ uvodn´ı LCG vykazovaly slabiny v tomto testu. Sada test˚ u PractRand aplikuje na vstupn´ı data r˚ uzn´e filtry a vˇsechny chyby se objevily pro filter Low1/32, kde je kontrolov´ ana distribuce pouze posledn´ıho bitu. Bylo by Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
219
Slovo Fib
Skupina A A A A A B B B C C C C C C
a L64 28 L64 32 L64 39 L64 28 L64 32 L47-115 L63-25 L59 L63-25 L59 L63-25 L64 39 L59 L64 39
ˇ 1010 b BigCrush PractRand Cas L64 28 0 41 30.2 s L64 28 0(1) 41 29.3 s L64 28 0 (2) 41 31 s L64 32 0 41 30.2 s L64 32 0 41 30.1 s L47-115 1(1) >44 302 s L63-25 0(1) >44 299 s L59 0(1) 34 28.7 s L59 0 38 198 s L63-25 0(1) 35 134 s L64 39 0 >44 199 s L63-25 0 41 135 s L64 39 0 35 30.4 s L59 0 37 31.3 s
Tab. 3. Shrnut´ı v´ ysledk˚ u statistick´ ych test˚ u pro gener´ atory zaloˇzen´e na Fibonacciovˇe slovˇe a r˚ uzn´ ych kombinac´ıch LCG z tabulky 2
2.
3.
4.
5. 6.
7.
220
tedy jistˇe moˇzn´e zlepˇsit kvalitu gener´ atoru t´ım, ˇze by se ze vstupn´ıch bit˚ u bralo pouze 16 horn´ıch bit˚ u, pˇr´ıpadnˇe kombinov´ an´ım gener´ator˚ u, kter´e nemaj´ı modul tvaru 2` . Kvalita kombinovan´ ych gener´ ator˚ u silnˇe z´ avis´ı na kvalitˇe kombinovan´ ych gener´ ator˚ u, viz napˇr. nˇekter´e gener´ atory skupiny B v tabulk´ach 3, 4, 5, kter´e mˇely dobr´e v´ ysledky v testu PractRand jiˇz v p˚ uvodn´ım tvaru. Dalˇs´ım zaj´ımav´ ym pozorov´ an´ım je fakt, ˇze uˇz´ıv´an´ım LCG se stejn´ ymi parametry a r˚ uznou n´ asadou (inicializaˇcn´ı hodnotou) nic nepokaz´ıme. Jen je tˇreba pohl´ıdat, aby byly poˇc´ ateˇcn´ı stavy dostateˇcnˇe r˚ uzn´e, viz skupina A a B v tabulk´ach 3, 4 a 5. Kombinujeme-li LCG r˚ uzn´e kvality, pak LCG nejniˇzˇs´ı kvality urˇcuje kvalitu v´ ysledn´eho gener´ atoru, viz skupina C v tabulk´ach 3, 4, 5. Pokud tedy kombinujeme LCG r˚ uzn´e kvality, je dobr´e pouˇz´ıt nejlepˇs´ı z nich tak, aby odpov´ıdal nejˇcastˇejˇs´ımu p´ısmenu ve slovˇe s vlastnost´ı DRV. Na druh´e stranˇe, kdyˇz kombinujeme gener´ atory stejn´e kvality, pak na jejich poˇrad´ı nez´ aleˇz´ı, viz skupina A v tabulk´ ach 3, 4, 5. Modifikovan´e Fibonacciovo slovo neprodukuje lepˇs´ı v´ ysledky neˇz Fibonacciovo slovo, aˇckoliv je nad vˇetˇs´ı abecedou. Je to pochopiteln´e, protoˇze vzniklo pravideln´ ym vkl´ ad´ an´ım nov´eho p´ısmena za kaˇzd´e p´ısmeno Fibonacciova slova. Tribonacciovo slovo ukazuje lepˇs´ı v´ ysledky neˇz Fibonacciovo slovo. Takov´e pozorov´ an´ı bylo platn´e pro kaˇzd´e tern´ arn´ı Arnouxovo–Rauzyovo slovo v porovn´an´ı se sturmovsk´ ymi slovy. Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
Slovo Fib2
Skupina A A A A A B B B B C C C C C C
a L64 28 L64 39 L64 39 L64 28 L64 32 L47-115 L63-25 L59 L63 L63-25 L63-25 L59 L59 L64 39 L64 39
b L64 28 L64 28 L64 32 L64 39 L64 39 L47-115 L63-25 L59 L63 L59 L64 39 L63-25 L64 39 L63-25 L59
ˇ 1010 c BigCrush PractRand Cas L64 28 0 40 28.4 s L64 28 0(2) 40 27.9 s L64 28 0 39 27.5 s L64 28 0 40 27.3 s L64 28 0 40 27.5 s L47-115 0(2) >44 297.0 s L63-25 0(2) >44 293.0 s L59 0(1) 32 27.4 s L63 0 38 27.3 s L64 39 0(1) 39 113.0 s L59 0 32 113.0 s L64 39 0 38 81.1 s L63-25 0 39 158.3 s L59 0 31 81.0 s L63-25 0 42 159.0 s
Tab. 4. Shrnut´ı v´ ysledk˚ u statistick´ ych test˚ u pro gener´ atory zaloˇzen´e na modifikovan´em Fibonacciovˇe slovˇe a r˚ uzn´ ych kombinac´ıch LCG z tabulky 2
Slovo Trib
Skupina A A A A A B B B B C C C C C C
a L64 28 L64 39 L64 39 L64 28 L64 32 L47-115 L63-25 L59 L63 L63-25 L63-25 L59 L59 L64 39 L64 39
b L64 28 L64 28 L64 32 L64 39 L64 39 L47-115 L63-25 L59 L63 L59 L64 39 L63-25 L64 39 L63-25 L59
ˇ 1010 c BigCrush PractRand Cas L64 28 0(2) 42 27.2 L64 28 0 43 27.1 L64 28 0(1) 42 28.0 L64 28 0(1) 42 28.1 L64 28 0 42 27.1 L47-115 1 >44 299.0 L63-25 0(1) >44 298.0 L59 0 35 27.2 L63 0(1) 41 27.2 L64 39 0(1) 39 172.0 L59 0(1) 41 173.0 L64 39 0 35 106.0 L63-25 0 34 70.5 L59 0 41 107.0 L63-25 0(1) 40 74.3
Tab. 5. Shrnut´ı v´ ysledk˚ u statistick´ ych test˚ u pro gener´ atory zaloˇzen´e na Tribonacciovˇe slovˇe a r˚ uzn´ ych kombinac´ıch LCG z tabulky 2
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3
221
6. Otevˇ ren´ e probl´ emy a dalˇ s´ı v´ yzkum Otevˇren´ ych probl´em˚ u z˚ ust´ av´ a mnoho. Co se t´ yˇce kombinatorick´e ˇc´asti ˇcl´anku, bylo by dobr´e naj´ıt dalˇs´ı velk´e tˇr´ıdy slov s dobˇre rozm´ıstˇen´ ymi v´ yskyty a pˇredevˇs´ım by bylo dobr´e vˇedˇet, kter´e pevn´e body morfism˚ u maj´ı vlastnost DRV. Tak´e se zd´a smyslupln´e studovat vlastnost DRV jen pro nˇekter´e speci´ aln´ı moduly, kdy v definici vlastnosti DRV uvaˇzujeme jedno konkr´etn´ı m m´ısto libovoln´eho modulu. V souvislosti se statistick´ ymi testy je pole p˚ usobnosti jeˇstˇe vˇetˇs´ı – kromˇe aperiodicity a absence mˇr´ıˇzkov´e struktury nen´ı dosud ˇz´ adn´ y dalˇs´ı u ´spˇech v testech vysvˇetlen teoreticky. Samozˇrejmˇe pokraˇcujeme tak´e ve statistick´ ych testech, kdy kombinujeme jin´e neˇz LCG gener´atory a v´ ysledky porovn´ av´ ame s obdobnˇe rychl´ ymi PRNG. ˇ 13-03538 Podˇ ekov´ an´ı. Prvn´ı z autor˚ u dˇekuje za finanˇcn´ı podporu grantu GACR ˇ a L’Or´ealu Cesk´ a republika za stipendium Pro ˇzeny ve vˇedˇe.
Literatura ´ , L’.: Nahl´ednut´ı pod pokliˇcku kombinatoriky na nekoneˇcn´ [1] Balkova ych slovech. PMFA 56 (2011), 9–18. ´ , L’., Bucci, M., De Luca, A., Puzynina, S.: Infinite words with well dis[2] Balkova tributed occurrences. J. Karhum¨ aki, A. Lepist¨ o, L. Zamboni (eds): Combinatorics on Words, LNCS 8079, Springer, 2013, 46–57. ´ , L’., Bucci, M., De Luca, A., Hladky ´ , J., Puzynina, S.: Pseudorandom [3] Balkova number generators based on infinite words. Zasl´ ano do Math. Comp. (2013), dostupn´e z arXiv: 1311.6002. [4] Doty-Humphrey, C.: Practically Random: C++ library of statistical tests for RNGs. Dostupn´e z: https://sourceforge.net/projects/pracrand [5] L’Ecuyer, P., Simard, R.: TestU01: A C library for empirical testing of random number generators. ACM Trans. Math. Software 33 (4) (2007). [6] Guimond, L.-S., Patera, J.: Proving the deterministic period breaking of linear congruential generators using two tile quasicrystals. Math. Comp. 71 (237) (2002), 319–332. [7] Guimond, L.-S., Patera, J., Patera, J.: Combining random number generators using cut-and-project sequences. Czechoslovak J. Phys. 51 (2001), 305–311. [8] Guimond, L.-S., Patera, J., Patera, J.: Statistical properties and implementation of aperiodic pseudorandom number generators. Appl. Numer. Math. 46 (3–4) (2003), 295–318. ´ J.: Random number generators based on the aperiodic infinite words. Do[9] Hladky stupn´e z: https://github.com/jirka-h/aprng [10] Marsaglia, G.: Random numbers fall mainly in the planes. Proc. Natl. Acad. Sci. USA 61 (1) (1968), 25–28. [11] Morse, M., Hedlund, G. A.: Symbolic dynamics. Amer. J. Math. 60 (1938), 815–866. [12] Patera, J.: Generating the Fibonacci chain in O(log n) space and O(n) time. Phys. Part. Nuclei 33 (2002), 118–122.
222
Pokroky matematiky, fyziky a astronomie, roˇcn´ık 59 (2014), ˇc. 3