# Setup equations eqn_sys := {cos(t)*sin(t)^2*cos(x)+sin(t)*cos(t)^2*sin(x)+D[1,1](y)(t,x)+y(t,x)=0}: parameters := [{y(t,x)}], ivars = {t, x}: ind_vars := {t}: # Works as expected depends_ind_vars := Not( And( unknown, satisfies(f -> indets({op(f)},assignable) intersect ind_vars = {}) )): good := frontend(':-pdsolve', [eqn_sys], [{`+`,`*`,depends_ind_vars}], parameters): #frontend(print, [eqn_sys], # [{`+`,`*`,depends_ind_vars}], parameters): # Doesn't work depends_ind_vars := Not( And( satisfies(f -> indets({op(f)},assignable) intersect ind_vars = {}) )): bad := frontend(':-pdsolve', [eqn_sys], [{`+`,`*`,depends_ind_vars}], parameters): #frontend(print, [eqn_sys], # [{`+`,`*`,depends_ind_vars}], parameters): # Compare solutions rhs(good[1]) - rhs(bad[1]): expand(%): combine(%,trig);