Definition proj_sumbool_is_false : forall (P : Prop) (a : {P} + {~ P}), ~ P -> Coqlib.proj_sumbool a = false.
Module BlockList.
Fixpoint mkBlockList (n : nat) : list nat :=
match n with
| 0 => nil
| S 0 => nil
| S n =>  n :: (mkBlockList n)
end.

Lemma mkBlockList_unfold' : forall n,
(S n) :: (mkBlockList (S n)) = mkBlockList (S (S n)).