De Bruijnova posloupnost [1] je cyklický řád, jehož prvky patří do dané konečné množiny (za množinu se obvykle považuje ), takže všechny její podposloupnosti [2] dané délky jsou různé.
Často jsou uvažovány periodické sekvence s periodou obsahující různé podsekvence , tj. takové periodické sekvence, ve kterých je libovolný segment délky de Bruijnovou sekvencí se stejnými parametry a .
Cykly jsou pojmenovány po nizozemském matematikovi Nicholasi de Bruijnovi , který je studoval v roce 1946 [3] , ačkoli byly studovány již dříve [4] .
Je zřejmé, že délka (perioda) takového cyklu nemůže překročit - počet všech různě dlouhých vektorů s prvky od ; Je snadné prokázat, že tohoto odhadu bylo dosaženo. Cykly této maximální možné délky se obvykle nazývají de Bruijnovy cykly (někdy se však tento termín používá i pro cykly kratší délky).
Pro , existují takové de Bruijnovy cykly s délkou o jednu menší, než je maximum, které jsou vyjádřeny lineárními rekurentními vztahy řádu Na základě takových sekvencí je sestaven zejména cyklický redundantní kód CRC32 (EDB88320).
Příklady de Bruijnových cyklů pro období 2, 4, 8, 16:
Počet de Bruijnových cyklů s parametry je také ( zvláštním případem de Bruijnovy věty je věta BEST , pojmenovaná podle jmen de Bruijn, Tatiana Ehrenfest , Cedric Smith a William Tutt ).
Existuje výhodná interpretace de Bruijnových sekvencí a cyklů na základě tzv. de Bruijnova grafu — orientovaného grafu s vrcholy odpovídajícími různým množinám délek s prvky od , ve kterém hrana vede z vrcholu do vrcholu tehdy a jen tehdy ( ); v tomto případě může být samotná hrana spojena se sadou délek : . U takového grafu odpovídají Eulerovy cesty ( Eulerovské cykly ) , které neprocházejí dvakrát stejnou hranou , de Bruijnovi posloupnosti (cyklu) s parametry a a Hamiltonovské cesty ( Hamiltonovské cykly ) , které neprocházejí dvakrát stejným vrcholem. do sekvence (cyklu) de Bruijn s parametry a .
De Bruijnův graf je široce používán v bioinformatice při úlohách sestavení genomu .
Sekvence a řádky | |
---|---|
Sekvence | |
Řádky, základní | |
Číselné řady ( operace s číselnými řadami ) | |
funkční řádky | |
Jiné typy řádků |