关于群论证明费马小定理?

 

这篇博客就是讲证费马的,没什么意思。

 

既然是要用群论证明费马小定理,那么我们先用数论证明一下。

(以下的 p 为一个质数)

 

首先我们考虑 一个前置定理:

 

第一个证明

 

若 $(c,p) =1$ (即 c 与 p 的 gcd 为 1),且 $ac ≡ bc (mod\ p)$ , 那么由 $a ≡ b (mod\ p)$

 

证:

∵$ac≡ bc ( mod\ p )$ 

∴$(a-b)c≡0 (mod\ p)$

∴(a-b)c 是 p 的整数倍

又∵$(c,p)=1$

∴$a-b≡0 (mod\ p)$,即 $a≡b (mod\ p)$

得证!

 

 

第二个证明

然后我们进入正题,假设有正整数 a (a<p) 满足条件 $(a,p)=1$ ,那么我们将 a 乘上 1~p-1 后可以构成一个 %p 的完全剩余系

 

证:

假设存在 $xa≡ya(mod\ p)$,且 $x≠y$

 

∵ a 与 p 互质

 

∴原式成立当且仅当 $x≡y(mod\ p)$ 

 

又∵x,y∈[1,p-1] 

 

∴ $x≡y(mod\ p)$ 当且仅当 $x=y$,与已知条件矛盾

 

∴得证假设不成立,原命题成立

 

第三个证明

 

接下来证明 $a^{p-1}≡1 (mod\ p)$

 

证:

又∵$1,....,p-1$ 是 %p 的完全剩余系

 

∴有 $1*2*...*(p-1) ≡ a*2a*3a*...*(p-1)a (mod\ p)$,即$(p-1)!≡p-1!*a^{p-1} (mod\ p)$

 

又 ∵ p 是质数,所以 $((p-1)!,p)=1$,即 (p-1)! 与 p 互质

 

∴ $a^{p-1}≡1(mod\ p)$

 

得证!

 


 

 

然后我们就进入第二个阶段,用群论证明费马小定理吧。

 

首先如果你会证拉格朗日定理那么这里就没什么难度了。

 

那么我们先假设拉格朗日定理成立,后面再来证明它。

 

哦对了,拉格朗日定理是什么都还没讲呢:

 

Lagrange定理 

  设 H<=G ,如果|G|=N, |H|=n, 且有 [G:H]=j ,那么 N=nj 。

其中 [G:H]=j 表示子群 H 在 G 中的左(右)陪集个数(当然有可能 j 是无穷大)。 所谓左(右)陪集的个数的含义就是左(右)陪集中本质不同的集合(注意这里讲的是集合)个数。

 

那么我们可以得到一个推论就是: 对于 G 中的任意元素 a , a 的阶为 |G|  的因子。

那么 a 的阶就是以 a 为生成元构成的群的大小,<a> 就是 a 构成的一个循环群。

 

 

那么这里我们就可以证明出费马小定理了。

 

也就是说我们令 G 为 1~p-1 构成的 %p 意义下的乘法群(p 仍然是质数),

然后 G 中的任意元素 a 必然满足 $a^{p-1} %p = 1$ 

证:

设 a 构成的循环群大小为 d,则 $a^d ≡ 1 (mod\ p)$

 

又∵根据 Lagrange定理 可得 d|(p-1)

 

令 j =(p-1)/d 

 

∵ $a^{d*j}  ≡ 1(mod\ p)$  

 

∴ $a^{p-1} ≡ 1(mod\ p)$

得证!

 

 

然鹅 Lagrange定理 真的懒得证了,所以这里就贴个网址你自己去看吧!

 

提醒一下,里面要用到陪集的性质,也就是两个左(右)陪集满足:

 

1. aH=bH

2. aH∩bH=∅

 

顺便提一下,这样可以连着蒙哥马利快速模的正确性一起证掉(当然这里 p 还是质数)

 

因为如果 $a^{p-1}  ≡ 1(mod\ p) $,那么也就是 $a*a^{p-2} ≡ 1(mod\ p)$

 

