fact: Definition DOUBLE (X: counter) (offset: nat) : list mm_instr := concat ( let i := offset in ZERO A offset :: let i := ZERO_len + i in MOVE X [A;A] i :: let i := MOVE_len 2 + i in MOVE A [X] i :: []).
imports: Undecidability(MinskyMachines.MM MinskyMachines.MMA LambdaCalculus.Krivine LambdaCalculus.Util.Krivine_facts) Undecidability.Shared.Libs.DLW(Vec.pos Vec.vec Code.sss) PeanoNat List Lia ssreflect ssrbool ssrfun