我用SMT-LIB的Z3方言写了一个大型的库。不幸的是,我使用(declare-datatypes)
创建元组意味着我无法按照我的意愿将逻辑设置为QF_AUFBV
。与使用QF_ABV
手动创建公式和解决方案相比,这会使我的脚本变慢(有时超时)。因此,我想从我的脚本中删除(declare-datatypes)
。大多数数据类型可以编码为位向量。但是,库中最重要的排序是位向量项和三个数组的元组。有没有一个解决方案可以让我这样做,同时仍然使用QF_AUFBV
逻辑?
答案 0 :(得分:0)
您可以随时连接元组的位向量,并在需要时提取相关的一半。