source: git/Singular/walk.h @ dea3d2

fieker-DuValspielwiese
Last change on this file since dea3d2 was e92c6a, checked in by Stephan Oberfranz <oberfran@…>, 11 years ago
walk stuff
  • Property mode set to 100644
File size: 2.5 KB
RevLine 
[a9a7be]1/*****************************************
2*  Computer Algebra System SINGULAR      *
3*****************************************/
4/*
5* ABSTRACT: Declaration of the Groebner walk
6*/
7
[50cbdc]8#ifndef WALK_H
9#define WALK_H
10
[599326]11#include <kernel/structs.h>
[a9a7be]12
[fc5095]13ideal  MwalkInitialForm(ideal G, intvec* curr_weight);
[50cbdc]14
[fc5095]15//compute the next weight vector
16intvec* MwalkNextWeight(intvec* curr_weight,intvec* target_weight, ideal G);
[50cbdc]17
[fc5095]18int MivSame(intvec* u , intvec* v);
19int M3ivSame(intvec* next_weight, intvec* u , intvec* v);
[50cbdc]20
21
22
[fc5095]23intvec* Mivdp(int nR);
24intvec* Mivlp(int nR);
[50cbdc]25
[fc5095]26intvec* MivMatrixOrder(intvec* iv); 
27intvec* MivMatrixOrderdp(int iv); 
28intvec* MPertVectors(ideal G, intvec* ivtarget, int pdeg); 
29intvec* MPertVectorslp(ideal G, intvec* ivtarget, int pdeg); 
[50cbdc]30
31
[fc5095]32intvec* MivMatrixOrderlp(int nV);
[50cbdc]33
[fc5095]34intvec* Mfpertvector(ideal G, intvec* iv); 
35intvec* MivUnit(int nV);
[50cbdc]36
[fc5095]37intvec* MivWeightOrderlp(intvec* ivstart); 
38intvec* MivWeightOrderdp(intvec* ivstart); 
[50cbdc]39
[fc5095]40ideal MidLift(ideal Gomega, ideal M); 
41ideal MLiftLmalG(ideal L, ideal G);
42ideal MLiftLmalGNew(ideal Gomega, ideal M, ideal G); 
43ideal MLiftLmalGMin(ideal L, ideal G); 
[50cbdc]44
45
[fc5095]46intvec* MkInterRedNextWeight(intvec* iva, intvec* ivb, ideal G);
47intvec* MPertNextWeight(intvec* iva, ideal G, int deg);
48intvec* Mivperttarget(ideal G, int ndeg);
[50cbdc]49
50
[fc5095]51intvec* MSimpleIV(intvec* iv);
[50cbdc]52
[fc5095]53/* Okt -- Nov'01 */
54// compute a Groebner basis of an ideal G w.r.t. lexicographic order
55ideal Mwalk(ideal G, intvec* curr_weight, intvec* target_weight); 
[50cbdc]56
[e92c6a]57// random walk algorithm to compute a Groebner basis
58ideal Mrwalk(ideal Go, intvec* curr_weight, intvec* target_weight, int weight_rad, int pert_deg);
59
[fc5095]60/* the perturbation walk algorithm */
61ideal Mpwalk(ideal G,int op,int tp,intvec* curr_weight,intvec* target_weight, int nP); 
[50cbdc]62
[fc5095]63/* The fractal walk algorithm */
64ideal Mfwalk(ideal G, intvec* ivstart, intvec* ivtarget);
[50cbdc]65
[e92c6a]66/* The fractal walk algorithm with random element */
67ideal Mfrwalk(ideal G, intvec* ivstart, intvec* ivtarget,int weight_rad);
[50cbdc]68
[fc5095]69/* Implement Tran's idea */
70intvec* TranMPertVectorslp(ideal G);
71ideal TranMImprovwalk(ideal Go, intvec* curr_weight,intvec* target_weight, int nP);
[50cbdc]72
[e92c6a]73/* Implement Tran's idea with random element*/
74ideal TranMrImprovwalk(ideal G,intvec* curr_weight,intvec* target_tmp, int nP, int weight_rad, int pert_deg);
75
[fc5095]76/* the first alternative algorithm */
77ideal MAltwalk1(ideal G,int op,int tp,intvec* curr_weight,intvec* target_weight); 
[50cbdc]78
[fc5095]79/* the second alternative algorithm */
80ideal MAltwalk2(ideal G, intvec* curr_weight, intvec* target_weight); 
[847242]81
[50cbdc]82#endif  //WALK_H
Note: See TracBrowser for help on using the repository browser.