
PHI=(1+ Sqrt[5])/2;
A= Sqrt[5]-2;


f[x_]:=(
a1=Log[x]/Log[A];
a1=Floor[a1];
y=x Power[A,-a1])


g1[x_]:= (1+2 PHI) x -2 PHI
g2[x_]:= -x + 2/PHI/PHI;
g3[x_]:= 2 + g1[x];
g4[x_]:=-2 - g1[x];


g[x_]:=(
Clear[y,z];
y=f[x];
z=If[y>1-A,g1[y],If[y>(1-A)/2,g2[y],If[y>1-3A,g3[y],g4[y]]]];
ss[f[z]])


ss[w_]:=(
x=Simplify[w];
x1=Expand[Numerator[x]];
x2=Expand[Denominator[x]];
test=x2-Floor[x2];
If[test==0,Simplify[w],s0[w]])

s0[w_]:=(
x=Simplify[w];
x1=Expand[Numerator[x]];
x2=Expand[Denominator[x]];
a1=Coefficient[x2,Sqrt[5],0];
a2=Coefficient[x2,Sqrt[5],1];
x3=a1 - a2 Sqrt[5];
y1=Simplify[x1 x3];
y2=Simplify[x2 x3];
y=Simplify[y1/y2])



PREP[n_]:=(
start=f[n];
start=N[start,400];
X1=Table[Nest[g,start,h],{h,1,80}];
X1=Table[X1[[40+j]],{j,1,40}];
X2=N[X1,20];
X3=Rationalize[X2,.0000001];
d=Length[Union[X3]]
)

Q[n_]:=Table[PREP[k/n],{k,1,n-1}]


RAN0[]:=(
a0=1000 Random[];
a1=Floor[a0];
2 a1)

RAN1[]:=(
a0=1000 Random[];
a1=Floor[a0];
2 a1 + 1)

x=RAN0[] + RAN0[] PHI
