# Singular

#### D.15.12.13 difformToString

Procedure from library `difform.lib` (see difform_lib).

Usage:
difformToString(df,#); df difform,# list

Return:
df as a string, sorted by a given ordering on the generators (standard: the ordering chosen for the differential algebra)

Remarks:
The differential form is decomposed via difformCoef, the coefficient list is sorted and then the string is built as concatenation of coefficients and generators

Note:
to get a string, respecting a certain monomial ordering on the generators, use: - #[1] = 'gen'
- #[2]: a monomial ordering as string
- #[3]: an optional weight vector

Example:
 ```LIB "difform.lib"; ring R = 0,(x,y,z,a,b),ds; diffAlgebra(); ==> // The differential algebra Omega_R was constructed and the differential \ forms dx, dy, dz, da, db are available. difform df = 3*x*dx -2*db + 24*a*dy - y*dx*dy*db + 12*dx*dy*dz - dz*dy*da*db + 3 + 12*x*dx - 1/77*da*dx; ////////////////////////////////////////////////////////////////////////////////// // String sorted with respect to the monomial order on the differential algebra // ////////////////////////////////////////////////////////////////////////////////// string df_str = difformToString(df); print(df_str); ==> dy*dz*da*db+12*dx*dy*dz+(-y)*dx*dy*db+1/77*dx*da+15x*dx+24a*dy+(-2)*db+3 ///////////////////////////////////////////////////////// // String sorted with respect to the weighted order wp // ///////////////////////////////////////////////////////// df_str = difformToString(df,"gen","wp",intvec(-1,-1,-1,1,1)); print(df_str); ==> (-2)*db+dy*dz*da*db+1/77*dx*da+3+(-y)*dx*dy*db+15x*dx+24a*dy+12*dx*dy*dz kill Omega_R,df,df_str,dx,dy,dz,da,db; ```