proposition: Lemma length_ByteString_into_queue : forall bs bs', length_ByteString bs = length_ByteString bs' -> List.length (ByteString_into_queue bs) = List.length (ByteString_into_queue bs').
proof: Proof. intros ? ?. rewrite <- (ByteStringToBoundedByteString_BoundedByteStringToByteString_eq bs). rewrite <- (ByteStringToBoundedByteString_BoundedByteStringToByteString_eq bs'). rewrite !ByteStringToBoundedByteString_into_queue_eq'. unfold Core.ByteString_into_queue; rewrite !app_length, !length_ByteString_into_queue'. rewrite !length_ByteString_ByteStringToBoundedByteString_eq. unfold Core.length_ByteString. rewrite !length_wordToQueue. omega. 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 Coq.Strings.String Coq.Vectors.Vector Fiat.Narcissus.Formats.WordOpt Fiat.Common.Equality