Documentation

Complexity.Computability.Machines.Turing.MultiTape.Encodings.Words

Word operations for encodings #

The building blocks of concrete encodings of pairs, options and lists, and their plain computability in linear time and space (Turing.MultiTapeTM.ComputableInLinearTimeAndSpace).

A word w is framed by writing each symbol b as [true, b] and appending [false]. A framed word marks its own end, so it can be followed by any word and still be read back.

Main definitions #

Main results #

def Turing.MultiTapeTM.encOfEquiv {α : Type u_1} {β : Type u_2} (e : α ≃ β) (enc : β ↪ List Bool) :

The encoding of α through an equivalence with β, such as that of a structure with the tuple of its fields.

Instances For
    @[simp]
    theorem Turing.MultiTapeTM.encOfEquiv_apply {α : Type u_1} {β : Type u_2} (e : α ≃ β) (enc : β ↪ List Bool) (a : α) :
    (encOfEquiv e enc) a = enc (e a)