(* * Trakhtenbrot's Theorem *)
(* ** Bounded boolean strings *)
Derive Signature for le.
Local Notation "| s |" := (length s) (at level 100).
Definition bstring n :=
{ s : string bool | | s | <= n}.
Definition bnil n :
bstring n.

Lemma bstring_eq' n (s t : bstring n) :
proj1_sig s = proj1_sig t -> s = t.