Consider the following premises. forall x_12: S(x_12) -> S_12(x_12). p_3 -> S(a_12). S_12(a_12) -> p_3. ~S_12(a_12). Can we infer ~p_3 from them? If possible, name the inference rules being used at each step.
 From forall x_12: S(x_12) -> S_12(x_12) we can infer S(a_12) -> S_12(a_12) via universal instantiation. From p_3 -> S(a_12), S(a_12) -> S_12(a_12) we can infer p_3 -> S_12(a_12) via transitivity. From p_3 -> S_12(a_12), S_12(a_12) -> p_3 we can infer p_3 <-> S_12(a_12) via biconditional introduction. Finally, from p_3 <-> S_12(a_12), ~S_12(a_12) we can infer ~p_3 via biconditional elimination. Therefore, the answer is yes.