СТАВКА/ГП
Эта статья может чрезмерно полагаться на источники, слишком тесно связанные с предметом , что потенциально препятствует тому, чтобы статья была проверяемой и нейтральной . ( декабрь 2013 г. ) |
![]() | |
![]() PARI/GP используется в Windows XP | |
Разработчик(и) | Анри Коэн , Карим Белабас и др., Университет Бордо 1. |
---|---|
Стабильная версия | 2.15.5 [1] ![]() |
Репозиторий | |
Написано в | С |
Операционная система | Кросс-платформенный |
Тип | Система компьютерной алгебры |
Лицензия | Стандартная общественная лицензия GNU |
Веб-сайт | полный |
PARI/GP — это система компьютерной алгебры , основная цель которой — облегчить вычисления по теории чисел . Версии 2.1.0 и выше распространяются по лицензии GNU General Public License . Он работает на большинстве распространенных операционных систем .
Обзор системы [ править ]
Система PARI/GP — это пакет, способный выполнять формальные вычисления над рекурсивными типами на высокой скорости; он в первую очередь предназначен для теоретиков чисел. Его тремя основными сильными сторонами являются скорость, возможность напрямую использовать типы данных , знакомые математикам , и обширный модуль теории алгебраических чисел.
Система PARI/GP состоит из следующих стандартных компонентов:
- PARI — это C библиотека , позволяющая выполнять быстрые вычисления и которую можно вызывать из приложения на языке высокого уровня (например, написанного на C, C++ , Pascal , Fortran , Perl или Python ).
- gp — это простой в использовании интерактивный интерфейс командной строки, предоставляющий доступ к функциям PARI. Он функционирует как сложный программируемый калькулятор, который содержит большую часть управляющих инструкций стандартного языка, такого как C. GP — это название языка сценариев gp , который можно использовать для программирования gp .
Также доступен gp2c , компилятор GP-to-C, который компилирует сценарии GP в язык C и прозрачно загружает полученные функции в gp . Преимущество этого состоит в том, что сценарии, скомпилированные с помощью gp2c, обычно работают в три-четыре раза быстрее. gp2c понимает почти все GP.
PARI/GP выполняет вычисления произвольной точности (например, мантисса может иметь длину в миллионы цифр — и миллиарды цифр на 64-битных машинах). Он может вычислять факторизации , выполнять вычисления по эллиптическим кривым и выполнять вычисления по теории алгебраических чисел . Он также позволяет выполнять вычисления с матрицами , полиномами , степенными рядами , алгебраическими числами и реализует множество специальных функций .
PARI/GP имеет встроенную функцию графического построения графиков . PARI/GP имеет некоторые возможности символьных манипуляций, например, обработку многомерного полинома и рациональных функций. Он также имеет некоторые формальные возможности интеграции и дифференциации .
PARI/GP можно скомпилировать с помощью GMP (арифметической библиотеки множественной точности GNU), обеспечивающей более быстрые вычисления, чем собственное ядро произвольной точности PARI/GP.
История [ править ]
Прародителем PARI/GP была программа Isabelle , интерпретатор высшей арифметики , написанная в 1979 году Анри Коэном и Франсуа Дрессом в Университете Бордо 1 . [2]
PARI/GP был первоначально разработан в 1985 году командой под руководством Анри Коэна из Laboratoire A2X и в настоящее время поддерживается Каримом Белабасом из Университета Бордо 1 с помощью многих волонтеров.
Этимология [ править ]
Название PARI — это игра слов о ранних стадиях проекта, когда авторы начали реализовывать библиотеку для «Pascal ARIthmetic» на языке программирования Pascal (хотя они быстро перешли на C ), а после «pari de Pascal» ( «Пари Паскаля »). [3]
Первая версия калькулятора gp первоначально называлась GPC, что означает «Великий программируемый калькулятор». Завершающая буква C в конечном итоге была опущена. [3]
Примеры использования [ править ]
Ниже приведены некоторые примеры использования калькулятора gp :
? \p 212 realprecision = 221 significant digits (212 digits displayed) ? (1.378-0.09143*I)^(14.87+0.3721*I) time = 0 ms. %1 = 80.817082637557070449383034933010288336925078193546211741027496566803185 11092579265743992920628314516739962724446042667886245322716456966120413965187 3272488827365261487845201056199035423784093096984005713791800191 - 94.8384618 89186304973351271821601500916571303364865064205039706592481303045713982306764 33264430511752515705768858710051382035377195497482934017239179757538824688799 0680136241031895212412150770309289450962931402933*I ? 123456! + 0. \\ slower than gamma(123457) which uses floating point time = 1,656 ms. %2 = 2.6040699049291378729513930560926568818273270409503019584610185579952057 37967683415793560716617127908735520017061666000857261271456698589373086528293 4317244121152865814030204645985573419251305342231135573491050756 E574964 ? sin(x) time = 0 ms. %3 = x - 1/6*x^3 + 1/120*x^5 - 1/5040*x^7 + 1/362880*x^9 - 1/39916800*x^11 + 1/6227020800*x^13 - 1/1307674368000*x^15 + O(x^17) ? for(z=25,30, print (factor(2^z-1))) [31, 1; 601, 1; 1801, 1] [3, 1; 2731, 1; 8191, 1] [7, 1; 73, 1; 262657, 1] [3, 1; 5, 1; 29, 1; 43, 1; 113, 1; 127, 1] [233, 1; 1103, 1; 2089, 1] [3, 2; 7, 1; 11, 1; 31, 1; 151, 1; 331, 1] time = 5 ms. ? K = bnfinit(x^2 + 23); K.cyc time = 1ms. %4 = [3] /* This number field has class number 3. */
См. также [ править ]
- SageMath , математический пакет с несколькими программами, включающий PARI/GP в качестве одного из своих компонентов.
- Список систем компьютерной алгебры
Ссылки [ править ]
- ^ «выпущен пари-2.15.5 (СТАБИЛЬНЫЙ)» .
- ^ Платье Франсуа (1979–1980). «Язык и интерпретатор «Изабель», специально разработанный для арифметических целей» . Семинар по теории чисел в Бордо . 9 . презентация № 4.
- ↑ Перейти обратно: Перейти обратно: а б Раздел «TRIVIA» на «Manpage of GP», 10 августа 2004 г.
Внешние ссылки [ править ]
- Штаб-квартира развития PARI/GP
- PARI/GP - Математическое программное обеспечение - swMATH с коллекцией ссылок
- Программное обеспечение SIGSAM для компьютерной алгебры
- Розеттский кодекс: PARI/GP (примеры программ)
- Каталог функций GP/PARI ; также в загружаемом в формате gzip tarball архиве : Stable Branch
- программное обеспечение 1985 года
- Библиотеки C (язык программирования)
- Программное обеспечение командной строки
- Программное обеспечение системы компьютерной алгебры для Linux
- Кроссплатформенное бесплатное программное обеспечение
- Бесплатные системы компьютерной алгебры
- Бесплатное программное обеспечение, написанное на C.
- Портативное программное обеспечение