[a,b,d]

> randpart(10);

[2, 8]

> randpart(10);

[10]

> stirling1(10,5);

-269325

> stirling2(10, 5);

42525

> S:=subsets({1,2}):

> while not S[finished] do S[nextvalue]() od;

{ } {1} {2} {1,2}

> vectoint([1,0,0]);

1

> inttovec(6,3);

[1,0,1]

3.4.2. Функции пакета структур комбинаторики combstruct

Еще девять функций, относящихся к структурам комбинаторики, содержит пакет combstruct:

> with(combstruct);

[agfeqns, agfmomentsolve, agfseries, allstructs, count, draw, finished, gfeqns, gfseries, gfsolve, iterstructs, nextstruct]

Эти функции служат для создания случайно однородных объектов, принадлежащих заданному комбинаторному классу. Ограничимся приведением примеров применения этих функций (файл combictruct):

> allstructs(Subset({one,two)));

{{ }, {one, two), {two}, {one)}

> allstructs(Permutation([x,y,z]),size=2);

[[x,y], [x,z], [x,y], [y,z], [z,x], [z,y]]

> count(Subset({1,2,3}));

8

> draw(Combination(5),size=4);

{1, 3, 4, 5}

> count(Permutation([a,a,b]));

> it :=iterstructs(Permutation([a,a,b]),size=2);

it:= table([finished = false, nextvalue = (proc(0) ... end proc)|)

> draw(Partition(9));

[2, 2, 2, 3]

> allstructs(Composition(3), size=2);

[[2, 1], [1,2]]

3.4.3. Функции пакета теории чисел — numtheory

В обширном пакете numtheory собран ряд функций, относящихся к теории чисел. Их можно просмотреть, используя команду:

> with(numtheory);

Большинство функций этого пакета достаточно просты и заинтересовавшийся читатель вполне в состоянии провести их тестирование самостоятельно.

3.4.4. Пакет для работы с р-адическими числами — padic

Этот весьма специфический пакет содержит следующие функции для работы с р- адическими числами. Команда

> with(padic);

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

3.4.5. Пакет для работы с гауссовыми целыми числами — GaussInt

Гауссово целое число — это число вида а +I*b, где а и b — любые целые рациональные числа. Таким образом они образуют решетку всех точек с целыми координатами на плоскости комплексных чисел. Пакет GaussInt содержит достаточно представительный набор функций для работы с этими числами:

> with(GaussInt);

Warning, the name Glgcd has been redefined

[GIbasis, GIchrem, GIdivisor, GIfacpoly, GIfacset, GIfactor, GIfactors, GIgcd, GIgcdex, GIhermite, GIissqr, GIlcm, GImcmbine, GInearest, GInodiv, GInorm, GInormal, GIorder, GIphi, GIprime, Glquadres, GIquo, GIrem, GIroots, GIsieve, GIsmith, GIsqrfree, GIsqrt, GIunitnormal]

Нетрудно заметить, что в этот набор входят уже известные числовые функции, к именам которых добавлены буквы GI. Например, функция GIfactor(c) раскладывает гауссово число (в том числе комплексное) на простые множители, GIgcd(c1,c2) находит наибольший общий делитель гауссовых чисел с1 и с2 и т.д. В связи с этим в особых комментариях пакет не нуждается.

3.5. Расширенные возможности Maple в работе с выражениями

3.5.1. Ввод выражений

Фактически Maple — это система для манипулирования математическими выражениями. Выражение в системе Maple — объект, вполне соответствующий сути обычного математического выражения. Оно может содержать операторы, операнды и функции с параметрами.

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату