Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的程序验证_Python_Hoare Logic - Fatal编程技术网

Python中的程序验证

Python中的程序验证,python,hoare-logic,Python,Hoare Logic,我正在教授一门关于FOL和程序验证的课程,灵感来源于《Mordechai Ben Ari,计算机科学的数学逻辑》,Springer,1993-2012。我想通过让学生用Python编程来说明这些概念 对于FOL,我使用NLTK,它有一个优秀的FOL包 但我还没有找到用于程序验证的Python包:插入前置和后置条件逻辑公式,查找循环不变量,逐步验证Python程序,等等。换句话说,在Python内部和Python程序中使用霍尔逻辑框架 你知道这个任务有什么软件包吗?你打算教MOOC程序验证吗?或者

我正在教授一门关于FOL和程序验证的课程,灵感来源于《Mordechai Ben Ari,计算机科学的数学逻辑》,Springer,1993-2012。我想通过让学生用Python编程来说明这些概念

对于FOL,我使用NLTK,它有一个优秀的FOL包

但我还没有找到用于程序验证的Python包:插入前置和后置条件逻辑公式,查找循环不变量,逐步验证Python程序,等等。换句话说,在Python内部和Python程序中使用霍尔逻辑框架


你知道这个任务有什么软件包吗?

你打算教MOOC程序验证吗?或者它将是一个普通的教室,有一个显示代码的屏幕?你可以用白板吗

如果您愿意使用其他工具,那么由Philip Guo()教授开发的在线Python导师是一个很好的工具。该工具允许您逐步执行程序,显示程序“状态”(变量及其具体值)。据我所知,它不直接允许您指定/推断前置/后置条件或循环不变量。因此,我可以看到这样一个案例,作为一名教师,你在黑板上写下前置/后置条件,逐步完成程序,并通过使用python tutor显示变量的具体值来向课堂解释这些条件确实成立。几乎类似的方法可用于显示循环不变量


话虽如此,pythontutor正迅速流行起来,向创建者询问其他功能可能就行了

ummmm unittest+mock?FOL==一阶逻辑?是的,FOL=一阶逻辑,很抱歉认为这是理所当然的