# Singular          #### D.8.7.1 signcnd

Procedure from library `signcond.lib` (see signcond_lib).

Usage:
signcnd(P,I); ideal P,I

Return:
list: the sign conditions realized by the polynomials of P on V(I). The output of signcnd is a list of two lists. Both lists have the same length. This length is the number of sign conditions realized by the polynomials of P on the set V(i).
Each element of the first list indicates a sign condition of the polynomials of P.
Each element of the second list indicates how many elements of V(I) give rise to the sign condition expressed by the same position on the first list.
See the example for further explanations of the output.

Assume:
I is a Groebner basis.

Note:
The procedure psigncnd performs some pretty printing of this output.

Example:
 ```LIB "signcond.lib"; ring r = 0,(x,y),dp; ideal i = (x-2)*(x+3)*x,y*(y-1); ideal P = x,y; list l = signcnd(P,i); size(l); // = the number of sign conditions of P on V(i) ==> 6 //Each element of l indicates a sign condition of the polynomials of P. //The following means P > 0, P = 0: l; ==> : ==> 1 ==> : ==> 0 //Each element of l indicates how many elements of V(I) give rise to //the sign condition expressed by the same position on the first list. //The following means that exactly 1 element of V(I) gives rise to the //condition P > 0, P = 0: l; ==> 1 ``` 