根据逆元定义, $a^{p-2}%p$ 就是 a 在模 p 意义下的逆元咯~

 

然后水过了一篇证明(这能说是伪证么2333)

 

转载于:https://www.cnblogs.com/Judge/p/10420927.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/249596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring 源码-context

1 spring-context 模块概要 该模块主要实现在spring-beans 模块的扩展&#xff0c;主要对aop支持及el表达式的实现 分析示例 public static void main(String[] args){ClassPathXmlApplicationContext context new ClassPathXmlApplicationContext("spring-aop.xml"…

标示符和关键字的总结--希望别再犯错

&#xff08;一&#xff09;Java关键字的表 一共50个关键字&#xff0c;如下表 其中绝大部分关键词是Java语法发布之初就约定好的&#xff0c;少部分关键词是随Java语言发展后加入的。 strictfp JDK1.2 加入 assert JDK1.4 加入 enum JDK5.0 加入 还有少数单词&#xff0c;目前…

历届试题 打印十字图

问题描述 小明为某机构设计了一个十字型的徽标&#xff08;并非红十字会啊&#xff09;&#xff0c;如下所示&#xff1a; ..$$$$$$$$$$$$$....$...........$..$$$.$$$$$$$$$.$$$$...$.......$...$$.$$$.$$$$$.$$$.$$.$...$...$...$.$$.$.$$$.$.$$$.$.$$.$.$...$...$.$.$$.$.$.…

Spring BeanDefinition

BeanDefinition&#xff0c;顾名思义&#xff0c;是一个对象(Bean)在Spring中描述&#xff0c;其核心类图&#xff1a; 从类图我们详细了解BeanDefinition。 BeanDefinition接口继承自BeanMetadataElement和AttributeAccessor两个接口。 BeanMetadataElement&#xff1a;bean…

乐尚网络:小程序商城零售行业10大新赋能

微信小程序上线以来&#xff0c;各行各业积极入场小程序&#xff0c;着手打造属于自己的小程序生态。小程序形态多样&#xff0c;适合你的小程序才是最好的&#xff1b;在众多形态中&#xff0c;小程序商城可以说是零售行业的主体形态了&#xff0c;因为通过平台直接实现交易是…

深度学习中的正则化

正则化方法有如下几种&#xff1a; 一、参数范数惩罚 其中L2、L1参数正则化介绍与关系如下 1、L2 参数正则化 直观解释如下&#xff1a; 2、L1 参数正则化 二、获取更多数据&#xff08;扩样本&#xff09; 避免过拟合的基本方法之一是从数据源获得更多数据&#xff0c;当训练数…

spring uml

spring执行流程&#xff1a; 1&#xff1a; 加载spring.xml文件 2&#xff1a; 创建xml文件解析器 3&#xff1a; 获取命名空间&#xff0c;即在spring.xml文件中的 http://www.springframework.org/schema/context 4&#xff1a; 根据命名空间找到命名空间处理器&#xff0c;在…

「造个轮子」——cicada(轻量级 WEB 框架)

前言 俗话说 「不要重复造轮子」&#xff0c;关于是否有必要不再本次讨论范围。 创建这个项目的主要目的还是提升自己&#xff0c;看看和知名类开源项目的差距以及学习优秀的开源方式。 好了&#xff0c;现在着重来谈谈 cicada 这个项目的核心功能。 我把他定义为一个快速、轻量…

基于owncloud构建私有云储存网盘

注意事项&#xff1a;需要ping通外网 需要LAMP架构yum -y install httpd php php-mysql mariadb-server mariadb sqlite php-dom php-mbstring php-gd php-pdo 开启服务[rootowncloud ~]# setenforce 0setenforce: SELinux is disabled[rootowncloud ~]# systemctl stop firewa…

Spring 源码分析之AbstractApplicationContext源码分析

