Reverzibilní celulární automat
Reverzibilní celulární automat je celulární automat , ve kterém má každý stav jednoho předchůdce. Jde tedy o pravidelnou mřížku buněk, z nichž stav každé je převzat z konečné množiny stavů, a pravidlo pro současnou aktualizaci stavů buněk na základě stavů jejích sousedů. Podmínkou vratnosti je, že předchozí stav libovolné buňky lze určit se znalostí aktualizovaných stavů všech buněk v mřížce. Po čase reverzace se získá další reverzibilní celulární automat, možná s mnohem většími sousedstvími, ale také s pravidlem pro určení budoucího stavu buňky na základě aktuálních stavů jejích sousedů.
Je známo několik metod pro definování reverzibilních celulárních automatů, včetně blokových celulárních automatů , ve kterých je každý blok aktualizován nezávisle na ostatních, a celulárních automatů druhého řádu , ve kterých je pravidlo aktualizace buňky určeno dvěma předchozími stavy automatu. Navíc, pokud je automat specifikován pomocí tabulky pravidel, problém kontroly jeho reverzibility je pro jednorozměrný celulární automat řešitelný, ale v obecném případě
neřešitelný .
Reverzibilní celulární automaty definují přirozený model pro reverzibilní výpočty , technologii, která umožňuje vytvářet výpočetní zařízení s velmi nízkou spotřebou energie. Kvantové buněčné automaty , které umožňují provádět výpočty pomocí principů kvantové mechaniky , jsou často považovány za reverzibilní. Navíc mnohé modely z fyziky, jako je pohyb molekul ideálního plynu nebo Isingův model umístění magnetických nábojů, jsou přirozeně reverzibilní a jsou modelovány reverzibilními buněčnými automaty.
Vlastnosti inherentní reverzibilním celulárním automatům lze použít ke studiu automatů, které jsou nevratné, ale mají atraktor , podmnožinu stavů, ke kterým náhodné počáteční stavy konvergují. Jak píše Stephen Wolfram , „když se přiblíží k atraktoru, jakýkoli systém, dokonce i nevratný, vykazuje některé vlastnosti blízké reverzibilitě“ [1] .
Příklady
Elementární celulární automaty
Nejjednodušší buněčné automaty mají jednorozměrné pole buněk, z nichž každá obsahuje 0 nebo 1, zatímco okolí buňky se skládá ze sebe samé a jednoho souseda na každé straně; takovéto buněčné automaty se nazývají elementární [2] . Pokud přechodová funkce nikdy nemění stav buňky, vždy jej obrátí, nahradí stavem svého souseda (vždy stejný, vlevo nebo vpravo), nebo použije kombinaci posledních dvou operací, pak je takový elementární buněčný automat reverzibilní. . Přes svou jednoduchost hraje přechodová funkce, která přiřazuje každé buňce hodnotu jejího souseda, důležitou roli v symbolické dynamice , kde je známá jako operátor posunu [3] .
Elementární buněčné automaty jsou nevratné, kromě výše zmíněných triviálních případů, kdy je každá buňka určena stavem pouze jednoho ze svých sousedů. Pravidlo 90 se však blíží reverzibilnímu , ve kterém budoucí stav každé buňky je modulo 2 součet (také známý jako XOR ) aktuálních stavů jejích dvou sousedů. Ačkoli je pravidlo 90 nevratné, každá z jeho konfigurací má přesně čtyři předchůdce a pravidlo 90 je také lokálně reverzibilní , to znamená, že jakákoli sekvence po sobě jdoucích stavů má alespoň jednoho předchůdce [4] .
Další jednorozměrné příklady
Trochu složitější příklad získáme takto: nechť je stav každé buňky uspořádaný pár ( l , r ) a přechodová funkce vezme levou stranu nového stavu od souseda zleva a pravou stranu právo. V tomto případě předpokládáme, že levá a pravá část jsou převzaty ze dvou různých konečných množin možných hodnot. Příklad je uveden na obrázku na začátku článku: levá strana stavu je tvar tvaru a pravá strana je jeho barva. Takový automat je invertibilní, protože můžeme vzít levou stranu předchozího stavu buňky napravo a pravou stranu nalevo.
Další příklad reverzibilního jednorozměrného buněčného automatu provádí násobení 2 nebo 5 v desítkové soustavě . Každá číslice v takovém násobení závisí pouze na dvou předchozích číslicích, a proto je okolí, které určuje další hodnotu, konečné, což je pro celulární automat nezbytné. Obecně řečeno, násobení nebo dělení čísla v pozičním zápisu přirozeným číslem n je specifikováno celulárním automatem právě tehdy, když jsou všechna prvočinitele n v základu číselné soustavy. Takový automat je jednorozměrný a reverzibilní, protože jej lze dělit nebo násobit stejným číslem. A například násobení 3 v desítkovém zápisu není určeno celulárním automatem, protože k přenosu může dojít prostřednictvím libovolně velkého počtu číslic: při násobení 333334*3=1000002 dojde k přenosu prostřednictvím 5 číslic [5] .
Zvířátka
Hra o život , jeden ze známějších celulárních automatů, není reverzibilní: mnoho konfigurací například zanikne. Obsahuje také Gardens of Eden , konfigurace bez předchůdců. Místo toho Tommaso Toffoli a Norman Margolus vynalezli Critters, reverzibilní buněčný automat s dynamickým chováním podobně jako Life [6] .
"Critters" je blokový celulární automat , ve kterém jsou buňky rozděleny do 2 × 2 bloků, které jsou aktualizovány odděleně od ostatních. Zároveň se po každém kroku změní rozdělení na bloky: posunou se o jednu buňku horizontálně i vertikálně. Funkce Critters transition obrátí stav každé buňky, pokud počet živých buněk v bloku nejsou dvě, a otočí celý blok o 180°, pokud je tento počet tři. Vzhledem k tomu, že počet živých buněk se mění na počet mrtvých a přechodové funkce jsou reverzibilní pro každou hodnotu počtu buněk, je takový buněčný automat reverzibilní na každém bloku, a proto je reverzibilní jako celek [6] .
Pokud začnete s malým počtem náhodných buněk uvnitř větší oblasti mrtvých buněk, pak se z centrální oblasti rozšíří mnoho malých vzorů, jako je kluzák ze Hry o život, a budou interagovat složitým způsobem. Critters zároveň umožňují složité vesmírné lodě a oscilátory s nekonečným počtem různých period [6] .
Konstrukce
Je známo několik obecných metod pro konstrukci reverzibilních celulárních automatů.
Blokovat celulární automaty
Blokový celulární automat je celulární automat, jehož buňky jsou rozděleny do stejných bloků a přechodová funkce je aplikována na každý blok samostatně. Typicky takový automat používá postupně několik oddílů do bloků [7] . Typickým příkladem takového schématu je okolí Margolus , ve kterém jsou buňky čtvercové mřížky rozděleny na 2 × 2 bloky vertikálními a horizontálními čarami a po každém kroku je rozdělení na bloky posunuto o jednu buňku horizontálně a vertikálně. ; tak všechny čtyři buňky libovolného bloku v dalším kroku skončí v různých blocích [8] . Výše diskutovaná „zvířátka“využívají sousedství Margolus.
Aby byl blokový celulární automat reverzibilní, je nutné a postačující, aby přechodová funkce na každém bloku byla reverzibilní, což umožňuje kontrolovat reverzibilitu blokového celulárního automatu pomocí vyčerpávajícího výčtu . Inverzní celulární automat je zároveň i blokovým automatem se stejnou strukturou rozdělení do bloků, ale s funkcí inverzního přechodu [7] .
Simulace nevratných automatů
Jakýkoli -dimenzionální buněčný automat může být zabudován do -dimenzionálního reverzibilního automatu: navíc každý stav nového automatu uchovává celou historii evoluce toho starého. Pomocí tohoto vložení Toffoli ukázal, že mnoho vlastností nevratných buněčných automatů se přenáší na vratné, například mohou být Turingovy kompletní [9] .
Nárůst rozměru v takové konstrukci není náhodný: za určitých slabých omezení (jako je neměnnost vložení vzhledem k paralelním překladům ) je dokázáno, že jakékoli vložení celulárního automatu s „ rajskou zahradou “ je, konfigurace bez předchůdců, do reverzibilního celulárního automatu musí zvětšit rozměr [10] .
Avšak za přítomnosti klidových stavů ( anglicky quiescent States ), tedy stavů, které se nemění, za předpokladu, že se nemění ani sousední státy[ jak? ] , je možné modelovat finální konfiguraci celulárního automatu v blokovém reverzibilním celulárním automatu stejné dimenze [11] . Informace, které měly být ztraceny v dalším kroku, jsou místo toho uloženy v nekonečné oblasti buněk v klidu. Čas potřebný k simulaci části konfigurace je přitom úměrný její velikosti. Přesto taková konstrukce umožňuje prokázat existenci reverzibilního jednorozměrného Turingova kompletního buněčného automatu [12] .
Poznámky
- ↑ Wolfram (2002 ), str. 1018 Archivováno 4. března 2016 na Wayback Machine .
- ↑ Schiff (2008 ), str. 44.
- ↑ Blanchard, Devaney & Keen (2004 ), s. 38 : "Posunová mapa je bezpochyby základním objektem v symbolické dynamice."
- ↑ Sutner (1991 ).
- ↑ Wolfram (2002 ), str. 1093 Archivováno 20. února 2016 na Wayback Machine .
- ↑ 1 2 3 Toffoli & Margolus (1987 ), oddíl 12.8.2, "Critters", str. 132-134; Margolus (1999 ); Marotta (2005 ).
- ↑ 1 2 Toffoli & Margolus (1987 ), oddíl 14.5, "Technika dělení", str. 150-153; Schiff (2008 ), oddíl 4.2.1, "Rozdělení celulárních automatů", str. 115-116.
- ↑ Toffoli & Margolus (1987 ), kapitola 12, "The Margolus Neighborhood", str. 119-138.
- ↑ Toffoli (1977 )
- ↑ Hertling (1998 )
- ↑ Morita (1995 )
- ↑ Kari (2005 ).
Literatura
- Amoroso, S. & Patt, YN (1972), Rozhodovací postupy pro surjektivitu a injektivitu paralelních map pro mozaikové struktury , Journal of Computer and System Sciences vol. 6: 448–464 , DOI 10.1016/S0022-0000(72)80013- 8 .
- Beal, Marie-Pierre; Karton, Olivier; Prieur, Christophe & Sakarovitch, Jacques (2003), Kvadratizační převodníky: účinný postup pro rozhodování o funkčnosti a sekvenčnosti , Theoretical Computer Science vol . 292 (1): 45–63 , DOI 10.1016/S0304-39175(041-602
- Blanchard, Paul; Devaney, Robert L. & Keen, Linda (2004), Komplexní dynamika a symbolická dynamika , in Williams, Susan G., Symbolic Dynamics and its Applications , sv. 60, Proceedings of Symposia in Applied Mathematics, Providence, RI: American Mathematical Society, str. 37–60 , DOI 10.1090/psapm/060/2078845 .
- Boykett, Tim (2004), Efektivní vyčerpávající seznamy reverzibilních jednorozměrných celulárních automatů , Theoretical Computer Science vol. 325 (2): 215–247 , doi 10.1016/j.tcs.2004.06.007 .
- Boykett, Tim; Kari, Jarkko & Taati, Siamak (2008), Conservation law in rectangular CA , Journal of Cellular Automata vol. 3 (2): 115–122 , < http://pub.math.leidenuniv.nl/~taatis/articles/ conslaws06.pdf > . Získáno 1. října 2017. Archivováno 30. září 2015 na Wayback Machine .
- Capobianco, Silvio & Toffoli, Tommaso (2011), Lze něco z Noetherovy věty zachránit pro diskrétní dynamické systémy? , Sborník příspěvků z 10. mezinárodní konference o nekonvenčních výpočtech (UC 2011) , sv. 6714, Poznámky k přednáškám z informatiky , Springer-Verlag, s. 77–88 , DOI 10.1007/978-3-642-21341-0_13 .
- Chai, Zhenchuan; Cao, Zhenfu & Zhou, Yuan (2005), Šifrování založené na reverzibilních celulárních automatech druhého řádu , Paralelní a distribuované zpracování a aplikace (ISPA 2005 Workshopy) , sv. 3759, Poznámky k přednáškám z informatiky , Springer-Verlag, s. 350–358 , DOI 10.1007/11576259_39 .
- Čulík, Karel, II (1987), On invertible cellular automata , Complex Systems vol . 1 (6): 1035–1044 , < http://www.complex-systems.com/pdf/01-6-1.pdf > .
- Czeizler, Eugen (2004), O velikosti inverzních sousedství pro jednorozměrné reverzibilní celulární automaty , Theoretical Computer Science vol. 325 (2): 273–284 , doi 10.1016/j.tcs.2004.06.009 .
- Czeizler, Eugen & Kari, Jarkko (2007), Pevná lineární vazba na synchronizační zpoždění bijektivních automatů , Theoretical Computer Science vol . 380 (1–2): 23–36 , DOI 10.1016/j.tcs.2007.02.052 .
- Di Gregorio, S. & Trautteur, G. (1975), O reverzibilitě v celulárních automatech , Journal of Computer and System Sciences vol . 11(3): 382–391 , DOI 10.1016/S0022-0000(75)80059-6
- Durand-Lose, Jérôme (2001), Reprezentování reverzibilních celulárních automatů s reverzibilními blokovými celulárními automaty, Diskrétní modely: kombinatorika, výpočty a geometrie (Paris, 2001) , Diskrétní matematika. teor. Počítat. sci. Proc., A.A., Maison Inform. Matematika. Diskrétní. (MIMD), Paris, s. 145–154 .
- Durand-Lose, Jérôme (2002), Computing inside the billiard ball model, in Adamatzky, Andrew , Collision-Based Computing , Springer-Verlag, s. 135–160 .
- Feynman, Richard P. (1982), Simulování fyziky pomocí počítačů , International Journal of Theoretical Physics vol. 21 (6–7): 467–488 , DOI 10.1007/BF02650179 .
- Fredkin, Edward & Toffoli, Tommaso (1982), Konzervativní logika , International Journal of Theoretical Physics , díl 21 (3–4): 219–253 , DOI 10.1007/BF01857727 . Přetištěno v Adamatzky, Andrew , ed. (2002), Collision-Based Computing , Springer-Verlag, s. 47–82 .
- Fukś, Henryk (2007), Poznámky ke kritickému chování aditivních invariantů druhého řádu v elementárních celulárních automatech, Fundamenta Informaticae T. 78 (3): 329–341 .
- T. 49 (3 295–322 , DOI 10.1016 / 0167-2789(919015-)80 ) .
- Hedlund, G. A. (1969), Endomorphisms and automorphisms of shift dynamical systems , Mathematical Systems Theory , svazek 3 (4): 320–375 , DOI 10.1007/BF01691062 .
- Hertling, Peter (1998), Vkládání celulárních automatů do reverzibilních, Nekonvenční modely počítání (Auckland, 1998) , Springer Series in Discrete Mathematics and Theoretical Computer Science, Springer-Verlag, s. 243–256 .
- Hillman, David (1991), Struktura reverzibilních jednorozměrných celulárních automatů , Physica D: Nonlinear Phenomena vol . 52 (2–3): 277–292
- Janzing, Dominik (2010), Existuje fyzikálně univerzální buněčný automat nebo hamiltonián? .
- Kari, Jarkko (1990), Reverzibilita 2D celulárních automatů je nerozhodnutelná , Physica D: Nelineární jevy T. 45 (1–3): 379–385 , DOI 10.1016/0167-2789(90)90195-U .
- Kari, Jarkko (1992), O inverzních sousedstvích reverzibilních celulárních automatů, Lindenmayer Systems: Impacts on Theoretical Computer Science, Computer Graphics, and Developmental Biology , Springer-Verlag, s. 477–495 .
- Kari, Jarkko (1996), Reprezentace reverzibilních celulárních automatů s blokovými permutacemi , Mathematical Systems Theory vol. 29 (1): 47–61 , DOI 10.1007/BF01201813 .
- Kari, Jarkko (2005), Reverzibilní buněčné automaty .Developments in Language Theory: 9th International Conference, DLT 2005, Palermo, Italy, July 4-8, 2005, Proceedings , vol. 3572, Poznámky k přednáškám z informatiky , Springer-Verlag, s. 2–23, doi : 10.1007/11505877_5 .
- Kari, Jarkko (2009), Struktura reverzibilních celulárních automatů , Nekonvenční výpočet: 8. mezinárodní konference, UC 2009, Ponta Delgada, Portugalsko, 7.–11. září 2009, Proceedings , sv. 5715, Poznámky k přednáškám z informatiky , Springer-Verlag, s. 6 , DOI 10.1007/978-3-642-03745-0_5 .
- Margolus, Norman (1984), Physics-like models of computation , Physica D: Nonlinear Phenomena vol. 10: 81–95 , DOI 10.1016/0167-2789(84)90252-5 . Přetištěno v Wolfram, Stephen (1986), Theory and Applications of Cellular Automata , sv. 1, Advanced series on complex systems, World Scientific, str. 232–246 a v Adamatzky, Andrew , ed. (2002), Collision-Based Computing , Springer-Verlag, s. 83–104 .
- Margolus, Norman (1999), Crystalline computation, in Hey, Anthony JG, Feynman and Computation , Perseus Books, str. 267–305 .
- Marotta, Sebastian M. (2005), Living in Critters' world , Revista Ciências Exatas e Naturais vol . 7 (1) , < http://web01.unicentro.br/revistas/index.php/RECEN/article/viewFile/ 385/537 > . Získáno 1. října 2017. Archivováno 19. března 2012 na Wayback Machine .
- McIntosh, Harold V. (2009), 12. Reverzibilní celulární automaty, One Dimensional Cellular Automata , Luniver Press, str. 205–246 .
- Meyer, David A. (1996), From quantum cellular automata to quantum lattice gases , Journal of Statistical Physics vol. 85 (5–6): 551–574 , DOI 10.1007/BF02199356 .
- Miller, Daniel B. & Fredkin, Edward (2005), Dvoustavové , reverzibilní, univerzální celulární automaty ve třech rozměrech , Proceedings of the 2nd Conference on Computing Frontiers (CF '05) , New York, NY, USA: ACM, s. .. 45–51, ISBN 1-59593-019-1 , DOI 10.1145/1062261.1062271 .
- Miller, Daniel B. & Fredkin, Edward (2012), Kruhový pohyb strun v celulárních automatech a další překvapení .
- Moraal, Hendrik (2000), Graf-teoretická charakterizace invertibilních celulárních automatů , Physica D: Nonlinear Phenomena T. 141 (1–2): 1–18 , DOI 10.1016/S0167-2789(00)00020-8 .
- Morita, Kenichi (1995), Reverzibilní simulace jednorozměrných ireverzibilních celulárních automatů , Theoretical Computer Science vol. 148 (1): 157–163 , DOI 10.1016/0304-3975(95)00038-X .
- Myhill, John (1963), The converse of Moore's Garden-of-Eden teorem , Proceedings of the American Mathematical Society vol. 14: 685–686 , DOI 10.2307/2034301 . Přetištěno v Burks, Arthur W. (1970), Essays on Cellular Automata , University of Illinois Press, s. 204–205 .
- Nagaj, Daniel & Wocjan, Pawel (2008), Hamiltonovské kvantové buněčné automaty v jedné dimenzi , Physical Review A T. 78: 032311 , DOI 10.1103/PhysRevA.78.032311 .
- Patt, YN (1971), Injekce velikosti okolí tři a čtyři na množině konfigurací z nekonečných jednorozměrných mozaikových automatů dvoustavových buněk , Technická zpráva ECON-N1-P-1, Ft. Monmouth, NJ 07703 . Jak citují Amoroso & Patt (1972 ) a Toffoli & Margolus (1990 ).
- Pomeau, Y. (1984), Invariants in cellular automata , Journal of Physics A: Mathematical and General T. 17(8): L415–L418 , DOI 10.1088/0305-4470/17/8/004 .
- Richardson, D. (1972), Tessellations with local Transformations , Journal of Computer and System Sciences , díl 6: 373–388 , DOI 10.1016/S0022-0000(72)80009-6 .
- Schaeffer, Luke (2015), Fyzikálně univerzální celulární automat , Sborník příspěvků z 6. konference Inovace teoretické informatiky (ITCS 2015) , Asociace pro výpočetní techniku , s. 237–246 , ECCC TR14-084 , DOI 10.1145/2688073.2688107 .
- Schiff, Joel L. (2008), Cellular Automata: A Discrete View of the World , Wiley, ISBN 978-0-470-16879-0 .
- Schumacher, B. & Werner, RF (2004), Reverzibilní kvantové celulární automaty .
- Seck Tuoh Mora, Juan Carlos; Chapa Vergara, Sergio V.; Juárez Martínez, Genaro & McIntosh, Harold V. (2005), Postupy pro výpočet reverzibilních jednorozměrných buněčných automatů , Physica D: Nonlinear Phenomena vol. 202 (1–2): 134–141 , DOI 10.1016/j.physd. 0,018 _
- Pastýř, DJ; Franz, T. & Werner, RF (2006), Univerzálně programovatelný kvantový celulární automat , Physical Review Letters T. 97: 020502, PMID 16907423 , DOI 10.1103/PhysRevLett.97.020502 .
- Sutner, Klaus (1991), De Bruijn graphs and linear cellular automata , Complex Systems vol . 5: 19–30 , < http://www.complex-systems.com/pdf/05-1-3.pdf > .
- Takesue, Shinji (1990), Relaxační vlastnosti elementárních reverzibilních celulárních automatů , Physica D: Nonlinear Phenomena vol . 45 (1–3): 278–284 , DOI 10.1016/0167-2789 (90)90195-U
- Toffoli , Tommaso (1977), Výpočetní a konstrukční univerzálnost reverzibilních celulárních automatů , Journal of Computer and System Sciences sv .
- Toffoli, Tommaso & Margolus, Norman (1987), Cellular Automata Machines: A New Environment for Modeling , MIT Press, ISBN 9780262200608 .
- Toffoli, Tommaso & Margolus , Norman (1990), Invertible cellular automata: a review , Physica D: Nonlinear Phenomena sv .
- Vichniac, Gérard Y. (1984), Simulování fyziky pomocí celulárních automatů , Physica D: Nonlinear Phenomena vol. 10: 96–115 , DOI 10.1016/0167-2789(84)90253-7 .
- Watrous, John (1995), O jednorozměrných kvantových celulárních automatech , Sborník z 36. výročního sympozia o základech počítačové vědy (Milwaukee, WI, 1995) , Los Alamitos, CA: IEEE Computer Society Press, s. 528–537 , DOI 10.1109/SFCS.1995.492583 .
- Wolfram, Stephen (1984), Buněčné automaty jako modely složitosti , Nature T. 311: 419–424, doi : 10.1038/311419a0 , < http://www.stephenwolfram.com/publications/academic/cellular-automata-models- komplexita.pdf > .
- Wolfram, Stephen (2002), Nový druh vědy , Wolfram Media, ISBN 1-57955-008-8