Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Decompose a nested iteration into its transient and repeating parts
ResourceFunction["FindNestedTransientRepeat"][fun,init,n] for an atypical function fun, requires repeat to occur successively at least n times. | |
ResourceFunction["FindNestedTransientRepeat"][fun,init,n,m] terminates after at most m steps. |
Test the Collatz conjecture for n=23:
In[1]:= |
Out[1]= |
Rational inputs to the tent map always end up repeating:
In[2]:= |
Out[2]= |
Inputs with even numerator have no transient part:
In[3]:= |
Out[3]= |
Prove the elementary CellularAutomaton Rule 30 is not reversible:
In[4]:= |
Out[4]= |
Test Rule 240 reversibility and cycle lengths:
In[5]:= |
Out[5]= |
Find repeat runs in a sequence of random integer digits:
In[6]:= |
Out[3]= |
But the next digit is not another 1:
In[7]:= |
Out[8]= |
Encode and decode hash functions allow more efficient data structures:
In[9]:= |
Out[9]= |
Setting the decode function to Automatic keeps an extra dictionary in memory:
In[10]:= |
Out[10]= |
Compare with FindTransientRepeat and NestList:
In[11]:= |
Out[11]= |
Compare again with NestList:
In[12]:= |
Out[12]= |
Some inputs can possibly lead to non-terminating loops:
In[13]:= |
Out[13]= |
Add a cutoff parameter for returning a purely transient result:
In[14]:= |
Out[14]= |
Plot the transient and repeating parts of a Rule 30 iteration:
In[15]:= |
Out[15]= |
This work is licensed under a Creative Commons Attribution 4.0 International License