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 5559 def initialize(ring,polylist,ideal=nil,list=nil) 5560 if ring.is_a? Ring or ring.is_a? PolyRing 5561 ring = MultiVarPowerSeriesRing.new(ring.ring); 5562 elsif ring.is_a? MultiSeriesRing 5563 ring = ring.ring; 5564 end 5565 @ring = ring; 5566 #puts "ring = ", ring.toScript(); 5567 if ideal != nil 5568 polylist = ideal.pset.list; 5569 end 5570 if list == nil 5571 @polylist = rbarray2arraylist( polylist.map { |a| a.elem } ); 5572 #puts "polylist = ", @polylist; 5573 @list = @ring.fromPolynomial(@polylist); 5574 else 5575 @polylist = nil; 5576 @list = rbarray2arraylist( list.map { |a| a.elem } ); 5577 end 5578 end
Public Instance Methods
STD(trunc=nil)
click to toggle source
Compute a standard base.
# File examples/jas.rb 5590 def STD(trunc=nil) 5591 pr = @ring; 5592 if trunc != nil 5593 pr.setTruncate(trunc); 5594 end 5595 #puts "pr = ", pr.toScript(); 5596 ff = @list; 5597 #puts "ff = ", ff; 5598 tm = StandardBaseSeq.new(); 5599 t = System.currentTimeMillis(); 5600 ss = tm.STD(ff); 5601 t = System.currentTimeMillis() - t; 5602 puts "sequential standard base executed in #{t} ms\n"; 5603 #Sp = [ RingElem.new(a.asPolynomial()) for a in S ]; 5604 sp = ss.map { |a| RingElem.new(a) }; 5605 #return sp; 5606 return PSIdeal.new(@ring,nil,nil,sp); 5607 end
to_s()
click to toggle source
Create a string representation.
# File examples/jas.rb 5583 def to_s() 5584 return "( " + @list.map { |a| a.toScript() }.join(", ") + " )"; 5585 end