Wolfram code | Cellular automata

Wolfram code

Wolfram code is a widely used numbering system for one-dimensional cellular automaton rules, introduced by Stephen Wolfram in a 1983 paper and popularized in his book A New Kind of Science. The code is based on the observation that a table specifying the new state of each cell in the automaton, as a function of the states in its neighborhood, may be interpreted as a k-digit number in the S-ary positional number system, where S is the number of states that each cell in the automaton may have, k = S2n + 1 is the number of neighborhood configurations, and n is the radius of the neighborhood. Thus, the Wolfram code for a particular rule is a number in the range from 0 to SS2n + 1 − 1, converted from S-ary to decimal notation. It may be calculated as follows: 1. * List all the S2n + 1 possible state configurations of the neighbourhood of a given cell. 2. * Interpreting each configuration as a number as described above, sort them in descending numerical order. 3. * For each configuration, list the state which the given cell will have, according to this rule, on the next iteration. 4. * Interpret the resulting list of states again as an S-ary number, and convert this number to decimal. The resulting decimal number is the Wolfram code. The Wolfram code does not specify the size (nor shape) of the neighbourhood, nor the number of states — these are assumed to be known from context. When used on their own without such context, the codes are often assumed to refer to the class of elementary cellular automata, two-state one-dimensional cellular automata with a (contiguous) three-cell neighbourhood, which Wolfram extensively investigates in his book. Notable rules in this class include rule 30, rule 110, and rule 184. Rule 90 is also interesting because it creates Pascal's triangle modulo 2. A code of this type suffixed by an R, such as "Rule 37R", indicates a second-order cellular automaton with the same neighborhood structure. While in a strict sense every Wolfram code in the valid range defines a different rule, some of these rules are isomorphic and usually considered equivalent. For example, rule 110 above is isomorphic with the rules 124, 137 and 193, which can be obtained from the original by left-right reflection and by renumbering the states. By convention, each such isomorphism class is represented by the rule with the lowest code number in it. A disadvantage of the Wolfram notation, and the use of decimal notation in particular, is that it makes such isomorphisms harder to see than some alternative notations. Despite this, it has become the de facto standard way of referring to one-dimensional cellular automata. (Wikipedia).

Video thumbnail

The Wolfram Compiler

The Wolfram Compiler is a long-term project for the compilation of Wolfram Language programs. It converts Wolfram Language into native machine code and provides a faster execution path as well as many opportunities for innovative programming features. It is used for an increasing amount of

From playlist Wolfram Technology Conference 2021

Video thumbnail

The Wolfram Compiler

The Wolfram Compiler converts Wolfram Language code into native machine instructions that run directly on the machine hardware. It offers a powerful way to speed up programs and provides many opportunities for innovative programming features such as building connections to external librari

From playlist Wolfram Technology Conference 2022

Video thumbnail

The Wolfram Language + Unity Game Engine

A quick demonstration of the embedded Wolfram Engine inside the Unity Game Engine IDE. To learn more about the Wolfram Language, visit http://www.wolfram.com/language For the latest information visit: http://reference.wolfram.com/language http://www.wolfram.com

From playlist Wolfram Language

Video thumbnail

The Wolfram Compiler

To learn more about Wolfram Technology Conference, please visit: https://www.wolfram.com/events/technology-conference/ Speaker: Tom Wickham-Jones Wolfram developers and colleagues discussed the latest in innovative technologies for cloud computing, interactive deployment, mobile devices,

From playlist Wolfram Technology Conference 2017

Video thumbnail

Advanced Programming with the Wolfram Compiler

The Wolfram Compiler is a long-term project for the compilation of Wolfram Language programs. It converts Wolfram Language into native machine code and provides a faster execution path as well as many opportunities for innovative programming features. It is used for an increasing amount of

From playlist Wolfram Technology Conference 2021

Video thumbnail

Elementary Introduction To Wolfram Language - Machine Learning | Introduction | #datascience

Don’t forget to subscribe! This project series is an elementary introduction to the wolfram language. Developed by Wolfram Research, it is a multi-paradigm programming language. It is the language of the mathematical symbolic computation program Mathematica. It is scalable for programs

From playlist Elementary Introduction To Wolfram Language

Video thumbnail

Elementary Introduction To Wolfram Language - Machine Learning | Session 17 | #datascience

Don’t forget to subscribe! This project series is an elementary introduction to the wolfram language. Developed by Wolfram Research, it is a multi-paradigm programming language. It is the language of the mathematical symbolic computation program Mathematica. It is scalable for programs

From playlist Elementary Introduction To Wolfram Language

Video thumbnail

The Wolfram Language Workshop for the Hour of Code

