Reversal-Addition Related Systems

Take a number in binary, reverse its digits, and then add it to the original number. Iterating this process produces interesting behavior. This particular system is called "reversal-addition" and was considered by Stephen Wolfram in A New Kind of Science.
This Demonstration looks at generalizations of this system, where additional Mathematica list primitives (Accumulate, Append, Differences, Flatten, ListConvolve, ListCorrelate, Most, Partition, Rest, RotateLeft, RotateRight, and Sort) are used instead of Reverse. Even with these basic operations on lists of 0's and 1's, we immediately recognize complex behavior, demonstrating that small sets of Mathematica primitives are enough to produce such behavior.



  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


All programs have the structure IntegerDigits[FromDigits[primitive[#], 2] + FromDigits[#1, 2], 2] &; otherwise they are no longer reversal-addition-like systems.
Only commands that produce interesting cases with linear growth are shown. Commands that need more than one argument are introduced with their simplest arguments.
This Demonstration was created during the New Kind of Science Summer School 2008 in Burlington, Vermont.
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.

Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-Step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2017 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+