示例#1
0
 def __init__(self,modstr="",ring=None):
     '''Solvable module constructor.
     '''
     if ring == None:
        sr = StringReader( modstr );
        tok = GenPolynomialTokenizer(sr);
        self.mset = tok.nextSolvableSubModuleSet();
     else:
        self.mset = ModuleList(ring,None);
     self.ring = self.mset.ring;
示例#2
0
 def __init__(self,ring,ringstr="",list=None):
     '''Constructor for an ideal in a solvable polynomial ring.
     '''
     self.ring = ring;
     if list == None:
        sr = StringReader( ringstr );
        tok = GenPolynomialTokenizer(ring.ring,sr);
        self.list = tok.nextSolvablePolynomialList();
     else:
        self.list = pylist2arraylist(list);
     self.pset = OrderedPolynomialList(ring.ring,self.list);
示例#3
0
 def __init__(self,ringstr="",ring=None):
     '''Ring constructor.
     '''
     if ring == None:
        sr = StringReader( ringstr );
        tok = GenPolynomialTokenizer(sr);
        self.pset = tok.nextPolynomialSet();
        self.ring = self.pset.ring;
     else:
        self.ring = ring;
     self.engine = GCDFactory.getProxy(self.ring.coFac);
示例#4
0
 def __init__(self,ring,polystr="",list=None):
     '''Ideal constructor.
     '''
     self.ring = ring;
     if list == None:
        sr = StringReader( polystr );
        tok = GenPolynomialTokenizer(ring.pset.ring,sr);
        self.list = tok.nextPolynomialList();
     else:
        self.list = pylist2arraylist(list);
     self.pset = OrderedPolynomialList(ring.ring,self.list);
示例#5
0
 def __init__(self,ringstr="",ring=None):
     '''Solvable polynomial ring constructor.
     '''
     if ring == None:
        sr = StringReader( ringstr );
        tok = GenPolynomialTokenizer(sr);
        self.pset = tok.nextSolvablePolynomialSet();
        self.ring = self.pset.ring;
     else:
        self.ring = ring;
     if not self.ring.isAssociative():
        print "warning: ring is not associative";
示例#6
0
 def __init__(self,module,modstr="",list=None):
     '''Constructor for sub-module over a solvable polynomial ring.
     '''
     self.module = module;
     if list == None:
        sr = StringReader( modstr );
        tok = GenPolynomialTokenizer(module.ring,sr);
        self.list = tok.nextSolvableSubModuleList();
     else:
        self.list = pylist2arraylist(list);
     self.mset = OrderedModuleList(module.ring,self.list);
     self.cols = self.mset.cols;
     self.rows = self.mset.rows;
示例#7
0
 def __init__(self,ringstr="",truncate=None,ring=None,cofac=None,name="z"):
     '''Ring constructor.
     '''
     if ring == None:
         if len(ringstr) > 0:
             sr = StringReader( ringstr );
             tok = GenPolynomialTokenizer(sr);
             pset = tok.nextPolynomialSet();
             ring = pset.ring;
             vname = ring.vars;
             name = vname[0];
             cofac = ring.coFac;
         if isinstance(cofac,RingElem):
             cofac = cofac.elem;
         if truncate == None:
             self.ring = UnivPowerSeriesRing(cofac,name);
         else:
             self.ring = UnivPowerSeriesRing(cofac,truncate,name);
     else:
        self.ring = ring;