====== BigObject RationalFunction ====== //from application [[..:tropical|tropical]]//\\ \\ A rational function on a polyhedral complex. It can be described by giving its ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]'', a Cycle, and values on this domain - which are encoded in the properties ''[[..:tropical:RationalFunction#VERTEX_VALUES |VERTEX_VALUES]]'' and ''[[..:tropical:RationalFunction#LINEALITY_VALUES |LINEALITY_VALUES]]''. Alternatively, it can be defined by a tropical quotient of homogeneous tropical polynomials of the same degree i.e. by giving ''[[..:tropical:RationalFunction#NUMERATOR |NUMERATOR]]'' and ''[[..:tropical:RationalFunction#DENOMINATOR |DENOMINATOR]]''. A ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]'' can be defined additionally (though one should take care that both functions are actually piecewise affine linear on the cells), otherwise it will be computed as the common refinement of the domains of affine linearity of the two polynomials. Note: This has nothing to do with common's RationalFunction (which is univariate). If you want to access that type or use this type from another application, be sure to prepend the appropriate namespace identifier. ? Type Parameters: :: ''Addition'': Mode of tropical addition, must be ''[[..:common#Min |Min]]'' or ''[[..:common#Max |Max]]''. There is on purpose no default value for it. ===== Properties ===== ==== Defining morphisms and functions ==== These properties are used to define morphisms or rational functions on a Cycle. ---- {{anchor:denominator:}} ? **''DENOMINATOR''** :: When representing the function as a quotient of tropical polynomials, this is the denominator. Should be a homogeneous polynomial of the same degree as ''[[..:tropical:RationalFunction#NUMERATOR |NUMERATOR]]''. ? Type: :''[[..:common#Polynomial |Polynomial]]<[[..:common#TropicalNumber |TropicalNumber]],[[..:common#Int |Int]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:domain:}} ? **''DOMAIN''** :: This property describes the affine linearity domains of the function. I.e. the function is affine integral linear on each maximal polytope of ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]''. ? Type: :''[[..:tropical:Cycle |Cycle]]'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:is_globally_defined:}} ? **''IS_GLOBALLY_DEFINED''** :: This is TRUE, if the function is defined on the full projective torus by a ''[[..:tropical:RationalFunction#NUMERATOR |NUMERATOR]]'' and a ''[[..:tropical:RationalFunction#DENOMINATOR |DENOMINATOR]]''. The rules do not actually check for completeness of the ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]''. This property will be set to true, if the function is created only via ''[[..:tropical:RationalFunction#NUMERATOR |NUMERATOR]]'' and ''[[..:tropical:RationalFunction#DENOMINATOR |DENOMINATOR]]''. Otherwise it will be set to FALSE (or you can set it manually upon creation). ? Type: :''[[..:common#Bool |Bool]]'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:lineality_values:}} ? **''LINEALITY_VALUES''** :: The value at index i describes the function value of ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]''->LINEALITY_SPACE->row(i) ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Rational |Rational]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:numerator:}} ? **''NUMERATOR''** :: When representing the function as a quotient of tropical polynomials, this is the numerator. Should be a homogeneous polynomial of the same degree as ''[[..:tropical:RationalFunction#DENOMINATOR |DENOMINATOR]]''. ? Type: :''[[..:common#Polynomial |Polynomial]]<[[..:common#TropicalNumber |TropicalNumber]],[[..:common#Int |Int]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:power:}} ? **''POWER''** :: This is an internally used property that should not actually be set by the user. When creating a rational function with the ^-operator, this property is set to the exponent. The semantics is that when computing a divisor, this function should be applied so many times The usual application of this is a call to divisor($X, $f^4) or something similar. Warning: This property is not stored if the RationalFunction object is saved. Nor should be assumed to be preserved during any kind of arithmetic or restricting operation. ? Type: :''[[..:common#Int |Int]]'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:vertex_values:}} ? **''VERTEX_VALUES''** :: The value at index i describes the function value at ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]''->SEPARATED_VERTICES->row(i). More precisely, if the corresponding vertex is not a far ray, it describes its function value. If it is a directional ray, it describes the slope on that ray. ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Rational |Rational]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- ===== Methods ===== ==== Defining morphisms and functions ==== These methods are used to define morphisms or rational functions on a Cycle. ---- {{anchor:restrict:}} ? **''restrict([[..:tropical:Cycle |Cycle]] C)''** :: Computes the restriction of this RationalFunction on a given Cycle. The cycle need not be contained in the ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]'' of the function, the restriction will be computed on the intersection of the cycle and the ''[[..:tropical:RationalFunction#DOMAIN |DOMAIN]]''. ? Parameters: :: ''[[..:tropical:Cycle |Cycle]]'' ''C'': The new domain. ? Returns: :''[[..:tropical:RationalFunction |RationalFunction]]'' ? from extension: : [[:external_software|bundled:atint]] ---- ==== Visualization ==== These methods are for visualization. ---- {{anchor:visual:}} ? **''VISUAL()''** :: Visualizes the domain of the function. Works exactly as VISUAL of WeightedComplex, but has additional option ? Options: : :: ''[[..:common#String |String]]'' ''FunctionLabels'': If set to "show", textual function representations are diplayed on cones. False by default : option list ''[[..:tropical#Visual_Cycle_FunctionDecorations |Visual::Cycle::FunctionDecorations]]'' ? from extension: : [[:external_software|bundled:atint]] ----