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