As in the word-ordering case, we also experiment with modifying the succ function in order to train under hard constraints, namely, that the emitted target sequence be a valid parse.
we constrain the output at each time-step to obey the stack constraint, and we ensure words in the source are emitted in order.