[ kepler | Source | Keywords | Summary | Ancestors | All Members | Descendants ]
Back to the top of prove
Back to the top of prove
Back to the top of prove
int recursiveVerifier(int depth, const domain& x,const domain& z, const domain& x0,const domain& z0, const taylorFunction* I[], int count,const cellOption& options);
recursiveVerifier is the main inequality verification
procedure for simplices.
It starts with a list of taylorFunctions I[],
and attempts to prove that at every point of the domain
x--z, at least one of the functions is negative.
Start with depth=0. Each step of the recursion will
increase the depth by 1.
Start with x=x0, z=z0. As the domain is subdivided,
x will increase and z will decrease. x0, z0 remain fixed,
unless there is dimension reduction.
static int recursiveVerifier(int depth, const domain& x,const domain& z, /// current cell const domain& x0,const domain& z0, // boundary const taylorFunction* I[], int count,const cellOption& options);
Back to the top of prove
void recursiveVerifierQ(int depth, const domain& xA,const domain& xB, const domain& zA,const domain& zB, const taylorFunction* IA[],const taylorFunction* IB[],int Nineq, const cellOption& options);
recursiveVerifierQ is the main inequality verification
procedure for quad clusters.
Each quad cluster is divided into two simplices A,B along
the shortest diagonal. A list of taylorFunctions is
given IA, IB for the two simplices. The recursiveVerifierQ
procedure attempts to show that at every point in the domain
xA--zA (on A), xB--zB (on B), there is an index for which
the sum of the values of IA[index] on A and IB[index] on B
is negative. IA[index] or IB[index] is allowed to be positive
as long as the sum is negative. Dimension reduction is
always used in recursiveVerifierQ. Otherwise the dimensions
are too great to be handled by computer. This means that
if unreducible taylorFunctions are used, the
results are unreliable.
The depth starts out at 0.
static void recursiveVerifierQ(int depth, const domain& xA,const domain& xB, const domain& zA,const domain& zB, const taylorFunction* IA[],const taylorFunction* IB[],int Nineq, const cellOption& options);
Back to the top of prove
int generic(const domain& x,const domain& z,const taylorFunction& F);
Prove that F<0 on the domain x--z. This function calls
recursiveVerifier.
static int generic(const domain& x,const domain& z,const taylorFunction& F);
Back to the top of prove
int qrtet(const domain& x,const domain& z,const taylorFunction& FlessScore);
Prove that sigma+FlessScore <0 on the the domain x--z.
Two cases are considered according to whether the score
is compression or the analytic voronoi function.
qrtet calls recursiveVerifier twice.
static int qrtet(const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int qrtetReduce (const domain& x,const domain& z,const taylorFunction& FlessScore);
Prove that sigma+FlessScore <0 on the the domain x--z, using
dimension reduction.
Two cases are considered according to whether the score
is compression or the analytic voronoi function.
It is assumed that FlessScore is reducible. The procedure
keeps track of when the score sigma is reducible and acts
accordingly.
qrtetReduce calls recursiveVerifier twice.
static int qrtetReduce (const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int flat(const domain& x,const domain& z,const taylorFunction& FlessScore);
static int flat(const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int flatVc(const domain& x,const domain& z,const taylorFunction& FlessScore);
static int flatVc(const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int upright(const domain& x,const domain& z,const taylorFunction& FlessScore);
This uses gamma or octavor depending on the context.
This verification function is suitable for quad clusters.
static int upright(const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int octa(const domain& x,const domain& z,const taylorFunction& FlessScore);
static int octa(const domain& x,const domain& z,const taylorFunction& FlessScore);
Back to the top of prove
int octaWithoutEta(const domain& x,const domain& z, const taylorFunction& FlessScore);
static int octaWithoutEta(const domain& x,const domain& z, const taylorFunction& FlessScore);
Back to the top of prove
static int quadcluster(const domain& xA,const domain& xB, const domain& zA, const domain& zB, const taylorFunction& fA, const taylorFunction& fB);
Back to the top of prove
Back to the top of prove
Back to the top of prove
Back to the top of prove
Report problems to jkotula@unimax.com