当前位置: 首页 > article >正文

初等数论--欧拉函数及其性质

1. 定义

ϕ ( n ) \phi(n) ϕ(n)在数论中代表欧拉函数,

它的值为小于等于 n n n且与 n n n互质的正整数的个数。

2. 性质

  • p p p为质数,则 ϕ ( p ) = p − 1 \phi(p) =p-1 ϕ(p)=p1;

除了自身以外全都互质。

  • p p p为质数,则 ϕ ( p k ) = p k − p k − 1 \phi(p^k)=p^k-p^{k-1} ϕ(pk)=pkpk1

p k p^{k} pk不互质的一定是 p p p的倍数,即 p , 2 p , 3 p , ⋯ , p k − 1 p p,2p,3p,\cdots,p^{k-1}p p,2p,3p,,pk1p, 一共 p k − 1 p^{k-1} pk1个数,因此剩下的就是与 p k p^{k} pk互质的,因此 ϕ ( p k ) = p k − p k − 1 \phi(p^{k})=p^{k}-p^{k-1} ϕ(pk)=pkpk1

  • 欧拉函数定义式: ϕ ( n ) = n Π i = 1 m ( 1 − 1 p i ) \phi(n)=n\Pi_{i=1}^{m}(1-\frac{1}{p_i}) ϕ(n)=nΠi=1m(1pi1)

这条性质可以由算术基本定理和容斥原理证明,具体证明可以看欧拉函数积性证明。

  • 欧拉函数积性: gcd ⁡ ( a , b ) = 1 ⇒ ϕ ( a b ) = ϕ ( a ) ϕ ( b ) \gcd(a,b)=1 \Rightarrow \phi(ab)=\phi(a)\phi(b) gcd(a,b)=1ϕ(ab)=ϕ(a)ϕ(b)

同样可以看上面提到的文章中的证明。

  • a a a为质数且 a ∣ b a \mid b ab,则 ϕ ( a b ) = a ϕ ( b ) \phi(ab)=a \phi(b) ϕ(ab)=aϕ(b)

我们假设 b = a k m b=a^{k}m b=akm, 那么 ϕ ( b ) = ϕ ( a k m ) \phi(b)=\phi(a^km) ϕ(b)=ϕ(akm);

显然 gcd ⁡ ( a k , m ) = 1 \gcd(a^{k},m)=1 gcd(ak,m)=1,那么根据积性性质可得 ϕ ( b ) = ϕ ( a k m ) = ϕ ( a k ) ϕ ( m ) \phi(b)=\phi(a^{k}m)=\phi(a^{k})\phi(m) ϕ(b)=ϕ(akm)=ϕ(ak)ϕ(m)

再根据上面的性质 ϕ ( a k ) = a k − a k − 1 \phi(a^{k})=a^{k}-a^{k-1} ϕ(ak)=akak1

同理 ϕ ( a b ) = ϕ ( a k + 1 m ) = ϕ ( a k + 1 ) ϕ ( m ) = ( a k + 1 − a k ) ϕ ( m ) \phi(ab)=\phi(a^{k+1}m)=\phi(a^{k+1})\phi(m)=(a^{k+1}-a^k) \phi(m) ϕ(ab)=ϕ(ak+1m)=ϕ(ak+1)ϕ(m)=(ak+1ak)ϕ(m)

a ϕ ( b ) = a ( a k − a k − 1 ) ϕ ( m ) = ( a k + 1 − a k ) ϕ ( m ) a\phi(b)=a(a^k-a^{k-1})\phi(m)=(a^{k+1}-a^k)\phi(m) aϕ(b)=a(akak1)ϕ(m)=(ak+1ak)ϕ(m)

因此 a ϕ ( b ) = ϕ ( a b ) a\phi(b)=\phi(ab) aϕ(b)=ϕ(ab)

  • 因数的欧拉函数和等于 n n n: ∑ d ∣ n ϕ ( n d ) = ∑ d ∣ n ϕ ( d ) = n \sum_{d | n} \phi(\frac{n}{d}) = \sum_{d | n} \phi(d)=n dnϕ(dn)=dnϕ(d)=n

这个性质的证明不太好想,抄下来算了。

我们令全集 S n : = { 1 , 2 , ⋯ , n } S_n := \{ 1,2,\cdots,n\} Sn:={1,2,,n}

我们可以对这个集合根据与 n n n的最大公因数作划分

