source: git/kernel/ratgring.h @ 2381568

spielwiese
Last change on this file since 2381568 was 2381568, checked in by Viktor Levandovskyy <levandov@…>, 17 years ago
*levandov: first edition, not to be run yet git-svn-id: file:///usr/local/Singular/svn/trunk@9713 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: ratgring.h,v 1.1 2007-01-14 22:12:33 levandov Exp $ */
7/*
8* ABSTRACT additional defines etc for --with-plural
9*/
10
11#ifdef HAVE_PLURAL
12#include "structs.h"
13
14/* MACROS */
15
16/* the part, related to the interface */ 
17
18ring nc_rCreateNCcomm(ring r);
19
20/* poly functions defined in p_Procs : */
21poly nc_pp_Mult_mm(poly p, poly m, const ring r, poly &last);
22poly nc_p_Mult_mm(poly p, const poly m, const ring r);
23poly nc_p_Minus_mm_Mult_qq(poly p, const poly m, poly q, const ring r);
24poly nc_p_Minus_mm_Mult_qq_ign(poly p, const poly m, poly q, int & d1, poly d2, const ring ri, poly &d3);
25
26/* other routines we need in addition : */
27poly nc_p_Mult_mm_Common(poly p, const poly m, int side, const ring r);
28poly nc_mm_Mult_p(const poly m, poly p, const ring r);
29poly nc_mm_Mult_nn (int *F, int *G, const ring r); 
30poly nc_mm_Mult_uu (int *F,int jG,int bG, const ring r);
31
32/* subst: */
33poly nc_pSubst(poly p, int n, poly e);
34
35/* copy : */
36poly nc_p_CopyGet(poly a, const ring r);
37poly nc_p_CopyPut(poly a, const ring r);
38
39/* syzygies : */
40/* former nc_spGSpolyCreate */
41poly nc_CreateSpoly(poly p1, poly p2, poly spNoether, const ring r);
42/* former nc_spGSpolyRed */
43poly nc_ReduceSpoly(poly p1, poly p2, poly spNoether, const ring r);
44/* former nc_spGSpolyRedNew */
45poly nc_ReduceSpolyNew(poly p1, poly p2, poly spNoether, const ring r);
46/* former nc_spGSpolyRedTail */
47void nc_ReduceSpolyTail(poly p1, poly q, poly q2, poly spNoether, const ring r);
48/* former nc_spShort */
49poly nc_CreateShortSpoly(poly p1, poly p2, const ring r=currRing);
50
51ideal gr_bba (ideal F, ideal Q,kStrategy strat);
52
53/* brackets: */
54poly nc_p_Bracket_qq(poly p, poly q);
55poly nc_mm_Bracket_nn(poly m1, poly m2);
56
57/* twostd: */
58ideal twostd(ideal I);
59/* Ann: */
60ideal Approx_Step(ideal L);
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_kBucketPolyRed_Z(kBucket_pt b, poly p, number *c);
67void nc_PolyPolyRed(poly &b, poly p, number *c);
68
69matrix nc_PrintMat(int a, int b, ring r, int metric);
70
71poly p_CopyEmbed(poly p, ring srcRing, int shift, int par_shift);
72poly pOppose(ring Rop, poly p);
73ideal idOppose(ring Rop, ideal I);
74
75#else
76/* dummy definition to make gcc happy */
77#define nc_kBucketPolyRed(A,B,C) 0
78#define nc_PolyPolyRed(A,B,C) 0
79
80#endif /* HAVE_PLURAL */
81#endif
Note: See TracBrowser for help on using the repository browser.