Require Export Undecidability.Synthetic.Definitions Lia.
Definition discrete X := decidable (fun '(x,y) => x = y :> X).
(* Facts on reflects *)
(* Type-theoretic characterisations *)
(* Closure properties of decidability *)

Lemma dec_conj X p q :
decidable p -> decidable q -> decidable (fun x : X => p x /\ q x).