首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从隐式到显式函数定义

从隐式到显式函数定义
EN

Stack Overflow用户
提问于 2016-02-08 20:27:03
回答 1查看 463关注 0票数 2

我一直在使用VDM中的隐式函数定义创建规范,并且效果非常好。现在,我希望使用显式函数定义(现阶段不进行操作)对规范进行原型化。

我可以看到的一种方法是创建一个新模块,该模块模仿隐式规范中定义的函数,但给出了显式定义。

我相信这是可以做到的,但我怀疑这是否理想。隐式规范和显式规范之间没有任何联系,尽管其中一个规范是对另一个规范的精化。

是否有从隐式函数定义转换为显式函数定义的推荐方法。长期而言,我确实想要正式地研究这一点,但首先,我只想实现隐式函数规范,以演示该规范的作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-09 09:46:33

规范的精化有一个正式的过程,尽管它很费劲,特别是因为目前还没有工具支持它。

如果您保留隐式函数类型签名和预/后条件,那么显式版本将是一个细化,假设实现对所有输入都是正确的(这是组合测试可以帮助的地方)。请注意,您还可以为以“隐式”样式编写的函数提供实现(主体),这可能简化事情:

代码语言:javascript
复制
f(x:nat) r:nat
== x + 1        -- This line added to the implicit spec!
pre x > 10
post r < 100
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35278658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档