最近学习了一下SageMath中的函数,在这里做个笔记,以供大家学习和参考。

1. random_prime(n,proof=None,lbound=2)

  • 该函数返回一个随机数 介于 lbound 和 n 之间,即从小于或等于n的素数集中随机选择返回的素数p。

  • 其中proof : bool类型或None(默认值:None)如果为False,则该函数使用伪素数测试,对于真正大的数,该测试快得多,但不提供素数证明。 如果为None,则使用全局默认值(请参阅“ sage.structure.proof.proof”)

2. FiniteField()

  • 该函数返回给定阶数的全局唯一有限域,该域具有由给定名称标记的生成器,并可能带有给定模数。

  • 别名:您也可以使用“ GF”代替“ FiniteField”,它们是相同的。

  • 参数:

  • order:一个素数

  • name: 字符串,可选。请注意,省略变量名称时(创建扩展字段)可能会有很大的速度损失,因为这样做会触发伪Conway多项式的计算,以定义素数字段扩展的连贯格。速度惩罚随着延伸度的大小和延伸度的因素的数量而增加。

  • modulus: (可选)字段的定义多项式,或指定用于生成此类多项式的算法的字符串。如果“ modulus”是字符串,则将其作为参数“ algorithm”传递给“ irreducible_element()”;有关该参数的允许值,请参见此处。特别是,您可以指定“ modulus =” primitive“”以获得基本多项式。如果不指定变量名,则可以不指定模数。

  • impl:(可选)一个字符串,用于指定有限域的实现。可能的值为:

    • modn:以p为模的整数环(仅适用于素数字段)。
    • givaro:仅适用于最多65521个元素的字段)。
    • ntl:-使用GF2X的NTL(仅在特征2中)。
    • pari or pari_ffelt:PARI的“ FFELT”类型(仅适用于 扩展字段)。
  • elem_cache: 默认值:order <500)缓存所有元素以避免创建时间;除非“ impl =‘givaro’”被忽略

  • repr: (默认:“‘poly’”)被忽略,除非“ impl =‘givaro’”;控制元素向用户打印的方式:

    • log: repr为“ log_repr()
    • int: repr是“ int_repr()
    • poly: repr是“ poly_repr()
  • check_irreducible:验证多项式模数是不可约的

  • proof:如果为“ True”,则使用可证明素性检验否则只能使用伪素数检验。

3. EllipticCurve()

  • 该函数的作用是构造一条椭圆曲线。

在Sage中,椭圆曲线始终由一个较长的Weierstrass方程(的系数)指定

  y ^ 2 + a_1 xy + a_3 y = x ^ 3 + a_2 x ^ 2 + a_4 x + a_6。

输入:

有几种方法可以构建椭圆曲线:

  • “ EllipticCurve([a1,a2,a3,a4,a6])”:具有给定a不变量的椭圆曲线。不变量被强制为一个公共父代。如果都是整数,则将它们强制转换为有理数。

  • “ EllipticCurve([a4,a6])”:与上述相同,但a_1 = a_2 = a_3 = 0。

  • “ EllipticCurve(label)”:使用给定的标签从Cremona数据库返回QQ上的椭圆曲线。标签是字符串,例如““ 11a”“或”“ 37b2”“。标签中的字母*必须为小写(Cremona的新标签)。

  • “ EllipticCurve(R,[a1,a2,a3,a4,a6])”:使用给定的a不变量在R上创建椭圆曲线。尽管大多数功能仅在字段上实现,但此处R可以是任意交换环。

  • “ EllipticCurve(j = j0)”或“ EllipticCurve_from_j(j0)”:返回一个j不变为“ j0”的椭圆曲线。

  • “ EllipticCurve(polynomial)”:从多项式系数中读取a不变式,请参阅“ EllipticCurve_from_Weierstrass_polynomial()”。

  • “ EllipticCurve(cubic,point)”:由平面三次方(三个变量的齐次多项式)定义的椭圆曲线,带有有理点。除了给出长度为2或5的* list 列表之外,还可以给出系数给一个元组*。

