ExternalLibs-frobby

© 2010 Anna Bigatti, Bjarke Hammersholt Roune

GNU Free Documentation License, Version 1.2

CoCoALib Documentation Index

User documentation

Frobby is a software system and project for computations with monomial ideals. Frobby is free software and it is intended as a vehicle for research on monomial ideals, as well as a useful practical tool for investigating monomial ideals.

Available functions:

  long dimension(const ideal& I);

  ideal AlexanderDualFrobby(I, pp);
  ideal AlexanderDualFrobby(I);
  ideal MaximalStandardMonomialsFrobby(I);

  void IrreducibleDecompositionFrobby(std::vector<ideal>& components, I);
  void PrimaryDecompositionFrobby(std::vector<ideal>& components, I);
  void AssociatedPrimesFrobby(std::vector<ideal>& primes, I);

  RingElem MultigradedHilbertPoincareNumeratorFrobby(I);
  RingElem TotalDegreeHilbertPoincareNumeratorFrobby(I);
  RingElem TotalDegreeHilbertPoincareNumeratorFrobby(I, const RingElem& base);

Examples

Download and compile Frobby

**frobby** website

CoCoALib requires Frobby release 0.9.0 or later. Download Frobby from the website.

IMPORTANT there are some minor mistakes in the frobby source code:

  • insert the following two lines in frobby source files main.cpp and randomDataGenerators.cpp
  • #include <sys/types.h>
  • #include <unistd.h>
  • on line 143 of file StatisticsStrategy.cpp change mpz_class into mpq_class

    Now compile Frobby following the instructions in the Frobby release.

    NOTE: JAA says that to compile Frobby (0.8.2) on my machine I had to execute the following:
    export CFLAGS="-m64 -mtune=core2 -march=core2"  # taken from gmp.h
    export LDFLAGS=$CFLAGS
    make library
    
    make might give some linking issues if libgmpxx is not installed systemwide. Anyway, for linking with CoCoA you only need make library.

Configure and compile CoCoALib with frobby

Look to see where the library file libfrobby.a is -- on my computer it was inside the Frobby subdirectory bin/. Note the full path to the library file as you will need it when configuring CoCoALib!

Then configure and compile CoCoALib typing

cd CoCoALib-0.99
./configure --with-libfrobby=<your_path_to>/libfrobby.a
make

Maintainer documentation

Bugs, shortcomings and other ideas

Currently Frobby is not really intended to be used as a library, so linking it with CoCoALib is not as simple as it could be. Hopefully this will soon change.

Main changes

2011

  • 29 July: added (temporarily?) Frobby suffix to all functions
  • 5 July: modified AlexanderDualFrobby into AlexanderDualFrobby, PrimaryDecomposition into PrimaryDecompositionFrobby.

2010

  • 1 October: first inclusion