For the past 30 yrs I should have been nagging the computer algebra community to add a huge-bang-for-the-buck feature to each of those many algorithms (Risch integration, indefinite summation, Berlekamp factoring, various ODE techniques) which internally generate and solve linear systems. Namely, provide a way of designating some of the input symbols as constrainable, in order to get a closed integral, sum, factorization, etc.) I think from the outset Macsyma's NUSUM had an undocumented list named %CONSTRAINABLES, and it smashes the list %CONSTRAINTS with the results of its internal call to SOLVE. A fairly powerful application is my Macsyma function CONTIGUATE, which takes an arbitrary list of contiguous hypergeometric functions in sum or pFq form, and finds a contiguity relation if there is one, simply by lumping all the summands times undetermined coefficients. Surprisingly(?), this can produce inhomogeneous relations, e.g., HypergeometricPFQRegularized[{1}, {a, 1 + b}, z] + (-2 + a - b) HypergeometricPFQRegularized[{1}, {a, 2 + b}, z] - z HypergeometricPFQRegularized[{1}, {a, 3 + b}, z] == ((2 + b)^(-(3/2) - b) E^(2 + b))/(Sqrt[2 \[Pi]] Gamma[-1 + a]) FunctionExpand and FullSimplify shrug at this, but FindInstance claims to refute it with a crazy triad of Gaussian rationals and some choice of exponential branch cuts. But when I stipulate Reals it resumes shrugging. Conjoining just Element[a,Reals] runs forever(?). --rwg PVC! Yanqui no!