# Singular

#### 7.10.2.3 fullSerreRelations

Procedure from library `fpalgebras.lib` (see fpalgebras_lib).

Usage:
fullSerreRelations(A,N,C,P,d); A an intmat, N,C,P ideals, d an int

Return:
ring (and ideal)

Purpose:
compute the inhomogeneous Serre's relations associated to A in given variable names

Assume:
three ideals in the input are of the same sizes and contain merely variables which are interpreted as follows: N resp. P stand for negative resp. positive roots, C stand for Cartan elements. d is the degree bound for letterplace ring, which will be returned.
The matrix A is a generalized Cartan matrix with integer entries The result is the ideal called 'fsRel' in the returned ring.

Example:
 ```LIB "fpalgebras.lib"; intmat A[2][2] = 2, -1, -1, 2; // A_2 = sl_3 Cartan matrix ring r = 0,(f1,f2,h1,h2,e1,e2),dp; ideal negroots = f1,f2; ideal cartans = h1,h2; ideal posroots = e1,e2; int uptodeg = 5; def RS = fullSerreRelations(A,negroots,cartans,posroots,uptodeg); setring RS; fsRel; ==> fsRel[1]=f2*f2*f1-2*f2*f1*f2+f1*f2*f2 ==> fsRel[2]=f2*f1*f1-2*f1*f2*f1+f1*f1*f2 ==> fsRel[3]=e2*e2*e1-2*e2*e1*e2+e1*e2*e2 ==> fsRel[4]=e2*e1*e1-2*e1*e2*e1+e1*e1*e2 ==> fsRel[5]=e1*f2-f2*e1 ==> fsRel[6]=e2*f1-f1*e2 ==> fsRel[7]=e1*f1-f1*e1-h1 ==> fsRel[8]=e2*f2-f2*e2-h2 ==> fsRel[9]=h2*h1-h1*h2 ==> fsRel[10]=e1*h1-h1*e1+2*e1 ==> fsRel[11]=h1*f1-f1*h1+2*f1 ==> fsRel[12]=e2*h1-h1*e2-e2 ==> fsRel[13]=h1*f2-f2*h1-f2 ==> fsRel[14]=e1*h2-h2*e1-e1 ==> fsRel[15]=h2*f1-f1*h2-f1 ==> fsRel[16]=e2*h2-h2*e2+2*e2 ==> fsRel[17]=h2*f2-f2*h2+2*f2 ```