(**************************************************************************) (* *) (* Cubicle *) (* Combining model checking algorithms and SMT solvers *) (* *) (* Sylvain Conchon, Alain Mebsout *) (* Mohamed Iguernelala *) (* Universite Paris-Sud 11 *) (* *) (* Copyright 2011. This file is distributed under the terms of the *) (* Apache Software License version 2.0 *) (* *) (**************************************************************************) type 'a abstract module type ALIEN = sig include Sig.X val embed : r abstract -> r val extract : r -> (r abstract) option end module Make (X : ALIEN) : Sig.THEORY with type r = X.r and type t = X.r abstract