Possible to check who signed the transaction in a multi-sig transaction case? Say you have a multi-sig tx that originated from a 2-of-3 P2SH address.

Is it possible to say who signed the transaction? i.e. you can get access to the redeem script once the tx is broadcasted, and thus you have access to all 3 public keys that generated the 2-of-3 P2SH address. Arguably you can identify which public keys signed the transaction? 

If yes, then how?
Is it possible to say who signed the transaction? i.e. you can get access to the redeem script once the tx is broadcasted, and thus you have access to all 3 public keys that generated the 2-of-3 P2SH address. Arguably you can identify which public keys signed the transaction? 


Yes it is possible. When a transaction is broadcast, the redeemScript and all of the signatures are revealed and publicly available in the transaction itself. It is then trivial to just check which signature corresponds to which public key in the redeemScript. You just check the signature against each public key in the redeemScript and whichever one verifies tells you which public key corresponds to that signature.

Script interpreters essentially do this in order to validate multisig spends.