Documentation

Complexitylib.Models.RandomAccessMachine.Simulation.RegisterStore.Machine.Instruction.DenseImm

Dense-overlay immediate instruction #

theorem Complexity.RAM.RegisterStore.Machine.denseImmediateInstructionTM_hoareTime_frame {n : } (tapes : BinaryInstructionTapes n) (overlay : Store) (destination value : ) (emittedBits : List Bool) (initialWork : Fin nTape) (inp₀ out₀ : Tape) (hcanonical : Canonical overlay) (hinitial : EntryLookupStaticReady tapes.lhsLookup overlay initialWork) (hreplacement : (initialWork tapes.update.replacement).HasBinaryNat 0) (hinput : TM.Parked inp₀) (houtput : out₀.HasBinaryPrefix emittedBits) :
(denseImmediateInstructionTM tapes destination value).HoareTime (fun (inp : Tape) (work : Fin nTape) (out : Tape) => inp = inp₀ work = initialWork out = out₀) (fun (inp : Tape) (work : Fin nTape) (out : Tape) => inp = inp₀ DenseImmediateInstructionResult tapes overlay destination value initialWork work out.HasBinaryPrefix (emittedBits ++ List.flatMap Entry.encode (DenseOverlay.write overlay destination value))) (denseImmediateInstructionTime tapes overlay destination value)

Exact semantic and time contract for one immediate dense-overlay write.