Домены являются функциями,
которые возвращают таблицы операций для
вычислений в данном домене. Например, Integer ()
возвращает таблицу операций для вычислений с
целыми числами, включающую `+` - сложение, `-` -
вычитание, `*` - умножение и так далее.
Все домены принадлежат множеству
категорий, которое поддерживает операции
1: =, <> -- логические отношения
элементов
2: Input -- для конвертирования выражений в
представление данных Domains
3: Output -- для обратного конвертирования
4: Random -- для генерации псевдослучайных величин
области
5: Type -- для проверки, является ли величина
элементом области
Список доменов, сконструированных в
настоящее время в Domains следующий:
Z Integer()
Q Rational()
G Gaussian(R:Ring)
Zmod Zmod(n:posint)
GF GaloisField(p:prime, k:posint)
DUP DenseUnivariatePolynomial(R:Ring, x:name)
OUP OrderedUnivariatePolynomial(P:UnivariatePolynomial(R),
f:(R,R) -> Boolean)
DEV DenseExponentVector(X:list(name))
PEV PrimeExponentVector(X:list(name))
MEV MapleExponentVector(X:list(name))
TEV MacaulayExponentVector(X:list(name))
TDMP TableDistributedMultivariatePolynomial(R:Ring, E:ExponentVector)
SDMP SparseDistributedMultivariatePolynomial(R:Ring, E:ExponentVector)
QF ExpandedNormalFormQuotientField(D:GcdDomain)
ENFQF ExpandedNormalFormQuotientField(D:GcdDomain)
FNFQF FactoredNormalFormQuotientField(D:GcdDomain)
RF RationalFunction(D:GcdDomain, X:list(name))
LUPS LazyUnivariatePowerSeries(R:Ring, x:name)
Matrix(R:Ring)
SM SquareMatrix(n:posint, R:Ring)
SAE AlgebraicExtension(D:UnvivaraitePolynomial, m:D)
Кроме того, имеется несколько
специальных доменов, использующих Maple
-представление полиномов с целью получения
большей эффективности для целых и рациональных
коэффициентов.
MUP MapleUnivariatePolynomial(R:Z, Q, Zmod, x:name)
MMP MapleMultivariatePolynomial(R:Z, Q, Zmod, X:list(name))
Вывести все операции, доступные для
данного домена можно при помощи команды
show (D, operations ).
|