  The article provides an overview of the existing methods of dynamic memory
verification; a comparative analysis is carried out; the applicability for
solving problems of control, monitoring, and verification of dynamic memory is
evaluated. This article is divided into eight sections. The first section
introduces formal verification, followed by a section that discusses dynamic
memory management problems. The third section discusses Hoare's calculus
resumed by heap transformations to the stack. The fifth and sixth sections
introduce the concept of dynamic memory shape analysis and the rotation of
pointers. The seventh is on separation logic. The last section discusses
possible areas of further research, particularly the recognition at recording
level of various instances of objects; automation of proofs; "hot" code, that
is, software code that updates itself when the program runs; expanding
intuitiveness, for instance, on proof explanations.
