sagemath_同余运算总结

同余运算

R.<x> = Zmod(module)[]

相当于将 x x x作为需要求得的未知数

Zmod()内填入同余运算的模数

f = x^3 + ...

将同余运算的所有项移到同一边,赋值给函数 f f f来表示

f.roots()

运行之后就求解出来;以列表形式返回所有解

列表内部是元组类型

或者

f.smallroots(upper)

以upper为界限在这个上限内求解根

例题

需要求解

n 2 ≡ p 3 + a ∗ p 2 + b ∗ p ( m o d   m o u d l e ) n^2 \equiv p^3 + a*p^2 + b*p(mod~moudle) n2p3+ap2+bp(mod moudle)

将同余式项全部移到一边

0 ≡ p 3 + a ∗ p 2 + b ∗ p − n 2 ( m o d   m o u d l e ) 0 \equiv p^3 + a*p^2+b*p-n^2(mod~moudle) 0p3+ap2+bpn2(mod moudle)

其中 a , b , m o u d l e , n a,b,moudle,n a,b,moudle,n已知;需要求解 p p p

那么在sage中写

R.<p> = Zmod(moudle)
f = p^3 + a*p^2 + b*p - n^2 
f.roots()

那么 p p p的所有满足该同余式的解就会返回出来

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

M3ng@L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值