What is the difference between smart signatures and smart contracts

You can see this post which is related, and offers a way to integrate an invalidation logic into the smart signature (aka LogicSig) so that it can be used at most once :