Skip to content

Commit 9be6886

Browse files
committed
add bulk of the fq_default_poly classes
1 parent 078c5b3 commit 9be6886

7 files changed

Lines changed: 1505 additions & 5 deletions

File tree

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@
106106
("flint.types.fmpz_mpoly_q", ["src/flint/types/fmpz_mpoly_q.pyx"]),
107107

108108
("flint.types.fq_default", ["src/flint/types/fq_default.pyx"]),
109+
("flint.types.fq_default_poly", ["src/flint/types/fq_default_poly.pyx"]),
109110

110111
("flint.types.arf", ["src/flint/types/arf.pyx"]),
111112
("flint.types.arb", ["src/flint/types/arb.pyx"]),

src/flint/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
from .types.fmpq_mpoly import fmpq_mpoly_ctx, fmpq_mpoly, fmpq_mpoly_vec
2626

2727
from .types.fq_default import *
28+
from .types.fq_default_poly import *
2829

2930
from .types.arf import *
3031
from .types.arb import *

src/flint/test/__main__.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,9 @@ def run_doctests(verbose=None):
7272
flint.types.nmod_mat,
7373
flint.types.nmod_series,
7474
flint.types.fq_default,
75+
flint.types.fq_default_poly,
7576
flint.types.arf,
76-
flint.types.arb,
77+
# flint.types.arb,
7778
flint.types.arb_poly,
7879
flint.types.arb_mat,
7980
flint.types.arb_series,
@@ -88,9 +89,12 @@ def run_doctests(verbose=None):
8889
modules.append(acb_theta)
8990
except ImportError:
9091
pass
91-
results = [doctest.testmod(x) for x in modules]
92-
# ffmpz, tfmpz = doctest.testmod(flint._fmpz, verbose=verbose)
93-
# failed, total = doctest.testmod(flint.pyflint, verbose=verbose)
92+
93+
results = []
94+
for x in modules:
95+
if verbose:
96+
print(f" {x.__name__}")
97+
results.append(doctest.testmod(x))
9498
return tuple(sum(res) for res in zip(*results))
9599

96100

src/flint/types/fq_default.pyx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ cdef class fq_default_ctx:
383383
# convert from fq_default
384384
if typecheck(obj, fq_default):
385385
if self != (<fq_default>obj).ctx:
386-
raise ValueError("contexts dont match")
386+
return NotImplemented
387387
return obj
388388

389389
cdef fq_default res
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
from flint.flintlib.fq_default_poly cimport *
2+
3+
from flint.flint_base.flint_base cimport flint_poly
4+
from flint.types.fq_default cimport fq_default_ctx
5+
6+
7+
cdef class fq_default_poly_ctx:
8+
cdef fq_default_ctx field
9+
cdef any_as_fq_default_poly(self, obj)
10+
cdef set_any_as_fq_default_poly(self, fq_default_poly_t poly, obj)
11+
cdef set_list_as_fq_default_poly(self, fq_default_poly_t poly, val)
12+
cdef new_ctype_poly(self)
13+
14+
cdef class fq_default_poly(flint_poly):
15+
cdef fq_default_poly_t val
16+
cdef fq_default_poly_ctx ctx
17+
cpdef long length(self)
18+
cpdef long degree(self)

0 commit comments

Comments
 (0)