Documentation

CslibFrontier.Computability.Machines.Turing.MultiTape.Encodings.Nat.Bits

Binary natural encoding and carry increment #

This module defines the little-endian binary encoding Turing.MultiTapeTM.encNat of natural numbers (Nat.bits) and the carry-propagation step Turing.MultiTapeTM.NatSucc.incr for binary successor, independent of machine resource certificates.

Main definitions #

Main statements #

Natural numbers encoded by their binary digits, least significant first.

Instances For
    @[simp]

    encNat n is the little-endian binary digit list n.bits.

    Adds the carry c to the binary digits l, least significant first.

    Instances For

      The binary digits of n + 1 are obtained by incrementing n.bits with carry true.