Орієнтири для баз Грьобнера та рішення поліноміальної системи


10

У нещодавній системі розв'язання 7 символів нелінійних алгебраїчних рівнянь символічно Брайан Борчерс експериментально підтвердив, що Клен може вирішити поліноміальну систему, з якою Матлаб / Мупад не може впоратися. У минулому я чув від людей, які працюють в цій галузі, про те, що Maple має якісну реалізацію баз Грьобнера та пов'язаних з ними алгоритмів (я вважаю, що тут використовується).

Тому я спокушаюсь запропонувати "Матлаб повільний у подібних проблемах, переключись на Maple", але я хотів би мати дані для резервного копіювання цього твердження.

Чи є набір результатів порівняльних показників, що порівнюють швидкість та ефективність впровадження бази Gröbner та рішень поліномних систем у різних системах комп'ютерної алгебри? (Maple, Mathematica, символічний інструментарій інструментів Матлаба тощо).


Не забувайте sympy!
Крістіан Класон

@ChristianClason Так, в принципі їх дуже багато. Сингуляр, Макало, Магма, КокоА, Гап, Шавлія, Аксіома, Максима, Якас ... Чи вірите ви, що симфія особливо хороша? Як це стосується проблеми Алаї?
Федеріко Полоні

Це не те, що я вважаю, що це особливо добре, мене просто цікавить, оскільки це широкодоступне, відкрите джерело та досить легко вивчити. Я спробував це з проблемою, але не отримав жодного результату (але терпіння у мене теж не було).
Крістіан Класон

Я думаю, що слід розрізняти символічне програмне забезпечення загального призначення (SymPy, Maple, набір інструментів Matlab, Mathematica) та більш індустріальну потужність, пакети спеціального призначення (Singular, CoCoA, Macaulay). Шавлія дещо інша, тому що вона по суті лише згуртовує багато пакетів спеціального призначення (разом із кількома загальними цілями). У Вікіпедії є корисний список .
Крістіан Класон

Ще одна причина, про яку я згадував симпатію, - це те, що вона виконує ту саму роль, яку зацікавив Алаа - легко використовувати результати (через lambdify) у чисельних обчисленнях.
Крістіан Класон

Відповіді:


10

Тут я розмістив деякі орієнтири: http://www.cecm.sfu.ca/~rpearcea/mgb.html

Вони призначені для загальних ступеневих замовлень. Щоб вирішити системи, як правило, потрібно зробити більше роботи. Синхронізація призначена для типового робочого столу середнього діапазону станом на 2015 рік (чотирьохядерний Haswell Core i5).

Найшвидша система на одному ядрі - Magma, яка використовує арифметику з плаваючою комою та SSE / AVX. Магма - це найсильніша система, тому що вона має хороші реалізації FGLM та прогулянки по Грібнеру (не перевірена). Ці алгоритми використовуються для перетворення основи загального ступеня на лексикографічну основу, яка має трикутну форму. Тоді ви, як правило, розподіляєте многочлени на найнижчі змінні.

mgb - це бібліотека С в Maple 2016, яка реалізує алгоритм F4 для загального ступеня та замовлення на усунення. Його продуктивність порівнянна з Magma, коли вона використовує кілька ядер.

FGb - це реалізація F4 від Faugere. Версія, протестована тут, з його веб-сайту, і вона швидша, ніж версія в Maple.

Giac - це система з відкритим кодом з реалізацією F4. Існує документ, що описує його http://arxiv.org/abs/1309.4044

Сингуляр - це система з відкритим кодом для багатьох обчислень алгебраїчної геометрії. Тут орієнтири використовують "modStd", що є багатомодульною версією алгоритму Бухбергера. Ви можете бачити, що алгоритм Buchberger не є конкурентоспроможним для F4. Основна причина полягає в тому, що F4 амортизує вартість усіх монологічних операцій. Крім цього, у Singular є досить хороші реалізації FGLM та Groebner Walk, а також інші алгоритми, корисні для вирішення.


Дякую, це дуже корисно. Я розглядаю можливість переключення прийнятої відповіді.
Федеріко Полоні

8

Гуглінг benchmark polynomial systemsпризводить до декількох звернень, зокрема, Ініціатива комп’ютерної алгебри Мангеймського університету . На жаль, більшість із них застаріли або не існують. Найактивнішою, здається, є SymbolicData Wiki , але, наскільки я можу сказати, вона збирає лише проблеми з орієнтиром , а не результати тестування .

Деякі порівняння (починаючи з 1996 р.) Axiom, Macsyma, Maple, Mathematica, MuPAD, і Redome для вирішення поліномних систем можна знайти у Ганса-Герта Ґрабе, Про інструмент вирішення поліноміальної системи Axiom, Macsyma, Maple, Mathematica, MuPAD, та зменшити , Preprint 11/96 des Instituts für Informatik, Universität Leipzig, Німеччина, грудень 1996 року . Висновок полягає в тому, що Аксіома, Клен та Редук виграють завдяки використанню баз Грьобнера (інші цього не зробили), причому Клен вийшов трохи попереду інших.

На веб-сайті SINGULAR також є старе порівняння, на якому показано SINGULAR 2.0 (поточний станом на грудень 2015 року 4.0.2), який переміг Maple.

З іншого боку, більш недавня публікація ( Яо нд, Донгдай Лін та Дінгканг Ванг. 2015. Про реалізацію алгоритмів основи Грьобнера на основі підписів з використанням лінійних алгебраїчних процедур з M4RI. ACM Commun. Comput. Algebra 49, 2 (серпень 2015) , 63-64 порівнюють реалізацію авторами алгоритму основи Грьобнера з алгоритмом Maple, Singular і Magma, причому Magma швидше, ніж інші два пакети, на порядок (і пов'язуючи з реалізацією авторів).

Тож, здається, це дуже залежить від проблеми (розмір, а також структура) та версії програмного забезпечення, який пакет є найшвидшим. Тим не менш, рекомендація використовувати активно розроблену комп'ютерну систему алгебри спеціального призначення, таких як сингулярне, магма або клен, а не програмне забезпечення символічних обчислень загального призначення, є надійною. Це збільшиться вдвічі для набору інструментів у числовому програмному забезпеченні, що додає ще один рівень накладних витрат і зазвичай є декількома версіями за автономним програмним забезпеченням, на якому вони базуються (MuPAD, раніше Maple, у випадку з інструментами Matlab).


Дякуємо за надання цих ресурсів. Мене дивує, що всебічних і сучасних орієнтирів дуже мало або взагалі немає.
Федеріко Полоні

6

Завжди майте на увазі, що результати будь-якого еталону будуть залежати, крім величини задачі, від базового поля, над яким визначається поліноміальне кільце (раціональні числа чи цілі числа, модульовані деякою потужністю простого числа).

Бібліотека FGb - це активно розроблена та високоефективна реалізація алгоритму F5. Орієнтир, який порівнює FGb з Magma, можна знайти в:

Faugère, J.-C. (2010). FGb: Бібліотека для обчислення основ Грьобнера (с. 84–87). doi: 10.1007 / 978-3-642-15582-6_17

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.