Skip to content
This repository has been archived by the owner on Jan 30, 2023. It is now read-only.

Commit

Permalink
22924: remove (instead of deprecate) code from linbox.pyx
Browse files Browse the repository at this point in the history
  • Loading branch information
videlec committed May 4, 2017
1 parent 55bdc0a commit c8b95de
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 164 deletions.
12 changes: 0 additions & 12 deletions src/sage/libs/linbox/linbox.pxd
Expand Up @@ -13,15 +13,3 @@ cdef class Linbox_modn_sparse:
cdef object rank(self, int gauss)
cdef void solve(self, c_vector_modint **x, c_vector_modint *b, int method)


cdef class Linbox_integer_dense:
cdef mpz_t** matrix
cdef size_t nrows, ncols

cdef set(self, mpz_t** matrix, size_t nrows, size_t ncols)
cdef matrix_matrix_multiply(self,
mpz_t **ans,
mpz_t **B,
size_t B_nr, size_t B_nc)
cdef unsigned long rank(self) except -1

152 changes: 0 additions & 152 deletions src/sage/libs/linbox/linbox.pyx
Expand Up @@ -56,155 +56,3 @@ cdef class Linbox_modn_sparse:
for i from 0 <= i < X.size():
set_entry(x[0], i, X.get(i))


##########################################################################
## Sparse matrices over ZZ
##########################################################################


##########################################################################
## Dense matrices over ZZ
##########################################################################

cdef extern from "linbox/linbox-sage.h":
void linbox_integer_dense_minpoly(mpz_t* &minpoly, size_t &degree, size_t n, mpz_t** matrix)

void linbox_integer_dense_charpoly(mpz_t* &charpoly, size_t &degree, size_t n, mpz_t** matrix)

void linbox_integer_dense_delete_array(mpz_t* f)

int linbox_integer_dense_matrix_matrix_multiply(mpz_t** ans, mpz_t **A, mpz_t **B, size_t A_nr, size_t A_nc, size_t B_nc)

unsigned long linbox_integer_dense_rank(mpz_t** matrix, size_t nrows,
size_t ncols)

void linbox_integer_dense_det(mpz_t ans, mpz_t** matrix,
size_t nrows, size_t ncols)

void linbox_integer_dense_smithform(mpz_t **v,
mpz_t **matrix,
size_t nrows, size_t ncols)

cdef class Linbox_integer_dense:
r"""
.. WARNING::
deprecated class
"""
cdef set(self, mpz_t** matrix, size_t nrows, size_t ncols):
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

self.nrows = nrows
self.ncols = ncols
self.matrix = matrix

def minpoly(self):
"""
Deprecated
OUTPUT:
coefficients of minpoly as a Python list
"""
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

cdef mpz_t* poly
cdef size_t degree
verbose("using linbox poly comp")
linbox_integer_dense_minpoly(poly, degree, self.nrows, self.matrix)
verbose("computed poly -- now converting back to Sage")

v = []
cdef Integer k
cdef size_t n
for n from 0 <= n <= degree:
k = Integer()
mpz_set(k.value, poly[n])
mpz_clear(poly[n])
v.append(k)
linbox_integer_dense_delete_array(poly)
return v

def charpoly(self):
"""
Deprecated
OUTPUT:
coefficients of charpoly or minpoly as a Python list
"""
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

cdef mpz_t* poly
cdef size_t degree
verbose("using linbox poly comp")
linbox_integer_dense_charpoly(poly, degree, self.nrows, self.matrix)
verbose("computed poly -- now converting back to Sage")

v = []
cdef Integer k
cdef size_t n
for n from 0 <= n <= degree:
k = Integer()
mpz_set(k.value, poly[n])
mpz_clear(poly[n])
v.append(k)
linbox_integer_dense_delete_array(poly)
return v

cdef matrix_matrix_multiply(self,
mpz_t **ans,
mpz_t **B,
size_t B_nr, size_t B_nc):
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

cdef int e
e = linbox_integer_dense_matrix_matrix_multiply(ans, self.matrix, B, self.nrows, self.ncols, B_nc)
if e:
raise RuntimeError("error doing matrix matrix multiply over ZZ using linbox")


cdef unsigned long rank(self) except -1:
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

return linbox_integer_dense_rank(self.matrix, self.nrows, self.ncols)

def det(self):
"""
Deprecated
OUTPUT:
determinant as a sage Integer
"""
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

cdef Integer z
z = Integer()
linbox_integer_dense_det(z.value, self.matrix, self.nrows, self.ncols)
return z

def smithform(self):
from sage.misc.superseded import deprecation
deprecation(111111, "sage.libs.linbox.linbox.Linbox_integer_dense is deprecated, use sage.libs.linbox.linbox_flint_interface instead")

raise NotImplementedError
#cdef mpz_t* v
#linbox_integer_dense_smithform(&v, self.matrix, self.nrows, self.ncols)
#z = []
#cdef Integer k
#cdef size_t n
#for n from 0 <= n < self.ncols:
# k = Integer()
# mpz_set(k.value, v[n])
# mpz_clear(v[n])
# z.append(k)
#linbox_integer_dense_delete_array(v)
#return z

0 comments on commit c8b95de

Please sign in to comment.