|  |  7.10.6.31 ncrepGetRegularMinimal Procedure from libraryncrat.lib(see  ncrat_lib).
 
Example:Usage:
ncrep q = ncrepGetRegularMinimal(f, vars, point);
Return:
q is a representation of f with
minimal dimension
 
Assumption:
f is regular at point, i.e.,
f(point) has to be defined
 
Note:
list vars = list(x1, ..., xn) has to consist
exactly of the nc variables occurring in f and
 list point = (p1, ..., pn) of scalars such that
 f(point) is defined
 
 |  | LIB "ncrat.lib";
// We want to prove the Hua's identity, telling that for two
// invertible elements x,y from a division ring, one has
// inv(x+x*inv(y)*x)+inv(x+y) = inv(x)
// where inv(t) stands for the two-sided inverse of t
ncInit(list("x", "y"));
ncrat f = ncratFromString("inv(x+x*inv(y)*x)+inv(x+y)-inv(x)");
print(f);
==> inv(x+x*inv(y)*x)+inv(x+y)-inv(x)
ncrep r = ncrepGet(f);
ncrepDim(r);
==> 18
ncrep s = ncrepGetRegularMinimal(f, list(x, y), list(1, 1));
ncrepDim(s);
==> 0
print(s);
==> lvec=
==> 0
==> 
==> mat=
==> 1
==> 
==> rvec=
==> 0
// since s represents the zero element, Hua's identity holds.
 | 
 
 |