WOLFRAM NOTEBOOK

Manipulate[ListLogPlot[Module[{f},f[n_]:=f[n]=af[n-bf[n-c]];f[n_/;n<1]=1;Table[f[n],{n,max}]],Frame->True,PlotRange->All,Joined->join,Mesh->If[join,All,None],Filling->If[join,Axis,None],PlotLabel->With[{a=a,b=b,c=c},TraditionalForm[HoldForm[f[n]=af[n-bf[n-c]]]]],ImagePadding->25,ImageSize->500],Row[{"parameters in ",TraditionalForm[HoldForm[f[n]="a"f[n-"b"f[n-"c"]]]],":"}],{{a,2},1,15,1,Appearance->"Labeled"},{{b,1},1,15,1,Appearance->"Labeled"},{{c,1},1,15,1,Appearance->"Labeled"},Delimiter,{{max,100,"range of n"},1,1000,1,Appearance->"Labeled"},Delimiter,{{join,True,"join points"},{True,False}},Initialization:>{f[n_]:=f[n]=af[n-bf[n-c]],f[n_/;n<1]=1}]
parameters in f(n)=af(n-bf(n-c)):
a
2
b
1
c
1
range of n
1000
join points
In[]:=
nrf[max_]:=Module[{f},f[n_]:=f[n]=3f[n-f[n-1]];f[n_/;n<1]=1;Array[f,max]]
In[]:=
Log[3,nrf[1000]]
Out[]=
In[]:=
ListLinePlot[%]
Out[]=
200
400
600
800
1000
2
4
6
8
10
12
In[]:=
Log[3,%]
Out[]=
{1,1,1,2,1,2,1,2,1,2,2,2,3,1,3,1,2,2,3,1,3,1,2,4,1,3,1,2,2,4,1,3,3,2,4,1,3,3,3,4,1,4,1,2,2,4,1,3,2,2,5,1,3,2,5,1,3,2,3,4,1,4,1,2,2,4,1,3,5,1,4,1,2,3,4,1,4,1,2,5,1,3,2,5,1,3,5,1,4,2,4,3,5,1,4,4,2,5,1,3}
Manipulate[Labeled[Column[{ListLogPlot[#1,Frame->True,PlotRange->All,Joined->True,Mesh->All,Filling->Axis,ImageSize->{400,250},ImagePadding->25],With[{g=If[ex,Select[#,Last[#]>0&],#]&[Flatten[Thread/@#2]]},If[g==={},Framed["no graph"],TreePlot[g,Top,1,DirectedEdges->True,ImageSize->{400,250},VertexRenderingFunction->If[lab,(Text[#2,#,Background->White]&),(Tooltip[Point[#],#2]&)]]]]},Center]&@@Reap[Module[{f},f[n_]:=f[n]=af[Sow[n-bf[If[id,Sow[n-c,n],n-c]],n]];f[n_/;n<1]=1;Table[f[n],{n,max}]],_,Rule],Text[With[{a=a,b=b,c=c},TraditionalForm[HoldForm[f[n]=af[n-bf[n-c]]]]]],Top],Style[Row[{TraditionalForm[HoldForm[f[n]="a"f[n-"b"f[n-"c"]]]],":"}],11],{{a,3},1,15,1,ImageSize->Tiny,Appearance->"Labeled"},{{b,1},1,15,1,ImageSize->Tiny,Appearance->"Labeled"},{{c,1},1,15,1,ImageSize->Tiny,Appearance->"Labeled"},Delimiter,{{max,30,"range of n"},1,300,1,ImageSize->Tiny,Appearance->"Labeled"},Delimiter,{{id,True,"indirect calls"},{True,False}},{{ex,False,"exclude n<1"},{True,False}},{{lab,False,"include labels"},{True,False}}]
f(n)=af(n-bf(n-c)):
a
3
b
1
c
1
range of n
30
indirect calls
exclude n<1
include labels
f(n)=3f(n-1f(n-1))
In[]:=
nrfd[max_]:=Module[{f},f[n_]:=f[n]=3f[n-f[n-1]];f[n_/;n<1]=1;Array[f,max];DownValues[f]]
In[]:=
nrfd[20]
Out[]=
{HoldPattern[f$458468[1]]3,HoldPattern[f$458468[2]]3,HoldPattern[f$458468[3]]3,HoldPattern[f$458468[4]]9,HoldPattern[f$458468[5]]3,HoldPattern[f$458468[6]]9,HoldPattern[f$458468[7]]3,HoldPattern[f$458468[8]]9,HoldPattern[f$458468[9]]3,HoldPattern[f$458468[10]]9,HoldPattern[f$458468[11]]9,HoldPattern[f$458468[12]]9,HoldPattern[f$458468[13]]27,HoldPattern[f$458468[14]]3,HoldPattern[f$458468[15]]27,HoldPattern[f$458468[16]]3,HoldPattern[f$458468[17]]9,HoldPattern[f$458468[18]]9,HoldPattern[f$458468[19]]27,HoldPattern[f$458468[20]]3,HoldPattern[f$458468[n_/;n<1]]1,HoldPattern[f$458468[n$_]](f$458468[n$]=3f$458468[n$-f$458468[n$-1]])}
In[]:=
#[[1,1,1]]&/@Drop[nrfd[20],-2]
Out[]=
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}
In[]:=
nrfs[max_]:=Reap[Module[{f},f[n_]:=f[n]=3f[Sow[n-f[n-1]]];f[n_/;n<1]=1;Array[f,max]]]
In[]:=
nrfs[100]
Out[]=
{{3,3,3,9,3,9,3,9,3,9,9,9,27,3,27,3,9,9,27,3,27,3,9,81,3,27,3,9,9,81,3,27,27,9,81,3,27,27,27,81,3,81,3,9,9,81,3,27,9,9,243,3,27,9,243,3,27,9,27,81,3,81,3,9,9,81,3,27,243,3,81,3,9,27,81,3,81,3,9,243,3,27,9,243,3,27,243,3,81,9,81,27,243,3,81,81,9,243,3,27},{{0,-1,0,1,-4,3,-2,5,0,7,2,3,4,-13,12,-11,14,9,10,-7,18,-5,20,15,-56,23,0,25,20,21,-50,29,6,7,26,-45,34,11,12,13,-40,39,-38,41,36,37,-34,45,22,41,42,-191,50,27,46,-187,54,31,50,33,-20,59,-18,61,56,57,-14,65,42,-173,68,-9,70,65,48,-5,74,-3,76,71,-162,79,56,75,-158,83,60,-155,86,9,82,11,66,-149,92,15,16,89,-144,97}}}

Program it by giving a sequence of initial values.....

Wolfram Cloud

You are using a browser not supported by the Wolfram Cloud

Supported browsers include recent versions of Chrome, Edge, Firefox and Safari.


I understand and wish to continue anyway »

You are using a browser not supported by the Wolfram Cloud. Supported browsers include recent versions of Chrome, Edge, Firefox and Safari.