test the solution of a linear functional system
test if solutions of a linear functional system are equivalent
IsSolution(sol, sys, vars)
IsSolution(sol, A, b, x, case)
IsSolution(sol, A, x, case)
AreSameSolution(sol, sol1, x)
solution to be checked
list of equations; linear functional system
list of function variables such as [y1(x), y2(x), ...]; variables to solve for
Matrix with rational elements
Vector with rational elements
the independent variable, for example x
name indicating the case of the system; one of 'differential', 'difference', or 'qdifference'
solution to be compared with
The IsSolution function returns true if sys is a linear functional system of equations with polynomial coefficients and sol is the solution of the linear functional system. Otherwise, the quasidegrees (see below) of the results of substitution are returned.
The system parameter is entered either in list form (a list of equations sys and a list of function variables vars to solve for), or in matrix form (Matrix A, Vector b, and the independent variable x, where the Vector b is optional).
The matrix form specifies the system Ly⁡x=Ay⁡x+b, where L is the operator (either differential, difference, or q-difference), y⁡x is the vector of the functions to solve for, A is a rational matrix, and b is a rational vector (right-hand side).
For the matrix from of the calling sequence, the case of the system must be specified as one of 'differential', 'difference', or 'qdifference'. If b is not specified, the system is assumed to be homogeneous.
The function IsSolution substitutes sol for the function variables and checks the result. If the given solutions is correct then 'true' is returned. Otherwise, for each component of the result of the substitution is computed and its quasidegree is returned. If the component is a polynomial then the quasidegree is the ordinary degree of the polynomial. If the component is in the form xλ⁢p⁡x where p⁡x is a polynomial and lamdba is an algebraic number then the quasidegree is equal to λ+degree⁡p⁡x,x. If the component is rational then the quasidegree is equal to the difference of the quasidegree of the numerator and the quasidegree of the denominator. If the component is a polynomial in ln⁡x (as a result of the substitution of a regular solution) then the quasidegree is the list of quasidegrees of the coefficients in respect of ln⁡x. Otherwise the quasidegree is undefined and FAIL is returned.
The AreSameSolution function returns true if the solutions sol and sol1 are equivalent. Otherwise, false is returned.
The function checks that the numbers of linear independent solutions in sol and sol1 are equal, as well as the degrees in x.
The error conditions associated with these functions are the same as those which are generated by LinearFunctionalSystems[Properties].
This function is part of the LinearFunctionalSystems package, and so it can be used in the form IsSolution(..) only after executing the command with(LinearFunctionalSystems). However, it can always be accessed through the long form of the command by using the form LinearFunctionalSystems[IsSolution](..).
sys ≔ ⅆⅆx⁢y1⁡x−y2⁡x,ⅆⅆx⁢y2⁡x−y3⁡x−y4⁡x,ⅆⅆx⁢y3⁡x−y5⁡x,ⅆⅆx⁢y4⁡x−2⁢y1⁡x−2⁢x⁢y2⁡x−y5⁡x,ⅆⅆx⁢y5⁡x−x2⁢y1⁡x−2⁢x⁢y3⁡x−y6⁡x,ⅆⅆx⁢y6⁡x−x2⁢y2⁡x+2⁢y3⁡x:
vars ≔ y1⁡x,y2⁡x,y3⁡x,y4⁡x,y5⁡x,y6⁡x:
sol ≔ PolynomialSolution⁡sys,vars
sol ≔ x⁢_c3+_c2,_c3,−x2⁢_c3−x⁢_c2+_c1,x2⁢_c3+x⁢_c2−_c1,−2⁢x⁢_c3−_c2,x3⁢_c3+x2⁢_c2−2⁢x⁢_c1−2⁢_c3
sol1 ≔ −_c1+x⁢_c3,_c3,−_c2+x⁢_c1−x2⁢_c3,_c2−x⁢_c1+x2⁢_c3,_c1−2⁢x⁢_c3,−2⁢_c3+2⁢x⁢_c2−x2⁢_c1+x3⁢_c3
sol1 ≔ x⁢_c3−_c1,_c3,−x2⁢_c3+x⁢_c1−_c2,x2⁢_c3−x⁢_c1+_c2,−2⁢x⁢_c3+_c1,x3⁢_c3−x2⁢_c1+2⁢x⁢_c2−2⁢_c3
sol1 ≔ 1
sol2 ≔ sol1_c1=0|sol1_c1=0
sol2 ≔ x⁢_c3,_c3,−x2⁢_c3−_c2,x2⁢_c3+_c2,−2⁢x⁢_c3,x3⁢_c3+2⁢x⁢_c2−2⁢_c3
sol1 ≔ x⁢ln⁡x+1
Download Help Document