Consider the following premises. exists y_1: Q_2(y_1) -> S(y_1). forall y_1: Q_2(y_1) -> S(y_1). forall y_1: Q_2(y_1) or ~S(y_1). Can we infer exists y_1: S(y_1) -> Q_2(y_1) from them? If possible, name the inference rules being used at each step.
 From forall y_1: Q_2(y_1) or ~S(y_1) we can infer forall y_1: S(y_1) -> Q_2(y_1) via universal rewriting. From forall y_1: Q_2(y_1) -> S(y_1), forall y_1: S(y_1) -> Q_2(y_1) we can infer forall y_1: Q_2(y_1) <-> S(y_1) via universal biconditional introduction. From forall y_1: Q_2(y_1) <-> S(y_1) we can infer forall y_1: S(y_1) -> Q_2(y_1) via universal biconditional elimination. From forall y_1: S(y_1) -> Q_2(y_1), exists y_1: Q_2(y_1) -> S(y_1) we can infer exists y_1: S(y_1) <-> Q_2(y_1) via existential biconditional introduction. Finally, from exists y_1: S(y_1) <-> Q_2(y_1) we can infer exists y_1: S(y_1) -> Q_2(y_1) via existential biconditional elimination. Therefore, the answer is yes.