Section TM.
Hypothesis Σ:Set.
Hypothesis Σ0:Σ.
Definition HaltsAt(tm:TM Σ)(n:nat)(st:ExecState Σ): Prop :=
exists st', Steps Σ tm n st st' /\ step Σ tm st' = None.
Definition Halts(tm:TM Σ)(st:ExecState Σ): Prop :=
exists n, HaltsAt tm n st.
Definition HaltsFromInit(tm:TM Σ): Prop :=
Halts tm (InitES Σ Σ0).

Lemma HaltsAt_unique {tm n1 n2 st}:
HaltsAt tm n1 st ->
HaltsAt tm n2 st ->
n1=n2.