> randpart(10);
> randpart(10);
> stirling1(10,5);
> stirling2(10, 5);
> S:=subsets({1,2}):
> while not S[finished] do S[nextvalue]() od;
> vectoint([1,0,0]);
> inttovec(6,3);
3.4.2. Функции пакета структур комбинаторики combstruct
Еще девять функций, относящихся к
> with(combstruct);
Эти функции служат для создания случайно однородных объектов, принадлежащих заданному комбинаторному классу. Ограничимся приведением примеров применения этих функций (файл combictruct):
> allstructs(Subset({one,two)));
> allstructs(Permutation([x,y,z]),size=2);
> count(Subset({1,2,3}));
> draw(Combination(5),size=4);
> count(Permutation([a,a,b]));
> it :=iterstructs(Permutation([a,a,b]),size=2);
> draw(Partition(9));
> allstructs(Composition(3), size=2);
3.4.3. Функции пакета теории чисел — numtheory
В обширном пакете numtheory собран ряд функций, относящихся к
> with(numtheory);
Большинство функций этого пакета достаточно просты и заинтересовавшийся читатель вполне в состоянии провести их тестирование самостоятельно.
3.4.4. Пакет для работы с р-адическими числами — padic
Этот весьма специфический пакет содержит следующие функции для работы с
> with(padic);
Выводит список имен этого пакета. Ввиду специфичности данных функций их изучение мы оставляем за читателем для самостоятельной работы — если она требует применения таких чисел.
3.4.5. Пакет для работы с гауссовыми целыми числами — GaussInt
> with(GaussInt);
Warning, the name Glgcd has been redefined
Нетрудно заметить, что в этот набор входят уже известные числовые функции, к именам которых добавлены буквы GI. Например, функция GIfactor(c) раскладывает гауссово число (в том числе комплексное) на простые множители, GIgcd(c1,c2) находит наибольший общий делитель гауссовых чисел с1 и с2 и т.д. В связи с этим в особых комментариях пакет не нуждается.
3.5. Расширенные возможности Maple в работе с выражениями
3.5.1. Ввод выражений
Фактически Maple — это система для манипулирования математическими выражениями.