gbasis

Редуцированный базис Гребнера

Описание

пример

gbasis(poly) возвращает базис Гребнера вектора полиномов poly. По умолчанию, gbasis находит независимые переменные в poly при помощи symvar, и использует мономиальное упорядочивание degreeInverseLexicographic.

пример

gbasis(poly,vars) также использует независимые переменные vars.

пример

gbasis(___,'MonomialOrder',MonomialOrder) также использует заданный мономиальный порядок в дополнение к входным параметрам в предыдущих синтаксисах. Опции 'degreeInverseLexicographic', 'degreeLexicographic', или 'lexicographic'. По умолчанию, gbasis использует 'degreeInverseLexicographic'.

Примеры

свернуть все

Вычислите базис Гребнера полиномов x^2-y^2 и x^2+y. По умолчанию, gbasis находит независимые переменные при помощи symvar.

syms x y
p = [x^2-y^2, x^2+y];
gbasis(p)
ans =
[ x^2 + y, y^2 + y]

Задайте независимые переменные как второй аргумент gbasis.

Вычислите базис Гребнера полиномов a*y+x^2*y+a и a*x^2+y с независимыми переменными [x y].

syms x y a
p = [a*y + x^2*y + a, a*x^2 + y];
vars = [x y];
grobnerBasis = gbasis(p,vars)
grobnerBasis =
[ a*x^2 + y, - y^2/a + a*y + a]

По умолчанию, gbasis использует мономиальный порядок degreeInverseLexicographic. Измените мономиальный порядок при помощи 'MonomialOrder' аргумент пары "имя-значение".

Найдите базис Гребнера полиномов y*z^2+1 и y^2*x^2-y-z^3 с lexicographic мономиальный порядок.

syms x y z
p = [y*z^2 + 1, y^2*x^2 - y - z^3];
grobnerBasis = gbasis(p,'MonomialOrder','lexicographic')
grobnerBasis =
[ x^2 - z^7 + z^2, y*z^2 + 1]

Используйте переменные [z y] с degreeLexicographic мономиальный порядок.

grobnerBasis = gbasis(p,[z y],'MonomialOrder','degreeLexicographic')
grobnerBasis =
[ x^2*y^2 - y - z^3, y*z^2 + 1, x^2*y^3 - y^2 + z]

Входные параметры

свернуть все

Полиномы, заданные как вектор символьных выражений.

Независимые переменные, заданные как вектор символьных переменных.

Мономиальный порядок, заданный как разделенная разделенными запятой парами 'MonomialOrder' и одно из значений 'degreeInverseLexicographic', 'degreeLexicographic', или 'lexicographic'. Если vars задается, затем мономиалы сортируются относительно порядка переменных в vars.

  • lexicographic сортирует условия полинома, используя лексикографическое упорядоченное расположение.

  • degreeLexicographic сортирует условия полинома согласно общей степени каждого члена. Если условия имеют равные общие степени, polynomialReduce сортирует их с помощью лексикографического упорядоченного расположения.

  • degreeInverseLexicographic сортирует условия полинома согласно общей степени каждого члена. Если условия имеют равные общие степени, polynomialReduce сортирует их с помощью обратного лексикографического упорядоченного расположения.

Введенный в R2018a