rsolution(a_,2,b_,1,c_):= if(a==1 and b==1 and c==1, c_1 *exp(-2/3 i *pi *x) + c_2 *exp(2/3 i *pi* x), if(a==1 and b==-1 and c==-1,C_1*fib(x)+C_2*lucas(x), if(b*b==4a*c,C_1*(-b/2/a)^x+C_2*(-b/2/a)^x*x, if(b*b<4a*c,(b*b/4/a^2+(4a*c-b*b)/4/a^2)^x*(C_1*cos(atan(sqrt(4a*c-b*b)/b)*x)+C_2*sin(atan(sqrt(4a*c-b*b)/b)*x)), if(hasnot(a,b,c,x),C_1*(-b/2/a-sqrt(b*b-4a*c)/2/a)^x+C_2*(-b/2/a+sqrt(b*b-4a*c)/2/a)^x ))))); rsolution(1,2,0,1,c_):= if(hasnot(c,x), C_1*(-sqrt(-c))^x+C_2*sqrt(-c)^x);