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