source: git/Singular/syz.h @ 97a7b44

spielwiese
Last change on this file since 97a7b44 was eb4bde, checked in by Hans Schönemann <hannes@…>, 25 years ago
*hannes: fixed currcomponents git-svn-id: file:///usr/local/Singular/svn/trunk@3103 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.7 KB
Line 
1#ifndef SYZ_H
2#define SYZ_h
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id: syz.h,v 1.14 1999-06-08 07:57:13 Singular Exp $ */
7/*
8* ABSTRACT: Resolutions
9*/
10#include "structs.h"
11
12struct sSObject{
13                 poly  p;
14                 poly  p1,p2; /*- the pair p comes from -*/
15                 poly  lcm;   /*- the lcm of p1,p2 -*/
16                 poly  syz;   /*- the syzygy associated to p1,p2 -*/
17                 int   ind1,ind2; /*- the indeces of p1,p2 -*/
18                 poly  isNotMinimal;
19                 int   syzind;
20                 int   order;
21               };
22typedef struct sSObject SObject;
23typedef SObject * SSet;
24typedef SSet * SRes;
25
26class ssyStrategy;
27typedef ssyStrategy * syStrategy;
28class ssyStrategy{
29  public:
30  int ** truecomponents;
31  int ** backcomponents;
32  int ** Howmuch;
33  int ** Firstelem;
34  intvec ** weights;
35  resolvente res;
36  resolvente orderedRes;
37  SRes resPairs;
38  intvec * Tl;
39  resolvente fullres;
40  resolvente minres;
41  int * binom;
42  intvec * resolution;
43  intvec * cw;
44  int highdeg_1;
45  int length;
46  short list_length;
47  short references;
48};
49
50void sySchreyersSyzygiesM(polyset F,int Fmax,polyset* Shdl,int* Smax,
51   BOOLEAN noSort);
52
53void sySchreyersSyzygiesB(polyset F,int Fmax,polyset* Shdl,int* Smax,
54   BOOLEAN noSort);
55
56resolvente sySchreyerResolvente(ideal arg, int maxlength, int * length,
57   BOOLEAN isMonomial=FALSE, BOOLEAN notReplace=FALSE);
58
59syStrategy sySchreyer(ideal arg, int maxlength);
60
61resolvente syResolvente(ideal arg, int maxlength, int * length,
62                        intvec *** weights, BOOLEAN minim);
63
64syStrategy syResolution(ideal arg, int maxlength,intvec * w, BOOLEAN minim);
65
66resolvente syMinRes(ideal arg, int maxlength, int * length, BOOLEAN minim);
67
68void syMinimizeResolvente(resolvente res, int length, int first);
69
70resolvente syFastMin(resolvente res,int length);
71
72intvec * syBetti(resolvente res,int length, int * regularity,
73                 intvec* weights=NULL);
74
75ideal syMinBase(ideal arg);
76
77BOOLEAN syTestOrder(ideal i);
78
79void syReOrderResolventFB(resolvente res,int length, int initial=1);
80
81resolvente syLaScala1(ideal arg,int * length);
82syStrategy syLaScala3(ideal arg,int * length);
83
84void syKillComputation(syStrategy syzstr);
85intvec * syBettiOfComputation(syStrategy syzstr);
86int syLength(syStrategy syzstr);
87int sySize(syStrategy syzstr);
88int syDim(syStrategy syzstr);
89syStrategy syCopy(syStrategy syzstr);
90void syPrint(syStrategy syzstr);
91lists syConvRes(syStrategy syzstr,BOOLEAN toDel=FALSE);
92syStrategy syConvList(lists li,BOOLEAN toDel=FALSE);
93syStrategy syForceMin(lists li);
94syStrategy syMinimize(syStrategy syzstr);
95void syKillEmptyEntres(resolvente res,int length);
96
97#endif
Note: See TracBrowser for help on using the repository browser.