如何通过z3中的C API在smtlib2中使用“ match”构造?

时间:2019-02-17 10:38:55

标签: z3 smt model-checking

SMT-LIB Standard Version 2.6中引入了match构造,可以通过以下方式使用它:

; Axiom for list append : version 1
; List is a parametric datatype
; with constructors " nil " and " cons "
;
(forall ((l1 (List Int)) (l2 (List Int)))
  (= (append l1 l2)
    (match l1 (
      (nil l2)
      ((cons h t) (cons h (append t l2)))))))

使用C API编写此代码的正确方法是什么?还是只是翻译成一系列的itelet绑定?

0 个答案:

没有答案