族谱网 头条 人物百科

霍尔逻辑

2017-10-16
出处:族谱网
作者:阿族小谱
浏览:983
转发:0
评论:0
霍尔三元组霍尔逻辑的中心特征是霍尔三元组(Hoaretriple)。这种三元组描述一段代码的执行如何改变计算的状态。Hoare三元组有如下形式这里的P和Q是断言而C是命令。P叫做前条件而Q叫做后条件。断言是谓词逻辑的公式。这个三元组在直觉上读做:只要P在C执行前的状态下成立,则在执行之后Q也成立。注意如果C不终止,也就没有"之后"了,所以Q在根本上可以是任何语句。实际上,你可以选择Q为假来表达C不终止。事实上,这种情形叫做"部分正确(partialcorrectness)"。如果C终止并且在终止时Q是真,则表达式被称作"全部正确性(totalcorrectness)"。终止必须被单独证明。霍尔逻辑为简单的命令式编程语言的所有构造提供了公理和推理规则。除了给Hoare论文中的简单语言的规则,其他语言构造的规则也已经被Hoare和很多其他研究者开发完成。包括并发、过程、goto语句,和指针。部...

霍尔三元组

霍尔逻辑的中心特征是霍尔三元组(Hoare triple)。这种三元组描述一段代码的执行如何改变计算的状态。Hoare三元组有如下形式

这里的P和Q是断言而C是命令。P叫做前条件而Q叫做后条件。断言是谓词逻辑的公式。这个三元组在直觉上读做:只要P在C执行前的状态下成立,则在执行之后Q也成立。注意如果C不终止,也就没有"之后"了,所以Q在根本上可以是任何语句。实际上,你可以选择Q为假来表达C不终止。事实上,这种情形叫做"部分正确(partial correctness)"。如果C终止并且在终止时Q是真,则表达式被称作"全部正确性(total correctness)"。终止必须被单独证明。

霍尔逻辑为简单的命令式编程语言的所有构造提供了公理和推理规则。除了给Hoare论文中的简单语言的规则,其他语言构造的规则也已经被Hoare和很多其他研究者开发完成。包括并发、过程、goto语句,和指针。

部分正确性

空语句公理

如果P在一个空语句之前成立,那么在执行这个空语句之后也是成立的。 "skip"在这里表示空语句(Empty statement)。

赋值公理模式

赋值公理声称,关于对赋值右手端的变量的以前为真的任何命题在赋值之后仍然成立:

这里的P[E/x]{\displaystyle P[E/x]}指示表达式P中变量x的所有自由出现都被替代为表达式E。

有效的三元组的两个例子:

顺序规则

例如,考虑赋值公理的下列两个实例:

通过顺序规则,将得到:

条件规则

While规则

这里的P是循环不变条件。

推论规则

全部正确性

上述规则只证明部分正确性。可以通过扩展版本的While规则证明全部正确性。

全部正确性的While规则:

在本文中,除了维持循环不变条件,还能通过其值在每次重复期间递减的项就是这里的t的方式来证明终止。注意t必须从良定集合中取值,所以循环的每一步都通过递减有限链的成员来计数。

参见

契约式设计

动态逻辑

艾兹赫尔·戴克斯特拉

谓词变换者语义

程序验证

参考文献

来源

C. A. R. Hoare. "An axiomatic basis for computer programming". Communications of the ACM, 12(10):576–585, October 1969.doi:10.1145/363235.363259

Robert D. Tennent: "Specifying Software" (a recent textbook that includes an introduction to Hoare logic) ISBN 0-521-00401-2[1]


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱

更多文章

更多精彩文章
评论 {{commentTotal}} 文明上网理性发言,请遵守《新闻评论服务协议》
游客
发表评论
  • {{item.userName}} 举报

    {{item.content}}

    {{item.time}} {{item.replyListShow ? '收起' : '展开'}}评论 {{curReplyId == item.id ? '取消回复' : '回复'}}

    回复评论
加载更多评论
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回
打赏
私信

推荐阅读

· 门卡霍尔
注释
· 保罗·霍尔特
作品《第四扇门》外部链接
· 霍尔效应
发现1879年,埃德温·赫伯特·霍尔(EdwinHerbertHall)在马里兰州约翰霍普金斯大学攻读博士时发现了霍尔效应。这一发现依靠设计精巧的仪器,比电子的发现还要早18年。解释在导体上外加与电流方向垂直的磁场,会使得导线中的电子受到洛伦兹力而聚集,从而在电子聚集的方向上产生一个电场,此一电场将会使后来的电子受到电力作用而平衡掉磁场造成的洛伦兹力,使得后来的电子能顺利通过不会偏移,此称为霍尔效应。而产生的内建电压称为霍尔电压。方便起见,假设导体为一个长方体,长度分别为L{\displaystyleL}、b{\displaystyleb}、d{\displaystyled},磁场垂直于Lb{\displaystyleLb}平面。当电流经过Ld{\displaystyleLd}平面的方向,电流I=nqv(Ld){\displaystyleI=nqv(Ld)},而nq{\displaysty...
· 逻辑
概论逻辑(英语:logic)的字根源起于希腊语逻各斯(希腊语:λόγος),最初的意思有词语、思想、概念、论点、推理之意。后译为(法语:logique),最后发展为英文中的逻辑(英语:logic)。1902年严复译《穆勒名学》时,将其意译为“名学”,但这不合名家或者名教之名学中“名”的本意。和制汉语采用汉字“论理”,意译为“论理学”。孙文于其文《治国方略·以作文为证》意译为“理则”,当代中文一般采取音译方式,将其译为逻辑。逻辑本身是指是推论和证明的思想过程,而逻辑学是研究“有效推论和证明的原则与标准”的一门学科。作为一个形式科学,逻辑透过对推论的形式系统与自然语言中的论证等来研究并分类命题与论证的结构。逻辑的范围是非常广阔的,从对谬论与悖论的研究之类的核心议题,到利用概率来推论及包含因果论的论证等专业的推理分析。逻辑在今日亦常被使用在论辩理论之中。传统上,逻辑被作为哲学的一个分支来研究,和...
· 芬顿·霍尔特
参见威斯科特

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信