Skip to content

Commit 1bc26c2

Browse files
author
Matthias Koeppe
committed
sage.rings.finite_rings: Update # needs
1 parent 6042ff7 commit 1bc26c2

File tree

3 files changed

+26
-23
lines changed

3 files changed

+26
-23
lines changed

src/sage/rings/finite_rings/element_pari_ffelt.pyx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1333,9 +1333,10 @@ cdef class FiniteFieldElement_pari_ffelt(FinitePolyExtElement):
13331333
13341334
EXAMPLES::
13351335
1336+
sage: # needs sage.libs.gap
13361337
sage: F = FiniteField(2^3, 'aa', impl='pari_ffelt')
13371338
sage: aa = F.multiplicative_generator()
1338-
sage: gap(aa) # indirect doctest
1339+
sage: gap(aa) # indirect doctest
13391340
Z(2^3)
13401341
sage: b = F.multiplicative_generator()
13411342
sage: a = b^3
@@ -1350,6 +1351,7 @@ cdef class FiniteFieldElement_pari_ffelt(FinitePolyExtElement):
13501351
13511352
You can specify the instance of the Gap interpreter that is used::
13521353
1354+
sage: # needs sage.libs.gap
13531355
sage: F = FiniteField(next_prime(200)^2, 'a', impl='pari_ffelt')
13541356
sage: a = F.multiplicative_generator()
13551357
sage: a._gap_ (gap)
@@ -1359,6 +1361,7 @@ cdef class FiniteFieldElement_pari_ffelt(FinitePolyExtElement):
13591361
13601362
Gap only supports relatively small finite fields::
13611363
1364+
sage: # needs sage.libs.gap
13621365
sage: F = FiniteField(next_prime(1000)^2, 'a', impl='pari_ffelt')
13631366
sage: a = F.multiplicative_generator()
13641367
sage: a._gap_init_()

src/sage/rings/finite_rings/finite_field_base.pyx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ Base class for finite fields
44
55
TESTS::
66
7-
sage: K.<a> = NumberField(x^2 + 1)
8-
sage: F = K.factor(3)[0][0].residue_field()
9-
sage: loads(dumps(F)) == F
7+
sage: K.<a> = NumberField(x^2 + 1) # needs sage.rings.number_field
8+
sage: F = K.factor(3)[0][0].residue_field() # needs sage.rings.number_field
9+
sage: loads(dumps(F)) == F # needs sage.rings.number_field
1010
True
1111
1212
AUTHORS:

