68
68
69
69
EXAMPLES::
70
70
71
- sage: # long time
72
71
sage: P2.<x,y,z> = ProjectiveSpace(GF(17), 2)
73
72
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
74
73
sage: F = C.function_field()
@@ -155,7 +154,6 @@ class JacobianPoint(JacobianPoint_base):
155
154
156
155
EXAMPLES::
157
156
158
- sage: # long time
159
157
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
160
158
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
161
159
sage: b = C([0,1,0]).place()
@@ -178,7 +176,6 @@ def __init__(self, parent, w):
178
176
179
177
TESTS::
180
178
181
- sage: # long time
182
179
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
183
180
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
184
181
sage: b = C([0,1,0]).place()
@@ -199,7 +196,6 @@ def _repr_(self):
199
196
200
197
EXAMPLES::
201
198
202
- sage: # long time
203
199
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
204
200
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
205
201
sage: h = C.function(y/x).divisor_of_poles()
@@ -222,7 +218,6 @@ def __hash__(self):
222
218
223
219
EXAMPLES::
224
220
225
- sage: # long time
226
221
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
227
222
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
228
223
sage: F = C.function_field()
@@ -247,7 +242,6 @@ def _richcmp_(self, other, op):
247
242
248
243
EXAMPLES::
249
244
250
- sage: # long time
251
245
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
252
246
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
253
247
sage: h = C.function(y/x).divisor_of_poles()
@@ -281,7 +275,6 @@ def _add_(self, other):
281
275
282
276
EXAMPLES::
283
277
284
- sage: # long time
285
278
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
286
279
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
287
280
sage: h = C.function(y/x).divisor_of_poles()
@@ -313,7 +306,6 @@ def _neg_(self):
313
306
314
307
EXAMPLES::
315
308
316
- sage: # long time
317
309
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
318
310
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
319
311
sage: F = C.function_field()
@@ -348,7 +340,6 @@ def _rmul_(self, n):
348
340
349
341
EXAMPLES::
350
342
351
- sage: # long time
352
343
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
353
344
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
354
345
sage: h = C.function(y/x).divisor_of_poles()
@@ -372,7 +363,6 @@ def multiple(self, n):
372
363
373
364
EXAMPLES::
374
365
375
- sage: # long time
376
366
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
377
367
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
378
368
sage: h = C.function(y/x).divisor_of_poles()
@@ -404,7 +394,6 @@ def addflip(self, other):
404
394
405
395
EXAMPLES::
406
396
407
- sage: # long time
408
397
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
409
398
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
410
399
sage: h = C.function(y/x).divisor_of_poles()
@@ -437,7 +426,6 @@ def defining_matrix(self):
437
426
438
427
EXAMPLES::
439
428
440
- sage: # long time
441
429
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
442
430
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
443
431
sage: h = C.function(y/x).divisor_of_poles()
@@ -462,7 +450,6 @@ def divisor(self):
462
450
463
451
EXAMPLES::
464
452
465
- sage: # long time
466
453
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
467
454
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
468
455
sage: F = C.function_field()
@@ -506,7 +493,6 @@ class JacobianGroupEmbedding(Map):
506
493
507
494
EXAMPLES::
508
495
509
- sage: # long time
510
496
sage: k = GF(5)
511
497
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
512
498
sage: C = Curve(x^3 + z^3 - y^2*z, P2)
@@ -528,7 +514,6 @@ def __init__(self, base_group, extension_group):
528
514
529
515
TESTS::
530
516
531
- sage: # long time
532
517
sage: k = GF(5)
533
518
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
534
519
sage: C = Curve(x^3 + z^3 - y^2*z, P2)
@@ -553,7 +538,6 @@ def _repr_type(self):
553
538
554
539
TESTS::
555
540
556
- sage: # long time
557
541
sage: k = GF(5)
558
542
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
559
543
sage: C = Curve(x^3 + z^3 - y^2*z, P2)
@@ -577,7 +561,6 @@ def _call_(self, x):
577
561
578
562
TESTS::
579
563
580
- sage: # long time
581
564
sage: k = GF(5)
582
565
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
583
566
sage: C = Curve(x^3 + z^3 - y^2*z, P2)
@@ -609,7 +592,6 @@ class JacobianGroup(UniqueRepresentation, JacobianGroup_base):
609
592
610
593
EXAMPLES::
611
594
612
- sage: # long time
613
595
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
614
596
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
615
597
sage: h = C.function(y/x).divisor_of_poles()
@@ -627,7 +609,6 @@ def __init__(self, parent, function_field, base_div):
627
609
628
610
TESTS::
629
611
630
- sage: # long time
631
612
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
632
613
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
633
614
sage: h = C.function(y/x).divisor_of_poles()
@@ -639,16 +620,14 @@ def __init__(self, parent, function_field, base_div):
639
620
D0 = base_div
640
621
641
622
self ._base_div_degree = base_div .degree ()
642
- self ._V_cache = 10 * [None ]
643
-
644
- V_cache = self ._V_cache
623
+ self ._V_cache = dict ()
645
624
646
625
def V (n ):
647
- if n in V_cache :
648
- return V_cache [n ]
626
+ if n in self . _V_cache :
627
+ return self . _V_cache [n ]
649
628
650
629
Vn , from_Vn , to_Vn = (n * D0 ).function_space ()
651
- V_cache [n ] = (Vn , from_Vn , to_Vn )
630
+ self . _V_cache [n ] = (Vn , from_Vn , to_Vn )
652
631
653
632
return Vn , from_Vn , to_Vn
654
633
@@ -692,7 +671,6 @@ def _repr_(self):
692
671
693
672
EXAMPLES::
694
673
695
- sage: # long time
696
674
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
697
675
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
698
676
sage: h = C.function(y/x).divisor_of_poles()
@@ -714,7 +692,6 @@ def _wd_from_divisor(self, x):
714
692
715
693
TESTS:
716
694
717
- sage: # long time
718
695
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
719
696
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
720
697
sage: h = C.function(y/x).divisor_of_poles()
@@ -741,7 +718,6 @@ def _element_constructor_(self, x):
741
718
742
719
TESTS::
743
720
744
- sage: # long time
745
721
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
746
722
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
747
723
sage: h = C.function(y/x).divisor_of_poles()
@@ -800,7 +776,6 @@ def point(self, divisor):
800
776
801
777
EXAMPLES::
802
778
803
- sage: # long time
804
779
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
805
780
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
806
781
sage: h = C.function(y/x).divisor_of_poles()
@@ -834,7 +809,6 @@ def zero(self):
834
809
835
810
EXAMPLES::
836
811
837
- sage: # long time
838
812
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
839
813
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
840
814
sage: h = C.function(y/x).divisor_of_poles()
@@ -866,7 +840,6 @@ class JacobianGroup_finite_field(JacobianGroup, JacobianGroup_finite_field_base)
866
840
867
841
EXAMPLES::
868
842
869
- sage: # long time
870
843
sage: k = GF(7)
871
844
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
872
845
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
@@ -890,7 +863,6 @@ def __init__(self, parent, function_field, base_div):
890
863
891
864
TESTS::
892
865
893
- sage: # long time
894
866
sage: k = GF(7)
895
867
sage: P2.<x,y,z> = ProjectiveSpace(k, 2)
896
868
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
@@ -981,7 +953,6 @@ def _frobenius_on(self, pt):
981
953
982
954
TESTS::
983
955
984
- sage: # long time
985
956
sage: k = GF(7)
986
957
sage: A.<x,y> = AffineSpace(k,2)
987
958
sage: C = Curve(y^2 + x^3 + 2*x + 1).projective_closure()
@@ -1016,15 +987,13 @@ def __init__(self, function_field, base_div, model, **kwds):
1016
987
1017
988
TESTS::
1018
989
1019
- sage: # long time
1020
990
sage: P2.<x,y,z> = ProjectiveSpace(GF(7), 2)
1021
991
sage: C = Curve(x^3 + 5*z^3 - y^2*z, P2)
1022
992
sage: J = C.jacobian(model='km_large')
1023
993
sage: TestSuite(J).run(skip=['_test_elements', '_test_pickling'])
1024
994
1025
995
::
1026
996
1027
- sage: # long time
1028
997
sage: J = C.jacobian(model='km_unknown')
1029
998
Traceback (most recent call last):
1030
999
...
0 commit comments