  With the help of lattice Monte Carlo modelling of heteropolymers, we show
that the necessary condition for a protein to fold on short call is to proceed
through partially folded intermediates. These elementary structures are formed
at an early stage in the folding process and contain, at the local level,
essentially all of the amino acids found in the folding core (transition state)
of the protein, providing the local guidance for its formation. The sufficient
condition for the protein to fold is that the designed sequence has an energy,
in the native conformation, below $E_c$ (the lowest energy of the structurally
dissimilar compact conformations) where it has not to compete with the bulk of
misfolded conformations. Sequences with energy close to $E_c$ can display
prion--like behaviour, folding to two structurally dissimilar conformations,
one of them being the native.
