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

Lemma mkBlockList_range: forall n k (HIn: List.In k (mkBlockList (S (S n)))), k < (S (S n)) /\ k > 0.