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
5640 def initialize(base)
5641     if base.is_a? RingElem
5642         #factory = base.elem;
5643         factory = base.ring;
5644     else
5645         factory = base;
5646     end
5647     begin
5648         factory = factory.factory();
5649     rescue
5650         #pass
5651     end
5652     puts "extension field factory: " + factory.toScript(); # + " :: " + factory.toString();
5653     if factory.is_a? ExtensionFieldBuilder
5654         @builder = factory;
5655     else
5656         @builder = ExtensionFieldBuilder.new(factory);
5657     end
5658 end

Public Instance Methods

build() click to toggle source

Get extension field tower.

     # File examples/jas.rb
5711 def build()
5712     rf = @builder.build();
5713     if rf.is_a? GenPolynomialRing
5714         return PolyRing.new(rf.coFac,rf.getVars(),rf.tord);
5715     else
5716         return RingElem.new(rf.getZERO());
5717     end
5718 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
5695 def complexExtend(vars,algebraic,rectangle)
5696     ef = @builder.complexAlgebraicExtension(vars,algebraic,rectangle);
5697     return EF.new(ef.build());
5698 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
5673 def extend(vars,algebraic=nil) 
5674     if algebraic == nil
5675         ef = @builder.transcendentExtension(vars);
5676     else
5677         ef = @builder.algebraicExtension(vars,algebraic);
5678     end
5679     return EF.new(ef.build());
5680 end
polynomial(vars) click to toggle source

Create an polynomial ring extension.

     # File examples/jas.rb
5703 def polynomial(vars)
5704     ef = @builder.polynomialExtension(vars);
5705     return EF.new(ef.build());
5706 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
5686 def realExtend(vars,algebraic,interval)
5687     ef = @builder.realAlgebraicExtension(vars,algebraic,interval);
5688     return EF.new(ef.build());
5689 end
to_s() click to toggle source

Create a string representation.

     # File examples/jas.rb
5663 def to_s()
5664     return @builder.toScript(); 
5665     #return @builder.toString();
5666 end