2015-08-29 4 views
1

Я хочу построить эллиптической кривой над конечным полем с помощью шалфея математический интерфейс с помощью следующих команд:участок эллиптической кривой над конечным полем с использованием шалфей

p=2^255-19; 
F=Finite Field(p); 
C=Elliptic Curve(F,[0,486662,0,1,0]); 
plot(C, aspect_ratio = 1); 

Однако из-за размера кривой это порождает ошибку :

'OverflowError: range() result has too many items'. 

Как я могу решить эту проблему, или есть какой-либо другой способ построения этой кривой?

ответ

2

Подумайте об этом результате:

sage: len(C.points()) 
<same error> 

Ваших эллиптических кривые просто имеет слишком много точек для Python, чтобы иметь дело, гораздо меньше сюжета. Я бы предложил начать с получения нескольких баллов, а затем с помощью группового закона создать образец точек и заговорить. Я не знаю, сможете ли вы сделать это с поведением «из коробки», или если вам нужно будет подражать коду в sage/schemes/elliptic_curves/ell_finite_field.py in _points_via_group_structure(self), как в трассировке. Удачи!