Speaker: Adriana O'Brien With the Wolfram Language, students can easily create programs, generate graphics, and explore computational topics—learning not only coding, but also broad STEM skills. This talk introduces programming in the Wolfram Language and showcases coding activities for a

From playlist The Wolfram Language Workshop for the Hour of Code

Video thumbnail

Elementary Introduction To Wolfram Language - Machine Learning | Session 27 | #datascience

Don’t forget to subscribe! This project series is an elementary introduction to the wolfram language. Developed by Wolfram Research, it is a multi-paradigm programming language. It is the language of the mathematical symbolic computation program Mathematica. It is scalable for programs

From playlist Elementary Introduction To Wolfram Language

Video thumbnail

Introducing Wolfram Programming Lab Virtual Workshop for Educators

This free workshop is designed for educators, technology coaches, and anyone interested in incorporating the latest technology into the classroom. Presentations include how to get started using Programming Lab. Learn how to access its built-in explorations and the introductory programming

From playlist Wolfram Programming Lab Virtual Workshop for Educators

Video thumbnail

W|A Notebook Edition: Introduction for Wolfram Users

In this stream, the academic outreach team presents an introduction to Wolfram Alpha Notebook Edition for users of Mathematica and Wolfram Alpha. Learn more here: https://www.wolfram.com/wolfram-alpha-notebook-edition/ Find the presentation notebook here: https://wolfr.am/18cR9w0j4

From playlist Academic Outreach Livestreams

Video thumbnail

Using Computational Notebooks for Teaching and Research

Learn about using Wolfram Notebooks in your courses and in the classroom to increase student engagement and promote concept exploration. Examples of computational essays from Wolfram Summer School are shared.

From playlist Powering Higher Education with Computational Technology

Video thumbnail

Introduction to Wolfram Notebooks

Wolfram Notebooks are the modern environment for technical workflows. These powerful and interactive documents for computation, programming, generating reports and creating presentations produce immediate results and reach your audience on multiple platforms with universal deployment optio

From playlist Wolfram Language

Video thumbnail

Connecting Devices to the Wolfram Language

Speaker: L. Chao & N. Lochner Learn to write a Wolfram Device Framework driver, collect/analyze sensor data and programmatically control actuators, motors, and indicators with devices. Examples include LibraryLink, WSTP, J/Link, device libraries and SDKs. Download notebook: http://wac.36

From playlist Wolfram Virtual Conference 2015

Video thumbnail

Create, Code, Deploy: Workshop for Hackathons

Join hackers and coders everywhere for a walk-through of a sample project from beginning to end, followed by a code review with senior developers. This free online workshop showcases the fast development and deployment possible with the Wolfram Language and cloud services. Download notebo

From playlist Workshop for Hackathons

Video thumbnail

Open AI GPT3 and Wolfram

StartingUpGood is a collaboration whose purpose is to support fresh entrepreneurial approaches to do more good in the world. Our core areas of social impact interest are:Sustainable Development Goals, data and counting.Gathering and curating information on startups, impact investing and so

From playlist Wolfram Technology Conference 2022

Video thumbnail

Introducing the Wolfram Client Library for Java

To learn more about Wolfram Technology Conference, please visit: https://www.wolfram.com/events/technology-conference/ Speaker: Todd Gayley Wolfram developers and colleagues discussed the latest in innovative technologies for cloud computing, interactive deployment, mobile devices, and m

From playlist Wolfram Technology Conference 2018

Video thumbnail

Twitch Talks - Unity Game Engine

Presenter: Charles Pooh. Wolfram Research developers demonstrate the new features of Version 12 of the Wolfram Language that they were responsible for creating. Previously broadcast live on December 12, 2019 at twitch.tv/wolfram. For more information, visit: https://www.wolfram.com/langua

From playlist Twitch Talks

Video thumbnail

Elementary Introduction To Wolfram Language - Machine Learning | Session 15 | #datascience

Don’t forget to subscribe! This project series is an elementary introduction to the wolfram language. Developed by Wolfram Research, it is a multi-paradigm programming language. It is the language of the mathematical symbolic computation program Mathematica. It is scalable for programs

From playlist Elementary Introduction To Wolfram Language

Video thumbnail

Live CEOing Ep 234: Language Design in Wolfram Language

Watch Stephen Wolfram and teams of developers in a live, working, language design meeting. This episode is about Language Design in the Wolfram Language.

From playlist Behind the Scenes in Real-Life Software Design

Related pages

Second-order cellular automaton | Elementary cellular automaton | Rule 90 | Decimal | Rule 110 | Rule 184 | Cellular automaton | Rule 30 | A New Kind of Science | Pascal's triangle