  The goal of this survey is to introduce all the necessary concepts and
theorems to provide a rigorous and self-contained proof of the Law of Quadratic
Reciprocity and see how this is a useful tool to obtain results such as the
problem of the two squares, the problem of determining when a second grade
congruence equation has any solutions, to prove some properties about prime
numbers and even to obtain information about the zero set of an elliptic curve.
  We include examples specifically chosen to improve the understanding of the
theorems, those examples were created with the program GAP due to its
convenience for this topic of mathematics and we include the codes so the
reader can readily test it.
