# source:git/kernel/f5data.cc@a41f3aa

jengelh-datetimespielwiese
Last change on this file since a41f3aa was a41f3aa, checked in by Christian Eder, 14 years ago
criterion1() and criterion2() done, changed rules(added pointer on LPoly generating this rule) git-svn-id: file:///usr/local/Singular/svn/trunk@11348 2c84dea3-7e68-4137-9b89-c4e89433aadc
• Property mode set to `100644`
File size: 2.6 KB
Line
1/****************************************
2*  Computer Algebra System SINGULAR     *
3****************************************/
4/* \$Id: f5data.cc,v 1.2 2009-02-03 20:55:43 ederc Exp \$ */
5/*
6* ABSTRACT: lpolynomial definition
7*/
8#include "mod2.h"
9
10#ifdef HAVE_F5
11#include "kutil.h"
12#include "structs.h"
13#include "omalloc.h"
14#include "polys.h"
15#include "p_polys.h"
16#include "ideals.h"
17#include "febase.h"
18#include "kstd1.h"
19#include "khstd.h"
20#include "kbuckets.h"
21#include "weight.h"
22#include "intvec.h"
23#include "pInline1.h"
24#include "f5gb.h"
25#include "f5data.h"
26#include "f5lists.h"
27/*
28================================================================
29all functions working on the class LPoly for labeled polynomials
30================================================================
31*/
32LPoly::LPoly(poly* t,int* i,poly* p) {
33    set(t,i,p);
34}
35
36void LPoly::setPoly(poly* p)  {
37    polynomial = *p;
38}
39
40void LPoly::setTerm(poly* t) {
41    term = *t;
42}
43
44void LPoly::setIndex(int* i) {
45    index = *i;
46}
47
48void LPoly::setDel(bool b) {
49    del = b;
50}
51
52poly LPoly::getPoly() {
53    return polynomial;
54}
55
56poly LPoly::getTerm() {
57    return term;
58}
59
60int LPoly::getIndex() {
61    return index;
62}
63
64bool LPoly::getDel() const {
65    return del;
66}
67
68void LPoly::set(poly* t, int* i, poly* p) {
69    this->setTerm(t);
70    this->setIndex(i);
71    this->setPoly(p);
72}
73
74LPoly* LPoly::get() {
75    return this;
76}
77
78/*
79====================================
80functions working on the class CPair
81====================================
82*/
83CPair::CPair(long degree, poly term1, LPoly* lpoly1, poly term2, LPoly* lpoly2) {
84   deg              =   degree;
85   t1               =   term1;
86   lp1              =   lpoly1;
87   t2               =   term2;
88   lp2              =   lpoly2;
89   lastRuleTested   =   NULL;
90}
91
92long CPair::getDeg() {
93    return deg;
94}
95
96poly CPair::getT1() {
97    return t1;
98}
99
100poly CPair::getT2() {
101    return t2;
102}
103
104poly CPair::getLp1Poly() {
105    return lp1->getPoly();
106}
107
108poly CPair::getLp2Poly() {
109    return lp2->getPoly();
110}
111
112poly CPair::getLp1Term() {
113    return lp1->getTerm();
114}
115
116poly CPair::getLp2Term() {
117    return lp2->getTerm();
118}
119
120int CPair::getLp1Index() {
121    return lp1->getIndex();
122}
123
124int CPair::getLp2Index() {
125    return lp2->getIndex();
126}
127
128Rule* CPair::getLastRuleTested() {
129    return lastRuleTested;
130}
131
132/*
133===================================
134functions working on the class Rule
135===================================
136*/
137Rule::Rule(int* i, poly* t) {
138    index   =   i;
139    term    =   t;
140}
141
142int Rule::getIndex() {
143    return *index;
144}
145
146poly Rule::getTerm() {
147    return *term;
148}
149
150LPoly* Rule::getOrigin() {
151    return origin;
152}
153#endif
Note: See TracBrowser for help on using the repository browser.