Dom::AlgebraicExtension

Простые алгебраические полевые расширения

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

Доменное создание

Dom::AlgebraicExtension(F, f)
Dom::AlgebraicExtension(F, f, x)
Dom::AlgebraicExtension(F, f1 = f2)
Dom::AlgebraicExtension(F, f1 = f2, x)

Создание элемента

Dom::AlgebraicExtension(F,f)(g)
Dom::AlgebraicExtension(F, f)(rat)

Описание

Доменное создание

Для данного поля F и полиномиального fF[x], Dom::AlgebraicExtension(F, f, x) создает поле F[x]/<f> класса вычетов.

Dom::AlgebraicExtension(F, f1=f2, x) делает то же самое для f = f 1 - f 2.

Dom::AlgebraicExtension(F, f, x) создает поле F[x]/<f> классов вычетов полиномов f по модулю. Это поле может также быть записано как F[x]/<f>, поле классов вычетов рациональных функций f по модулю.

Параметр x может быть не использован если f одномерный полином или многочленное выражение, которое содержит точно одно неопределенное; это затем взято, чтобы быть неопределенным появлением в f.

Поле F должен иметь нормальное представление.

f не должен быть постоянный полином.

f должно быть неприводимым; это не проверяется.

f может быть полином по содействующему звонку, отличающемуся от F, или многомерный; однако, должно быть возможно преобразовать его в одномерный полином по F. Смотрите пример 2.

Создание элемента

Dom::AlgebraicExtension(F, f)(g) создает класс вычетов g f по модулю.

Если rat имеет числитель и знаменатель p и q, соответственно, затем Dom::AlgebraicExtension(F,f)(rat) равняется Dom::AlgebraicExtension(F,f)(p) разделенный на Dom::AlgebraicExtension(F,f)(q).

Суперобласть

Dom::BaseDomain

Аксиомы

Если F имеет Ax::canonicalRep, затем Ax::canonicalRep.

Примеры

Пример 1

Мы примыкаем к кубическому корневому alpha из 2 к rationals.

G := Dom::AlgebraicExtension(Dom::Rational, alpha^3 = 2)

Третья степень кубического корня 2 равняется 2, конечно.

G(alpha)^3

Трассировка α является нулем:

G::conjTrace(G(alpha))

Можно также создать случайные элементы:

G::random()

Пример 2

Наземное поле может быть самим алгебраическим расширением. Таким образом возможно создать башню полей. В следующем примере алгебраическое расширение задано с помощью примитивного элемента alpha, и примитивный элемент beta из дальнейшего расширения задан в терминах alpha. В таких случаях, когда минимальное уравнение содержит больше чем один идентификатор, третий аргумент к Dom::AlgebraicExtension должно быть явно задано.

F := Dom::AlgebraicExtension(Dom::Rational, alpha^2 = 2):
G := Dom::AlgebraicExtension(F, bet^2 + bet = alpha, bet)

Пример 3

Мы хотим задать расширение поля частей звонка двумерных полиномов по rationals.

P:= Dom::DistributedPolynomial([x, y], Dom::Rational):
F:= Dom::Fraction(P):
K:= Dom::AlgebraicExtension(F, alpha^2 = x, alpha)

Теперь. Конечно, функция квадратного корня имеет обычную производную; обратите внимание, что это может быть выражено как:

diff(K(alpha), x)

С другой стороны, производная относительно y является нулем, конечно:

 diff(K(alpha), y)

Мы не должны использовать D здесь. Это работает, только если мы запускаем нашу конструкцию со звонка одномерных полиномов:

P:= Dom::DistributedPolynomial([x], Dom::Rational):
F:= Dom::Fraction(P):
K:= Dom::AlgebraicExtension(F, alpha^2 = x, alpha):
D(K(alpha))

Параметры

F

Наземное поле: область категории Cat::Field

f, f1, f2

Полиномы или многочленные выражения

x

Идентификатор

g

Элемент класса вычетов, который будет задан: полином по F в переменной x, или любой объектный кабриолет к такому.

rat

Рациональная функция, которая принадлежит классу вычетов, который будет задан: выражение, числитель которого и знаменатель могут быть преобразованы в полиномы по F в переменной x. Знаменатель не должен быть кратным f.

Записи

"нуль"

нулевой элемент полевого расширения

"один"

единичный элемент полевого расширения

"groundField"

наземное поле расширения

"minpoly"

минимальный полиномиальный f

"градус"

степень расширения, т.е. f

"переменная"

неизвестный из минимального полиномиального f

"характеристика"

характеристика, которая всегда равняется характеристике наземного поля. Эта запись только существует, если характеристика наземного поля известна.

"degreeOverPrimeField"

размерность поля, когда просматривается как векторное пространство по лучшему полю. Эта запись только существует, если наземное поле является лучшим полем, или его степень по его лучшему полю известна.

Методы

развернуть все

Математические методы

_plus(a, …)

Этот метод перегружает функциональный _plus из системного ядра.

_mult(a, …)

Этот метод перегружает функциональный _mult из системного ядра.

Наследованный от Cat::Monoid.

_negate(a)

Этот метод перегружает функциональный _negate из системного ядра.

_subtract(a, b)

Этот метод перегружает функциональный _subtract из системного ядра.

Наследованный от Dom::BaseDomain.

Наследованный от Cat::BaseCategory.

iszero(a)

Этот метод перегружает функциональный iszero.

Наследованный от Cat::Monoid.

Наследованный от Cat::Field.

intmult(a, b)

Этот метод более эффективен, чем "_mult" в этом особом случае.

_invert(a)

Этот метод перегружает функциональный _invert.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::EuclideanDomain.

Наследованный от Cat::Field.

gcd(a, …)

Этот метод перегружает функциональный gcd.

Наследованный от Cat::EuclideanDomain.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::GcdDomain.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

Наследованный от Cat::Field.

conjNorm(a)

conjTrace(a)

minimalPolynomial(a)

D(a)

Этот метод перегружает функциональный D.

Этот метод не должен быть назван для неотделимых расширений; обратите внимание, что MuPAD® не может проверять, отделимо ли расширение.

Смотрите пример 3.

diff(a, x1, …)

Дифференцирование задано, чтобы быть продолжением дифференцирования наземного поля; этот метод существует, только если наземное поле имеет метод "diff", также.

Дифференцирование не возможно в неотделимых расширениях.

Этот метод перегружает функциональный diff.

Этот метод не должен быть назван для неотделимых расширений; обратите внимание, что MuPAD не может проверять, отделимо ли расширение.

Смотрите пример 3.

random()

random метод наземного поля используется, чтобы сгенерировать коэффициенты случайного полинома наземного поля; класс вычетов того полинома является возвращаемым значением. Следовательно вероятностное распределение возвращенных элементов зависит от того из random метод наземного поля.

Методы преобразования

convert(x)

Если преобразование перестало работать, то FAIL возвращен.

convert_to(a, T)

Полевые элементы могут быть преобразованы в полиномы или выражения. Полевые элементы, представленные постоянными полиномами, могут также быть преобразованы в те же типы как элементы наземного поля; в частности, они могут быть преобразованы в элементы наземного поля.

Наследованный от Cat::BaseCategory.

Наследованный от Cat::BaseCategory.

expr(a)

Этот метод перегружает функциональный expr.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Cat::BaseCategory.

Наследованный от Cat::BaseCategory.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Наследованный от Dom::BaseDomain.

Смотрите также

Области MuPAD