SageMath使用指南——笔记相关推荐

  1. Spark编程指南笔记

    Spark编程指南笔记 标签: spark 编程 笔记 | 发表时间:2015-02-02 16:00 | 作者: 分享到: 出处:http://blog.javachen.com/rss.xml 本 ...

  2. HTML5与CSS3权威指南笔记案例1

    第1章 <!DOCTYPE html> <meta charset = "UTF-8"> <title> Search </title&g ...

  3. 【高质量编程指南笔记】

    高质量编程指南-笔记 一.文件结构 1.1 版权和版本的声明 1.2 头文件的结构 1.3 定义(.cpp) 文件的结构 1.4 头文件的作用 1.5 目录结构 二.程序的版式 2.1 长行拆分 2. ...

  4. CISSP考试指南笔记:1.1安全目标

    We need to understand the core goals of security, which are to provide availability, integrity, and ...

  5. CSS设计指南 笔记3

    CSS设计指南 笔记3 3 定位元素 盒模型:浏览器为页面中的每个HTML元素生成的矩形盒子,都要按照可见版式模型(visual formatting model)在页面上排布 可见页面版式的三个属性 ...

  6. CISSP考试指南笔记:3.8 开放系统与封闭系统

    Open Systems Systems described as open are built upon standards, protocols, and interfaces that have ...

  7. Django企业开发实战 高效Python Web框架指南 笔记 (一)

    Django企业开发实战 高效Python Web框架指南 笔记 (一) 内容: 作者是 the5fire,他的博客地址:https://www.the5fire.com/957.html 2016年 ...

  8. 软件技能代码之外的生存指南笔记

    软件技能代码之外的生存指南笔记 职业 2.绝不要做他人都在做的事 大多数软件开发人员从职业生涯一开始就犯了几个严重的错误,其中最大的错误就是没有把自己的软件开发事业当作一桩生意来看待. 把雇主当做是你 ...

  9. 牛皮!这份GitHub上标星90.6K的Java面试指南+笔记,带你搞定96%的java面试

    前言 今年受疫情影响,面试难度增大,工作很难找,从延迟的金三银四,裁员的企业.人数众多的金九银十等方方面面都可以看得出来 今天,我们要分享的是,GitHub上标星90.6K的Java面试指南+笔记,这 ...

  10. Ctex入门指南笔记 -列表、表格、公式与图片

    Ctex入门指南笔记 列表.表格.公式与图片 觉得有用的话,欢迎一起讨论相互学习~ 本文为学习笔记,原版视频请移步: https://www.bilibili.com/video/BV1ua4y1p7 ...

最新文章

  1. #HTTP协议学习# (二)基本认证
  2. Python:PDB文件中原子和残基重新编号
  3. kaggle用命令提交
  4. javaScript第七天(1)
  5. mysql历史数据备份_Mysql存储过程历史表备份
  6. WPF中显示任意目录的图片或其他资源文件
  7. 大数据_Hbase-API访问_Java操作Hbase_判断表是否存在---Hbase工作笔记0012
  8. 浮动特性-脱标(HTML、CSS)
  9. 循环队列的实现笔记-c++
  10. 对SSH三大框架的理解
  11. js使用闭包循环为a标签正确添加事件
  12. NLPIR ICTCLAS2015分词系统的使用
  13. 威联通服务器操作系统,QNAP 威联通 453BT3 网络存储服务器 使用手记,Nas中的小钢炮...
  14. JAVA循环嵌套 方法的定义与重载 数组 数组异常 练习
  15. 微信小程序点击事件(bindtap)传递参数的方法
  16. GitHub创建token
  17. Android TalkingData集成 注意事项
  18. python3字符串格式化
  19. 《麦肯锡方法》读书笔记1
  20. python读取json文件,大批量写入mongo

热门文章

  1. html 静态网页如何在手机上访问,anywhere,http-server
  2. 华为s5720默认用户名和密码_华为华为交换机的默认用户名和密码是多少?谢谢!...
  3. nacos替代config-server和Euraka
  4. bootstrap布局_如何使用LayoutIt构建HTML Bootstrap布局!
  5. DH算法的简单的Java实现
  6. .net web页面嵌入海康视频(winform)
  7. dac生成信号频率取决于_关于高速AD/DAC测量及设计中82个疑难问题的解答
  8. fastdfs原理简析
  9. 今晚直播丨易鲸捷HTAP融合型分布式数据库问题诊断介绍
  10. 用SppdProjectHelper进行CAD图纸编号