public override string SignatureStringForVertex(int vertexIndex, int height)
        {
            EdgeColoredVertexSignature vertexSignature =
                new EdgeColoredVertexSignature(vertexIndex, height, this.graph, this.colorMap);

            return(vertexSignature.ToCanonicalString());
        }
        public override string SignatureStringForVertex(int vertexIndex)
        {
            EdgeColoredVertexSignature vertexSignature;
            int height = base.Height;

            if (height == -1)
            {
                vertexSignature =
                    new EdgeColoredVertexSignature(vertexIndex, this.graph, this.colorMap);
            }
            else
            {
                vertexSignature =
                    new EdgeColoredVertexSignature(vertexIndex, height, this.graph, this.colorMap);
            }
            return(vertexSignature.ToCanonicalString());
        }