Loading...
Searching...
No Matches
walk.h
Go to the documentation of this file.
/*****************************************
* Computer Algebra System SINGULAR *
*****************************************/
/*
* ABSTRACT: Declaration of the Groebner walk
*/
#ifndef WALK_H
#define WALK_H
#include "kernel/structs.h"
ideal MwalkInitialForm(ideal G, intvec* curr_weight);
//compute the next weight vector
intvec* MwalkNextWeight(intvec* curr_weight,intvec* target_weight, ideal G);
int MivSame(intvec* u , intvec* v);
int M3ivSame(intvec* next_weight, intvec* u , intvec* v);
intvec* Mivdp(int nR);
intvec* Mivlp(int nR);
intvec* MivMatrixOrder(intvec* iv);
intvec* MivMatrixOrderdp(int iv);
intvec* MPertVectors(ideal G, intvec* ivtarget, int pdeg);
intvec* MPertVectorslp(ideal G, intvec* ivtarget, int pdeg);
intvec* MivMatrixOrderlp(int nV);
intvec* Mfpertvector(ideal G, intvec* iv);
intvec* MivUnit(int nV);
intvec* MivWeightOrderlp(intvec* ivstart);
intvec* MivWeightOrderdp(intvec* ivstart);
ideal MidLift(ideal Gomega, ideal M);
ideal MLiftLmalG(ideal L, ideal G);
ideal MLiftLmalGNew(ideal Gomega, ideal M, ideal G);
ideal MLiftLmalGMin(ideal L, ideal G);
intvec* MkInterRedNextWeight(intvec* iva, intvec* ivb, ideal G);
intvec* MPertNextWeight(intvec* iva, ideal G, int deg);
intvec* Mivperttarget(ideal G, int ndeg);
intvec* MSimpleIV(intvec* iv);
/* Okt -- Nov'01 */
// compute a Groebner basis of an ideal G w.r.t. lexicographic order
//ideal Mwalk(ideal Go, intvec* orig_M, intvec* target_M);
ideal Mwalk(ideal Go, intvec* orig_M, intvec* target_M, ring baseRing, int reduction, int printout);
// random walk algorithm to compute a Groebner basis
ideal Mrwalk(ideal Go, intvec* orig_M, intvec* target_M, int weight_rad, int pert_deg, int reduction, int printout);
/* the perturbation walk algorithm */
ideal Mpwalk(ideal Go, int op_deg, int tp_deg,intvec* curr_weight,intvec* target_weight, int nP, int reduction, int printout);
/* the perturbation walk algorithm with random element */
ideal Mprwalk(ideal Go, intvec* orig_M, intvec* target_M, int weight_rad, int op_deg, int tp_deg, int nP, int reduction, int printout);
/* The fractal walk algorithm */
ideal Mfwalk(ideal G, intvec* ivstart, intvec* ivtarget, int reduction, int printout);
/* The fractal walk algorithm with random element */
ideal Mfrwalk(ideal G, intvec* ivstart, intvec* ivtarget, int weight_rad, int reduction, int printout);
/* Implement Tran's idea */
intvec* TranMPertVectorslp(ideal G);
ideal TranMImprovwalk(ideal Go, intvec* curr_weight,intvec* target_weight, int nP);
/* the first alternative algorithm */
ideal MAltwalk1(ideal G,int op,int tp,intvec* curr_weight,intvec* target_weight);
/* the second alternative algorithm */
ideal MAltwalk2(ideal G, intvec* curr_weight, intvec* target_weight);
#endif //WALK_H
intvec
Definition intvec.h:24
v
const Variable & v
< [in] a sqrfree bivariate poly
Definition facBivar.h:39
G
STATIC_VAR TreeM * G
Definition janet.cc:31
M
#define M
Definition sirandom.c:25
structs.h
M3ivSame
int M3ivSame(intvec *next_weight, intvec *u, intvec *v)
Definition walk.cc:915
MivWeightOrderdp
intvec * MivWeightOrderdp(intvec *ivstart)
Definition walk.cc:1457
TranMImprovwalk
ideal TranMImprovwalk(ideal Go, intvec *curr_weight, intvec *target_weight, int nP)
Definition walk.cc:8397
MivUnit
intvec * MivUnit(int nV)
Definition walk.cc:1497
Mfpertvector
intvec * Mfpertvector(ideal G, intvec *iv)
Definition walk.cc:1513
MwalkNextWeight
intvec * MwalkNextWeight(intvec *curr_weight, intvec *target_weight, ideal G)
MLiftLmalGMin
ideal MLiftLmalGMin(ideal L, ideal G)
Mivperttarget
intvec * Mivperttarget(ideal G, int ndeg)
MSimpleIV
intvec * MSimpleIV(intvec *iv)
MivMatrixOrderdp
intvec * MivMatrixOrderdp(int iv)
Definition walk.cc:1418
Mfwalk
ideal Mfwalk(ideal G, intvec *ivstart, intvec *ivtarget, int reduction, int printout)
Definition walk.cc:8032
MPertVectors
intvec * MPertVectors(ideal G, intvec *ivtarget, int pdeg)
Definition walk.cc:1089
TranMPertVectorslp
intvec * TranMPertVectorslp(ideal G)
MidLift
ideal MidLift(ideal Gomega, ideal M)
MivWeightOrderlp
intvec * MivWeightOrderlp(intvec *ivstart)
Definition walk.cc:1437
Mprwalk
ideal Mprwalk(ideal Go, intvec *orig_M, intvec *target_M, int weight_rad, int op_deg, int tp_deg, int nP, int reduction, int printout)
Definition walk.cc:6389
MivMatrixOrder
intvec * MivMatrixOrder(intvec *iv)
Definition walk.cc:964
MAltwalk2
ideal MAltwalk2(ideal G, intvec *curr_weight, intvec *target_weight)
Definition walk.cc:4281
MLiftLmalGNew
ideal MLiftLmalGNew(ideal Gomega, ideal M, ideal G)
MLiftLmalG
ideal MLiftLmalG(ideal L, ideal G)
Mrwalk
ideal Mrwalk(ideal Go, intvec *orig_M, intvec *target_M, int weight_rad, int pert_deg, int reduction, int printout)
Definition walk.cc:5604
MAltwalk1
ideal MAltwalk1(ideal G, int op, int tp, intvec *curr_weight, intvec *target_weight)
Definition walk.cc:9672
Mfrwalk
ideal Mfrwalk(ideal G, intvec *ivstart, intvec *ivtarget, int weight_rad, int reduction, int printout)
Definition walk.cc:8213
Mwalk
ideal Mwalk(ideal Go, intvec *orig_M, intvec *target_M, ring baseRing, int reduction, int printout)
Definition walk.cc:5303
Mpwalk
ideal Mpwalk(ideal Go, int op_deg, int tp_deg, intvec *curr_weight, intvec *target_weight, int nP, int reduction, int printout)
Definition walk.cc:5948
MivSame
int MivSame(intvec *u, intvec *v)
Definition walk.cc:894
Mivlp
intvec * Mivlp(int nR)
Definition walk.cc:1023
MivMatrixOrderlp
intvec * MivMatrixOrderlp(int nV)
Definition walk.cc:1402
MPertVectorslp
intvec * MPertVectorslp(ideal G, intvec *ivtarget, int pdeg)
Definition walk.cc:1300
Mivdp
intvec * Mivdp(int nR)
Definition walk.cc:1008
MkInterRedNextWeight
intvec * MkInterRedNextWeight(intvec *iva, intvec *ivb, ideal G)
Definition walk.cc:2571
MPertNextWeight
intvec * MPertNextWeight(intvec *iva, ideal G, int deg)
MwalkInitialForm
ideal MwalkInitialForm(ideal G, intvec *curr_weight)
Definition walk.cc:762