【PL理论深化】(3) 数学归纳法:归纳假设 (IH) | 结构归纳法 | 归纳假设的证明

news2024/10/7 16:15:59

  • 💬 写在前面:所有编程语言都是通过归纳法定义的。因此,虽然编程语言本身是有限的,但用该语言编写的程序数量是没有限制的,本章将学习编程语言研究中最基本的归纳法。本章我们继续讲解归纳法,介绍归纳假设和结构性归纳法。

目录

0x00 归纳假设 (IH) 和结构归纳法

0x01 归纳假设的证明


0x00 归纳假设 (IH) 和结构归纳法

归纳法是一种用于证明归纳定义的集合中的元素所具有性质的方法。

假设存在一个通过归纳法定义的集合 S,为证明集合 S 中的所有元素 x 都满足某个性质 P(x)

需证明以下两点:

① 若 x 是 S 的基本元素,则直接证明 P(x) 。

② 若 x 是利用 S 中的其他元素 y_1, y_2,..., y_n 归纳定义出来的,那么:

P(y_1),P(y_2),...P(y_n)

并假设它们都成立,然后利用这些假设来证明 P(x) 成立。

.

在这种情况下,P(y_1),P(y_2),...P(y_n) 被称为 归纳假设 (induction hypothesis, IH) 。

这种证明方法称为 结构归纳法 (structural induction)。

当集合 S 是自然数集时,这种方法就称为 数学归纳法 (MI),是结构归纳法的一种特殊情况。

0x01 归纳假设的证明

举个例子,假设集合 S 是通过以下推理规则定义的集合:

让我们用结构归纳法来证明这样定义的集合 S 中的所有元素都能被 3 整除。

首先证明基本元素的情况。如果 x 等于 3,那么显然 x 能被 3 整除。

接下来,我们证明归纳生成的元素的情况,假设元素是按照以下规则生成的:

归纳假设 (induction hypothesis, I.H.) 如下:

x 和 y 能被 3 整除

根据归纳假设,设 x = 3k_1,\, y = 3k_2,需要证明的是:

x + y 能被 3 整除

证明如下:

x+y=3k_1+3k_2   ··· 归纳假设

=3(k_1+k_2)

.

我们再举个例子,将集合 S 定义为通过以下推理规则所定义的集合:

并且当 x\in S 时,设 l(x) 和 r(x) 分别表示 x 中包含的左括号和右括号的数量。

它们如下通过归纳法定义:

现在,我们来证明对于集合 S 的所有元素 x,左括号和有货好的数量是对等的。

我们可以如下表示将要证明的命题:

对于  \forall x\in Sl(x)=r(x)

可以通过 结构归纳法 进行如下证明:

基础元素是 x=0,根据函数 l 和 r 的定义,成立 l(x)=1=r(x)

归纳生成的情况有以下两种:

.

规则一 的情况下,归纳假设如下:

l(x)=r(x)

需要证明的是 l\big(\, (x)\, \big)=r\big(\, (x)\, \big),证明如下:

.

规则二 的情况下,归纳假设如下:

l(x)=r(x),\, \, \, \, \, l(y)=r(y)

需要证明的是 l(xy)=r(xy),证明方式如下:

📌 [ 笔者 ]   王亦优
📃 [ 更新 ]   2024.6.23
❌ [ 勘误 ]   /* 暂无 */
📜 [ 声明 ]   由于作者水平有限,本文有错误和不准确之处在所难免,
              本人也很想知道这些错误,恳望读者批评指正!

📜 参考资料 

- R. Neapolitan, Foundations of Algorithms (5th ed.), Jones & Bartlett, 2015.

- T. Cormen《算法导论》(第三版),麻省理工学院出版社,2009年。

- T. Roughgarden, Algorithms Illuminated, Part 1~3, Soundlikeyourself Publishing, 2018.

- J. Kleinberg&E. Tardos, Algorithm Design, Addison Wesley, 2005.

- R. Sedgewick&K. Wayne,《算法》(第四版),Addison-Wesley,2011

