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 5371 def initialize(ring,polylist,ideal=nil,list=nil) 5372 if ring.is_a? Ring or ring.is_a? PolyRing 5373 ring = MultiVarPowerSeriesRing.new(ring.ring); 5374 elsif ring.is_a? MultiSeriesRing 5375 ring = ring.ring; 5376 end 5377 @ring = ring; 5378 #puts "ring = ", ring.toScript(); 5379 if ideal != nil 5380 polylist = ideal.pset.list; 5381 end 5382 if list == nil 5383 @polylist = rbarray2arraylist( polylist.map { |a| a.elem } ); 5384 #puts "polylist = ", @polylist; 5385 @list = @ring.fromPolynomial(@polylist); 5386 else 5387 @polylist = nil; 5388 @list = rbarray2arraylist( list.map { |a| a.elem } ); 5389 end 5390 end
Public Instance Methods
STD(trunc=nil)
click to toggle source
Compute a standard base.
# File examples/jas.rb 5402 def STD(trunc=nil) 5403 pr = @ring; 5404 if trunc != nil 5405 pr.setTruncate(trunc); 5406 end 5407 #puts "pr = ", pr.toScript(); 5408 ff = @list; 5409 #puts "ff = ", ff; 5410 tm = StandardBaseSeq.new(); 5411 t = System.currentTimeMillis(); 5412 ss = tm.STD(ff); 5413 t = System.currentTimeMillis() - t; 5414 puts "sequential standard base executed in #{t} ms\n"; 5415 #Sp = [ RingElem.new(a.asPolynomial()) for a in S ]; 5416 sp = ss.map { |a| RingElem.new(a) }; 5417 #return sp; 5418 return PSIdeal.new(@ring,nil,nil,sp); 5419 end
to_s()
click to toggle source
Create a string representation.
# File examples/jas.rb 5395 def to_s() 5396 return "( " + @list.map { |a| a.toScript() }.join(", ") + " )"; 5397 end