# ConvertToCone -- specifies whether to convert image to a cone

## Synopsis

• Usage:
numericalHilbertFunction(..., ConvertToCone => false)

## Description

This option specifies whether to replace the image $F(V(I))$ with the cone over $F(V(I))$. If true, then internally the target variety is treated as the affine cone over its projective closure - to be precise, the map $F$ is replaced with $t[F, 1]$, where $t$ is a new variable. The default value is false.

Since numericalHilbertFunction works by interpolating monomials (and thus only finds graded relations in the ideal of the image), this option is necessary when the map is not homogeneous. The following example demonstrates this for an affine rational curve.

 i1 : R = CC[t] o1 = R o1 : PolynomialRing i2 : F = {t, t^4, t^6} 4 6 o2 = {t, t , t } o2 : List i3 : I = ideal 0_R o3 = ideal 0 o3 : Ideal of R i4 : (numericalHilbertFunction(F, I, 3, Verbose => false)).hilbertFunctionValue == 0 -- warning: experimental computation over inexact field begun -- results not reliable (one warning given per session) o4 = true i5 : T = numericalHilbertFunction(F, I, 3, ConvertToCone => true) Sampling image points ... -- used .0140316 seconds Creating interpolation matrix ... -- used .0558759 seconds Performing normalization preconditioning ... -- used .00472283 seconds Computing numerical kernel ... -- used .000536254 seconds o5 = a numerical interpolation table, indicating the space of degree 3 forms in the ideal of the image has dimension 3 o5 : NumericalInterpolationTable i6 : extractImageEquations(T, AttemptZZ => true) o6 = | -y_0^2y_2+y_1^2y_3 -y_1^3+y_2^2y_3 -y_0^2y_1+y_2y_3^2 | 1 3 o6 : Matrix (CC [y ..y ]) <--- (CC [y ..y ]) 53 0 3 53 0 3