- S. Dasgupta,《算法》,McGraw-Hill教育出版社,2006。

- S. Baase&A. Van Gelder, Computer Algorithms: 设计与分析简介》,Addison Wesley,2000。

- E. Horowitz,《C语言中的数据结构基础》,计算机科学出版社,1993

- S. Skiena, The Algorithm Design Manual (2nd ed.), Springer, 2008.

- A. Aho, J. Hopcroft, and J. Ullman, Design and Analysis of Algorithms, Addison-Wesley, 1974.

- M. Weiss, Data Structure and Algorithm Analysis in C (2nd ed.), Pearson, 1997.

- A. Levitin, Introduction to the Design and Analysis of Algorithms, Addison Wesley, 2003. - A. Aho, J. Hopcroft, and J. Ullman, Data Structures and Algorithms, Addison-Wesley, 1983.

- E. Horowitz, S. Sahni and S. Rajasekaran, Computer Algorithms/C++, Computer Science Press, 1997.

- R. Sedgewick, Algorithms in C: 第1-4部分(第三版),Addison-Wesley,1998

- R. Sedgewick,《C语言中的算法》。第5部分(第3版),Addison-Wesley,2002

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

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

相关文章

Jitter Injection详解

一、定义与作用 Jitter Injection,即抖动注入,是一种在通信系统中人为地添加抖动的技术。该技术通过在发送端对数据包进行延迟和抖动调整,以实现对整个通信系统的时延和抖动的控制。其主要作用包括: 改善传输质量:通…

振弦采集仪在地铁隧道工程安全监测中的应用实践

振弦采集仪在地铁隧道工程安全监测中的应用实践 河北稳控科技振弦采集仪是一种常用于结构监测领域的仪器,主要用于测量结构物振动的频率、幅值、相位以及动力特性等参数。在地铁隧道工程的安全监测中,振弦采集仪起着关键的作用。 随着城市的不断发展&am…

同城跑腿APP开发,随叫随到超方便!

随着移动互联网的发展和人们生活节奏的加快,越来越多的人们没有闲暇的时间来做一些繁琐的事情,比如说买药、挂号、排队、送花、取文件等等。如果没有时间去处理这些事情怎么办?开发同城跑腿APP,提供跑腿服务,随时办事随…

Vue核心指令解析:探索MVVM与数据操作之美

文章目录 前言一、Vue.js1. MVVM模式介绍2. 单页面组件介绍及案例讲解3. 插值表达式介绍及案例讲解 二、Vue常用指令详解1. 数据绑定指令v-textv-html 2. 条件渲染指令v-ifv-show 3. 列表渲染指令v-for循环数组介绍及案例讲解循环对象介绍及案例讲解 4. 事件监听指令v-on事件修…

【TB作品】MSP430G2553单片机,红外双机通信,红外通信程序

文章目录 NEC 红外通信协议实验步骤1. 硬件连接2. 程序说明红外发射部分红外接收部分 说明帮助 NEC 红外通信协议 NEC 红外通信协议是一种广泛应用于遥控器设备的红外通信协议。它采用脉冲宽度调制(PWM)来编码数据,并使用38kHz的载波频率进行传输。协议的特点如下&…

Java医院绩效考核系统源码:关于医院绩效考核系统的技术架构、系统功能、如何选择医院绩效考核管理系统

Java医院绩效考核系统源码:关于医院绩效考核系统的技术架构、系统功能、如何选择医院绩效考核管理系统 随着医疗技术的不断发展,医院绩效管理系统已经成为提升医疗服务质量和效率的关键技术之一。本文将介绍医院绩效管理系统的概念、开发环境、功能应用…

磁芯电感 晶谷电容可镀银浆用玻璃 晶谷电阻银浆料低温玻璃粉(耐强酸)

晶谷电阻银浆料低温玻璃粉(耐强酸)软化点在490至580度之间,线膨胀系数为(75至95)10-7,粒径为1.5至3微米(可按要求订做),外观颜色为白色超细粉末,烧后颜色无色…

Python 的垃圾回收机制使用详解

