首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重构合金模型

重构合金模型
EN

Stack Overflow用户
提问于 2014-04-05 21:07:19
回答 1查看 407关注 0票数 2

在一种模型中,我在前几天开始用合金绘制草图,当我试图找到一个特定谓词的实例时,我得到了以下消息:

翻译能力超出。在这个范围内,宇宙包含34个原子,12的关系不能表示。有关重构的建议,请访问http://alloy.mit.edu/

有什么建议可以在网站alloy.mit.edu上查看吗?我没有发现任何带有明显标签的东西,比如“重构超出翻译能力的模型”。

这是最基本的问题。

[Postscript:我的问题的原因似乎是我在谓词中使用的量化变量声明的初始格式很糟糕;这个问题在声明语法正确之后就消失了。完整的细节是不够有教育意义的,值得记录下来,所以我要放弃对细节的原始描述。简短的版本是:为了激发特定具体示例的实例化,我最初编写了该表单的谓词。

代码语言:javascript
复制
    pred m {
      one t1 : table,
          r1, r2, r3 : row,
          c1, c2 : column,
          c11, c21 : headingcell, 
          c12, c22, c13, c23 : datacell | {

    ... // description of the example here

      }
    }

one的作用范围包括所有12个变量,我是在良好权威的情况下被告知的,在内部将其转化为一套由第12条关系定义的理解。我想说的是以下几点,这并没有引起翻译能力问题:

代码语言:javascript
复制
pred m {
   some t1 : table |
   some disj r1, r2, r3 : row |
   some disj c1, c2 : column |
   some disj c11, c21 : headingcell |
   some disj c12, c22, c13, c23 : datacell | {
     ...
   }
}

因此,修正一些导致翻译能力错误信息的模型的方法之一是清除变量的量化。

然而,基本的问题仍然是它的兴趣:当一个模型引出翻译能力错误信息,而量词已经干净和正确时,是否有文档可读?]

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-05 22:22:17

这种情况下所需的重构不太可能是简单的语法重构。更确切地说,这意味着对模型进行重组,这样它就不会使用那种高度的关系。在上面的例子中,我看不出哪种关系有12的特性。如果你发布(或发送给我)一个独立的模型,我可以查看它,识别出有问题的关系,甚至建议如何避免它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22886819

复制
相关文章

相似问题

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