Frobby
0.9.5
|
#include "SatBinomIdeal.h"
#include "IOFacade.h"
#include "Scanner.h"
#include "IOHandler.h"
#include "DataType.h"
#include "BigIdeal.h"
#include "MsmStrategy.h"
#include "TermTranslator.h"
#include "TranslatingTermConsumer.h"
#include "DebugStrategy.h"
#include "Matrix.h"
#include "BigTermRecorder.h"
#include "SliceParams.h"
#include "SliceFacade.h"
#include <algorithm>
#include <set>
#include <sstream>
#include <limits>
#include <fstream>
#include <map>
#include <iostream>
Go to the source code of this file.
Classes | |
struct | SeqPos |
class | Neighbor |
class | GrobLat |
A lattice with associated Grobner basis/neighbors. More... | |
class | Tri |
class | Plane |
class | Mlfb |
class | TriPlane |
Macros | |
#define | CHECK(X) |
Enumerations | |
enum | NeighborPlace { InPlane , UnderPlane , OverPlane , NoPlace } |
Functions | |
char | getPlaceCode (NeighborPlace place) |
void | getThinPlanes (vector< TriPlane > &planes, const GrobLat &lat) |
void | checkPlanes (const vector< TriPlane > &thinPlanes, const vector< Plane > &dtPlanes) |
size_t | pushOutFacetPositive (size_t facetPushOut, const vector< mpz_class > &rhs, const GrobLat &lat) |
size_t | pushOutFacetZero (const vector< mpz_class > &rhs, const GrobLat &lat) |
void | computeMlfbs (vector< Mlfb > &mlfbs, const GrobLat &lat) |
void | computeSeqs (vector< vector< SeqPos > > &left, vector< vector< SeqPos > > &right, const vector< Mlfb > &mlfbs, const Plane &plane) |
void | computePivotSeqs (vector< vector< SeqPos > > &seqs, const Mlfb &pivot, const Plane &plane) |
Starting at pivot (which must be a pivot), follow the three non-flat sequences starting at pivot. More... | |
void | checkSeqs (const vector< vector< SeqPos > > &left, const vector< vector< SeqPos > > &right, const Plane &plane, const vector< Mlfb > &mlfbs) |
void | checkMiddle (const Plane &plane, const vector< Mlfb > &mlfbs) |
void | checkDoubleTriangle (const Plane &plane, const vector< Mlfb > &mlfbs) |
void | checkGraph (const vector< Mlfb > &mlfbs) |
void | checkGraphOnPlane (const Plane &plane, const vector< Mlfb > &mlfbs) |
void | checkPivotSeqs (vector< vector< SeqPos > > &pivotSeqs, const Plane &plane, const vector< Mlfb > &mlfbs, const vector< SeqPos > &flatSeq) |
Perform checks where pivotSeqs are the 3 non-flat sequences on one side. More... | |
void | checkPlaneTri (const GrobLat &lat, const vector< Mlfb > &mlfbs, const vector< const Mlfb * > &pivots, const Plane &plane) |
void | computePlanes (vector< Plane > &planes, const GrobLat &lat, vector< Mlfb > &mlfbs) |
void | setupPlaneCountsAndOrder (vector< Mlfb > &mlfbs, const Plane &plane, map< size_t, size_t > &typeCounts) |
Set the plane vertex count for each mlfb and count how many MLFBs have each possible number of vertices. More... | |
bool | disjointSeqs (const vector< SeqPos > &a, const vector< SeqPos > &b) |
void | computePivots (vector< const Mlfb * > &pivots, const vector< Mlfb > &mlfbs, const Plane &plane, const vector< SeqPos > &flatSeq) |
Put all pivots into pivots. More... | |
void | checkNonSums (const GrobLat &lat) |
void | checkFlatSeq (const vector< SeqPos > &flatSeq, const GrobLat &lat, const Plane &plane) |
const char * | getEdgePos (size_t index) |
mpq_class | getIndexSum (const vector< Mlfb > &mlfbs) |
void | checkMlfbs (const vector< Mlfb > &mlfbs, const GrobLat &lat) |
void | checkDoubleTrianglePlanes (const vector< Plane > &planes, const GrobLat &lat, const vector< Mlfb > &mlfbs) |
void | checkPlane (const Plane &plane, const vector< Mlfb > &mlfbs) |
#define CHECK | ( | X | ) |
Definition at line 48 of file LatticeAlgs.h.
enum NeighborPlace |
Enumerator | |
---|---|
InPlane | |
UnderPlane | |
OverPlane | |
NoPlace |
Definition at line 58 of file LatticeAlgs.h.
Definition at line 1043 of file LatticeAlgs.cpp.
void checkDoubleTrianglePlanes | ( | const vector< Plane > & | planes, |
const GrobLat & | lat, | ||
const vector< Mlfb > & | mlfbs | ||
) |
Definition at line 649 of file LatticeAlgs.cpp.
Definition at line 1180 of file LatticeAlgs.cpp.
void checkGraph | ( | const vector< Mlfb > & | mlfbs | ) |
Definition at line 1060 of file LatticeAlgs.cpp.
Definition at line 1017 of file LatticeAlgs.cpp.
Definition at line 985 of file LatticeAlgs.cpp.
Definition at line 642 of file LatticeAlgs.cpp.
void checkNonSums | ( | const GrobLat & | lat | ) |
Definition at line 1157 of file LatticeAlgs.cpp.
void checkPivotSeqs | ( | vector< vector< SeqPos > > & | pivotSeqs, |
const Plane & | plane, | ||
const vector< Mlfb > & | mlfbs, | ||
const vector< SeqPos > & | flatSeq | ||
) |
Perform checks where pivotSeqs are the 3 non-flat sequences on one side.
Definition at line 1092 of file LatticeAlgs.cpp.
Definition at line 714 of file LatticeAlgs.cpp.
Definition at line 99 of file LatticeAlgs.cpp.
void checkPlaneTri | ( | const GrobLat & | lat, |
const vector< Mlfb > & | mlfbs, | ||
const vector< const Mlfb * > & | pivots, | ||
const Plane & | plane | ||
) |
Definition at line 1259 of file LatticeAlgs.cpp.
void checkSeqs | ( | const vector< vector< SeqPos > > & | left, |
const vector< vector< SeqPos > > & | right, | ||
const Plane & | plane, | ||
const vector< Mlfb > & | mlfbs | ||
) |
Definition at line 966 of file LatticeAlgs.cpp.
Definition at line 239 of file LatticeAlgs.cpp.
void computePivots | ( | vector< const Mlfb * > & | pivots, |
const vector< Mlfb > & | mlfbs, | ||
const Plane & | plane, | ||
const vector< SeqPos > & | flatSeq | ||
) |
Put all pivots into pivots.
flatSeq must be the sequence of flats. If flatSeq is not empty, then offsets 0,1 will be the left pivots while 2,3 will be the right pivots.
Definition at line 746 of file LatticeAlgs.cpp.
void computePivotSeqs | ( | vector< vector< SeqPos > > & | seqs, |
const Mlfb & | pivot, | ||
const Plane & | plane | ||
) |
Starting at pivot (which must be a pivot), follow the three non-flat sequences starting at pivot.
Definition at line 881 of file LatticeAlgs.cpp.
Definition at line 511 of file LatticeAlgs.cpp.
void computeSeqs | ( | vector< vector< SeqPos > > & | left, |
vector< vector< SeqPos > > & | right, | ||
const vector< Mlfb > & | mlfbs, | ||
const Plane & | plane | ||
) |
Definition at line 769 of file LatticeAlgs.cpp.
Definition at line 738 of file LatticeAlgs.cpp.
const char* getEdgePos | ( | size_t | index | ) |
Definition at line 1310 of file LatticeAlgs.cpp.
mpq_class getIndexSum | ( | const vector< Mlfb > & | mlfbs | ) |
Definition at line 1321 of file LatticeAlgs.cpp.
char getPlaceCode | ( | NeighborPlace | place | ) |
Definition at line 135 of file LatticeAlgs.cpp.
Definition at line 22 of file LatticeAlgs.cpp.
size_t pushOutFacetPositive | ( | size_t | facetPushOut, |
const vector< mpz_class > & | rhs, | ||
const GrobLat & | lat | ||
) |
Definition at line 145 of file LatticeAlgs.cpp.
size_t pushOutFacetZero | ( | const vector< mpz_class > & | rhs, |
const GrobLat & | lat | ||
) |
Definition at line 170 of file LatticeAlgs.cpp.