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, line 5534 def initialize(base) if base.is_a? RingElem #factory = base.elem; factory = base.ring; else factory = base; end begin factory = factory.factory(); rescue #pass end puts "extension field factory: " + factory.toScript(); # + " :: " + factory.toString(); if factory.is_a? ExtensionFieldBuilder @builder = factory; else @builder = ExtensionFieldBuilder.new(factory); end end
Public Instance Methods
build()
click to toggle source
Get extension field tower.
# File examples/jas.rb, line 5605 def build() rf = @builder.build(); if rf.is_a? GenPolynomialRing return PolyRing.new(rf.coFac,rf.getVars(),rf.tord); else return RingElem.new(rf.getZERO()); end 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, line 5589 def complexExtend(vars,algebraic,rectangle) ef = @builder.complexAlgebraicExtension(vars,algebraic,rectangle); return EF.new(ef.build()); 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.
# File examples/jas.rb, line 5567 def extend(vars,algebraic=nil) if algebraic == nil ef = @builder.transcendentExtension(vars); else ef = @builder.algebraicExtension(vars,algebraic); end return EF.new(ef.build()); end
polynomial(vars)
click to toggle source
Create an polynomial ring extension.
# File examples/jas.rb, line 5597 def polynomial(vars) ef = @builder.polynomialExtension(vars); return EF.new(ef.build()); 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, line 5580 def realExtend(vars,algebraic,interval) ef = @builder.realAlgebraicExtension(vars,algebraic,interval); return EF.new(ef.build()); end
to_s()
click to toggle source
Create a string representation.
# File examples/jas.rb, line 5557 def to_s() return @builder.toScript(); #return @builder.toString(); end