My Project
Loading...
Searching...
No Matches
Public Member Functions | Data Fields | Private Types | Friends
Poly Class Reference

#include <janet.h>

Public Member Functions

 Poly (ring r=currRing)
 
 Poly (int n, ring r=currRing)
 
 Poly (const char *c, ring r=currRing)
 
 Poly (const Base &p)
 
 Poly (const Number &n)
 
 Poly (poly p, ring r)
 
 Poly (poly p, ring r, int)
 
 Poly (const std::vector< int > &v, ring r=currRing)
 
Polyoperator+= (const Poly &p)
 
Polyoperator+= (const Base &p)
 
- Public Member Functions inherited from PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandler >
poly as_poly () const
 
void checkIsSameRing (T &p)
 
Intvec leadExp ()
 
void copy_on_write ()
 
void print () const
 
char * c_string () const
 
 PolyBase (ring r=currRing)
 
 PolyBase (const char *c, ring r=currRing)
 
 PolyBase (const PolyBase &p)
 
 PolyBase (poly p, ring r)
 
 PolyBase (poly p, ring r, int)
 
PolyBaseoperator+= (const PolyBase &p2)
 
PolyBaseoperator*= (const Poly &p2)
 
PolyBaseoperator*= (Number n)
 
virtual ~PolyBase ()
 
PolyInputIterator< create_typebegin ()
 
PolyInputIterator< create_typeend ()
 
ring getRing () const
 
int lmTotalDegree () const
 
Number leadCoef ()
 
create_type operator- ()
 

Data Fields

poly root
 
kBucket_pt root_b
 
int root_l
 
poly history
 
poly lead
 
char * mult
 
int changed
 
int prolonged
 

Private Types

typedef PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandlerBase
 

Friends

class Vector
 
class PolyBase< POLY_VARIANT_MODUL, Vector, MyErrorHandler >
 
bool operator== (const Poly &p1, const Poly &p2)
 

Additional Inherited Members

- Public Types inherited from PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandler >
typedef Poly create_type
 
typedef PolyInputIterator< create_typeiterator
 
- Protected Member Functions inherited from PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandler >
 PolyBase (PolyImpl &impl)
 
poly getInternalReference ()
 
- Protected Attributes inherited from PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandler >
shared_ptr< PolyImplptr
 

Detailed Description

Definition at line 14 of file janet.h.

Member Typedef Documentation

◆ Base

Definition at line 457 of file Poly.h.

Constructor & Destructor Documentation

◆ Poly() [1/8]

Poly::Poly ( ring  r = currRing)
inline

Definition at line 462 of file Poly.h.

462 :Base ((poly)NULL,r,0){
463 }
#define NULL
Definition: omList.c:12
PolyBase< POLY_VARIANT_RING, Poly, MyErrorHandler > Base
Definition: Poly.h:457

◆ Poly() [2/8]

Poly::Poly ( int  n,
ring  r = currRing 
)
inline

Definition at line 464 of file Poly.h.

464 :Base(*(new PolyImpl(n,r))){
465
466 }
Definition: Poly.h:45

◆ Poly() [3/8]

Poly::Poly ( const char *  c,
ring  r = currRing 
)
inline

Definition at line 467 of file Poly.h.

467 :Base(c,r){
468
469 }

◆ Poly() [4/8]

Poly::Poly ( const Base p)
inline

Definition at line 470 of file Poly.h.

470 :Base(p){
471 }
int p
Definition: cfModGcd.cc:4078

◆ Poly() [5/8]

Poly::Poly ( const Number n)
inline

Definition at line 473 of file Poly.h.

473 :Base(*(new PolyImpl(n))){
474
475 }

◆ Poly() [6/8]

Poly::Poly ( poly  p,
ring  r 
)
inline

Definition at line 476 of file Poly.h.

476 :Base(p,r){
477
478 }

◆ Poly() [7/8]

Poly::Poly ( poly  p,
ring  r,
int   
)
inline

Definition at line 479 of file Poly.h.

479 :Base(p,r,0){
480 }

◆ Poly() [8/8]

Poly::Poly ( const std::vector< int > &  v,
ring  r = currRing 
)
inline

Definition at line 481 of file Poly.h.

481 :Base(*(new PolyImpl((poly) NULL,r))){
482 unsigned int i;
483 int s=v.size();
484 poly p=p_ISet(1,r);
485 for(i=0;i<v.size();i++){
486 pSetExp(p,i+1,v[i]);
487 }
488 pSetm(p);
489 ptr.reset(new PolyImpl(p,r));
490 }
int i
Definition: cfEzgcd.cc:132
const CanonicalForm int s
Definition: facAbsFact.cc:51
const Variable & v
< [in] a sqrfree bivariate poly
Definition: facBivar.h:39
poly p_ISet(long i, const ring r)
returns the poly representing the integer i
Definition: p_polys.cc:1297
#define pSetm(p)
Definition: polys.h:271
#define pSetExp(p, i, v)
Definition: polys.h:42

Member Function Documentation

◆ operator+=() [1/2]

Poly & Poly::operator+= ( const Base p)
inline

Definition at line 501 of file Poly.h.

501 {
502
503 ((Base&)*this)+=p;
504 return *this;
505 }

◆ operator+=() [2/2]

Poly & Poly::operator+= ( const Poly p)
inline

Definition at line 496 of file Poly.h.

496 {
497
498 ((Base&)*this)+=p;
499 return *this;
500 }

Friends And Related Function Documentation

◆ operator==

bool operator== ( const Poly p1,
const Poly p2 
)
friend

Definition at line 608 of file Poly.h.

608 {
609 ring r1=p1.getRing();
610 ring r2=p2.getRing();
611 if (r1!=r2) return false;
612 return p_EqualPolys(p1.ptr->p,p2.ptr->p,r1);
613}
ring getRing() const
Definition: Poly.h:427
BOOLEAN p_EqualPolys(poly p1, poly p2, const ring r)
Definition: p_polys.cc:4512

◆ PolyBase< POLY_VARIANT_MODUL, Vector, MyErrorHandler >

Definition at line 458 of file Poly.h.

◆ Vector

friend class Vector
friend

Definition at line 458 of file Poly.h.

Field Documentation

◆ changed

int Poly::changed

Definition at line 22 of file janet.h.

◆ history

poly Poly::history

Definition at line 19 of file janet.h.

◆ lead

poly Poly::lead

Definition at line 20 of file janet.h.

◆ mult

char* Poly::mult

Definition at line 21 of file janet.h.

◆ prolonged

int Poly::prolonged

Definition at line 23 of file janet.h.

◆ root

poly Poly::root

Definition at line 16 of file janet.h.

◆ root_b

kBucket_pt Poly::root_b

Definition at line 17 of file janet.h.

◆ root_l

int Poly::root_l

Definition at line 18 of file janet.h.


The documentation for this class was generated from the following files: