为 NuSMV 中的变量分配随机值

用户_1_1_1

我在 NuSMV 中有以下代码。

MODULE main
VAR
   x : 0..5

所以 x 是一个可以取整数值 0、1、2、3、4、5 的变量。接下来,我对其进行初始化并制定其转换规则。

ASSIGN
    init(x):=1;
    next(x) := case
         y=1 & z=23: 4;
         TRUE: 0..5;
    esac;

上面应该说的是 x 最初是 1。然后如果 y=1 和 z=23,x 变为 4,否则 x 可以假设其域中的任何随机值。逻辑的这个“否则”部分是我所怀疑的。我是否正确编码?y 和 z 是其代码未在此处显示的变量。为 y 和 z 假设一些东西。

或者我应该写:

TRUE: {0,1,2,3,4,5};

因为我从文档的第 4 页肯定知道上述内容是正确的

但这对于一个非常大的域来说是不可行的。假设 x 可以取 0 到 293 之间的任何值。

帕特里克·特伦丁

是的,它是正确的。

integer set {0, 1, 2, 3, 4, 5}也可以写为0 .. 5,按照以下文件

2.1.6 集合类型

集合类型用于标识表示一组值的表达式。有四种set类型:boolean setinteger setsymbolic setintegers-and-symbolic set这些set类型可以以非常有限的方式使用。特别是,变量不能是set类型。range constantunion操作者可以被用来创建一个的表达set类型,以及唯一的incase(• ? • : •)和赋值表达式可具有的imediate操作数set类型。

每种set类型在其他类型中都有一个对应物。特别是,

  • boolean set类型的对应物boolean

  • integer set类型的对应物integer

  • symbolic set类型的对应物symbolic enum

  • integers-and-symbolic set类型的对应物integers-and-symbolic enum

某些类型,例如 unsignedword[•]并且signed word[•]没有set类型对应物。

范围常数

Arange constant指定一组连续的整数。例如,一个恒定的-1..5指示组数字-1012345的其他示例range constant可以是1..10-10..-101..300的语法规则range constant如下:

range_constant
    :: integer_number .. integer_number

附加的约束是第一个整数必须小于或等于第二个整数。a 的类型range constantinteger set

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用随机轨迹的 NuSMV 模拟

来自分类Dev

为所有变量分配相同的随机值?

来自分类Dev

NuSMV中的自动售货机

来自分类Dev

如何在NuSMV中创建kripke的结构?

来自分类Dev

NuSMV中的自动售货机

来自分类Dev

在NuSMV中建立UART的正式模型?

来自分类Dev

在tikz中为变量分配范围值

来自分类Dev

在VBA中为整数分配随机值的For语句

来自分类Dev

在Ruby中为插值变量分配插值

来自分类Dev

构造有效的CTL或LTL表达(在NuSMV中)

来自分类Dev

为列表的元素分配随机值

来自分类Dev

无法在SQL中为本地变量分配默认值

来自分类Dev

在PostgreSQL 9.3中为变量分配选择值

来自分类Dev

在Scala模板中为变量创建和分配值

来自分类Dev

在SSIS中为变量动态分配值

来自分类Dev

bash脚本中的错误-为变量分配值

来自分类Dev

如何在外壳中为变量分配回波值

来自分类Dev

在Swift中为变量分配文本字段值

来自分类Dev

在类中为变量分配方法值

来自分类Dev

为Flutter中从JSON转换的列表对象的变量分配值

来自分类Dev

在R中的循环内为变量分配值

来自分类Dev

在Django中为变量分配多个模板值

来自分类Dev

在shell中为动态命名的变量分配带空格的值

来自分类Dev

在Crystal宏中为新变量分配值

来自分类Dev

根据R中另一列的值为列分配随机值

来自分类Dev

为变量分配命令输出的grep值

来自分类Dev

Java:为变量分配其当前值?

来自分类Dev

为变量分配值的更好方法

来自分类Dev

C#为变量分配新值