Actually, having just "<" is legal SGML. The name of an entity
reference can be explicitly terminated by a ';' or implicitly
terminated when a non-name character is encountered.
<p> 5 < 6
Is legal. However,
<p> The <p> tag denotes paragraphs.
is legal, but will not give you the proper results. The parser
will see the entity reference "ltp". This will lead to an
undefined entity reference (unless "ltp" is defined).
With all that said, one should use the ';' to delimit entity references.
It makes life easier for developers of HTML based applications.