src/HOL/Nunchaku.thy
author wenzelm
Mon, 20 May 2024 15:43:51 +0200
changeset 80182 29f2b8ff84f3
parent 69605 a96320074298
child 82024 bbda3b4f3c99
permissions -rw-r--r--
proper support for "isabelle update -D DIR": avoid accidental exclusion of select_dirs (amending e5dafe9e120f);

(*  Title:      HOL/Nunchaku.thy
    Author:     Jasmin Blanchette, VU Amsterdam
    Copyright   2015, 2016, 2017

Nunchaku: Yet another counterexample generator for Isabelle/HOL.

Nunchaku relies on an external program of the same name. The sources are
available at

    https://github.com/nunchaku-inria

The "$NUNCHAKU_HOME" environment variable must be set to the absolute path to
the directory containing the "nunchaku" executable. The Isabelle components
for CVC4, Kodkodi, and SMBC are necessary to use these backend solvers.
*)

theory Nunchaku
imports Nitpick
keywords
  "nunchaku" :: diag and
  "nunchaku_params" :: thy_decl
begin

consts unreachable :: 'a

definition The_unsafe :: "('a \<Rightarrow> bool) \<Rightarrow> 'a" where
  "The_unsafe = The"

definition rmember :: "'a set \<Rightarrow> 'a \<Rightarrow> bool" where
  "rmember A x \<longleftrightarrow> x \<in> A"

ML_file \<open>Tools/Nunchaku/nunchaku_util.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_collect.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_problem.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_translate.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_model.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_reconstruct.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_display.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_tool.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku.ML\<close>
ML_file \<open>Tools/Nunchaku/nunchaku_commands.ML\<close>

hide_const (open) unreachable The_unsafe rmember

end