"Source: Text/Commut/RngDiff.text";
"Line: 4079";
"Date: Thu Sep 25 14:47:46 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Commut/RngDiff.text, line: 4079
// Example: H121E72 ()
print "Example: H121E72";
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);
