  Several definitions of classicality are considered, such as
P-representability, generalized coherent states and separable states. These
notions are treated under a simple and general definition based on convex sets,
which enables the use of the Hahn-Banach theorem to separate classical states
from nonclassical ones. Nonclassicality linear witnesses are constructed, based
on the observables available in a given physical situation. Some examples of
nonclassical states are considered, with detection schemes available nowadays.
Reviewing the concept of entanglement potential from a different perspective,
it is shown that in some contexts an arbitrary single-system nonclassical state
can be converted into a bipartite entangled state, provided a generalized
controlled-displacement (e.g., beam-splitter, CNOT gate) is available. Also,
this entanglement can be detected in a simple way using the nonclassicality
witness of the original single-system state. Finally, we extend the discussion
to multipartite states, proposing alternative ways to generate and classify
multipartite entanglement.
