17#ifndef RANDOM_DATA_GENERATORS_GUARD
18#define RANDOM_DATA_GENERATORS_GUARD
void nameFactoryRegister(NameFactory< AbstractProduct > &factory)
Registers the string returned by ConcreteProduct::getStaticName() to a function that default-construc...
void generateKnightChessIdeal(BigIdeal &ideal, size_t rowsAndColumns)
Generate an ideal where is a generator when and indicate coordinates on a square chessboard where ...
bool generateRandomEdgeIdeal(BigIdeal &ideal, size_t varCount, size_t generatorCount)
Generate a random ideal where every edge is a product of two different variables.
void generateLinkedListIdeal(BigIdeal &ideal, size_t varCount)
Generate an ideal of the form , and so on.
void generateKingChessIdeal(BigIdeal &ideal, size_t rowsAndColumns)
Generate an ideal where is a generator when and indicate coordinates on a square chessboard where ...
void generateTreeIdeal(BigIdeal &ideal, size_t varCount)
Generate an ideal in varCount variables with minimal generators given by.
bool generateRandomIdeal(BigIdeal &bigIdeal, size_t exponentRange, size_t varCount, size_t generatorCount)
Generate a random ideal with exponents in the range [0, exponentRange].
void generateRandomFrobeniusInstance(vector< mpz_class > °rees, size_t entryCount, const mpz_class &maxEntry)
Generate a random vector of numbers whose gcd is 1.
void generateMatchingIdeal(BigIdeal &bigIdeal, size_t n)
Generate an ideal whose facets are the maximum matchings in an n-clique.
void generateRookChessIdeal(BigIdeal &bigIdeal, size_t n, size_t k)
Generate an ideal in n*k variables.