4.2 Моном

class Monom( monomInterface, monom)
Задает мономом
monomInterface:
определяет интерфейс монома (см. 4.1)

monom:
строка инициализирующая моном

Пример значения monom Тип системы
'1' единичный моном для любого типа системе
'x*y4*x' полиномиальная система 3.1
'df(u, x, y, 4, x)' система линейных дифференциальных уравнений 3.3
'T(u, x, y, 4, x)' система линейных разностных уравнений 3.4

Класс Monom имеет следующие методы:

degree( )
возвращает сумму степеней переменных монома

dependVar( )
возвращает номер зависимой переменной

setZero( )
делает степени переменных монома равными нулю

prolong( var, deg=1)
умножает моном на переменную с номером var в степени deg

gcd( monom)
возвращает сумму степеней переменных НОД монома и монома monom.

Мономы должны иметь одинаковый интерфейс.

lcm( monom)
возвращает НОК монома и монома monom.

Мономы должны иметь одинаковый интерфейс.

divisibility( monom)
возвращает True если моном делится на моном monom, иначе False.

Мономы должны иметь одинаковый интерфейс.

divisibilityTrue( monom)
возвращает True если моном делится на моном monom и они не равны друг другу, иначе False.

Мономы должны иметь одинаковый интерфейс.

Класс Monom может быть аргументом следующих функций:

str( monom)
возвращает представление в виде строки монома monom согласно типу системы 3.

Аналогично работает команда Python print

cmp( monom1, monom2)
возвращает 1 если monom1 > monom2,
возвращает 0 если monom1 == monom2,
возвращает -1 если monom1 < monom2.

Мономы сравниваются согласно определенному типу упорядочения. Мономы должны иметь одинаковый интерфейс.

<, >, <=, >=, ==, !=( monom1, monom2)
Для этих операций мономы сравниваются согласно определенному типу упорядочения. Мономы должны иметь одинаковый интерфейс.

Моном может быть использован в логических выражениях. Единичный моном дает в логических выражениях False, а остальные True

*, /( monom1, monom2)
Эти операции возвращают произведение и частное мономов. Для выполнения деление monom1 должен делится на monom2.

Мономы должны иметь одинаковый интерфейс.

*=( monom1, monom2)
Эти операции присваивает произведение мономов переменной monom1.

Мономы должны иметь одинаковый интерфейс.

len( monom)
возвращает число независимых переменных в интерфейсе монома monom.

Аналогична методу dimIndepend класса MonomInterface.

[]( monom, i)
возвращает степень i независимой переменной в мономе monom.

Моном представляет собой итератор языка Python:

import ginv

st = ginv.SystemType("Polynomial")
im = ginv.MonomInterface("DegRevLex", st, ['x', 'y', 'z'])
m = ginv.Monom(im, "x^3*y*x*z^2")

for d in m: print d,
В результате будет распечатан список степеней "4 1 2".