Commit | Line | Data |
---|---|---|
adba6466 AE |
1 | ;;; GNU Guix --- Functional package management for GNU |
2 | ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> | |
3 | ;;; | |
4 | ;;; This file is part of GNU Guix. | |
5 | ;;; | |
6 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
7 | ;;; under the terms of the GNU General Public License as published by | |
8 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
9 | ;;; your option) any later version. | |
10 | ;;; | |
11 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
12 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | ;;; GNU General Public License for more details. | |
15 | ;;; | |
16 | ;;; You should have received a copy of the GNU General Public License | |
17 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
18 | ||
19 | (define-module (gnu packages sagemath) | |
20 | #:use-module ((guix licenses) #:prefix license:) | |
21 | #:use-module (guix packages) | |
22 | #:use-module (guix download) | |
20caeea4 | 23 | #:use-module (guix build-system gnu) |
adba6466 AE |
24 | #:use-module (guix build-system python) |
25 | #:use-module (gnu packages algebra) | |
5e388a6e | 26 | #:use-module (gnu packages compression) |
adba6466 AE |
27 | #:use-module (gnu packages multiprecision) |
28 | #:use-module (gnu packages python) | |
29 | #:use-module (gnu packages python-xyz)) | |
30 | ||
31 | ||
32 | (define-public python-cypari2 | |
ff33c38c AE |
33 | (package |
34 | (name "python-cypari2") | |
1e1a65a6 | 35 | (version "2.1.1") |
ff33c38c | 36 | (source |
adba6466 AE |
37 | (origin |
38 | (method url-fetch) | |
39 | (uri (pypi-uri "cypari2" version)) | |
40 | (sha256 | |
ff33c38c | 41 | (base32 |
1e1a65a6 | 42 | "1nwkzgqvbw6361x0rpggy1q5nx663fswhpvg8md6xhqyfwpgc7nz")))) |
ff33c38c AE |
43 | (build-system python-build-system) |
44 | (native-inputs | |
adba6466 | 45 | `(("python-cython" ,python-cython))) |
ff33c38c | 46 | (propagated-inputs |
adba6466 | 47 | `(("python-cysignals" ,python-cysignals))) |
ff33c38c | 48 | (inputs |
adba6466 AE |
49 | `(("gmp" ,gmp) |
50 | ("pari-gp", pari-gp))) | |
ff33c38c AE |
51 | (home-page "https://cypari2.readthedocs.io/") |
52 | (synopsis | |
adba6466 | 53 | "Python interface to the number theory library libpari") |
ff33c38c | 54 | (description |
adba6466 AE |
55 | "Cypari2 provides a Python interface to the number theory library |
56 | PARI/GP. It has been spun off from the SageMath mathematics software system, | |
57 | but it can be used independently.") | |
ff33c38c | 58 | (license license:gpl2+))) |
adba6466 AE |
59 | |
60 | (define-public python2-cypari2 | |
61 | (package-with-python2 python-cypari2)) | |
62 | ||
5e388a6e AE |
63 | ;; The stable version of the following package is not young enough to be |
64 | ;; used with Sage, since it does not support cython. One would need to | |
65 | ;; use an alpha release. On the other hand, Sage can be built without it. | |
66 | (define-public python-gmpy2 | |
67 | (package | |
af5ead8b MB |
68 | (name "python-gmpy2") |
69 | (version "2.0.8") | |
70 | (source (origin | |
71 | (method url-fetch) | |
72 | (uri (pypi-uri "gmpy2" version ".zip")) | |
73 | (sha256 | |
74 | (base32 | |
75 | "0grx6zmi99iaslm07w6c2aqpnmbkgrxcqjrqpfq223xri0r3w8yx")))) | |
76 | (build-system python-build-system) | |
77 | (native-inputs | |
78 | `(("unzip" ,unzip))) | |
79 | (inputs | |
80 | `(("gmp" ,gmp) | |
81 | ("mpfr" ,mpfr) | |
82 | ("mpc" ,mpc))) | |
83 | (home-page "https://github.com/aleaxit/gmpy") | |
84 | (synopsis | |
5e388a6e | 85 | "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x") |
af5ead8b | 86 | (description |
ec6f1a0e AE |
87 | "This package provides a Python interface to the GNU multiprecision |
88 | libraries GMO, MPFR and MPC.") | |
af5ead8b | 89 | (license license:lgpl3+))) |
5e388a6e AE |
90 | |
91 | (define-public python2-gmpy2 | |
92 | (package-with-python2 python-gmpy2)) | |
20caeea4 AE |
93 | |
94 | (define-public cliquer | |
95 | (package | |
96 | (name "cliquer") | |
97 | (version "1.21") | |
98 | ;; The original source package is available from the home page and | |
99 | ;; has not seen any release since 2010; it comes with only a Makefile | |
100 | ;; without an "install" target. Instead, there is an autotoolized | |
101 | ;; tarball available from the Sage project. | |
102 | (source | |
103 | (origin | |
104 | (method url-fetch) | |
105 | (uri "http://users.ox.ac.uk/~coml0531/sage/cliquer-1.21.tar.gz") | |
106 | (sha256 | |
107 | (base32 | |
108 | "1hdzrmrx0nvvj8kbwxrs8swqgkd284khzl623jizixcv28xb77aq")))) | |
109 | (build-system gnu-build-system) | |
110 | (synopsis "C routines for finding cliques in weighted graphs") | |
111 | (description "Cliquer is a set of reentrant C routines for finding | |
112 | cliques in a weighted or unweighted graph. It uses an exact | |
113 | branch-and-bound algorithm. It can search for maximum or maximum-weight | |
114 | cliques or cliques with size or weight within a given range, restrict the | |
115 | search to maximal cliques, store cliques in memory and call a user-defined | |
116 | function for every found clique.") | |
117 | (license license:gpl2+) | |
118 | (home-page "https://users.aalto.fi/~pat/cliquer.html"))) |