Käännettävä soluautomaatti
Reversiibeli soluautomaatti on soluautomaatti , jossa jokaisella tilalla on yksi edeltäjä. Se on siis säännöllinen solujen hila, joiden kunkin tila on otettu äärellisestä tilojen joukosta, ja sääntö solujen tilojen samanaikaiselle päivittämiselle naapuriensa tilojen perusteella. Käänteisyyden ehtona on, että minkä tahansa solun edellinen tila voidaan määrittää, kun tiedetään hilan kaikkien solujen päivitetyt tilat. Ajan kääntämisen jälkeen saadaan toinen reversiibeli soluautomaatti, jolla on ehkä paljon suuremmat naapurit, mutta myös sääntö solun tulevan tilan määrittämiseksi sen naapureiden nykyisten tilojen perusteella.
Reversiibelien solukkoautomaattien määrittämiseen tunnetaan useita menetelmiä, mukaan lukien lohkosoluautomaatit , joissa jokainen lohko päivitetään muista riippumatta, ja toisen asteen solukkoautomaatit , joissa solun päivityssäännön määrää automaatin kaksi aikaisempaa tilaa. Lisäksi jos automaatti määritellään sääntötaulukon avulla, sen palautuvuuden tarkistusongelma on yksiulotteisen soluautomaatin osalta ratkaistavissa , mutta yleisessä tapauksessa ratkaisematon.
Reversiibelit solukkoautomaatit määrittelevät luonnollisen mallin reversiibelille laskennalle , teknologialle, joka mahdollistaa erittäin alhaisen virrankulutuksen laskentalaitteiden luomisen. Kvanttisoluautomaattien , jotka mahdollistavat laskelmien tekemisen kvanttimekaniikan periaatteiden avulla , oletetaan usein olevan palautuvia. Lisäksi monet fysiikan mallit, kuten ideaalikaasumolekyylien liike tai Ising-malli magneettisten varausten sijoittamisesta, ovat luonnostaan palautuvia ja ne mallinnetaan palautuvilla soluautomaateilla.
Reversiibelien soluautomaattien ominaisuuksien avulla voidaan tutkia automaatteja, jotka ovat peruuttamattomia, mutta joilla on houkuttelija , tilojen osajoukko, joihin satunnaiset alkutilat konvergoivat. Kuten Stephen Wolfram kirjoittaa , "lähestyessään attraktoria, mikä tahansa järjestelmä, jopa peruuttamaton, osoittaa joitakin ominaisuuksia, jotka ovat lähellä palautuvuutta" [1] .
Esimerkkejä
Perussolukkoautomaatit
Yksinkertaisimmilla soluautomaateilla on yksiulotteinen joukko soluja, joista jokainen sisältää 0 tai 1, kun taas solun lähialue koostuu itsestään ja yhdestä naapurista kummallakin puolella; tällaisia soluautomaatteja kutsutaan alkeisautomaateiksi [2] . Jos siirtymäfunktio ei koskaan muuta solun tilaa, kääntää sen aina päinvastaiseksi, korvaa sen naapurinsa tilalla (aina sama, vasemmalla tai oikealla) tai soveltaa kahden viimeisen toiminnon yhdistelmää, niin tällainen alkeissoluautomaatti on palautuva. . Yksinkertaisuudestaan huolimatta siirtymäfunktio, joka antaa kullekin solulle naapurinsa arvon, on tärkeässä roolissa symbolisessa dynamiikassa , jossa se tunnetaan siirtooperaattorina [3] .
Elementaariset soluautomaatit ovat peruuttamattomia, lukuun ottamatta edellä mainittuja triviaaleja tapauksia, joissa kunkin solun määrää vain yhden naapurinsa tila. 90-sääntö on kuitenkin lähellä reversiibeliä , jossa kunkin solun tuleva tila on sen kahden naapurin nykyisten tilojen modulo 2 -summa (tunnetaan myös nimellä XOR ) . Vaikka sääntö 90 on peruuttamaton, kullakin sen kokoonpanolla on täsmälleen neljä edeltäjää, ja sääntö 90 on myös paikallisesti palautuva , eli millä tahansa peräkkäisten tilojen sekvenssillä on vähintään yksi edeltäjä [4] .
Muita yksiulotteisia esimerkkejä
Hieman monimutkaisempi esimerkki saadaan seuraavasti: olkoon kunkin solun tila järjestetty pari ( l , r ), ja siirtymäfunktio ottaa uuden tilan vasemman puolen vasemmanpuoleiselta naapuriltaan ja oikean puolen oikea. Tässä tapauksessa oletetaan, että vasen ja oikea osa on otettu kahdesta eri äärellisestä mahdollisten arvojen joukosta. Artikkelin alussa olevassa kuvassa on esimerkki : tilan vasen puoli on muodon muoto ja oikea puoli sen väri. Tällainen automaatti on käännettävä, koska voimme ottaa solun edellisen tilan vasemman puolen oikealta ja oikean puolen vasemmalta.
Toinen esimerkki palautuvasta yksiulotteisesta soluautomaatista, joka suorittaa kertomisen kahdella tai viidellä desimaalimuodossa . Jokainen numero tällaisessa kertolaskussa riippuu vain kahdesta edellisestä numerosta, ja siksi seuraavan arvon määrittävä naapurusto on äärellinen, mikä on välttämätöntä solukkoautomaatille. Yleisesti ottaen paikannusmerkinnällä olevan luvun kertominen tai jako luonnollisella luvulla n määritellään soluautomaatilla, jos ja vain jos kaikki n:n alkutekijät ovat lukujärjestelmän kantaosassa. Tällainen automaatti on yksiulotteinen ja käännettävä, koska se voidaan jakaa tai kertoa vastaavasti samalla numerolla. Ja esimerkiksi kertomista kolmella desimaalimuodossa ei soluautomaatti määritä, koska siirto voi tapahtua mielivaltaisen suuren numeromäärän kautta: kun kerrotaan 333334*3=1000002, siirto tapahtuu 5 numeron kautta [5] .
Eläimet
Game of Life , yksi tunnetuimmista soluautomaateista, ei ole palautuva: esimerkiksi monet kokoonpanot kuolevat pois. Se sisältää myös Gardens of Edenin , kokoonpanot ilman edeltäjiä. Sen sijaan Tommaso Toffoli ja Norman Margolus keksivät Critterit , palautuvan soluautomaatin, jolla on dynaaminen käyttäytyminen paljolti Lifen tavoin [6] .
"Critters" on lohkosolukkoautomaatti , jossa solut on jaettu 2 × 2 lohkoon, jotka päivitetään erillään muista. Samanaikaisesti jokaisen vaiheen jälkeen jako lohkoihin muuttuu: niitä siirretään yhden solun verran vaaka- ja pystysuunnassa. Critters-siirtymäfunktio kääntää jokaisen solun tilan, jos elävien solujen lukumäärä lohkossa ei ole kaksi, ja kääntää koko lohkoa 180°, jos tämä luku on kolme. Koska elävien solujen lukumäärä muuttuu kuolleiden solujen lukumääräksi ja siirtymäfunktiot ovat palautuvia jokaiselle solumäärän arvolle, tällainen soluautomaatti on reversiibeli jokaisessa lohkossa, ja siksi se on palautuva kokonaisuutena [6] .
Jos aloitat pienellä määrällä satunnaisia soluja kuolleiden solujen suuremman alueen sisällä, monet pienet kuviot, kuten Game of Lifen purjelentokone , leviävät keskialueelta ja ovat vuorovaikutuksessa monimutkaisilla tavoilla. Samaan aikaan otokset sallivat monimutkaiset avaruusalukset ja oskillaattorit äärettömällä määrällä eri jaksoja [6] .
Rakennukset
Tunnetaan useita yleisiä menetelmiä palautuvien soluautomaattien rakentamiseksi.
Estä solukkoautomaatit
Lohkosoluautomaatti on soluautomaatti, jonka solut on jaettu yhtä suuriin lohkoihin ja jokaiseen lohkoon sovelletaan siirtymäfunktiota erikseen. Tyypillisesti tällainen automaatti käyttää useita osioita lohkoiksi vuorotellen [7] . Tyypillinen esimerkki tällaisesta kaavasta on Margolus-naapurusto , jossa neliömäisen hilan solut on jaettu 2 × 2 lohkoon pysty- ja vaakasuorilla viivoilla, ja jokaisen vaiheen jälkeen lohkojakoa siirretään yhden solun verran vaaka- ja pystysuunnassa. ; siten minkä tahansa lohkon kaikki neljä solua päätyvät eri lohkoihin seuraavassa vaiheessa [8] . Yllä mainitut "otukset"käyttävät Margolusin naapurustoa.
Jotta lohkosoluautomaatti olisi reversiibeli, on välttämätöntä ja riittävää, että jokaisen lohkon siirtymäfunktio on reversiibeli, mikä mahdollistaa lohkosoluautomaatin palautuvuuden tarkistamisen tyhjentävällä luettelolla . Samaan aikaan käänteinen soluautomaatti on myös lohkoautomaatti, jolla on sama rakenne osioiden lohkoiksi, mutta käänteinen siirtymäfunktio [7] .
Peruuttamattomien automaattien simulointi
Mikä tahansa -ulotteinen soluautomaatti voidaan upottaa -ulotteiseen reversiibeliin: lisäksi uuden automaatin jokainen tila tallentaa koko vanhan evoluutiohistorian. Käyttämällä tätä upotusta Toffoli osoitti, että monet peruuttamattomien soluautomaattien ominaisuudet siirtyvät palautuviin, esimerkiksi ne voivat olla Turingin täydellisiä [9] .
Mitan kasvu tällaisessa rakenteessa ei ole sattumaa: joidenkin heikkojen rajoitusten alla (kuten upotuksen muuttumattomuus suhteessa rinnakkaisiin käännöksiin ) on todistettu, että mikä tahansa soluautomaatin upottaminen " Eedenin puutarhaan " on, konfiguraatio ilman edeltäjiä, käännettäväksi soluautomaatiksi, täytyy kasvattaa ulottuvuutta [10] .
Kuitenkin lepotilan ( englanniksi quiescent states ) läsnä ollessa, eli tilojen, jotka eivät muutu, edellyttäen, että naapurivaltiot eivät myöskään muutu[ miten? ] , on mahdollista mallintaa soluautomaatin lopullinen konfiguraatio samanmittaisessa lohko -käännettävässä soluautomaatissa [11] . Tiedot, jotka olisi pitänyt menettää seuraavassa vaiheessa, tallennetaan sen sijaan äärettömälle solujen alueelle levossa. Samalla konfiguraation osan simulointiin tarvittava aika on verrannollinen sen kokoon. Kuitenkin tällainen rakenne mahdollistaa käännettävän yksiulotteisen Turingin täydellisen soluautomaatin olemassaolon todistamisen [12] .
Muistiinpanot
- ↑ Wolfram (2002 ), s. 1018 Arkistoitu 4. maaliskuuta 2016 Wayback Machinessa .
- ↑ Schiff (2008 ), s. 44.
- ↑ Blanchard, Devaney & Keen (2004 ), s. 38 : "Siirtokartta on epäilemättä symbolisen dynamiikan perusobjekti."
- ↑ Sutner (1991 ).
- ↑ Wolfram (2002 ), s. 1093 Arkistoitu 20. helmikuuta 2016 Wayback Machinessa .
- ↑ 1 2 3 Toffoli & Margolus (1987 ), kohta 12.8.2, "Otuukset", s. 132-134; Margolus (1999 ); Marotta (2005 ).
- ↑ 1 2 Toffoli & Margolus (1987 ), jakso 14.5, "Osiointitekniikka", s. 150-153; Schiff (2008 ), osio 4.2.1, "Osiointi Cellular Automata", s. 115-116.
- ↑ Toffoli & Margolus (1987 ), luku 12, "The Margolus Neighborhood", s. 119-138.
- ↑ Toffoli (1977 )
- ↑ Hertling (1998 )
- ↑ Morita (1995 )
- ↑ Kari (2005 ).
Kirjallisuus
- Amoroso, S. & Patt, YN (1972), Päätösmenettelyt tessellaatiorakenteiden rinnakkaisten karttojen surjektiivisuudelle ja injektiivuudelle , Journal of Computer and System Sciences , osa 6: 448–464 , DOI 10.1016/S0022-0000(72)80013- 8 .
- Beal, Marie-Pierre; Carton, Olivier; Prieur, Christophe & Sakarovitch, Jacques (2003), Neliöintimuuntimet: tehokas menettely toiminnallisuuden ja peräkkäisyyden määrittämiseksi , Theoretical Computer Science , osa 292 (1): 45–63 , DOI 10.1016/S0304-3975(01)6022
- Blanchard, Paul; Devaney, Robert L. & Keen, Linda (2004), Complex dynamics and symbolic dynamics , julkaisussa Williams, Susan G., Symbolic Dynamics and its Applications , voi. 60, Proceedings of Symposia in Applied Mathematics, Providence, RI: American Mathematical Society, s. 37–60 , DOI 10.1090/psapm/060/2078845 .
- Boykett, Tim (2004), Tehokkaat tyhjentävät luettelot palautuvista yksiulotteisista soluautomaateista , Theoretical Computer Science , osa 325 (2): 215–247 , doi 10.1016/j.tcs.2004.06.007 .
- Boykett, Tim; Kari, Jarkko & Taati, Siamak (2008), Conservation laws in rectangular CA , Journal of Cellular Automata vol. 3 (2): 115–122 , < http://pub.math.leidenuniv.nl/~taatis/articles/ conslaws06.pdf > . Haettu 1. lokakuuta 2017. Arkistoitu 30. syyskuuta 2015 Wayback Machinessa .
- Capobianco, Silvio & Toffoli, Tommaso (2011), Voidaanko mitään Noetherin lauseesta pelastaa diskreeteille dynaamisille järjestelmille? , Proceedings of the 10th International Conference on Unconventional Computation (UC 2011) , voi. 6714, Lecture Notes in Computer Science , Springer-Verlag, s. 77–88 , DOI 10.1007/978-3-642-21341-0_13 .
- Chai, Zhenchuan; Cao, Zhenfu & Zhou, Yuan (2005), Reversiibeliin toisen asteen solukkoautomaatteihin perustuva salaus , Rinnakkais- ja hajautettu käsittely ja sovellukset (ISPA 2005 Workshops) , voi. 3759, Lecture Notes in Computer Science , Springer-Verlag, s. 350–358 , DOI 10.1007/11576259_39 .
- Culik, Karel, II (1987), On invertible cellular automata , Complex Systems , osa 1 (6): 1035-1044 , < http://www.complex-systems.com/pdf/01-6-1.pdf > .
- Czeizler, Eugen (2004), Yksiulotteisten reversiibelien soluautomaattien käänteisalueiden koosta , Theoretical Computer Science , osa 325 (2): 273–284 , doi 10.1016/j.tcs.2004.06.009 .
- Czeizler, Eugen & Kari, Jarkko (2007), Tiukka lineaarinen rajoitus bijectiivisten automaattien synkronointiviiveeseen , Theoretical Computer Science osa 380 (1–2): 23–36 , DOI 10.1016/j.tcs.2007.02.052 .
- Di Gregorio, S. & Trautteur, G. (1975), On reversibility in cellular automata , Journal of Computer and System Sciences , osa 11(3): 382-391 , DOI 10.1016/S0022-0000(75)80059-6
- Durand-Lose, Jérôme (2001), Reversiibelien soluautomaattien edustaminen käännettävillä lohkosoluautomaateilla, Diskreetit mallit: kombinatoriikka, laskenta ja geometria (Pariisi, 2001) , Diskreetti matematiikka. Theor. Comput. sci. Proc., A.A., Maison Inform. Matematiikka. Huomaamaton. (MIMD), Pariisi, s. 145-154 .
- Durand-Lose, Jérôme (2002), Computing inside the biljardipallomalli, julkaisussa Adamatzky, Andrew , Collision-Based Computing , Springer-Verlag, s. 135-160 .
- Feynman, Richard P. (1982), Simulating physics with computers , International Journal of Theoretical Physics, osa 21 (6–7): 467–488 , DOI 10.1007/BF02650179 .
- Fredkin, Edward & Toffoli, Tommaso (1982), Conservative Logic , International Journal of Theoretical Physics, osa 21 (3–4): 219–253 , DOI 10.1007/BF01857727 . Uusintapainos julkaisussa Adamatzky, Andrew , toim. (2002), Collision-Based Computing , Springer-Verlag, s. 47-82 .
- Fukś, Henryk (2007), Huomautuksia toisen asteen additiivisten invarianttien kriittisestä käyttäytymisestä elementaarisissa soluautomaateissa, 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 the shift dynamical systems , Mathematical Systems Theory osa 3 (4): 320-375 , DOI 10.1007/BF01691062 .
- Hertling, Peter (1998), Soluautomaattien sulattaminen palautuviin, epätavalliset laskentamallit (Auckland, 1998) , Springer Series in Discrete Mathematics and Theoretical Computer Science, Springer-Verlag, s. 243-256 .
- Hillman, David (1991), Kääntyvien yksiulotteisten soluautomaattien rakenne , Physica D: Nonlinear Phenomena osa 52 (2–3): 277–292
- Janzing, Dominik (2010), Onko olemassa fyysisesti universaalia soluautomaattia vai Hamiltonin? .
- Kari, Jarkko (1990), 2D-soluautomaattien palautuvuus on ratkaisematon , Physica D: Nonlinear Phenomena T. 45 (1-3): 379-385 , DOI 10.1016/0167-2789(90)90195-U .
- Kari, Jarkko (1992), Reversiibelien soluautomaattien käänteisalueista, Lindenmayer Systems: Impacts on Theoretical Computer Science, Computer Graphics, and Developmental Biology , Springer-Verlag, s. 477-495 .
- Kari, Jarkko (1996), Reversiibelien soluautomaattien esitys lohkopermutaatioilla , Mathematical Systems Theory osa 29 (1): 47–61 , DOI 10.1007/BF01201813 .
- Kari, Jarkko (2005), Reversible cellular automata .Developments in Language Theory: 9th International Conference, DLT 2005, Palermo, Italia, 4.–8.7.2005, Proceedings , voi. 3572, Lecture Notes in Computer Science , Springer-Verlag, s. 2–23, doi : 10.1007/11505877_5 .
- Kari, Jarkko (2009), Structure of reversible cellular automata , Unconventional Computation: 8th International Conference, UC 2009, Ponta Delgada, Portugal, 7.–11.9.2009, Proceedings , voi. 5715, Lecture Notes in Computer Science , Springer-Verlag, s. 6 , DOI 10.1007/978-3-642-03745-0_5 .
- Margolus, Norman (1984), Physics-like model of computation , Physica D: Nonlinear Phenomena voi. 10: 81-95 , DOI 10.1016/0167-2789(84)90252-5 . Uudelleenpainettu julkaisussa Wolfram, Stephen (1986), Theory and Applications of Cellular Automata , voi. 1, Advanced series on monimutkaisia järjestelmiä, World Scientific, s. 232–246 ja julkaisussa Adamatzky, Andrew , toim. (2002), Collision-Based Computing , Springer-Verlag, s. 83-104 .
- Margolus, Norman (1999), Crystalline computation, julkaisussa Hey, Anthony JG, Feynman and Computation , Perseus Books, s. 267-305 .
- Marotta, Sebastian M. (2005), Living in Critters' world , Revista Ciências Exatas e Naturais osa 7 (1) , < http://web01.unicentro.br/revistas/index.php/RECEN/article/viewFile/ 385/537 > . Haettu 1. lokakuuta 2017. Arkistoitu 19. maaliskuuta 2012 Wayback Machinessa .
- McIntosh, Harold V. (2009), 12. Reversible cellular automata, One Dimensional Cellular Automata , Luniver Press, s. 205-246 .
- Meyer, David A. (1996), From quantum cellular automata to quantum lattice gases , Journal of Statistical Physics osa 85 (5–6): 551–574 , DOI 10.1007/BF02199356 .
- Miller, Daniel B. & Fredkin, Edward (2005), Kahden tilan, käännettävä, universaali soluautomaatti kolmessa ulottuvuudessa , 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), Circular motion of strings in cellular automata ja muita yllätyksiä .
- Moraal, Hendrik (2000), Käännettävien soluautomaattien graafiteoreettinen karakterisointi , Physica D: Nonlinear Phenomena T. 141 (1-2): 1-18 , DOI 10.1016/S0167-2789(00)00020-8 .
- Morita, Kenichi (1995), Yksiulotteisten irreversiibelien soluautomaattien käännettävä simulointi , Theoretical Computer Science osa 148 (1): 157-163 , DOI 10.1016/0304-3975(95)00038-X .
- Myhill, John (1963), Mooren Garden-of-Eden -lauseen käänteinen versio , Proceedings of the American Mathematical Society , osa 14: 685–686 , DOI 10.2307/2034301 . Uudelleenpainotettu julkaisussa Burks, Arthur W. (1970), Essays on Cellular Automata , University of Illinois Press, s. 204-205 .
- Nagaj, Daniel & Wocjan, Pawel (2008), Hamiltonin kvanttisoluautomaatit yhdessä ulottuvuudessa , Physical Review A T. 78: 032311 , DOI 10.1103/PhysRevA.78.032311 .
- Patt, YN (1971), Injektiot naapuruston koon kolme ja neljä konfiguraatioiden joukkoon kahden tilan solujen äärettömästä yksiulotteisesta tessellaatioautomaatista , tekninen raportti ECON-N1-P-1, Ft. Monmouth, NJ 07703 . Kuten Amoroso & Patt (1972 ) ja Toffoli & Margolus (1990 ) lainaavat.
- 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 , osa 6: 373-388 , DOI 10.1016/S0022-0000(72)80009-6 .
- Schaeffer, Luke (2015), Fyysisesti universaali soluautomaatti , Proceedings of the 6th Innovations in Theoretical Computer Science Conference (ITCS 2015) , Association for Computing Machinery , 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), Reversible quantum cellular automata .
- Seck Tuoh Mora, Juan Carlos; Chapa Vergara, Sergio V.; Juárez Martínez, Genaro & McIntosh, Harold V. (2005), Procedures for calculating reversible one-dimensional cellular automata , Physica D: Nonlinear Phenomena osa 202 (1–2): 134–141 , DOI 10.1016d.205phys.10. .018 _
- Shepherd, DJ; Franz, T. & Werner, RF (2006), Yleisesti ohjelmoitava kvanttisoluautomaatti , Physical Review Letters T. 97: 020502, PMID 16907423 , DOI 10.1103/PhysRevLett.97.020502 .
- Sutner, Klaus (1991), De Bruijn-graafit ja lineaariset soluautomaatit , Complex Systems, osa 5: 19-30 , < http://www.complex-systems.com/pdf/05-1-3.pdf > .
- Takesue, Shinji (1990), Relaxation properties of elementary reversible cellular Automata , Physica D: Nonlinear Phenomena osa 45 (1-3): 278-284, DOI 10.1016/0167-2789(90)90195-U
- Toffoli, Tommaso (1977), Computation and construction universality of reversible cellular automata , Journal of Computer and System Sciences , osa 15 (2): 213-231 , DOI 10.1016/S0022-0000(77)80007-X .
- 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 voi .
- Vichniac, Gérard Y. (1984), Simulating physics with cellular automata , Physica D: Nonlinear Phenomena voi. 10: 96-115 , DOI 10.1016/0167-2789(84)90253-7 .
- Watrous, John (1995), On-dimensional quantum cellular automata , Proceedings of the 36th Annual Symposium on Foundations of Computer Science (Milwaukee, WI, 1995) , Los Alamitos, CA: IEEE Computer Society Press, s. 528–537 , DOI 10.1109/SFCS.1995.492583 .
- Wolfram, Stephen (1984), Cellular automata as models of complexity , Nature T. 311: 419–424, doi : 10.1038/311419a0 , < http://www.stephenwolfram.com/publications/academic/cellular-automata-models- monimutkaisuus.pdf > .
- Wolfram, Stephen (2002), A New Kind of Science , Wolfram Media, ISBN 1-57955-008-8