# Singular

#### D.5.2.5 Nonhyp

Procedure from library `resbinomial.lib` (see resbinomial_lib).

Compute:
The "ideal" generated by the non hyperbolic generators of J

Return:
lists with the following information
newcoef,newJ: coefficients and exponents of the non hyperbolic generators totalhyp,totalgen: coefficients and exponents of the hyperbolic generators flaglist: new list saying status of variables

Note:
the basering r is supposed to be a polynomial ring K[x,y], in fact, we work in a localization of K[x,y], of type K[x,y]_y with y invertible variables.

Example:
 ```LIB "resbinomial.lib"; ring r = 0,(x(1),y(2),x(3),y(4),x(5..7)),dp; list flag=identifyvar(); // List giving flag=1 to invertible variables: y(2),y(4) ideal J=x(1)^3-x(3)^2*y(4)^2,x(1)*x(7)*y(2)-x(6)^3*x(5)*y(4)^3,1-x(5)^2*y(2)^2; list L=data(J,3,7); list L2=maxEord(L[1],L[2],3,7,flag); L2[1]; // Maximum E-order ==> 0 list New=Nonhyp(L[1],L[2],3,7,flag,L2[2]); New[1]; // Coefficients of the non hyperbolic part ==> [1]: ==> [1]: ==> -1 ==> [2]: ==> 1 ==> [2]: ==> [1]: ==> -1 ==> [2]: ==> 1 New[2]; // Exponents of the non hyperbolic part ==> [1]: ==> [1]: ==> [1]: ==> 0 ==> [2]: ==> 0 ==> [3]: ==> 2 ==> [4]: ==> 2 ==> [5]: ==> 0 ==> [6]: ==> 0 ==> [7]: ==> 0 ==> [2]: ==> [1]: ==> 3 ==> [2]: ==> 0 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 0 ==> [7]: ==> 0 ==> [2]: ==> [1]: ==> [1]: ==> 0 ==> [2]: ==> 0 ==> [3]: ==> 0 ==> [4]: ==> 3 ==> [5]: ==> 1 ==> [6]: ==> 3 ==> [7]: ==> 0 ==> [2]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 0 ==> [7]: ==> 1 New[3]; // Coefficients of the hyperbolic part ==> [1]: ==> [1]: ==> -1 ==> [2]: ==> 1 New[4]; // New hyperbolic equations ==> [1]: ==> [1]: ==> [1]: ==> 0 ==> [2]: ==> 2 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 2 ==> [6]: ==> 0 ==> [7]: ==> 0 ==> [2]: ==> [1]: ==> 0 ==> [2]: ==> 0 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 0 ==> [7]: ==> 0 New[5]; // New list giving flag=1 to invertible variables: y(2),y(4),y(5) ==> [1]: ==> 0 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 1 ==> [5]: ==> 1 ==> [6]: ==> 0 ==> [7]: ==> 0 ring r = 0,(x(1..4)),dp; ==> // ** redefining r ** list flag=identifyvar(); ==> // ** redefining flag ** ideal J=1-x(1)^5*x(2)^2*x(3)^5, x(1)^2*x(3)^3+x(1)^4*x(4)^6; list L=data(J,2,4); list L2=maxEord(L[1],L[2],2,4,flag); L2[1]; // Maximum E-order ==> 0 list New=Nonhyp(L[1],L[2],2,4,flag,L2[2]); New; ==> [1]: ==> empty list ==> [2]: ==> empty list ==> [3]: ==> [1]: ==> [1]: ==> -1 ==> [2]: ==> 1 ==> [2]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [4]: ==> [1]: ==> [1]: ==> [1]: ==> 5 ==> [2]: ==> 2 ==> [3]: ==> 5 ==> [4]: ==> 0 ==> [2]: ==> [1]: ==> 0 ==> [2]: ==> 0 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [2]: ==> [1]: ==> [1]: ==> 4 ==> [2]: ==> 0 ==> [3]: ==> 0 ==> [4]: ==> 6 ==> [2]: ==> [1]: ==> 2 ==> [2]: ==> 0 ==> [3]: ==> 3 ==> [4]: ==> 0 ==> [5]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 1 ==> [4]: ==> 1 ```