Z3中未解释的数据类型

时间:2015-06-13 12:33:27

标签: z3 z3py

我想在Z3中创建一个未解释的数据类型,我们称之为“A”。根据z3文档,我可以使用“DeclareSort”声明它如下:

A = DeclareSort('A')
a, b = Consts('a b', A)
s = Solver()
s.add(a != b)
s.check()

但是我看到有些人使用以下内容:

A = Datatype('Event')
A.declare('A0')
A = A.create()

a, b = Consts('a b', A) 

我的问题是,这两者之间的区别是什么,以及声明新的未解释数据类型是正确的。另外我无法理解A.declare('A0')在第二部分中的含义。

1 个答案:

答案 0 :(得分:0)

Event数据类型只包含一个名为A0的元素,因此您应该使用第一个建议来使用DeclareSort。