|
D.15.2.22 difformIsSmaller
Procedure from library difform.lib (see difform_lib).
- Usage:
- df < dg OR difformIsSmaller(df,dg,#); df,dg difform, # list
- Return:
- - 1, if df is smaller than dg with respect to the monomial ordering in the differential algebra - 0, otherwise
- 1, if df is smaller than dg with respect to a given monomial ordering on the generators/ringvariables - 0, otherwise
- Note:
- the procedure uses diffAlgebraChangeOrd to change the order on the differential algebra, therefore
an ordering is defined via the following pattern:
- #[i] = 'gen' defines the ordering on the generators dx_i
- #[i+1] must then be a valid monomial ordering as string
- #[i+2] an optional weight vector
- #[i] = 'ringvar' defines the ordering on the ringvariables
- #[i+1] must then be a valid monomial ordering as string
- #[i+2] an optional weight vector
Example:
| LIB "difform.lib";
ring R = 0,(x,y,z),lp;
diffAlgebra();
==> // The differential algebra Omega_R was constructed and the differential \
forms dDx, dDy, dDz, dx, dy, dz are available.
////////////////////////////
// With standard ordering //
////////////////////////////
dz < dy;
==> 1
x*dz < y*dz;
==> 0
y2*z2*dy < x;
==> 0
dx*dz < dy;
==> 0
///////////////////////////
// With changed ordering //
///////////////////////////
difformIsSmaller(dz,dy,"gen","ls");
==> 0
difformIsSmaller(x*dz,y*dz,"ringvar","ls");
==> 1
difformIsSmaller(y2*z2*dy,x,"gen","wp",intvec(1,-1,1));
==> 1
difformIsSmaller(dx*dz,dy,"gen","ws",intvec(1,-1,-1));
==> 1
kill Omega_R,dx,dy,dz;
| See also:
diffAlgebraChangeOrd;
difformIsBigger.
|