source: git/Singular/ring.h @ 18255d

spielwiese
Last change on this file since 18255d was 18255d, checked in by Olaf Bachmann <obachman@…>, 26 years ago
1998-03-18 Olaf Bachmann <obachman@mathematik.uni-kl.de> * Cleaned up COMP_FAST and related #defines almost everywhere git-svn-id: file:///usr/local/Singular/svn/trunk@1255 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.0 KB
Line 
1#ifndef RING_H
2#define RING_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT - the interpreter related ring operations
8*/
9/* $Id: ring.h,v 1.10 1998-03-19 16:05:51 obachman Exp $ */
10
11/* includes */
12#include "structs.h"
13#include "polys-impl.h"
14
15void   rChangeCurrRing(ring r, BOOLEAN complete = TRUE);
16void   rSetHdl(idhdl h, BOOLEAN complete);
17idhdl  rInit(char *s, sleftv* pn, sleftv* rv, sleftv* ord,
18  BOOLEAN isDRing);
19idhdl  rDefault(char *s);
20int    rIsRingVar(char *n);
21char * RingVar(short);
22void   rWrite(ring r);
23void   rKill(idhdl h);
24void   rKill(ring r);
25ring   rCopy(ring r);
26idhdl  rFindHdl(ring r, idhdl n);
27#ifdef DRING
28void rDSet();
29#endif
30void   rDInit();
31int rOrderName(char * ordername);
32char * rOrdStr(ring r);
33char * rVarStr(ring r);
34char * rCharStr(ring r);
35char * rString(ring r);
36int    rChar(ring r=currRing);
37#define rPar(r) (r->P)
38char * rParStr(ring r);
39int    rIsExtension(ring r);
40int    rIsExtension();
41int    rSum(ring r1, ring r2, ring &sum);
42#ifdef COMP_FAST
43void   rComplete(ring r);
44#else
45#define rComplete(r)
46#endif
47
48
49enum
50{
51  ringorder_no = 0,
52  ringorder_a,
53  ringorder_c,
54  ringorder_C,
55  ringorder_M,
56  ringorder_lp,
57  ringorder_dp,
58  ringorder_Dp,
59  ringorder_wp,
60  ringorder_Wp,
61  ringorder_ls,
62  ringorder_ds,
63  ringorder_Ds,
64  ringorder_ws,
65  ringorder_Ws,
66  ringorder_unspec
67};
68
69typedef enum rOrderType_t
70{
71  rOrderType_General = 0, // non-simple ordering as specified by currRing
72  rOrderType_CompExp,     // simple ordering, component has priority
73  rOrderType_ExpComp,     // simple ordering, exponent vector has priority
74                          // component not compatible with exp-vector order
75  rOrderType_Exp,         // simple ordering, exponent vector has priority
76                          // component is compatible with exp-vector order
77  rOrderType_Syz,         // syzygy ordering
78  rOrderType_Schreyer     // Schreyer ordering
79} rOrderType_t;
80
81rOrderType_t rGetOrderType(ring r);
82
83#ifdef RDEBUG
84extern short rNumber;
85#endif
86
87#endif
88
Note: See TracBrowser for help on using the repository browser.