"Source: Text/Commut/RngDiff.text";
"Line: 4079";
"Date: Wed Sep 19 23:00:01 2018";
"Main: Thu May 25 10:02:38 2023";
// original file: Text/Commut/RngDiff.text, line: 4079
// Example: H118E72 ()
print "Example: H118E72";
ei := GetEchoInput();
SetEchoInput(true);
S<t>:=DifferentialLaurentSeriesRing(Rationals());
RS<DS> := DifferentialOperatorRing(S);
L:=DS^2+(1/t^2+1/t)*DS +(1/t^3-2/t^2);
rhf, bl := RightHandFactors(L);
#rhf eq 2;
assert $1;
bl;
assert &and $1;
(Parent(rhf[1]) eq RS) and (Parent(rhf[2]) eq RS);
assert $1;
lhf,rem := EuclideanRightDivision(L, rhf[1]);
rem;
lhf*rhf[1];
EuclideanRightDivision(L, rhf[2]);
SetEchoInput(ei);
