Homepage of the VKCURVE package

VKCURVE is a joint project of

which we undertook in order to do the computations described in our paper "explicit presentations for exceptional braid groups" (see the file contrib/readme in the package for details).

VKCURVE is a computer algebra package which computes a presentation of the fundamental group of the complement in the complex plane of an algebraic curve, following Van Kampen's method. It is written in GAP3. This package is very new; so you can expect some bugs, misdesigns, etc... If you have any complaints or problems (or if you make an interesting use of the package), please send Email to us (David Bessis or Jean Michel).

Here is brief example of the package in action:

   gap> FundamentalGroup(x^2-y^3);
   #I  there are 2 generators and 1 relator of total length 6
   1: bab=aba

   gap> FundamentalGroup((x+y)*(x-y)*(x+2*y));
   #I  there are 3 generators and 2 relators of total length 12
   1: cab=abc
   2: bca=abc

For more information you can download the manual (dvi or pdf). You can also try VKCURVE online, an (experimental) web interface where you can directly enter a curve and get a result.


How to install VKCURVE onto your computer

  • First, make sure that you have GAP3 installed. If you don't, see at the bottom of this file for an easy installation of everything.
  • Then, install the development version of the package CHEVIE on which VKCURVE depends.
  • Then, download the tarred (64k) or zipped(76k) gap source of VKCURVE.

    Then, you have two possibilities:

  • You want to make the minimal effort to install VKCURVE on your computer, or/and you want not to interfere with the gap distribution on your machine. For this you will install VKCURVE in a private place (like a subdirectory of your home directory). Attach to where you want to put VKCURVE and unpack the archive there. It will create a vkcurve directory at that place (so if you are John Smith and work on a UNIX system, and unpack in your home directory, the vkcurve directory will be at something like /users/smith/vkcurve). Then to call VKCURVE you have to execute the following instructions in GAP (or add them to your .gaprc, which will cause VKCURVE to be loaded each time you start GAP):
        VKCURVEPATH:="/users/smith/vkcurve/";
        Read(Concatenation(VKCURVEPATH,"init.g"));
    
  • You have root access or you have your own PC or Macintosh, and you want to install VKCURVE as a regular GAP3 package. Then attach to the directory where the GAP packages are (something like /usr/local/lib/gap3r4p4/pkg/), and unpack there the archive. To use the package, run a GAP session and type:
        RequirePackage("vkcurve");
    
    you will then access VKCURVE functions (you can put this instruction in your .gaprc to not to have to repeat it every time).

    How to install the online help

    In addition to having the VKCURVE package installed, you may also want to be able to access the VKCURVE chapters in the online (or not online, as well) GAP3 manual. If you want to install them: copy to the /doc subdirectory of the GAP3 distribution the .tex files in the /doc subdirectory of VKCURVE (excluding manual.tex), then edit (by hand) the manual.tex file in the /doc subdirectory of the GAP3 distribution to refer to the changed chapters: that, is replace line 655

    \Include{chvutil}
    
    by
    \Include{chvutil}
    \Include{curvintr}
    \Include{curvmvp}
    \Include{curvalg}
    \Include{curvutil}
    
    and run as usual
    latex manual
    bibtex manual
    latex manual
    latex manual
    
    From this description you can guess you have to be a bit experienced to do that; however if you follow carefully the above steps you should be able to get on-line help on VKCURVE functions.


    A pre-packaged GAP3 with everything you need

    To help people who are just interested in CHEVIE or VKCURVE and do not have GAP3 on their computers I have prepared an easy-to install gap3r4p4.zip file (8.7 megabytes) which contains just the two packages CHEVIE and VKCURVE and the necessary files of the GAP installation to run them; it also contains ready-made online help and manual in html formats) including the documentation for VKCURVE and CHEVIE. This .zip also contains ready-made Dos/Windows, Linux (for Intel) and Mac-OSX executables. The installation instructions are as follows: unzip somewhere the file, it will make a gap3r4p4 directory. Then, in gap3r4p4/bin edit gap.sh (on Linux or Mac-OSX) or gap.bat (on dos/windows) so that the variable gap_dir refers to the right directory and executable, and put gap.sh (renamed gap) or gap.bat on someplace on your path. That is all, you are ready (remember to 'RequirePackage("chevie")' as explained above). In order to have a small .zip file, I have not included in this mini-distribution the list of small groups, 2-groups or 3-groups and most of the character tables from the Atlas or the tables of marks. I did not include either any package but VKCURVE and CHEVIE. You can add all these to your distribution by downloading the appropriate .zoo files from the GAP archives in St Andrews. I have also made a .dvi version of the manual (including the documentation for VKCURVE and CHEVIE; it is better than the html version for the display of the mathematics formulas). I have also made the .html GAP documentation available online.

    History of the package

  • First release 0.99 on 15-2-2002
  • Version 1.0 on 1-3-2002. Now curves with Gaussian rational coefficients are accepted:
       gap> FundamentalGroup(x^2-E(4)*y^3);
       #I  there are 2 generators and 1 relator of total length 6
       1: bab=aba