Documentation

Complexitylib.Metacomplexity.ListDecoding.Defs

Finite Boolean list decoding -- definitions #

A Boolean list code maps fixed-length messages to Boolean functions on an arbitrary finite coordinate type. Its decoder returns a fixed-size indexed candidate list. Relative distance and agreement are exact rational uniform probabilities, matching the truth-table view used in metacomplexity.

structure Complexity.BooleanListCode (messageLength listSize : ) (coordinate : Type u) :

A fixed-length binary code together with a decoder producing listSize candidate messages.

  • encode : (Fin messageLengthBool)coordinateBool

    Encode a message as a Boolean function on the codeword coordinates.

  • decode : (coordinateBool)Fin listSizeFin messageLengthBool

    Decode any received word into a fixed-size indexed candidate list.

Instances For
    def Complexity.BooleanListCode.agreementProbability {coordinate : Type u} [Fintype coordinate] (left right : coordinateBool) :

    Exact fraction of coordinates on which two Boolean words agree.

    Equations
    Instances For
      def Complexity.BooleanListCode.relativeDistance {coordinate : Type u} [Fintype coordinate] (left right : coordinateBool) :

      Exact relative Hamming distance between two Boolean words.

      Equations
      Instances For
        def Complexity.BooleanListCode.IsListDecodableAt {messageLength listSize : } {coordinate : Type u} [Fintype coordinate] (code : BooleanListCode messageLength listSize coordinate) (radius : ) :

        List-decoding guarantee at a relative Hamming radius.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Complexity.BooleanListCode.candidates {messageLength listSize : } {coordinate : Type u} (code : BooleanListCode messageLength listSize coordinate) (received : coordinateBool) :
          Finset (Fin messageLengthBool)

          Distinct messages appearing among the decoder's indexed candidates.

          Equations
          Instances For

            Number of bits sufficient to select one of listSize indexed decoder outputs.

            Equations
            Instances For
              def Complexity.BooleanListCode.encodeDecoderIndex {listSize : } (index : Fin listSize) :

              Fixed-width binary encoding of an indexed decoder output.

              Equations
              Instances For

                Decode a fixed-width decoder index, rejecting malformed lengths and values outside Fin listSize.

                Equations
                Instances For
                  def Complexity.BooleanListCode.decodeAtIndexBits? {messageLength listSize : } {coordinate : Type u} (code : BooleanListCode messageLength listSize coordinate) (received : coordinateBool) (bits : List Bool) :
                  Option (Fin messageLengthBool)

                  Decode a source message using a fixed-width encoded list index.

                  Equations
                  Instances For