概要 在Python编程中,内存管理是一个非常重要的方面。为了帮助开发者管理内存,Python引入了垃圾回收(Garbage Collection)机制。本文将详细介绍Python中的垃圾回收,包括其工作原理、垃圾回收算法以及如何在实际项目中使用和优化垃圾回收。 一、垃圾回收的概念 垃圾回收是…

问题-python-爬虫无法爬取外网资源问题(python爬虫)

方法一: 这个报错通过关掉梯子就能解决,目前不清楚具体原理。 后续了解具体原理了,我会在这篇文章上更新具体分析—— 方法二: 也可以把这个东西打开,但是用完建议关掉。

期望30K,我的高并发架构知识体系

我最终还是上岸了,花了3天总结了几千字的高并发知识体系思维导图,分享出来希望能帮助有缘人吧,以下只是部分截图,文中末尾领取👇🏻,免费,免费,免费,重要的事情…

移动硬盘盒:便携与交互的完美结合 PD 充电IC

在数字化时代的浪潮中,数据已成为我们生活中不可或缺的一部分。随着数据的不断增长,人们对于数据存储的需求也在不断增加。传统的存储设备如U盘、光盘等,虽然具有一定的便携性,但在容量和稳定性方面往往难以满足现代人的需求。而移…

Python爬虫-贝壳新房

前言 本文是该专栏的第32篇,后面会持续分享python爬虫干货知识,记得关注。 本文以某房网为例,如下图所示,采集对应城市的新房房源数据。具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。接下来,跟着笔者直接往下看正文详细内容。(附带完整代码) 正文 地…

MyBatis系列之分页插件及问题

概述 无论是C端产品页面,还是后台系统页面,不可能一次性将全部数据加载出来。后台系统一般都是PC端登录,用Table组件(如Ant Design Table)渲染展示数据,可点击列表的下一页(或指定某一页&#…

“移”起AI+丨首创AI值守无人小店!中国移动视觉大模型加速落地

在城市里开设一家24小时便利店有多难?创业者常常面临着熬夜看店、全年无休的困境,而选择增加雇佣员工看店又会面临着成本高昂、利润微薄的问题。 日前在温州,一家AI无人值守便利店引发关注。在这家无人便利小店内,浙江移动试点部…

AI赋能天气:微软研究院发布首个大规模大气基础模型Aurora

编者按:气候变化日益加剧,高温、洪水、干旱,频率和强度不断增加的全球极端天气给整个人类社会都带来了难以估计的影响。这给现有的天气预测模型提出了更高的要求——这些模型要更准确地预测极端天气变化,为政府、企业和公众提供更…

头歌——机器、深度学习——图像生成

第1关:手写数字体生成 任务描述 本关任务:编写一个程序,实现手写数字体的生成。 相关知识 为了完成本关任务,你需要掌握:1.生成器,2.判别器,3.GAN网络训练,4.手写数字体生成。 …

Gitee 的公钥删不掉

公钥管理里已经没有公钥了, 仓库里还有,这是怎么回事? 这两个好像又没什么关系。 那为啥要搞两处呢? 个人信息里的公钥一直就没有仓库里使用的公钥, 删掉个人信息里的也没什么影响。 在仓库管理页面导入新公钥提示已…

【论文速读】|利用大语言模型实现现实世界代码的翻译:一项针对翻译到Rust语言的研究

本次分享论文:Towards Translating Real-World Code with LLMs: A Study of Translating to Rust 基本信息 原文作者:Hasan Ferit Eniser, Hanliang Zhang, Cristina David, Meng Wang, Maria Christakis, Brandon Paulsen, Joey Dodds, Daniel Kroeni…

【服务器07】之【GitHub项目管理】及【Unity异步加载场景】

登录GitHub官网 GitHub: Let’s build from here GitHub 注册账号 登录账号 输入一个自定义名字,点击创建存储库就可以了 现在我们下载Fork Fork - a fast and friendly git client for Mac and Windows (git-fork.com) 免费的 下载完成之后点击File下的Clone …

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑需求响应与储能寿命模型的火储协调优化运行策略》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…