MATH332 — Assignment 7, 2015

Question 1 — Cat Map  (with saddle node) on (ℝ^2)

Row[{"A = ",MatrixForm[A={{2,1},{1,1}}],"  and  I = ",MatrixForm[II=IdentityMatrix[2]]," . "}]

a

Define the Fibonacci sequence:

(Subscript[F, 0])=1;(Subscript[F, 1])=1;(Subscript[F, n_Integer]):=(Subscript[F, n])=(Subscript[F, n-1])+(Subscript[F, n-2]);

Table[{(Subscript["F", n]) ,"=",(Subscript[F, n])},{n,0,22}]//TableForm

The matrix  A has entries from the beginning of the Fibonacci sequence:

Row[{(({{(Subscript["F", 2]), (Subscript["F", 1])}, {(Subscript["F", 1]), (Subscript["F", 0])}}))," = ",MatrixForm[{{(Subscript[F, 2]),(Subscript[F, 1])},{(Subscript[F, 1]),(Subscript[F, 0])}}],"  which is just the matrix  A."}]

Powers of  A have entries from the Fibonacci sequence:

TableForm[Transpose[{Table[Row[{(A^(k+1))," ="}],{k,0,10}],MatrixForm/@NestList[A.#1&,A,10]}]]

Use the recurrence to prove by Induction:

Row[{{{2,1},{1,1}}.{{(Subscript[F, 2 n]),(Subscript[F, 2 n-1])},{(Subscript[F, 2 n-1]),(Subscript[F, 2 n-2])}},"  =  ",{{(Subscript[F, 2 n])+(Subscript[F, 2 n+1]),(Subscript[F, 2 n+1])},{(Subscript[F, 2 n+1]),(Subscript[F, 2 n])}},"  =  ",{{(Subscript[F, 2 n+2]),(Subscript[F, 2 n+1])},{(Subscript[F, 2 n+1]),(Subscript[F, 2 n])}}}]

Test some values here:

nn=5;
Row[{{{(Subscript[F, 2 n]),(Subscript[F, 2 n-1])},{(Subscript[F, 2 n-1]),(Subscript[F, 2 n-2])}},"  =  ",MatrixForm[Nest[A.#1&,A,nn-1]]," . "}]

b

det (A^k) = 1 since  det A = 1 :   (test different values of k )

Det[Nest[(A.#)&,A,39]]

Provided  trace((A^k))≠ 2  then  det ((A^k)-I)≠0. In particular:    (test different values of k )

With[{k=23},{Det[(Nest[(A.#)&,A,k-1])-II], 2-(Subscript[F, 2k ])-(Subscript[F, 2k-2])}]

c

{Eigenvalues[A],Eigenvalues[A]//N}

Since 1 is not an eigenvalue of  A , we have the following is non-zero:

Det[A-II]

Hence (({{0}, {0}})) is the only fixed-point of  A .

{(Subscript[v, s]),(Subscript[v, u])}=Eigenvectors[A]//Expand//Simplify

asymptotes =Plot[{(1/2)((Sqrt[5])-1)x,-(1/2)((Sqrt[5])+1)x},{x,-10,10},PlotStyle->{Hue[2/3]},AspectRatio->1,PlotRange->{-10,10},Background->White]

Pick some starting points …

(Subscript[x, 0])={5.,-7.3}; (Subscript[x, 1])={4.5,-7.7}

… and construct their orbits:

data = {NestList[Dot[A,#]&,(Subscript[x, 0]),10],NestList[Dot[A,#]&,(Subscript[x, 1]),10]}

points = ListPlot[data,Joined->False,PlotStyle->{Red},Frame->True,PlotRange->{{-10,10},{-10,10}},AspectRatio->1,Background->White,
Epilog->{{Hue[0],Line/@data},asymptotes//First}]

The slopes of these eigenspaces are irrational.

({(Subscript[irrslope, 1]),(Subscript[irrslope, 2])}=(1/((First/@Eigenvectors[A])//Flatten)))//N

In fact these numbers are related to the Golden Ratio.

GoldenRatio//N

Question 2 — Cat Map on 𝕋 = (ℝ^2)/ (ℤ×ℤ)

a:  linear map A preserves the integer lattice

A clearly maps vectors with integer coordinates to integer coordinates; e.g.   (test different values)

A.(({{14523}, {-8735}}))//MatrixForm

b:   A induces a map on the torus 𝕋

Now  A·(x-y) ≡ 0 (mod ℤ×ℤ)  whenever (x-y) ≡ 0 (mod ℤ×ℤ). 
So  A defines a map on the torus  𝕋 = (ℝ^2)/ (ℤ×ℤ); call it (OverHat[f]).

c:

Now  A·(({{0}, {0}})) ≡ (({{0}, {0}})) (mod ℤ×ℤ) gives a fixed-point for (OverHat[f]).
Indeed  A·(({{m}, {n}}))=(({{2m+n}, {m+n}}))≡ (({{0}, {0}})) (mod ℤ×ℤ) for any integers m and n.
That is, vectors with integer coordinates all map to the same point on the torus 𝕋 and this point is fixed under (OverHat[f]).

d & e

The unit square in  (ℝ^2)...

Plot[{},{x,-0.5`,2},GridLines->{{0,1,2},{0,1,2}},Frame->True,Epilog->{{GrayLevel[0.7`],Polygon[{{0,0},{0,1},{1,1},{1,0}}]},{Red,PointSize[0.03`],Point/@{{0,0},{0,1},{1,1},{1,0}}}},AspectRatio->1,PlotRange->{{-0.5`,2.2`},{-0.5`,2.2`}},Background->White]

2-cycles

The unit square maps under  ((A^2)-I) to a parallelogram in  (ℝ^2)with area   det ((A^2)-I)=5:

Plot[{},{x,-0.5`,2},GridLines->{Range[0,8],Range[0,8]},Frame->True,Background->White,Epilog->{{GrayLevel[0.7`],Polygon[((A.A-II).#1&)/@{{0,0},{0,1},{1,1},{1,0}}]},{Red,PointSize[0.03`],Point/@((A.A-II).#1&)/@{{0,0},{0,1},{1,1},{1,0}}},{Blue,PointSize[0.03`],Point/@{{2,1},{3,2},{4,2},{5,3}}}},AspectRatio->1,PlotRange->{{-0.5`,8.2`},{-0.5`,8.2`}}]

...  so there are 4 other points with integer coordinates, that are images of 2-cycles of A on the torus.
The pre-images, in the unit square, of these points are:

(Inverse[A.A-II].#)&/@{{2,1},{3,2},{4,2},{5,3}}//Column

Check the action of A to establish how these pair up:

(Mod[(A.#)&/@(%//First),1])//Column

Check the 1st of these, just to be sure:

{#,A.#}&@((1/5){1,2})//Column

This plot shows these 4  points and how they transform under A  on the torus. 
(Blue dots outside the gray square are translations of the corresponding points within it.)

Plot[{},{x,-0.5`,2},GridLines->{{0,1,2},{-1,0,1}},Frame->True,Background->White,Epilog->{{GrayLevel[0.7`],Polygon[{{0,0},{0,1},{1,1},{1,0}}]},{Red,PointSize[0.03`],Point/@{{0,0},{0,1},{1,1},{1,0}}},{Blue,PointSize[0.03`],Point/@(A.#1&)/@((1/5) {{1,2},{3,1}}),Point/@((1/5) {{1,2},{4,3},{3,1},{2,4},{-1,3},{-2,1},{2,-1}}),Thickness[0.007`],{Line[({Inverse[A].#1,#1,A.#1}&)[(({1,2})/5)]],Line[({Inverse[A].#1,#1,A.#1}&)[(({3,1})/5)]],Line[({#1,A.#1}&)[(({3,1})/5)]-{{1,0},{1,0}}]}}},AspectRatio->1,PlotRange->{{-0.7`,2.2`},{-1.2`,1.7`}}]

3-cycles

The unit square maps under  ((A^3)-I) to a parallelogram in  (ℝ^2)with area   det ((A^3)-I)=16:

Plot[{},{x,-0.5`,2},GridLines->{Range[0,20],Range[0,15]},Frame->True,Background->White,Epilog->{{GrayLevel[0.7`],Polygon[((A.A.A-II).#1&)/@{{0,0},{0,1},{1,1},{1,0}}]},{Red,PointSize[0.015`],Point/@((A.A.A-II).#1&)/@{{0,0},{0,1},{1,1},{1,0}}},{Blue,PointSize[0.01`],Point/@{{2,1},{3,2},{4,2},{5,3},{6,3},{6,4},{7,4},{8,5},{9,5},{9,6},{10,6},{11,6},{11,7},{12,7},{13,8},{14,8},{14,9},{15,9},{16,10},{17,10},{18,11}}}},AspectRatio->Automatic,PlotRange->{{-0.5`,20.2`},{-0.5`,15.2`}}]

...  so there are 16-1=15 other points with integer coordinates, that are images of 3-cycles of A  on the torus. (Points on the boundary edges occur twice, so count with multiplicity (1/2); corner points count (1/4).)
These points are:

(quarterPoints=(Inverse[A.A.A-II].#)&/@{{2,1},{3,2},{4,2},{5,3},{6,3},{6,4},{7,4},{8,5},{9,5},{9,6},{10,6},{11,6},{11,7},{12,7},{13,8},{14,8},{14,9},{15,9},{16,10},{17,10},{18,11}})//Column

These are all the points with (1/4)-integer coordinates within (and on) the unit square:

Plot[{},{x,-0.5`,2},GridLines->{{0,1,2},{-1,0,1}},Frame->True,Background->White,Epilog->{{GrayLevel[0.7`],Polygon[{{0,0},{0,1},{1,1},{1,0}}]},{Hue[0],PointSize[0.03`],Point/@{{0,0},{0,1},{1,1},{1,0}}},{Hue[(2/3)],PointSize[0.015`],Point/@quarterPoints,{Thickness[0.007`]}}},AspectRatio->1,PlotRange->{{-0.7`,1.7`},{-0.7`,1.7`}}]

Here are these five 3-cycles:

{ MatrixForm/@NestList[Mod[A.#,1]&,{(1/2),0},2]
,MatrixForm/@NestList[Mod[A.#,1]&,{(1/4),0},2]
,MatrixForm/@NestList[Mod[A.#,1]&,{(3/4),0},2]
,MatrixForm/@NestList[Mod[A.#,1]&,{0,(1/4)},2]
,MatrixForm/@NestList[Mod[A.#,1]&,{0,(3/4)},2]
}//Column

Notice that the integer entries of the matrix (A^3)-I have a common factor of 4. Thus its inverse has entries that are multiples of (1/4), rather than multiples of (1/16). Since there are only 16 points in 𝕋 havin (1/4)-integer coordinates, then all of these, apart from (({{0}, {0}})), must occur in primitive 3-cycles, as is seen above.

{A.A.A-II//MatrixForm,Inverse[A.A.A-II]//MatrixForm}

This is different to (A^2)-I which has determinant = 5, and only some points, with coordinates as multiples of (1/5), occur in the 2-cycles. The others actually occur in 10-cycles:

{MatrixForm/@NestList[Mod[A.#,1]&,{(1/5),0},10]
,MatrixForm/@NestList[Mod[A.#,1]&,{(2/5),0},10]
}//Column

k-cycles

The unit square maps under  ((A^k)-I) to a parallelogram in  (ℝ^2) having area:
  det ((A^k)-I)=(Subscript[F, 2k])+(Subscript[F, 2k-2])-2.  
  So there will be this many points within k-cycles of (OverHat[f])  on 𝕋.
  (Points on the boundary edges count with multiplicity (1/2), corner points with multiplicity (1/4).)

g

Points with fractional coordinates, denominator = n map under  A  to points with denominator  n  
(or a divisor of  n ,which can still be viewed as having denominator  n ).

A.{(i/n),(j/n)}//MatrixForm//Simplify

Since (Subscript[U, n]) is finite, for each n∈ℕ, such points must be periodic on the torus 𝕋. (Since A is invertible, each point in (Subscript[U, n]) is actually periodic, not pre-periodic.)

Points with fractional coordinates are dense in  (ℝ^2), hence in the torus 𝕋. 
But these are all periodic points of (OverHat[f]) , so the periodic points are dense — one of the requirements for chaos under (OverHat[f]) .

h

irrlineneg[k_,irrslope_]:=If[
Mod[((k+1.)/(-irrslope)),1]<Mod[((k+0.)/(-irrslope)),1],
{Line[{{Mod[((k+0.)/(-irrslope)),1],1},{1,1+(1-Mod[((k+0.)/(-irrslope)),1])irrslope}}],Line[{{0,1+(1-Mod[((k+1.-1.)/(-irrslope)),1])irrslope},{Mod[((k+1.)/(-irrslope)),1],0}}]}
,Line[{{Mod[((k+1.-1.)/(-irrslope)),1],1},{Mod[((k+1.)/(-irrslope)),1],0}}]
]

irrlinepos[k_,irrslope_]:=If[
Mod[(k+1.)irrslope,1]<Mod[(k+0.)irrslope,1],
{Line[{{0,Mod[(k+0.)irrslope,1]},{(((1-Mod[(k+0.)irrslope,1]))/irrslope),1}}],Line[{{(((1-Mod[(k+0.)irrslope,1]))/irrslope),0},{1,Mod[(k+1.)irrslope,1]}}]} ,
Line[{{0,Mod[(k+0.)irrslope,1]},{1,Mod[(k+1.)irrslope,1]}}]
]

stable manifold of (({{0}, {0}}))

stablefc = ParametricPlot[{Mod[x,1],Mod[(1/2)((Sqrt[5])-1)x,1]},{x,0,10}
,AspectRatio->1,Background->White,Frame->True,PlotStyle->RGBColor[.8,.8,1],Epilog->{{Red,PointSize[.03],Point[{0,0}]},Blue,Thickness[.007],Table[irrlinepos[k,(1/2)((Sqrt[5])-1)],{k,0,30}]}]

unstable manifold of (({{0}, {0}}))

unstablefc = ParametricPlot[{Mod[x,1],Mod[((-1)/2)((Sqrt[5])+1)x,1]},{x,0,10}
,AspectRatio->1,Frame->True,PlotStyle->RGBColor[.8,.8,1],Background->White,Epilog->{{Blue,PointSize[.03],Point[{0,1}]},Red,Thickness[.007],Table[irrlineneg[k,((-1)/2)((Sqrt[5])+1)],{k,0,30}]}]

i

Because A is a linear map, d((A^n)·x , (A^n)·y)->0 only when y-x is in the direction of the stable manifold of 0; that is, of the contracting eigenspace.

The map (A^(-1)) is a linear map having eigenvalues inverse to those of A, but the eigenvectors point in the same directions. (Since det A=1, the eigenvalues are actually the same numbers.)

{Eigenvalues[A],Eigenvectors[A]}//Expand//Simplify

{A//MatrixForm,Inverse[A]//MatrixForm}

{Eigenvalues[Inverse[A]],Eigenvectors[Inverse[A]]}//Expand//Simplify

Similarly to above, d((A^(-n))·x , (A^(-n))·y)->0 only when y-x is in the direction of the unstable manifold of 0; that is, of the contracting eigenspace for (A^(-1)) which is the expanding eigenspace for A.

(un)stable manifold of (({{(Subscript[x, 0])}, {(Subscript[y, 0])}}))

Choose any point:

({(Subscript[x, 0]),(Subscript[y, 0])} = {(Sqrt[2])-1.,(Sqrt[3])-1.})//MatrixForm

Due to the above, the stable and unstable manifolds of (({{(Subscript[x, 0])}, {(Subscript[y, 0])}})) are the lines parallel to the stable and unstable manifolds of (({{0}, {0}})). These will wrap around the torus infinitely often and densely.

stablefx = ParametricPlot[Evaluate[{Mod[(Subscript[x, 0])+x,1],Mod[(1/2)((Sqrt[5])-1)x+(Subscript[y, 0]),1]}],{x,0,.42}
,AspectRatio->1,Background->White,Frame->True,PlotRange->{{-0.02,1.02},{-0.02,1.02}},PlotStyle->{Black,Thickness[.007]},Epilog->{{Black,PointSize[.03],Point[{(Subscript[x, 0]),(Subscript[y, 0])}]},Blue,Thickness[.007],Table[irrlinepos[k,(1/2)((Sqrt[5])-1)],{k,0,30}]}]

unstablefx = ParametricPlot[Evaluate[{Mod[(Subscript[x, 0])+x,1],Mod[((-1)/2)((Sqrt[5])+1)x+(Subscript[y, 0]),1]}],{x,0,.45}
,AspectRatio->1,Background->White,Frame->True,PlotRange->{{-0.02,1.02},{-0.02,1.02}},PlotStyle->{Black,Thickness[.007]},Epilog->{{Black,PointSize[.03],Point[{(Subscript[x, 0]),(Subscript[y, 0])}]},Hue[0],Thickness[.007],Table[irrlineneg[k,((-1)/2)((Sqrt[5])+1)],{k,0,30}]}]

j: homoclinic points are dense in 𝕋

Homoclinic points are at the intersection of the stable and unstable manifolds for the fixed-point:

Show[Graphics[
{{Red,Thickness[.007],Table[irrlineneg[k,((-1)/2)((Sqrt[5])+1)],{k,0,30}]}
,{Blue,Thickness[.007],Table[irrlinepos[k,(1/2)((Sqrt[5])-1)],{k,0,30}]}
}],AspectRatio->1,Background->White]

Each intersection is transverse, being crossing lines with different slopes.
Clearly there are infinitely many intersections, which are dense on each line segment, in either direction. 
The line segments are dense on the torus, so the homoclinic points must be dense in the torus 𝕋.

k: topologically transitive

The map (OverHat[f]) maps homoclinic points to homoclinic points, so any open set maps under iterations of (OverHat[f]) to approach arbitrarily closely to any homoclinic point, so eventually meets any other open set. 
That is, (OverHat[f]) is topologically transitive.

l:  chaos

All the requirements for chaos of (OverHat[f]) are satisfied:
  • dense set of periodic orbits;
  • topological transitivity;
  • sensitive dependence on initial conditions (since there is an expanding eigenspace).