定义 A d : = { x ∣ gcd ⁡ ( x , n ) = d , x ∈ S n } A_d := \{ x| \gcd(x,n)=d, x \in S_n\} Ad:={xgcd(x,n)=d,xSn}

由于 gcd ⁡ ( x , n ) = d \gcd(x,n)=d gcd(x,n)=d,我们同时除一个 d d d得到 gcd ⁡ ( x d , n d ) = 1 \gcd(\frac{x}{d}, \frac{n}{d})=1 gcd(dx,dn)=1

因此 ∣ A d ∣ = ϕ ( n d ) |A_d|=\phi(\frac{n}{d}) Ad=ϕ(dn), 这一步是关键就是构建互质转换为欧拉函数。

将所有的最大公因数划分全部加起来

∑ d ∣ n ∣ A d ∣ = ∑ d ∣ n ϕ ( n d ) = ∣ S n ∣ = n \sum_{d|n} |A_d|=\sum_{d|n} \phi(\frac{n}{d})=|S_n|=n dnAd=dnϕ(dn)=Sn=n
根据因子的对称性,显然
∑ d ∣ n ϕ ( n d ) = ∑ d ∣ n ϕ ( d ) = n \sum_{d|n} \phi(\frac{n}{d})=\sum_{d|n}\phi(d) =n dnϕ(dn)=dnϕ(d)=n

Q . E . D Q.E.D Q.E.D

参考

豆包ai

相关文章:

初等数论--欧拉函数及其性质

