Indexed State Monads are different from the standard state Monad because the type of the state is transformable. This is awesome and really nice for creating statemachines that prohibit invalid transitions at the type level.
Here is the thing I read about [Indexed Monads] (http://blog.sigfpe.com/2009/02/beyond-monads.html)