Rings: An efficient Java/Scala library for polynomial rings
In this paper we briefly discuss Rings — an efficient lightweight library for commutative algebra. Polynomial arithmetic, GCDs, polynomial factorization and Gröbner bases are implemented with the use of modern asymptotically fast algorithms. Rings can be easily interacted or embedded in applications...
Gespeichert in:
| Veröffentlicht in: | Computer physics communications Jg. 235; S. 400 - 413 |
|---|---|
| 1. Verfasser: | |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
Elsevier B.V
01.02.2019
|
| Schlagworte: | |
| ISSN: | 0010-4655, 1879-2944 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Zusammenfassung: | In this paper we briefly discuss Rings — an efficient lightweight library for commutative algebra. Polynomial arithmetic, GCDs, polynomial factorization and Gröbner bases are implemented with the use of modern asymptotically fast algorithms. Rings can be easily interacted or embedded in applications in high-energy physics and other research areas via a simple API with fully typed hierarchy of algebraic structures and algorithms for commutative algebra. The use of the Scala language brings a quite novel powerful, strongly typed functional programming model allowing to write short, expressive, and fast code for applications. At the same time Rings shows one of the best performances among existing software for algebraic calculations.
Program Title:Rings
Program Files doi:http://dx.doi.org/10.17632/2k79hftjy9.1
Licensing provisions: Apache 2.0
Programming language: Java, Scala
Nature of problem: Fast methods for rational function arithmetic, simplification of polynomial expressions, Gröbner bases and other related computer algebra methods naturally arising in physical applications
Solution method: Efficient implementation of modern asymptotically fast algorithms in Java language
External routines: Java 8 and higher, Scala 2.11 or 2.12
Additional comments: project page: https://github.com/PoslavskySV/rings,
documentation: http://rings.readthedocs.io/en/latest/ |
|---|---|
| ISSN: | 0010-4655 1879-2944 |
| DOI: | 10.1016/j.cpc.2018.09.005 |