<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def controlled_mc(self, sigma):
 """ Returns the controlled Markov chain for a given policy `sigma`. Parameters sigma : array_like(int, ndim=1) Policy vector, of length n. Returns ------- mc : MarkovChain Controlled Markov chain. """

        _, Q_sigma = self.RQ_sigma(sigma)
        return MarkovChain(Q_sigma)