class JAS::EF

Extension field builder. Construction of extension field towers according to then builder pattern.

Attributes

builder[R]

the Java extension field builder

Public Class Methods

new(base) click to toggle source

Constructor to set base field.

     # File examples/jas.rb
5587 def initialize(base)
5588     if base.is_a? RingElem
5589         #factory = base.elem;
5590         factory = base.ring;
5591     else
5592         factory = base;
5593     end
5594     begin
5595         factory = factory.factory();
5596     rescue
5597         #pass
5598     end
5599     puts "extension field factory: " + factory.toScript(); # + " :: " + factory.toString();
5600     if factory.is_a? ExtensionFieldBuilder
5601         @builder = factory;
5602     else
5603         @builder = ExtensionFieldBuilder.new(factory);
5604     end
5605 end

Public Instance Methods

build() click to toggle source

Get extension field tower.

     # File examples/jas.rb
5658 def build()
5659     rf = @builder.build();
5660     if rf.is_a? GenPolynomialRing
5661         return PolyRing.new(rf.coFac,rf.getVars(),rf.tord);
5662     else
5663         return RingElem.new(rf.getZERO());
5664     end
5665 end
complexExtend(vars,algebraic,rectangle) click to toggle source

Create a complex extension field. Construct a complex algebraic extension field with an isolating rectangle for a complex root.

     # File examples/jas.rb
5642 def complexExtend(vars,algebraic,rectangle)
5643     ef = @builder.complexAlgebraicExtension(vars,algebraic,rectangle);
5644     return EF.new(ef.build());
5645 end
extend(vars,algebraic=nil) click to toggle source

Create an extension field. If algebraic is given as string expression, then an algebraic extension field is constructed, else a transcendental extension field is constructed.

end

     # File examples/jas.rb
5620 def extend(vars,algebraic=nil) 
5621     if algebraic == nil
5622         ef = @builder.transcendentExtension(vars);
5623     else
5624         ef = @builder.algebraicExtension(vars,algebraic);
5625     end
5626     return EF.new(ef.build());
5627 end
polynomial(vars) click to toggle source

Create an polynomial ring extension.

     # File examples/jas.rb
5650 def polynomial(vars)
5651     ef = @builder.polynomialExtension(vars);
5652     return EF.new(ef.build());
5653 end
realExtend(vars,algebraic,interval) click to toggle source

Create a real extension field. Construct a real algebraic extension field with an isolating interval for a real root.

     # File examples/jas.rb
5633 def realExtend(vars,algebraic,interval)
5634     ef = @builder.realAlgebraicExtension(vars,algebraic,interval);
5635     return EF.new(ef.build());
5636 end
to_s() click to toggle source

Create a string representation.

     # File examples/jas.rb
5610 def to_s()
5611     return @builder.toScript(); 
5612     #return @builder.toString();
5613 end