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