00001 // Copyright (C) 2005 Alexander Ushakov 00002 // Contents: Definition of class DehornoyForm 00003 // 00004 // Principal Authors: Alexander Ushakov 00005 // 00006 // Revision History: 00007 // 00008 00009 #ifndef _DehornoyForm_h_ 00010 #define _DehornoyForm_h_ 00011 00012 00013 #include "Word.h" 00014 #include "LinkedBraidStructure.h" 00015 00016 00017 //---------------------------------------------------------------------------// 00018 //----------------------------- DehornoyForm --------------------------------// 00019 //---------------------------------------------------------------------------// 00020 00022 00027 class DehornoyForm 00028 { 00029 00031 // // 00032 // Constructors: // 00033 // // 00035 00036 public: 00037 00039 00045 DehornoyForm( const int N , const Word& w ); 00046 00048 // // 00049 // Accessors: // 00050 // // 00052 00053 public: 00054 00056 Word getDehornoyForm( ) const { return theDehornoyForm; } 00057 00058 00060 // // 00061 // Internal functions: // 00062 // // 00064 00065 private: 00066 00068 Word computeDehornoyForm( const Word& w ); 00069 00071 // // 00072 // Data members: // 00073 // // 00075 00076 private: 00077 00079 const int theIndex; 00080 00082 Word theDehornoyForm; 00083 00085 LinkedBraidStructure theLinkedStructure; 00086 }; 00087 00088 #endif 00089