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 5535 def initialize(ring,polylist,ideal=nil,list=nil) 5536 if ring.is_a? Ring or ring.is_a? PolyRing 5537 ring = MultiVarPowerSeriesRing.new(ring.ring); 5538 elsif ring.is_a? MultiSeriesRing 5539 ring = ring.ring; 5540 end 5541 @ring = ring; 5542 #puts "ring = ", ring.toScript(); 5543 if ideal != nil 5544 polylist = ideal.pset.list; 5545 end 5546 if list == nil 5547 @polylist = rbarray2arraylist( polylist.map { |a| a.elem } ); 5548 #puts "polylist = ", @polylist; 5549 @list = @ring.fromPolynomial(@polylist); 5550 else 5551 @polylist = nil; 5552 @list = rbarray2arraylist( list.map { |a| a.elem } ); 5553 end 5554 end
Public Instance Methods
STD(trunc=nil)
click to toggle source
Compute a standard base.
# File examples/jas.rb 5566 def STD(trunc=nil) 5567 pr = @ring; 5568 if trunc != nil 5569 pr.setTruncate(trunc); 5570 end 5571 #puts "pr = ", pr.toScript(); 5572 ff = @list; 5573 #puts "ff = ", ff; 5574 tm = StandardBaseSeq.new(); 5575 t = System.currentTimeMillis(); 5576 ss = tm.STD(ff); 5577 t = System.currentTimeMillis() - t; 5578 puts "sequential standard base executed in #{t} ms\n"; 5579 #Sp = [ RingElem.new(a.asPolynomial()) for a in S ]; 5580 sp = ss.map { |a| RingElem.new(a) }; 5581 #return sp; 5582 return PSIdeal.new(@ring,nil,nil,sp); 5583 end
to_s()
click to toggle source
Create a string representation.
# File examples/jas.rb 5559 def to_s() 5560 return "( " + @list.map { |a| a.toScript() }.join(", ") + " )"; 5561 end