class JAS::PSIdeal
Represents a JAS power series ideal.
Method for Standard bases.
Attributes
list[R]
the Java powerseries ring, powerseries list
ring[R]
the Java powerseries ring, powerseries list
Public Class Methods
new(ring,polylist,ideal=nil,list=nil)
click to toggle source
PSIdeal constructor.
# File examples/jas.rb 5318 def initialize(ring,polylist,ideal=nil,list=nil) 5319 if ring.is_a? Ring or ring.is_a? PolyRing 5320 ring = MultiVarPowerSeriesRing.new(ring.ring); 5321 elsif ring.is_a? MultiSeriesRing 5322 ring = ring.ring; 5323 end 5324 @ring = ring; 5325 #puts "ring = ", ring.toScript(); 5326 if ideal != nil 5327 polylist = ideal.pset.list; 5328 end 5329 if list == nil 5330 @polylist = rbarray2arraylist( polylist.map { |a| a.elem } ); 5331 #puts "polylist = ", @polylist; 5332 @list = @ring.fromPolynomial(@polylist); 5333 else 5334 @polylist = nil; 5335 @list = rbarray2arraylist( list.map { |a| a.elem } ); 5336 end 5337 end
Public Instance Methods
STD(trunc=nil)
click to toggle source
Compute a standard base.
# File examples/jas.rb 5349 def STD(trunc=nil) 5350 pr = @ring; 5351 if trunc != nil 5352 pr.setTruncate(trunc); 5353 end 5354 #puts "pr = ", pr.toScript(); 5355 ff = @list; 5356 #puts "ff = ", ff; 5357 tm = StandardBaseSeq.new(); 5358 t = System.currentTimeMillis(); 5359 ss = tm.STD(ff); 5360 t = System.currentTimeMillis() - t; 5361 puts "sequential standard base executed in #{t} ms\n"; 5362 #Sp = [ RingElem.new(a.asPolynomial()) for a in S ]; 5363 sp = ss.map { |a| RingElem.new(a) }; 5364 #return sp; 5365 return PSIdeal.new(@ring,nil,nil,sp); 5366 end
to_s()
click to toggle source
Create a string representation.
# File examples/jas.rb 5342 def to_s() 5343 return "( " + @list.map { |a| a.toScript() }.join(", ") + " )"; 5344 end