public void TestSubtract5()
        {
            string minuend    = "504*X*Y*Z^2 + 216*X*Y - 42*X*Z^2 - 18*X + 84*Y*Z^2 + 36*Y - 7*Z^2 - 3";
            string subtrahend = "X*Y*Z^2 + 42*X*Z^2 - 8*X - X^2 - 3";

            string expected = "503*X*Y*Z^2 + 84*Y*Z^2 - 84*X*Z^2 + X^2 - 7*Z^2 + 216*X*Y + 36*Y - 10*X";

            MultivariatePolynomial polyMinuend    = MultivariatePolynomial.Parse(minuend);
            MultivariatePolynomial polySubtrahend = MultivariatePolynomial.Parse(subtrahend);

            MultivariatePolynomial difference = MultivariatePolynomial.Subtract(polyMinuend, polySubtrahend);
            string actual = difference.ToString();

            TestContext.WriteLine($"Expected: \"{expected}\"; Actual: \"{actual}\"");
            Assert.AreEqual(expected, actual, $"Test of: MultivariatePolynomial.Subtract: ({minuend}) - ({subtrahend})");
        }
        public void TestSubtract2()
        {
            string minuend    = "36*X*Y + 6*X + 6*Y + 1";
            string subtrahend = "36*X*Y + 1";

            string expected = "6*X + 6*Y";

            MultivariatePolynomial polyMinuend    = MultivariatePolynomial.Parse(minuend);
            MultivariatePolynomial polySubtrahend = MultivariatePolynomial.Parse(subtrahend);

            MultivariatePolynomial difference = MultivariatePolynomial.Subtract(polyMinuend, polySubtrahend);
            string actual = difference.ToString();

            TestContext.WriteLine($"Expected: \"{expected}\"; Actual: \"{actual}\"");
            Assert.AreEqual(expected, actual, $"Test of: MultivariatePolynomial.Subtract: ({minuend}) - ({subtrahend})");
        }
        public void TestSubtract4()
        {
            string minuend    = "3*X^2*Y^3 + 2*X^3*Y^2 + 6*X*Y^2 + 4*X^3 - 6*X^2*Y + 3*X*Y - 2*X^2 + 12*X - 6";
            string subtrahend = "X^3*Y^2 + 3*X^2 - 3*Y^2 - 12*X - 2";

            string expected = "3*X^2*Y^3 + X^3*Y^2 + 4*X^3 + 6*X*Y^2 - 6*X^2*Y + 3*Y^2 - 5*X^2 + 3*X*Y + 24*X - 4";

            MultivariatePolynomial polyMinuend    = MultivariatePolynomial.Parse(minuend);
            MultivariatePolynomial polySubtrahend = MultivariatePolynomial.Parse(subtrahend);

            MultivariatePolynomial difference = MultivariatePolynomial.Subtract(polyMinuend, polySubtrahend);
            string actual = difference.ToString();

            TestContext.WriteLine($"Expected: \"{expected}\"; Actual: \"{actual}\"");
            Assert.AreEqual(expected, actual, $"Test of: MultivariatePolynomial.Subtract: ({minuend}) - ({subtrahend})");
        }