Proving decidability of language
I have not fully understood the algorithm, as it didnt state what $w$ is.

Although, the language $L$ is decidable:

Build the TM for the following algorithm: (assuming input of form $&lt;M,t&gt;$)


For every $w\in\Sigma^*$ with $|w|\le t$:


Emulate $M$ on $w$ for $t$ steps. If $M$ did not halt in that time, reject.

If for all such $w$, $M$ halted within $t$ steps - accept.


This algorithm always halts - as there are a finite number of $w$ with $|w|\le t$ (and it does not simulate $M$ for more than $t$ steps)

The algorithm is right: 


If $&lt;M,t&gt;\in L$ then $M$ will halt within $t$ steps on every $w$ we will check, therefore the algorithm will accept.
If $&lt;M,t&gt;\notin L$, then there is some $w\in\Sigma^*$ where $M$ doesnt halt on him within $t$ steps. Notice, that if we define $\hat w=w_{1,...,t}$ to be the first $t$ letters of $w$, then also $M$ wouldnt halt on $\hat w$ within $t$ steps, as if it would have been - then $M$ didnt read move its head right more that $t$ times - and therefore for every $y\in\Sigma^*$, $M$ halts on $\hat wy$ within $t$ and specifically $w$ too. The algorithm can find the $\hat w$ (since $|\hat w|=t$) and will reject because of it.