1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
(* Dolmen's binders *)
type t =
| Forall
| Exists
| Let_in
let equal a b =
match (a, b) with
| Forall, Forall | Exists, Exists | Let_in, Let_in -> true
| (Forall | Exists | Let_in), _ -> false
let pp fmt = function
| Forall -> Fmt.string fmt "forall"
| Exists -> Fmt.string fmt "exists"
| Let_in -> Fmt.string fmt "let"