@@ -129,11 +129,11 @@ class AffineGroup(UniqueRepresentation, Group):
129
129
130
130
Some additional ways to create affine groups::
131
131
132
- sage: A = AffineSpace(2, GF(4,'a')); A
132
+ sage: A = AffineSpace(2, GF(4,'a')); A # optional - sage.rings.finite_rings
133
133
Affine Space of dimension 2 over Finite Field in a of size 2^2
134
- sage: G = AffineGroup(A); G
134
+ sage: G = AffineGroup(A); G # optional - sage.rings.finite_rings
135
135
Affine Group of degree 2 over Finite Field in a of size 2^2
136
- sage: G is AffineGroup(2,4) # shorthand
136
+ sage: G is AffineGroup(2,4) # shorthand # optional - sage.rings.finite_rings
137
137
True
138
138
139
139
sage: V = ZZ^3; V
@@ -152,10 +152,10 @@ def __classcall__(cls, *args, **kwds):
152
152
153
153
EXAMPLES::
154
154
155
- sage: A = AffineSpace(2, GF(4,'a'))
156
- sage: AffineGroup(A) is AffineGroup(2,4)
155
+ sage: A = AffineSpace(2, GF(4,'a')) # optional - sage.rings.finite_rings
156
+ sage: AffineGroup(A) is AffineGroup(2,4) # optional - sage.rings.finite_rings
157
157
True
158
- sage: AffineGroup(A) is AffineGroup(2, GF(4,'a'))
158
+ sage: AffineGroup(A) is AffineGroup(2, GF(4,'a')) # optional - sage.rings.finite_rings
159
159
True
160
160
sage: A = AffineGroup(2, QQ)
161
161
sage: V = QQ^2
@@ -202,10 +202,10 @@ def __init__(self, degree, ring):
202
202
203
203
TESTS::
204
204
205
- sage: G = AffineGroup(2, GF(5)); G
205
+ sage: G = AffineGroup(2, GF(5)); G # optional - sage.rings.finite_rings
206
206
Affine Group of degree 2 over Finite Field of size 5
207
- sage: TestSuite(G).run()
208
- sage: G.category()
207
+ sage: TestSuite(G).run() # optional - sage.rings.finite_rings
208
+ sage: G.category() # optional - sage.rings.finite_rings
209
209
Category of finite groups
210
210
211
211
sage: Aff6 = AffineGroup(6, QQ)
@@ -264,8 +264,8 @@ def _latex_(self):
264
264
265
265
EXAMPLES::
266
266
267
- sage: G = AffineGroup(6, GF(5))
268
- sage: latex(G)
267
+ sage: G = AffineGroup(6, GF(5)) # optional - sage.rings.finite_rings
268
+ sage: latex(G) # optional - sage.rings.finite_rings
269
269
\mathrm{Aff}_{6}(\Bold{F}_{5})
270
270
"""
271
271
return "\\ mathrm{Aff}_{%s}(%s)" % (self .degree (),
@@ -277,7 +277,7 @@ def _repr_(self):
277
277
278
278
EXAMPLES::
279
279
280
- sage: AffineGroup(6, GF(5))
280
+ sage: AffineGroup(6, GF(5)) # optional - sage.rings.finite_rings
281
281
Affine Group of degree 6 over Finite Field of size 5
282
282
"""
283
283
return "Affine Group of degree %s over %s" % (self .degree (),
@@ -289,7 +289,7 @@ def cardinality(self):
289
289
290
290
EXAMPLES::
291
291
292
- sage: AffineGroup(6, GF(5)).cardinality()
292
+ sage: AffineGroup(6, GF(5)).cardinality() # optional - sage.rings.finite_rings
293
293
172882428468750000000000000000
294
294
sage: AffineGroup(6, ZZ).cardinality()
295
295
+Infinity
@@ -301,17 +301,15 @@ def degree(self):
301
301
"""
302
302
Return the dimension of the affine space.
303
303
304
- OUTPUT:
305
-
306
- An integer.
304
+ OUTPUT: An integer.
307
305
308
306
EXAMPLES::
309
307
310
- sage: G = AffineGroup(6, GF(5))
311
- sage: g = G.an_element()
312
- sage: G.degree()
308
+ sage: G = AffineGroup(6, GF(5)) # optional - sage.rings.finite_rings
309
+ sage: g = G.an_element() # optional - sage.rings.finite_rings
310
+ sage: G.degree() # optional - sage.rings.finite_rings
313
311
6
314
- sage: G.degree() == g.A().nrows() == g.A().ncols() == g.b().degree()
312
+ sage: G.degree() == g.A().nrows() == g.A().ncols() == g.b().degree() # optional - sage.rings.finite_rings
315
313
True
316
314
"""
317
315
return self ._degree
@@ -329,8 +327,8 @@ def matrix_space(self):
329
327
330
328
EXAMPLES::
331
329
332
- sage: G = AffineGroup(3, GF(5))
333
- sage: G.matrix_space()
330
+ sage: G = AffineGroup(3, GF(5)) # optional - sage.rings.finite_rings
331
+ sage: G.matrix_space() # optional - sage.rings.finite_rings
334
332
Full MatrixSpace of 3 by 3 dense matrices over Finite Field of size 5
335
333
"""
336
334
d = self .degree ()
@@ -343,8 +341,8 @@ def vector_space(self):
343
341
344
342
EXAMPLES::
345
343
346
- sage: G = AffineGroup(3, GF(5))
347
- sage: G.vector_space()
344
+ sage: G = AffineGroup(3, GF(5)) # optional - sage.rings.finite_rings
345
+ sage: G.vector_space() # optional - sage.rings.finite_rings
348
346
Vector space of dimension 3 over Finite Field of size 5
349
347
"""
350
348
return FreeModule (self .base_ring (), self .degree ())
@@ -373,8 +371,8 @@ def linear_space(self):
373
371
374
372
EXAMPLES::
375
373
376
- sage: G = AffineGroup(3, GF(5))
377
- sage: G.linear_space()
374
+ sage: G = AffineGroup(3, GF(5)) # optional - sage.rings.finite_rings
375
+ sage: G.linear_space() # optional - sage.rings.finite_rings
378
376
Full MatrixSpace of 4 by 4 dense matrices over Finite Field of size 5
379
377
"""
380
378
dp = self .degree () + 1
@@ -388,14 +386,12 @@ def linear(self, A):
388
386
389
387
- ``A`` -- anything that determines a matrix
390
388
391
- OUTPUT:
392
-
393
- The affine group element `x \mapsto A x`.
389
+ OUTPUT: The affine group element `x \mapsto A x`.
394
390
395
391
EXAMPLES::
396
392
397
- sage: G = AffineGroup(3, GF(5))
398
- sage: G.linear([1,2,3,4,5,6,7,8,0])
393
+ sage: G = AffineGroup(3, GF(5)) # optional - sage.rings.finite_rings
394
+ sage: G.linear([1,2,3,4,5,6,7,8,0]) # optional - sage.rings.finite_rings
399
395
[1 2 3] [0]
400
396
x |-> [4 0 1] x + [0]
401
397
[2 3 0] [0]
@@ -411,14 +407,12 @@ def translation(self, b):
411
407
412
408
- ``b`` -- anything that determines a vector
413
409
414
- OUTPUT:
415
-
416
- The affine group element `x \mapsto x + b`.
410
+ OUTPUT: The affine group element `x \mapsto x + b`.
417
411
418
412
EXAMPLES::
419
413
420
- sage: G = AffineGroup(3, GF(5))
421
- sage: G.translation([1,4,8])
414
+ sage: G = AffineGroup(3, GF(5)) # optional - sage.rings.finite_rings
415
+ sage: G.translation([1,4,8]) # optional - sage.rings.finite_rings
422
416
[1 0 0] [1]
423
417
x |-> [0 1 0] x + [4]
424
418
[0 0 1] [3]
@@ -446,12 +440,12 @@ def reflection(self, v):
446
440
447
441
EXAMPLES::
448
442
449
- sage: G = AffineGroup(3, QQ)
450
- sage: G.reflection([1,0,0])
443
+ sage: G = AffineGroup(3, QQ) # optional - sage.rings.finite_rings
444
+ sage: G.reflection([1,0,0]) # optional - sage.rings.finite_rings
451
445
[-1 0 0] [0]
452
446
x |-> [ 0 1 0] x + [0]
453
447
[ 0 0 1] [0]
454
- sage: G.reflection([3,4,-5])
448
+ sage: G.reflection([3,4,-5]) # optional - sage.rings.finite_rings
455
449
[ 16/25 -12/25 3/5] [0]
456
450
x |-> [-12/25 9/25 4/5] x + [0]
457
451
[ 3/5 4/5 0] [0]
@@ -470,13 +464,13 @@ def random_element(self):
470
464
471
465
EXAMPLES::
472
466
473
- sage: G = AffineGroup(4, GF(3))
474
- sage: G.random_element() # random
467
+ sage: G = AffineGroup(4, GF(3)) # optional - sage.rings.finite_rings
468
+ sage: G.random_element() # random # optional - sage.rings.finite_rings
475
469
[2 0 1 2] [1]
476
470
[2 1 1 2] [2]
477
471
x |-> [1 0 2 2] x + [2]
478
472
[1 1 1 1] [2]
479
- sage: G.random_element() in G
473
+ sage: G.random_element() in G # optional - sage.rings.finite_rings
480
474
True
481
475
"""
482
476
A = self ._GL .random_element ()
@@ -490,8 +484,8 @@ def _an_element_(self):
490
484
491
485
TESTS::
492
486
493
- sage: G = AffineGroup(4,5)
494
- sage: G.an_element() in G
487
+ sage: G = AffineGroup(4,5) # optional - sage.rings.finite_rings
488
+ sage: G.an_element() in G # optional - sage.rings.finite_rings
495
489
True
496
490
"""
497
491
A = self ._GL .an_element ()
@@ -504,8 +498,8 @@ def some_elements(self):
504
498
505
499
EXAMPLES::
506
500
507
- sage: G = AffineGroup(4,5)
508
- sage: G.some_elements()
501
+ sage: G = AffineGroup(4,5) # optional - sage.rings.finite_rings
502
+ sage: G.some_elements() # optional - sage.rings.finite_rings
509
503
[ [2 0 0 0] [1]
510
504
[0 1 0 0] [0]
511
505
x |-> [0 0 1 0] x + [0]
@@ -518,7 +512,7 @@ def some_elements(self):
518
512
[0 1 0 0] [...]
519
513
x |-> [0 0 1 0] x + [...]
520
514
[0 0 0 1] [...]]
521
- sage: all(v.parent() is G for v in G.some_elements())
515
+ sage: all(v.parent() is G for v in G.some_elements()) # optional - sage.rings.finite_rings
522
516
True
523
517
524
518
sage: G = AffineGroup(2,QQ)
0 commit comments