fact: Definition format_ICMP_Message_Spec (icmp : ICMP_Message) := format_enum ICMP_Message_Codes (SumType_index ICMP_Message_Types icmp!"Message") ThenC format_word (icmp!"Code") ThenChecksum IPChecksum_Valid OfSize 16 ThenCarryOn format_SumType ICMP_Message_Types (icons format_ICMP_Echo_Spec (icons format_ICMP_Unreachable_Spec (icons format_ICMP_SourceQuench_Spec (icons format_ICMP_Redirect_Spec (icons format_ICMP_Echo_Spec (icons format_ICMP_RouterAdvertisement_Spec (icons format_ICMP_RouterSolicitation_Spec (icons format_ICMP_TimeExceeded_Spec (icons format_ICMP_ParameterProblem_Spec (icons format_ICMP_Timestamp_Spec (icons format_ICMP_Timestamp_Spec (icons format_ICMP_AddressMask_Spec (icons format_ICMP_AddressMask_Spec inil))))))))))))) icmp!"Message".
imports: Coq.Strings.String Coq.Vectors.Vector Fiat.Common.SumType Fiat.Common.BoundedLookup Fiat.Common.ilist Fiat.Computation Fiat.QueryStructure.Specification.Representation.Notations Fiat.QueryStructure.Specification.Representation.Heading Fiat.QueryStructure.Specification.Representation.Tuple Fiat.Narcissus.BinLib.Core Fiat.Narcissus.Common.Specs Fiat.Narcissus.Common.WordFacts Fiat.Narcissus.Common.ComposeCheckSum Fiat.Narcissus.Common.ComposeIf Fiat.Narcissus.Common.ComposeOpt Fiat.Narcissus.Formats.Bool Fiat.Narcissus.Formats.Option Fiat.Narcissus.Formats.FixListOpt Fiat.Narcissus.Stores.EmptyStore Fiat.Narcissus.Formats.NatOpt Fiat.Narcissus.Formats.Vector Fiat.Narcissus.Formats.EnumOpt Fiat.Narcissus.Formats.SumTypeOpt Fiat.Narcissus.Formats.IPChecksum Fiat.Narcissus.Formats.WordOpt Bedrock.Word