首先我觉得分析ApplicationContext必须从它的实现类开始进行分析&#xff0c;AbstractApplicationContext我觉得是一个不错的选择&#xff0c;那我们就从这里开始逐一分析吧&#xff0c;首先我自己手画了一张图&#xff0c;作为索引吧&#xff0c;其中蓝色的为类&#xff0c;紫…

[USACO15FEB]Superbull (最小生成树)

题目链接 Solution 基本上就是个板子. 因为 \(n\) 很小,只有 \(2000\),所以直接暴力建图,然后跑最小生成树就好了. Code #include<bits/stdc.h> #define ll long long using namespace std; const int maxn2008; struct sj{int to,fr; ll w; }a[maxn*maxn]; int fa[maxn]…

Java中九大内置对象

1、Request对象 该对象封装了用户提交的信息&#xff0c;通过调用该对象相应的方法可以获取封装的信息&#xff0c;即使用该对象可以获取用户提交的信息。 当Request对象获取客户提交的汉字字符时&#xff0c;会出现乱码问题&#xff0c;必须进行特殊处理。首先&#xff0c;…

ORACLE导出导入意外终止导致 ORACLE initialization or shutdown in progress 问题解决

由于意外情况导致 ORACLE initialization or shutdown in progress 个人理解为主要是归档日志出现问题&#xff0c; 首先cmd 1.sqlplus /nolog 进入sqlplus 2.connect /as sysdba 连接dba 3.shutdown normal 卸载数据库 4.startup mount;重启例程 5.alter database open;开…

Spring中资源的加载ResourceLoader

Spring中资源的加载是定义在ResourceLoader接口中的&#xff0c;它跟前面提到的抽象资源的关系如下&#xff1a; ResourceLoader的源码 public interface ResourceLoader { /** Pseudo URL prefix for loading from the class path: "classpath:" */ String CLAS…

Codeforces Round #540 (Div. 3)(部分题解)

链接:http://codeforces.com/contest/1118 来源:Codeforces 文章目录A. Water BuyingB. Tanya and Candies(前缀和)D1. Coffee and Coursework (Easy version)(贪心)D2. Coffee and Coursework (Hard Version)(二分)A. Water Buying 题意:用最小的花费买到刚好合适的东西.我们可…

集合一些方法陷阱

一&#xff1a;asList 数组转ArrayList陷阱&#xff1a; asList() 源码&#xff1a;public static <T> List<T> asList(T... a) { return new ArrayList<T>(a); } private final E[] a; ArrayList(E[] array) { if (arraynull) throw new NullPointerExcept…

java项目中的classpath

在java项目中&#xff0c;你一定碰到过classpath&#xff0c;通常情况下&#xff0c;我们是用它来指定配置/资源文件的路径。在刚开始学习的时候&#xff0c;自己也糊里糊涂&#xff0c;但是现在&#xff0c;是时候弄清楚它到底是指什么了。 顾名思义&#xff0c;classpath就是…

C++命名空间(namespace)

在c中&#xff0c;名称&#xff08;name&#xff09;可以是符号常量、变量、函数、结构、枚举、类和对象等等。工程越大&#xff0c;名称互相冲突性的可能性越大。另外使用多个厂商的类库时&#xff0c;也可能导致名称冲突。为了避免&#xff0c;在大规模程序的设计中&#xff…

P1556 幸福的路

题意&#xff1a;平面内有N头牛$N\le 10$john从&#xff08;0,0&#xff09;出发&#xff0c;最后回到(0,0) 只有走到牛那里john才可以改变方向&#xff0c;否则沿着直线走 问john经过每一头牛并且在每一头牛出恰好改变方向一次的方案&#xff08;牛可以经过多次&#xff0c;但…

Class.getResource和ClassLoader.getResource

一案例驱动 二源码分析 三类加载器ClassLoader 四总结 五参考 一案例驱动 最近加载文件的时候遇到了一个问题&#xff0c;很有意思&#xff01; 具体看下面案例代码 public class TestClassLoader {public static void main(String[] args) {System.out.println(TestClassLoad…