  
  [1X1 Introduction[0X
  
  
  [1X1.1 Introduction to the [5XGUAVA[1X package[0X
  
  This  is  the manual of the GAP package [5XGUAVA[0m. [5XGUAVA[0m contains many functions
  that   allow   one  to  perform  computations  relevant  to  the  theory  of
  error-correcting  codes.  This version of [5XGUAVA[0m requires GAP 4.4.5 or later.
  [5XGUAVA[0m 3.12 was updated to work with GAP 4.5.3.
  
  The functions in [5XGUAVA[0m can be divided into three subcategories:
  
  --    Construction  of  codes:  [5XGUAVA[0m can construct unrestricted, linear and
        cyclic   codes.   Information  about  the  code,  such  as  operations
        applicable  to  the  code,  is  stored in a record-like data structure
        called a GAP object.
  
  --    Manipulations of codes: Manipulations transform one code into another,
        or  construct  a new code from two codes. The new code can profit from
        the  data  in  the  record  of  the  old  code(s),  so  in these cases
        calculation time often decreases.
  
  --    Computations of information about codes: [5XGUAVA[0m can calculate important
        parameters  of  codes  quickly.  The  results are stored in the codes'
        object components.
  
  Except  for  the automorphism group and isomorphism testing functions, which
  make  use  of J.S. Leon's programs (see [Leo91] and the documentation in the
  'src/leon'  subdirectory  of  the  'guava'  directory for some details), and
  [2XMinimumWeight[0m  ([14X4.8-5[0m)  function,  [5XGUAVA[0m is written in the GAP language, and
  runs on any system supporting GAP4.4 and above. Several algorithms that need
  the speed were integrated in the GAP kernel.
  
  Good  general  references for error-correcting codes and the technical terms
  in  this manual are MacWilliams and Sloane [MS83] and also Huffman and Pless
  [HP03].
  
  
  [1X1.2 Installing [5XGUAVA[1X[0X
  
  The most recent version of GAP (4.5) comes complete with all of the packages
  --  including  [5XGUAVA[0m.  Thus  the  following  instructions  are  not  usually
  applicable but may be needed in certain circumstances.
  
  To  install  [5XGUAVA[0m  unpack  the  archive  file  in  a directory in the `pkg'
  hierarchy of your version of GAP 4.
  
  After  unpacking [5XGUAVA[0m the GAP-only part of [5XGUAVA[0m is installed. The parts of
  [5XGUAVA[0m  depending  on  J.  Leon's  backtrack  programs package (for computing
  automorphism  groups)  are  only  available in a UNIX environment, where you
  should  proceed  as  follows:  Go to the newly created `guava' directory and
  call  [10X`./configure  /gappath'[0m  where  [10X/gappath[0m  is  the path to the GAP home
  directory.  So  for  example,  if  you install the package in the main `pkg'
  directory call
  
  ./configure ../..
  
  This  will  fetch the architecture type for which GAP has been compiled last
  and create a `Makefile'. Now call
  
  make
  
  to  compile  the  binaries and install them in the appropriate place. (For a
  windows  machine  with  CYGWIN  installed  -  see  [7Xhttp://www.cygwin.com/[0m  -
  instructions for compiling Leon's binaries are likely to be similar to those
  above.  On  a  64-bit  SUSE linux computer, instead of the configure command
  above - which will only compile the 32-bit binary - type
  
  ./configure ../.. --enable-libsuffix=64 
  make
  
  to  compile Leon's program as a 64 bit native binary. This may also work for
  other 64-bit linux distributions as well.)
  
  Starting  with  version 2.5, you should also install the GAP package [5XSONATA[0m.
  You  can  download  this  from  the  GAP  website and unpack it in the `pkg'
  subdirectory.
  
  This  completes  the installation of [5XGUAVA[0m for a single architecture. If you
  use this installation of [5XGUAVA[0m on different hardware platforms you will have
  to compile the binaries for each platform separately.
  
  
  [1X1.3 Loading [5XGUAVA[1X[0X
  
  After  starting  up GAP, the [5XGUAVA[0m package needs to be loaded. Load [5XGUAVA[0m by
  typing at the GAP prompt:
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> LoadPackage( "guava" );[0X
  [4X------------------------------------------------------------------[0X
  
  If [5XGUAVA[0m isn't already in memory, it is loaded and the author information is
  displayed.  If  you are a frequent user of [5XGUAVA[0m, you might consider putting
  this  line in your gap initialization file. (Usually [11Xgap.ini[0m which should be
  located in directory [11X.gap[0m in your home directory.
  
