#模运算 #数论 #代数 #二次剩余

quadratic_residues

用于计算整数二次剩余的库

5 个版本

0.1.4 2024 年 6 月 16 日
0.1.3 2024 年 6 月 16 日
0.1.2 2024 年 6 月 16 日
0.1.1 2024 年 6 月 16 日
0.1.0 2024 年 6 月 16 日

#549 in 数学

MIT 许可证

6KB

Rust 用于计算整数二次剩余的 Crate

描述

在数论中,如果一个整数 q 在模 n 意义下与一个完全平方数同余;即存在一个整数 x 使得:$$x^2 \equiv q \pmod{n}$$,则称 q 为模 n 的二次剩余;否则,称 q 为模 n 的二次非剩余。

最初是数论中模算术分支的抽象数学概念,现在二次剩余在从声学工程到密码学和大型数分解的众多应用中被使用。

来源:https://en.wikipedia.org/wiki/Quadratic_residue

为了快速了解二次剩余,我推荐观看这个视频,由Michael Penn提供。

用法

将 Crate 添加到您的项目

使用 cargo

cargo add quadratic_residues

或者手动将其添加到您的 Cargo.toml 文件中

[dependencies]
quadratic_residues = "0.1.4"

在您的项目中使用该 Crate

use quadratic_residues::{ quadratic_residues, quadratic_non_residues, quadratic_residues_all };

示例

quadratic_residues(7) => [1, 2, 4] // returns the quadratic residues of 7
quadratic_non_residues(7) => [3, 5, 6] // returns the quadratic non-residues of 7
quadratic_residues_all(7) => [1, 4, 2, 2, 4, 1] // returns the quadratic residues of 7 including duplicates

无运行时依赖