src/sage/rings/finite_rings/finite_field_constructor.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
7474
::
7575
76-
sage: k = GF(5^2,'c'); type(k)
76+
sage: k = GF(5^2,'c'); type(k) # needs sage.libs.linbox
7777
<class 'sage.rings.finite_rings.finite_field_givaro.FiniteField_givaro_with_category'>
7878
7979
One can also give the cardinality `q=p^n` as the tuple `(p,n)`::
@@ -83,7 +83,7 @@
8383
8484
::
8585
86-
sage: k = GF(2^16,'c'); type(k)
86+
sage: k = GF(2^16,'c'); type(k) # needs sage.libs.ntl
8787
<class 'sage.rings.finite_rings.finite_field_ntl_gf2e.FiniteField_ntl_gf2e_with_category'>
8888
8989
::
@@ -125,9 +125,9 @@
125125
126126
::
127127
128-
sage: k = GF(9,'alpha'); type(k)
128+
sage: k = GF(9,'alpha'); type(k) # needs sage.libs.linbox
129129
<class 'sage.rings.finite_rings.finite_field_givaro.FiniteField_givaro_with_category'>
130-
sage: k.base_ring()
130+
sage: k.base_ring() # needs sage.libs.linbox
131131
Finite Field of size 3
132132
133133
::
@@ -508,12 +508,12 @@ def create_key_and_extra_args(self, order, name=None, modulus=None, names=None,
508508
"""
509509
EXAMPLES::
510510
511-
sage: GF.create_key_and_extra_args(9, 'a')
511+
sage: GF.create_key_and_extra_args(9, 'a') # needs sage.libs.linbox
512512
((9, ('a',), x^2 + 2*x + 2, 'givaro', 3, 2, True, None, 'poly', True, True, True), {})
513513
514514
The order `q` can also be given as a pair `(p,n)`::
515515
516-
sage: GF.create_key_and_extra_args((3, 2), 'a')
516+
sage: GF.create_key_and_extra_args((3, 2), 'a') # needs sage.libs.linbox
517517
((9, ('a',), x^2 + 2*x + 2, 'givaro', 3, 2, True, None, 'poly', True, True, True), {})
518518
519519
We do not take invalid keyword arguments and raise a value error
@@ -527,28 +527,28 @@ def create_key_and_extra_args(self, order, name=None, modulus=None, names=None,
527527
Moreover, ``repr`` and ``elem_cache`` are ignored when not
528528
using givaro::
529529
530-
sage: GF.create_key_and_extra_args(16, 'a', impl='ntl', repr='poly')
530+
sage: GF.create_key_and_extra_args(16, 'a', impl='ntl', repr='poly') # needs sage.libs.ntl
531531
((16, ('a',), x^4 + x + 1, 'ntl', 2, 4, True, None, None, None, True, True), {})
532-
sage: GF.create_key_and_extra_args(16, 'a', impl='ntl', elem_cache=False)
532+
sage: GF.create_key_and_extra_args(16, 'a', impl='ntl', elem_cache=False) # needs sage.libs.ntl
533533
((16, ('a',), x^4 + x + 1, 'ntl', 2, 4, True, None, None, None, True, True), {})
534-
sage: GF(16, impl='ntl') is GF(16, impl='ntl', repr='foo')
534+
sage: GF(16, impl='ntl') is GF(16, impl='ntl', repr='foo') # needs sage.libs.ntl
535535
True
536536
537537
We handle extra arguments for the givaro finite field and
538538
create unique objects for their defaults::
539539
540-
sage: GF(25, impl='givaro') is GF(25, impl='givaro', repr='poly')
540+
sage: GF(25, impl='givaro') is GF(25, impl='givaro', repr='poly') # needs sage.libs.linbox
541541
True
542-
sage: GF(25, impl='givaro') is GF(25, impl='givaro', elem_cache=True)
542+
sage: GF(25, impl='givaro') is GF(25, impl='givaro', elem_cache=True) # needs sage.libs.linbox
543543
True
544-
sage: GF(625, impl='givaro') is GF(625, impl='givaro', elem_cache=False)
544+
sage: GF(625, impl='givaro') is GF(625, impl='givaro', elem_cache=False) # needs sage.libs.linbox
545545
True
546546
547547
We explicitly take ``structure``, ``implementation`` and ``prec`` attributes
548548
for compatibility with :class:`~sage.categories.pushout.AlgebraicExtensionFunctor`
549549
but we ignore them as they are not used, see :trac:`21433`::
550550
551-
sage: GF.create_key_and_extra_args(9, 'a', structure=None)
551+
sage: GF.create_key_and_extra_args(9, 'a', structure=None) # needs sage.libs.linbox
552552
((9, ('a',), x^2 + 2*x + 2, 'givaro', 3, 2, True, None, 'poly', True, True, True), {})
553553
554554
TESTS::
@@ -684,8 +684,8 @@ def create_object(self, version, key, **kwds):
684684
We try to create finite fields with various implementations::
685685
686686
sage: k = GF(2, impl='modn')
687-
sage: k = GF(2, impl='givaro')
688-
sage: k = GF(2, impl='ntl')
687+
sage: k = GF(2, impl='givaro') # needs sage.libs.linbox
688+
sage: k = GF(2, impl='ntl') # needs sage.libs.ntl
689689
sage: k = GF(2, impl='pari')
690690
Traceback (most recent call last):
691691
...
@@ -698,18 +698,18 @@ def create_object(self, version, key, **kwds):
698698
Traceback (most recent call last):
699699
...
700700
ValueError: the 'modn' implementation requires a prime order
701-
sage: k.<a> = GF(2^15, impl='givaro')
702-
sage: k.<a> = GF(2^15, impl='ntl')
701+
sage: k.<a> = GF(2^15, impl='givaro') # needs sage.libs.linbox
702+
sage: k.<a> = GF(2^15, impl='ntl') # needs sage.libs.ntl
703703
sage: k.<a> = GF(2^15, impl='pari')
704704
sage: k.<a> = GF(3^60, impl='modn')
705705
Traceback (most recent call last):
706706
...
707707
ValueError: the 'modn' implementation requires a prime order
708-
sage: k.<a> = GF(3^60, impl='givaro')
708+
sage: k.<a> = GF(3^60, impl='givaro') # needs sage.libs.linbox
709709
Traceback (most recent call last):
710710
...
711711
ValueError: q must be < 2^16
712-
sage: k.<a> = GF(3^60, impl='ntl')
712+
sage: k.<a> = GF(3^60, impl='ntl') # needs sage.libs.ntl
713713
Traceback (most recent call last):
714714
...
715715
ValueError: q must be a 2-power

0 commit comments

Comments
 (0)