Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 418346<Chapter Label="Farey">1<Heading>Farey symbols and their properties</Heading>23<Index Key="IsFareySymbol"><C>IsFareySymbol</C></Index>4<Index Key="IsFareySymbolDefaultRep"><C>IsFareySymbolDefaultRep</C></Index>56A Farey symbol is a compact and useful way to represent a subgroup7of finite index in <M>SL_2(&ZZ;)</M> from which one can deduce8independent generators for this subgroup. It consists of two9components, namely a so-called generalised Farey sequence10(<A>gfs</A>) and an ordered list of labels, giving additional11structure to the <A>gfs</A>.<P/>121314A generalised Farey sequence (g.F.S.) is an ordered list of the form15<M>{ -infinity, x_0, x_1, ... , x_n, infinity }</M>, where<P/>161. the <M>x_i = a_i/b_i</M> are rational17numbers in reduced form arranged in increasing order for18<M>i = 0, ... , n</M>;<P/>192. <M>x_0, ... , x_n \in Z</M>, and some <M>x_i = 0</M>;<P/>203. we define <M>x_{-1}=-infinity=-1/0</M> and <M>x_{n+1}=infinity=1/0</M>;<P/>214. <M>a_{i+1}b_{i}-a_{i}b_{i+1}=1</M> for <M>i=-1, ... ,n</M>.<P/>222324The ordered list of labels of a Farey symbol gives an additional25structure to the <A>gfs</A>. The labels correspond to each26consecutive pair of <M>x_i</M>'s and are of the following types:<P/>271. even,<P/>282. odd,<P/>293. a natural number, which occurs in the list30of labels exactly twice or not at all.<P/>3132Note that the actual values of numerical labels are not important;33it is the pairing of two intervals that matters.<P/>343536The package &Congruence; provides functions to construct Farey symbols37by the given generalised Farey sequence and corresponding list of38labels. The returned Farey symbol will belong to the category39<C>IsFareySymbol</C> and will have the representation40<C>IsFareySymbolDefaultRep</C>.4142<Section Label="FareyConstr">43<Heading>Construction of Farey symbols</Heading>4445<ManSection>46<Func Name="FareySymbolByData"47Arg="gfs labels"/>48<Description>49This constructor creates the Farey symbol with the given generalized50Farey sequence and list of labels. It also checks conditions from51the definition of Farey symbol and returns an error if they are not52satisfied. The data used to create the Farey symbol are stored as53its attributes <Ref Attr="GeneralizedFareySequence"/> and <Ref54Attr="LabelsOfFareySymbol"/>.55</Description>56</ManSection>5758<Example>59<![CDATA[60gap> fs:=FareySymbolByData([infinity,0,1,2,infinity],[1,2,2,1]);61[ infinity, 0, 1, 2, infinity ]62[ 1, 2, 2, 1 ]63]]>64</Example>656667<ManSection>68<Func Name="IsValidFareySymbol"69Arg="fs"/>70<Description>71This function is used in <Ref Func="FareySymbolByData"/> to validate its output.72</Description>73</ManSection>7475<Example>76<![CDATA[77gap> IsValidFareySymbol(fs);78true79]]>80</Example>8182</Section>8384<!-- ********************************************************* -->8586<Section Label="FareyProperties">87<Heading>Properties of Farey symbols</Heading>8889<ManSection>90<Attr Name="GeneralizedFareySequence"91Arg="fs"/>92<Description>93Returns the generalized Farey sequence <A>gfs</A> of the Farey94symbol.95</Description>96</ManSection>9798<Example>99<![CDATA[100gap> GeneralizedFareySequence(fs);101[ infinity, 0, 1, 2, infinity ]102]]>103</Example>104105106<ManSection>107<Func Name="NumeratorOfGFSElement"108Arg="gfs i"/>109<Returns>110integer111</Returns>112<Description>113Returns the numerator of the i-th term of the generalised Farey114sequence <A>gfs</A>: for the 1st infinite entry returns -1, for the115last one returns 1, for all other entries returns the usual116numerator.117</Description>118</ManSection>119120<Example>121<![CDATA[122gap> List([1..5], i -> NumeratorOfGFSElement(GeneralizedFareySequence(fs),i));123[ -1, 0, 1, 2, 1 ]124]]>125</Example>126127128<ManSection>129<Func Name="DenominatorOfGFSElement"130Arg="gfs i"/>131<Returns>132integer133</Returns>134<Description>135Returns the denominator of the i-th term of the generalised Farey136sequence <A>gfs</A>: for both infinite entries returns 0, for the137other ones returns the usual denominator.138</Description>139</ManSection>140141<Example>142<![CDATA[143gap> List([1..5], i -> DenominatorOfGFSElement(GeneralizedFareySequence(fs),i));144[ 0, 1, 1, 1, 0 ]145]]>146</Example>147148149<ManSection>150<Attr Name="LabelsOfFareySymbol"151Arg="fs"/>152<Description>153Returns the list of labels of the Farey symbol. This list has "odd",154"even" and paired integers as entries.155</Description>156</ManSection>157158<Example>159<![CDATA[160gap> LabelsOfFareySymbol(fs);161[ 1, 2, 2, 1 ]162]]>163</Example>164165</Section>166167</Chapter>168169170