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.

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.
comments
 
Powered by Wolfram Mathematica
Give us your feedback
Give us your feedback

Source page:




 often  occasionally  never

Note: Please do not include anything you consider confidential or proprietary. Your message and contact information may be shared with the author of any specific Demonstration for which you give feedback, but will not otherwise be published or distributed.
Privacy Policy »

Note: To run this Demonstration you need the free
Mathematica Player
or Mathematica 7+
Download or upgrade to Mathematica Player 7
I already have Mathematica Player or Mathematica 7+