source: git/kernel/gring.h @ f2109c

spielwiese
Last change on this file since f2109c was f2109c, checked in by Hans Schönemann <hannes@…>, 20 years ago
*hannes: modified gring.h git-svn-id: file:///usr/local/Singular/svn/trunk@6916 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.5 KB
Line 
1#ifndef GRING_H
2#define GRING_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id: gring.h,v 1.2 2003-11-04 16:44:19 Singular Exp $ */
7/*
8* ABSTRACT additional defines etc for --with-plural
9*/
10
11#ifdef HAVE_PLURAL
12#include "structs.h"
13
14void ncKill(ring r);
15
16#define UPMATELEM(i,j,nVar) ( (nVar * ((i)-1) - ((i) * ((i)-1))/2 + (j)-1)-(i) )
17// poly functions defined in p_Procs :
18poly nc_pp_Mult_mm(poly p, poly m, const ring r, poly &last);
19poly nc_p_Mult_mm(poly p, poly m, const ring r);
20poly nc_p_Minus_mm_Mult_qq(poly p, const poly m, poly q, const ring r);
21// other routines we need in addition :
22poly nc_p_Mult_mm_Common(poly p, const poly m, int side, const ring r);
23poly nc_mm_Mult_p(const poly m, poly p, const ring r);
24poly nc_mm_Mult_nn (int *F, int *G, const ring r); 
25poly nc_mm_Mult_uu (int *F,int jG,int bG, const ring r);
26
27/* #define nc_uu_Mult_ww nc_uu_Mult_ww_vert */
28poly nc_uu_Mult_ww (int i, int a, int j, int b, const ring r);
29/* poly nc_uu_Mult_ww_vert (int i, int a, int j, int b, const ring r); */
30/* poly nc_uu_Mult_ww_horvert (int i, int a, int j, int b, const ring r); */
31/* poly nc_uu_Mult_ww_hvdiag (int i, int a, int j, int b, const ring r); */
32/* not written yet */
33
34poly _nc_p_Mult_q(poly p, poly q, const int copy, const ring r);
35
36//copy :
37poly nc_p_CopyGet(poly a, ring r);
38poly nc_p_CopyPut(poly a, ring r);
39
40//syzygies :
41// former nc_spGSpolyCreate
42poly nc_CreateSpoly(poly p1, poly p2, poly spNoether, const ring r);
43// former nc_spGSpolyRed
44poly nc_ReduceSpoly(poly p1, poly p2, poly spNoether, const ring r);
45// former nc_spGSpolyRedNew
46poly nc_ReduceSpolyNew(poly p1, poly p2, poly spNoether, const ring r);
47// former nc_spGSpolyRedTail
48void nc_ReduceSpolyTail(poly p1, poly q, poly q2, poly spNoether, const ring r);
49// former nc_spShort
50poly nc_CreateShortSpoly(poly p1, poly p2, const ring r=currRing);
51
52ideal gr_bba (ideal F, ideal Q,kStrategy strat);
53
54// brackets:
55poly nc_p_Bracket_qq(poly p, poly q);
56poly nc_mm_Bracket_nn(poly m1, poly m2);
57
58//twostd:
59
60ideal twostd(ideal I);
61
62// complete reduction routines
63
64//void nc_kBucketPolyRed(kBucket_pt b, poly p);
65void nc_kBucketPolyRed(kBucket_pt b, poly p, number *c);
66void nc_PolyPolyRed(poly &b, poly p, number *c);
67
68matrix nc_PrintMat(int a, int b, ring r, int metric);
69
70int nc_CheckSubalgebra(poly PolyVar, ring r);
71
72#else
73// dummy definition to make gcc happy
74#define nc_kBucketPolyRed(A,B,C) 0
75#define nc_PolyPolyRed(A,B,C) 0
76
77#endif /* HAVE_PLURAL */
78#endif
79
Note: See TracBrowser for help on using the repository browser.