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