<Chapter><Heading> Finite metric spaces and their filtered complexes </Heading> <Section><Heading> &nbsp;</Heading> 
<ManSection> <Func Name="CayleyMetric" Arg="g,h,N"/> <Func Name="CayleyMetric" Arg="g,h"/> <Description> <P/> Inputs two permutations <M>g,h</M> and optionally the degree <M>N</M> of a symmetric group containing them. It returns the minimum number of transpositions needed to express <M>g*h^-1</M> as a product of transpositions. <P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutMetrics.html</Link><LinkText>1</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="HammingMetric" Arg="g,h,N"/> <Func Name="HammingMetric" Arg="g,h"/> <Description> <P/> Inputs two permutations <M>g,h</M> and optionally the degree <M>N</M> of a symmetric group containing them. It returns the number of integers moved by the permutation <M>g*h^-1</M>. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="KendallMetric" Arg="g,h,N"/> <Func Name="KendallMetric" Arg="g,h"/> <Description> <P/> Inputs two permutations <M>g,h</M> and optionally the degree <M>N</M> of a symmetric group containing them. It returns the minimum number of adjacent transpositions needed to express <M>g^-1*h</M> as a product of adjacent transpositions. An adjacent transposition has the form <M>(i,i+1)</M>. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="EuclideanSquaredMetric" Arg="v,w"/> <Description> <P/> Inputs two vectors <M>v,w</M> of equal length and returns the sum of the squares of the components of <M>v-w</M>. In other words, it returns the square of the Euclidean distance between <M>v</M> and <M>w</M>. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="EuclideanApproximatedMetric" Arg="v,w"/> <Description> <P/> Inputs two vectors <M>v,w</M> of equal length and returns a rational approximation to the square root of the sum of the squares of the components of <M>v-w</M>. In other words, it returns an approximation to the Euclidean distance between <M>v</M> and <M>w</M>. <P/><B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap10.html</Link><LinkText>2</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="ManhattanMetric" Arg="v,w"/> <Description> <P/> Inputs two vectors <M>v,w</M> of equal length and returns the sum of the absolute values of the components of <M>v-w</M>. This is often referred to as the taxi-cab distance between <M>v</M> and <M>w</M>. <P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutMetrics.html</Link><LinkText>1</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="VectorsToSymmetricMatrix" Arg="L"/> <Func Name="VectorsToSymmetricMatrix" Arg="L,D"/> <Description> <P/> Inputs a list <M>L</M> of vectors and optionally a metric <M>D</M>. The default is <M>D=ManhattanMetric</M>. It returns the symmetric matrix whose i-j-entry is <M>S[i][j]=D(L[i],L[j])</M>. <P/><B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap10.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutMetrics.html</Link><LinkText>3</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="SymmetricMatDisplay" Arg="S"/> <Func Name="SymmetricMatDisplay" Arg="L,V"/> <Description> <P/> Inputs an <M>n \times n</M> symmetric matrix <M>S</M> of non-negative integers and an integer <M>t</M> in <M>[0 .. 100]</M>. Optionally it inputs a list <M>V=[V_1, ... , V_k]</M> of disjoint subsets of <M>[1 .. n]</M>. It displays the graph with vertex set <M>[1 .. n]</M> and with an edge between <M>i</M> and <M>j</M> if <M>S[i][j] &lt; t</M>. If the optional list <M>V</M> is input then the vertices in <M>V_i</M> will be given a common colour distinct from other vertices. <P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutMetrics.html</Link><LinkText>1</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="SymmetricMatrixToFilteredGraph" Arg="S,t,m"/> <Description> <P/> Inputs an integer symmetric matrix <M>S</M>, a positive integer <M>t</M> and a positive integer <M>m</M>. The function returns a filtered graph of filtration length <M>t</M>. The <M>k</M>-th term of the filtration is a graph with one vertex for each row of <M>S</M>. There is an edge in this graph between the <M>i</M>-th and <M>j</M>-th vertices if the entry <M>S[i][j]</M> is less than or equal to <M>k*m/t</M>. <P/><B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap10.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutPersistent.html</Link><LinkText>3</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="PermGroupToFilteredGraph" Arg="S,D"/> <Description> <P/> Inputs a permutation group <M>G</M> and a metric <M>D</M> defined on permutations. The function returns a filtered graph. The <M>k</M>-th term of the filtration is a graph with one vertex for each element of the group <M>G</M>. There is an edge in this graph between vertices <M>g</M> and <M>h</M> if <M>D(g,h)</M> is less than some integer threshold <M>t_k</M>. The thresholds <M>t_1 &lt; t_2 &lt; ... &lt; t_N</M> are chosen to form as long a sequence as possible subject to each term of the filtration being a distinct graph. <P/><B>Examples:</B> 
</Description> </ManSection> </Section> </Chapter>
