X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/82f983da35c25c9cfd8f2a3b4fc9412f9ace0e04..e0f983c0d55e301fc646d956039cc425ad18076d:/gnu/packages/algebra.scm diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 56a9a65366..d92e963af4 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -1,11 +1,11 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Andreas Enge -;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès -;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou +;;; Copyright © 2013, 2015, 2017, 2018, 2021 Ludovic Courtès +;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Nicolas Goaziou ;;; Copyright © 2014, 2018 Mark H Weaver ;;; Copyright © 2016, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2017, 2020 Efraim Flashner -;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice +;;; Copyright © 2017–2021 Tobias Geerinckx-Rice ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017, 2019 Eric Bavier ;;; Copyright © 2019 Mathieu Othacehe @@ -13,6 +13,7 @@ ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2021 Lars-Dominik Braun ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,10 +45,10 @@ #:use-module (gnu packages graphviz) #:use-module (gnu packages image) #:use-module (gnu packages java) - #:use-module (gnu packages llvm) #:use-module (gnu packages maths) #:use-module (gnu packages mpi) #:use-module (gnu packages multiprecision) + #:use-module (gnu packages ocaml) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) @@ -63,6 +64,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system python) + #:use-module (guix build-system r) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix hg-download) @@ -123,15 +125,15 @@ greatest common divisor operations.") (define-public cm (package (name "cm") - (version "0.3") + (version "0.3.1") (source (origin (method url-fetch) (uri (string-append - "http://www.multiprecision.org/cm/download/cm-" + "http://www.multiprecision.org/downloads/cm-" version ".tar.gz")) (sha256 (base32 - "1nf5kr0nqmhbzrsrinky18z0ighjpsmb5cr8zyg8jf04bfbyrfmc")))) + "0qq6b1kwb1byj8ws33ya5awq0ilkpm32037pi1l4cf2737fg9m42")))) (build-system gnu-build-system) (propagated-inputs `(("mpfrcx" ,mpfrcx) @@ -160,14 +162,15 @@ line applications.") (file-name (git-file-name name version)) (sha256 (base32 - "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj")))) + "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj")) + (patches (search-patches "fplll-std-fenv.patch")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) - (inputs + (propagated-inputs ; header files pulled in by fplll/defs.h `(("gmp" ,gmp) ("mpfr" ,mpfr))) (home-page "https://github.com/fplll/fplll") @@ -232,7 +235,7 @@ the real span of the lattice.") (define-public pari-gp (package (name "pari-gp") - (version "2.11.4") + (version "2.13.1") (source (origin (method url-fetch) (uri (string-append @@ -240,7 +243,7 @@ the real span of the lattice.") version ".tar.gz")) (sha256 (base32 - "070bjw4kg7r6lqs1hfs08n5fmjv90cpwflp3wr04hbrmyz28zj5z")))) + "1cgwdpw8b797883z9y92ixxjkv72kiy65zsw2qqf5and1kbzgv41")))) (build-system gnu-build-system) (native-inputs `(("texlive" ,(texlive-union @@ -274,7 +277,7 @@ PARI is also available as a C library to allow for faster computations.") (define-public gp2c (package (name "gp2c") - (version "0.0.11pl4") + (version "0.0.12") (source (origin (method url-fetch) (uri (string-append @@ -282,7 +285,7 @@ PARI is also available as a C library to allow for faster computations.") version ".tar.gz")) (sha256 (base32 - "1cnnh7diqc97q76q5pyhpbljbhc0sz8mlrbqgiwi0sjkgh8iqsj0")))) + "039ip7qkwwv46wrcdrz7y12m30kazzkjr44kqbc0h137g4wzd7zf")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) (inputs `(("pari-gp" ,pari-gp))) @@ -305,39 +308,25 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (license license:gpl2) (home-page "https://pari.math.u-bordeaux.fr/"))) -(define fplll-4-cmh - (package - (inherit fplll) - (name "fplll") - (version "4.0.4") - (source - (origin - (method url-fetch) - (uri (string-append - "http://perso.ens-lyon.fr/damien.stehle/fplll/libfplll-" - version ".tar.gz")) - (sha256 - (base32 "1cbiby7ykis4z84swclpysrljmqhfcllpkcbll1m08rzskgb1a6b")))))) - (define-public cmh (package (name "cmh") - (version "1.0") + (version "1.1.0") (source (origin (method url-fetch) - (uri (string-append - "https://gforge.inria.fr/frs/download.php/33497/cmh-" - version ".tar.gz")) + ;; Git repo at . + (uri (string-append "http://www.multiprecision.org/downloads/cmh-" + version ".tar.gz")) (sha256 (base32 - "1a28xr9bs0igms0ik99x0w8lnb0jyfcmvyi26pbyh9ggcdivd33p")))) + "1ws2yhzxmm2l5xqqqcjcimmg40f9qq5l9i6d4i5434an9v9s8531")))) (build-system gnu-build-system) (inputs `(("gmp" ,gmp) ("mpfr" ,mpfr) ("mpc" ,mpc) ("mpfrcx" ,mpfrcx) - ("fplll" ,fplll-4-cmh) + ("fplll" ,fplll) ("pari-gp" ,pari-gp))) (synopsis "Igusa class polynomial computations") (description @@ -347,13 +336,12 @@ varieties, i.e. Jacobians of hyperelliptic curves. It can also be used to compute theta constants at arbitrary precision.") (license license:gpl3+) - (home-page - "https://gitlab.inria.fr/cmh/cmh#cmh-computation-of-genus-2-class-polynomials"))) + (home-page "http://www.multiprecision.org/cmh/home.html"))) (define-public giac (package (name "giac") - (version "1.6.0-7") + (version "1.7.0-1") (source (origin (method url-fetch) @@ -365,7 +353,7 @@ precision.") "~parisse/debian/dists/stable/main/source/" "giac_" version ".tar.gz")) (sha256 - (base32 "1pvgp137zcl0rbhdn1j41xxfml7fp771a7x4ph8qrhhlx0hxzn3p")))) + (base32 "0s926aza2larfz02hrhdlpxn77yjlrhjg844b3fhwz11yj942p9q")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 ftw) @@ -376,7 +364,8 @@ precision.") (add-after 'unpack 'patch-bin-cp ;; Some Makefiles contain hard-coded "/bin/cp". (lambda _ - (substitute* (find-files "doc" "^Makefile") + (substitute* (cons "micropython-1.12/xcas/Makefile" + (find-files "doc" "^Makefile")) (("/bin/cp") (which "cp"))) #t)) (add-after 'unpack 'disable-failing-test @@ -405,9 +394,9 @@ precision.") (delete-file (string-append out "/bin/xcasnew")) #t)))))) (inputs -;;; TODO: Add libnauty. + ;; TODO: Add libnauty, unbundle "libmicropython.a". `(("fltk" ,fltk) - ("glpk" ,glpk) + ("glpk" ,glpk-4) ("gmp" ,gmp) ("gsl" ,gsl) ("lapack" ,lapack) @@ -429,6 +418,8 @@ precision.") (native-inputs `(("bison" ,bison) ("flex" ,flex) + ("hevea" ,hevea) + ("python" ,python-wrapper) ("readline" ,readline) ("texlive" ,texlive-tiny))) (home-page "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html") @@ -528,14 +519,14 @@ fast arithmetic.") (string-append "--with-flint=" flint) (string-append "--with-gmp=" gmp) (string-append "--with-mpfr=" mpfr)))))))) + (home-page "https://arblib.org") (synopsis "Arbitrary precision floating-point ball arithmetic") (description "Arb is a C library for arbitrary-precision floating-point ball arithmetic. It supports efficient high-precision computation with polynomials, power series, matrices and special functions over the real and complex numbers, with automatic, rigorous error control.") - (license license:lgpl2.1+) - (home-page "http://arblib.org"))) + (license license:lgpl2.1+))) (define-public python-flint (package @@ -567,19 +558,19 @@ arithmetic). It supports integers, rationals, modular integers, real and complex ball arithmetic, polynomials and matrices over all these types and other mathematical functions.") (license license:expat) - (home-page "http://fredrikj.net/python-flint/"))) + (home-page "https://fredrikj.net/python-flint/"))) (define-public ntl (package (name "ntl") - (version "11.4.3") + (version "11.4.4") (source (origin (method url-fetch) (uri (string-append "https://shoup.net/ntl/ntl-" version ".tar.gz")) (sha256 (base32 - "1lisp3064rch3jaa2wrhy1s9kll7i3ka3d0y6lj6l3l4ckfcrhdp")) + "1nr1h27j2gdz6badzz9lk2pknxhdijqdxqhd3haryh0sw616wzwx")) (modules '((guix build utils))) (snippet '(begin @@ -661,7 +652,7 @@ geometry and singularity theory.") ;; libraries with which it links are licensed under lgpl3+, so the ;; combined work becomes gpl3. See COPYING in the source code. (license license:gpl3) - (home-page "http://www.singular.uni-kl.de/index.php"))) + (home-page "https://www.singular.uni-kl.de/index.php"))) (define-public gmp-ecm (package @@ -669,9 +660,11 @@ geometry and singularity theory.") (version "7.0.4") (source (origin (method url-fetch) - ;; Use the ‘Latest version’ link for a stable URI across releases. - (uri (string-append "https://gforge.inria.fr/frs/download.php/" - "latestfile/160/ecm-" version ".tar.gz")) + (uri + (let ((hash "00c4c691a1ef8605b65bdf794a71539d")) + (string-append "https://gitlab.inria.fr/zimmerma/ecm/" + "uploads/" hash "/ecm-" version + ".tar.gz"))) (sha256 (base32 "0hxs24c2m3mh0nq1zz63z3sb7dhy1rilg2s1igwwcb26x3pb7xqc")))) (build-system gnu-build-system) @@ -801,7 +794,7 @@ cosine/ sine transforms or DCT/DST).") (license license:gpl2+))) (define-public fftwf - (package (inherit fftw) + (package/inherit fftw (name "fftwf") (arguments (substitute-keyword-arguments (package-arguments fftw) @@ -819,7 +812,7 @@ cosine/ sine transforms or DCT/DST).") " Single-precision version.")))) (define-public fftw-openmpi - (package (inherit fftw) + (package/inherit fftw (name "fftw-openmpi") (inputs `(("openmpi" ,openmpi) @@ -979,11 +972,8 @@ algorithms from the FORTRAN library MINPACK.") "-DWITH_MPFR=on" "-DWITH_MPC=on" "-DINTEGER_CLASS=flint" - "-DWITH_LLVM=on" "-DWITH_SYMENGINE_THREAD_SAFE=on" "-DBUILD_SHARED_LIBS=on"))) ;also build libsymengine - (native-inputs - `(("llvm" ,llvm))) (inputs `(("flint" ,flint) ("gmp" ,gmp) @@ -1000,16 +990,20 @@ Optional thin wrappers allow usage of the library from other languages.") (define-public eigen (package (name "eigen") - (version "3.3.7") + (version "3.3.8") (source (origin (method url-fetch) - (uri (string-append "https://bitbucket.org/eigen/eigen/get/" - version ".tar.bz2")) + (uri (list + (string-append "https://bitbucket.org/eigen/eigen/get/" + version ".tar.bz2") + (string-append "mirror://debian/pool/main/e/eigen3/eigen3_" + version ".orig.tar.bz2"))) (sha256 (base32 - "1km3fyfzyqfdvmnl79drps3fjwnz3zbh0c7l34mfbqyvvs8cy4wz")) + "1vxrsncfnkyq6gwxpsannpryp12mk7lc8f42ybvz3saf7icwc582")) (file-name (string-append name "-" version ".tar.bz2")) - (patches (search-patches "eigen-stabilise-sparseqr-test.patch")) + (patches (search-patches "eigen-remove-openmp-error-counting.patch" + "eigen-stabilise-sparseqr-test.patch")) (modules '((guix build utils))) (snippet ;; There are 3 test failures in the "unsupported" directory, @@ -1084,7 +1078,7 @@ features, and more.") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/QuantStack/xtensor") + (url "https://github.com/xtensor-stack/xtensor") (commit version))) (sha256 (base32 @@ -1098,7 +1092,7 @@ features, and more.") `(#:configure-flags '("-DBUILD_TESTS=ON") #:test-target "xtest")) - (home-page "https://quantstack.net/xtensor") + (home-page "https://xtensor.readthedocs.io/en/latest/") (synopsis "C++ tensors with broadcasting and lazy computing") (description "xtensor is a C++ library meant for numerical analysis with multi-dimensional array expressions. @@ -1550,7 +1544,7 @@ structure constants of Schubert polynomials.") "0akwhhz9b40bz6lrfxpamp7r7wkk48p455qbn04mfnl9a1l6db8x")))) (build-system gnu-build-system) (inputs - `(("gmp", gmp) + `(("gmp" ,gmp) ("cblas" ,openblas))) ; or any other BLAS library; the documentation ; mentions ATLAS in particular (arguments @@ -1592,3 +1586,24 @@ general purpose; they require that p satisfy some preconditions based on the dimension of the input matrix (usually p should be prime and should be no more than about 20 bits long).") (license license:bsd-3))) + +(define-public r-dtt + (package + (name "r-dtt") + (version "0.1-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "dtt" version)) + (sha256 + (base32 + "0n8gj5iylfagdbaqirpykb01a9difsy4zl6qq55f0ghvazxqdvmn")))) + (properties `((upstream-name . "dtt"))) + (build-system r-build-system) + (home-page "http://www.r-project.org") + (synopsis "Discrete Trigonometric Transforms") + (description + "This package provides functions for 1D and 2D Discrete Cosine Transform +(@dfn{DCT}), Discrete Sine Transform (@dfn{DST}) and Discrete Hartley Transform +(@dfn{DHT}).") + (license license:gpl2+)))