Represents a JAS non-commutative polynomial ring: GenWordPolynomialRing.
Has a method to create non-commutative ideals. Note: watch your step: check that jruby does not reorder multiplication.
Word polynomial ring constructor.
# File examples/jas.rb, line 5367 def initialize(ringstr="",ring=nil) if ring == nil raise "parse of word polynomial rings not implemented" sr = StringReader.new( ringstr ); tok = RingFactoryTokenizer.new(sr); pfac = tok.nextPolynomialRing(); #tok = GenPolynomialTokenizer.new(sr); #@pset = tok.nextWordPolynomialSet(); @ring = pfac; else if ring.is_a? Ring @ring = ring.ring else @ring = ring; end end end
Create an element from a string or object.
# File examples/jas.rb, line 5438 def element(poly) if not poly.is_a? String begin if @ring == poly.ring return RingElem.new(poly); end rescue Exception => e # pass end poly = str(poly); end ii = WordPolyIdeal.new(self, "( " + poly + " )"); # not working list = ii.list; if list.size > 0 return RingElem.new( list[0] ); end end
Create a word ideal.
# File examples/jas.rb, line 5395 def ideal(ringstr="",list=nil) return WordPolyIdeal.new(self, ringstr, list); end
Get the one of the word polynomial ring.
# File examples/jas.rb, line 5402 def one() return RingElem.new( @ring.getONE() ); end
Get a random word polynomial.
# File examples/jas.rb, line 5416 def random(n=5) r = @ring.random(n); if @ring.coFac.isField() r = r.monic(); end return RingElem.new( r ); end
Generated with the Darkfish Rdoc Generator 2.