proposition: Lemma ByteStringToBoundedByteString_BoundedByteStringToByteString_eq : forall bs, ByteStringToBoundedByteString (BoundedByteStringToByteString bs) = bs.
proof: Proof. unfold BoundedByteStringToByteString, ByteStringToBoundedByteString; destruct bs; simpl; eapply ByteString_f_equal; simpl. apply Eqdep_dec.eq_rect_eq_dec; intros; eauto using Peano_dec.eq_nat_dec. instantiate (1 := ByteBuffer.to_list_length _ byteString0). apply ByteBuffer.of_list_to_list. Unshelve. reflexivity. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Bedrock.Word Coq.ZArith.ZArith Coq.NArith.NArith Coq.Arith.Arith Coq.Numbers.Natural.Peano.NPeano Coq.Logic.Eqdep_dec Fiat.Narcissus.Common.Specs Fiat.Narcissus.BinLib.Core Fiat.Narcissus.Formats.ByteBuffer