1. 定义 ϕ ( n ) \phi(n) ϕ(n)在数论中代表欧拉函数, 它的值为小于等于 n n n且与 n n n互质的正整数的个数。 2. 性质 若 p p p为质数,则 ϕ ( p ) p − 1 \phi(p) p-1 ϕ(p)p−1; 除了自身以外全都互质。 若 p p p为质数,则 ϕ ( p…...

Java、javax 和 Jakarta有什么区别?

在 Java 开发中,我们经常会看到 java、javax 和 jakarta 这些包名前缀。本文将详细介绍这三个命名空间的含义、发展历程以及它们之间的关系,帮助你更好地理解 Java 生态系统。 一、Java:核心 API 的基础 ✅ 含义: java 是 Java 标准库的核心包名。所有以 java. 开头的类构…...

Java中的控制流语句:if、switch、for、foreach、while、do-while

Java中的控制流语句 Java中的控制流语句用于控制程序执行的流程。这些语句包括条件判断语句和循环语句。本文将详细介绍Java中的 if、switch、for、foreach、while、do-while控制流语句。 一、条件判断语句 1. if语句 if语句根据表达式的真假来决定是否执行代码块。 int x…...

GStreamer开发笔记(三):测试gstreamer/v4l2+sdl2/v4l2+QtOpengl打摄像头延迟和内存

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/147714800 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、O…...

科技成果鉴定测试有哪些内容?又有什么作用?

科技成果鉴定测试是评价科技成果质量和水平的方法之一,通过测试,可以对科技成果的技术优劣进行评估,从而为科技创新提供参考和指导。 一、科技成果鉴定测试的内容   1.技术评审:通过技术专家对项目进行详细的技术分析&#xff…...

基于Spring Boot + Vue 项目中引入deepseek方法

准备工作 在开始调用 DeepSeek API 之前,你需要完成以下准备工作: 1.访问 DeepSeek 官网,注册一个账号。 2.获取 API 密钥:登录 DeepSeek 平台,进入 API 管理 页面。创建一个新的 API 密钥(API Key&#x…...

A2A与MCP定义下,User,Agent,api(tool)间的交互流程图

官方图: 流程图: #mermaid-svg-2smjE8VYydjtLH0p {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-2smjE8VYydjtLH0p .error-icon{fill:#552222;}#mermaid-svg-2smjE8VYydjtLH0p .error-tex…...

蓝桥杯2025年第十六届省赛真题-水质检测

C语言代码&#xff1a; #include <stdio.h> #include <string.h>#define MAX_LEN 1000000int main() {char a[MAX_LEN 1], b[MAX_LEN 1];// 使用 scanf 读取字符数组scanf("%s", a);scanf("%s", b);int ans 0;int pre -1;int state -1;i…...

机器学习第二讲:对比传统编程:解决复杂规则场景

机器学习第二讲&#xff1a;对比传统编程&#xff1a;解决复杂规则场景 资料取自《零基础学机器学习》。 查看总目录&#xff1a;学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章&#xff1a;DeepSeek R1本地与线上满血版部署&#xff1a;超详细手把手指南 一、场景…...

[Windows] 东芝存储诊断工具1.30.8920(20170601)

[Windows] 东芝存储诊断工具 链接&#xff1a;https://pan.xunlei.com/s/VOPpMjGdWZOLceIjxLNiIsIEA1?pwduute# 适用型号 东芝消费类存储产品&#xff1a; 外置硬盘&#xff1a;Canvio 系列 内置硬盘&#xff1a;HDW****&#xff08;E300 / N300 / P300 / S300 / V300 / X30…...

[蓝桥杯 2025 省 B] 水质检测(暴力 )

暴力暴力 菜鸟第一次写题解&#xff0c;多多包涵&#xff01;&#xff01;! 这个题目的数据量很小&#xff0c;所以没必要去使用bfs&#xff0c;直接分情况讨论即可 一共两排数据&#xff0c;我们使用贪心的思想&#xff0c;只需要实现从左往右的过程中每个检测器相互连接即…...

Linux网络编程day7 线程池and UDP

线程池 typedef struct{void*(*function)(void*); //函数指针&#xff0c;回调函数void*arg; //上面函数的参数 }threadpool_task_t; //各子线程任务的结构体/*描述线程池相关信息*/struct threadpool_t{pthread_mutex_t lock; …...

wsl - install RabbiqMQ

下载erlang $ sudo apt -y install erlang 安装软件包 $ sudo apt -y install rabbitmq-server 修改配置文件 $ sudo vi /etc/rabbitmq/rabbitmq-env.conf # Defaults to rabbit. This can be useful if you want to run more than one node # per machine - RABBITMQ_NODENAME…...

ABB电机保护单元通过Profibus DP主站转Modbus TCP网关实现上位机通讯

ABB电机保护单元通过Profibus DP主站转Modbus TCP网关实现上位机通讯 在工业自动化领域&#xff0c;设备之间的通信至关重要。Profibus DP是一种广泛应用的现场总线标准&#xff0c;而Modbus TCP则是一种基于以太网的常见通信协议。将Profibus DP主站转换为Modbus TCP网关&…...

深入解析二维矩阵搜索:LeetCode 74与240题的两种高效解法对比

文章目录 **引言** **一、问题背景与排序规则对比****1. LeetCode 74. 搜索二维矩阵****2. LeetCode 240. 搜索二维矩阵 II** **二、核心解法对比****方法1&#xff1a;二分查找法&#xff08;适用于LeetCode 74&#xff09;****方法2&#xff1a;线性缩小搜索范围法&#xff0…...

迪士尼机器人BD-X 概况

这些机器人代表着迪士尼故事叙述与非凡创新的完美结合。它们不仅栩栩如生&#xff0c;还配备了先进的技术。 -迪士尼幻想工程研发部高级副总裁凯尔劳克林 幕景 BDX 机器人是由华特迪士尼公司的研究和幻想工程部门利用NVIDIA人工智能技术 (AI)开发的现实世界机器人&#xff0c;…...

UE5骨骼插槽蓝图

首先在人物骨骼处添加插槽并命名&#xff0c;然后再选择添加预览资产把你要的模型&#xff08;静态网格体&#xff09;放上去。 选择绑定的骨骼再去右边相对位置、旋转等调整物体。 再去人物蓝图里面写就ok了...

移动应用开发:自定义 View 处理大量数据的性能与交互优化方案

实现 1 万条数据下流畅滑动与灵敏交互的完美平衡。 一、数据渲染优化&#xff1a;从 1 万条到丝滑体验 &#xff08;一&#xff09;视图复用机制 视图复用是提升大量数据渲染性能的关键策略。以一个简单的自定义列表视图为例&#xff0c;我们可以构建如下的复用池管理机制&a…...

绘制拖拽html

<!DOCTYPE html> <html lang"zh-CN"> <head> <meta charset"UTF-8" /> <meta name"viewport" content"widthdevice-width, initial-scale1" /> <title>拖拽绘制矩形框 - 可移动可调整大小</ti…...

C++结构体介绍

结构体的定义 在C中&#xff0c;结构体&#xff08;struct&#xff09;是一种用户定义的数据类型&#xff0c;允许将不同类型的数据组合在一起。结构体的定义使用struct关键字&#xff0c;后跟结构体名称和一对花括号{}&#xff0c;花括号内包含成员变量的声明。 struct Pers…...

ggplot2 | GO barplot with gene list

1. 效果图 2. 代码 数据是GO的输出结果&#xff0c;本文使用的是 metascape 输出的excel挑选的若干行。 # 1. 读取数据 datread.csv("E:\\research\\scPolyA-seq2\\GO-APA-Timepoint\\test.csv", sep"\t") head(dat)# 2. 选择所需要的列 dat.usedat[, c(…...

PostgreSQL 的 pg_advisory_lock 函数

PostgreSQL 的 pg_advisory_lock 函数 pg_advisory_lock 是 PostgreSQL 提供的一种应用级锁机制&#xff0c;它不锁定具体的数据库对象&#xff08;如表或行&#xff09;&#xff0c;而是通过数字键值来协调应用间的并发控制。 锁的基本概念 PostgreSQL 提供两种咨询锁(advi…...

docker 镜像的导出和导入(导出完整镜像和导出容器快照)

一、导出原始镜像 1. 使用 docker save 导出完整镜像 适用场景&#xff1a;保留镜像的所有层、元数据、标签和历史记录&#xff0c;适合迁移或备份完整镜像环境。 操作命令 docker save -o <导出文件名.tar> <镜像名:标签>示例&#xff1a;docker save -o milvu…...

系统思考:短期困境与长期收益

最近在项目中&#xff0c;一直有学员会提到一个议题&#xff0c;如何平衡当前困境和长期收益&#xff1f; 我的思考是在商业和人生的路上&#xff0c;我们常常听到“鱼和熊掌不可兼得”的说法&#xff0c;似乎短期利益和长期目标注定是对立的。但事实上&#xff0c;鱼与熊掌是…...

4.2【LLaMA-Factory实战】金融财报分析系统:从数据到部署的全流程实践

【LLaMA-Factory实战】金融财报分析系统&#xff1a;从数据到部署的全流程实践 一、引言 在金融领域&#xff0c;财报分析是投资决策的核心环节。传统分析方法面临信息提取效率低、风险识别不全面等挑战。本文基于LLaMA-Factory框架&#xff0c;详细介绍如何构建一个专业的金…...

Cjson格式解析与接入AI大模型

JSON格式的解析与构造 基本概念 JSON是JavaScript Object Notation的简称&#xff0c;中文含义为“JavaScript 对象表示法”&#xff0c;它是一种数据交换的文本格式&#xff0c;而不是一种编程语言。 JSON 是一种轻量级的数据交换格式&#xff0c;采用完全独立于编程语言的…...

基于英特尔 RealSense D455 结构光相机实现裂缝尺寸以及深度测量

目录 一&#xff0c;相机参数规格 二&#xff0c;结合YOLO实例分割实现裂缝尺寸以及深度测量 2.1 应用场景 2.2 实现流程 2.3 效果展示 2.4 精度验证 2.5 实物裂缝尺寸以及深度测量效果展示 一&#xff0c;相机参数规格 英特尔 RealSense D455 是英特尔 RealSense D400 系…...

Nacos源码—7.Nacos升级gRPC分析四

大纲 5.服务变动时如何通知订阅的客户端 6.微服务实例信息如何同步集群节点 6.微服务实例信息如何同步集群节点 (1)服务端处理服务注册时会发布一个ClientChangedEvent事件 (2)ClientChangedEvent事件的处理源码 (3)集群节点处理数据同步请求的源码 (1)服务端处理服务注册…...

TIME - MoE 模型代码 3.2——Time-MoE-main/time_moe/datasets/time_moe_dataset.py

源码&#xff1a;GitHub - Time-MoE/Time-MoE: [ICLR 2025 Spotlight] Official implementation of "Time-MoE: Billion-Scale Time Series Foundation Models with Mixture of Experts" 这段代码定义了一个用于时间序列数据处理的 TimeMoEDataset 类&#xff0c;支…...

【某OTA网站】phantom-token 1004

新版1004 phantom-token 请求头中包含phantom-token 定位到 window.signature 熟悉的vmp 和xhs一样 最新环境检测点 最新检测 canvas 下的 toDataURL方法较严 过程中 会用setAttribute给canvas 设置width height 从而使toDataURL返回不同的值 如果写死toDataURL的返回值…...