source: git/kernel/lpolynomial.h @ a0350e9

spielwiese
Last change on this file since a0350e9 was a0350e9, checked in by Christian Eder, 15 years ago
added lists for critical pairs git-svn-id: file:///usr/local/Singular/svn/trunk@11321 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.1 KB
RevLine 
[3b5daf]1/****************************************
2*  Computer Algebra System SINGULAR     *
3****************************************/
[a0350e9]4/* $Id: lpolynomial.h,v 1.5 2009-01-15 17:44:24 ederc Exp $ */
[3b5daf]5/*
[4e803e]6* ABSTRACT: labeled polynomial interface
[3b5daf]7*/
8#ifndef LPOLYNOMIAL_HEADER
9#define LPOLYNOMIAL_HEADER
10
11#ifdef HAVE_F5
[a0350e9]12/*
13=========================================================
14=========================================================
15classes for labeled polynomials/pairs/S-polynomials in F5
16=========================================================
17=========================================================
18*/
19class LPoly;
20class CPair;
[3b5daf]21
22
[cd7c3e1]23/*
24=============================
25class of a labeled polynomial
26=============================
27*/
[71f00c5]28class LPoly {
29    private:
30        poly    term; //term of signature
[a0350e9]31        int     index; //index of signature
[71f00c5]32        poly    polynomial; //standard polynomial data
33        bool    del; //for deletion in TopReduction Subalgorithm
34    public:
[a0350e9]35                LPoly(poly*t,int* i,poly* p); 
[71f00c5]36        void    setPoly(poly* p);
37        poly*   getPoly();
38        void    setTerm(poly* t);
39        poly*   getTerm();
[a0350e9]40        void    setIndex(int* i);
41        int*    getIndex();
[71f00c5]42        void    setDel(bool b);
43        bool    getDel() const;
[a0350e9]44        void    set(poly* t, int* i, poly* p);
[71f00c5]45        LPoly*  get();
[3b5daf]46};
47
48
[cd7c3e1]49/*
50===============================
51structure of the critical pairs
52===============================
53*/
[a0350e9]54class CPair {
55    private:
56        int     deg;    // total degree of the critical pair
57        poly    t1;     // first term for label
58        LPoly*  lp1;     // first labeled poly
59        poly    t2;     // second term for label
60        LPoly*  lp2;     // second labeled poly
61    public:
62                CPair(int degree, poly term1, LPoly* lpoly1, poly term2, LPoly* lpoly2);
63        int     getDeg();
64        poly    getT1();
65        poly    getLp1Poly();
66        poly    getLp1Term();
67        int     getLp1Index();
68        poly    getT2();
69        poly    getLp2Poly();
70        poly    getLp2Term();
71        int     getLp2Index();
[3b5daf]72};
73
74
75#endif
76#endif
Note: See TracBrowser for help on using the repository browser.