(* Why3 driver for Yices-smt2 solver *)

prelude ";;; this is a prelude for Yices-smt2"
prelude "(set-logic QF_AUFLIRA)"
(* A  : Array
   UF : Uninterpreted Function
   LIRA : Linear Integer Reals Arithmetic
*)

import "smt-libv2.gen"
printer "smtv2"
import "discrimination.gen"

(* specific messages from Yices-smt2 *)
unknown "feature not supported: non linear problem" "non linear arith"

(* Performed introductions depending on whether counterexamples are
   requested, as said by the meta "get_counterexmp". When this meta
   set, this transformation introduces the model variables that are
   still embedded in the goal. When it is not set, it removes all
   these unused-ce-related variables, even in the context.  *)
transformation "counterexamples_dependent_intros"

transformation "inline_trivial"

transformation "eliminate_builtin"
transformation "eliminate_definition"
transformation "eliminate_inductive"
transformation "eliminate_epsilon"
transformation "eliminate_algebraic"
transformation "eliminate_literal"

transformation "simplify_formula"
(*transformation "simplify_trivial_quantification"*)

transformation "encoding_smt"
transformation "encoding_sort"
