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