What essentially is the difference between a lemma and a theorem in mathematics? More specifically, suppose you come across a general result while solving a mathematical problem, what are the characteristics you would look for before categorizing it as a theorem or lemma?
EDIT: Does a difference of personal perspective count? Does the effort which goes into deriving a result also determine this distinction? I mean if the result is obtained by one person by a simple algebraic manipulation or trivial reasoning and by a complex derivation by another(let's suppose that this second person stumbles across this result while attacking a totally different problem from the first person), then I suppose the first person would call it a lemma and the second person a theorem? (Assuming that the result has great applications.)
PS: This question is the duplicate of another question (by Tamaroff) which is more comprehensive and has excellent answers. But as a result of Jim's last comment below, I have an important doubt, which I think needs to be cleared. This doubt has not come up in the question (by Tamaroff). So I think this post should not yet be closed. I have edited my question to include the doubt, which I raised in my comment below, in the question.
There is no functional difference. The difference is only in how you measure it's importance in context. If it's where you want to go it's a theorem, if it just helps you get there its a lemma.
And of course for everything that I or anyone else could say there is a counterexample. There really isn't a functional difference.