adding some formalizations of basic concepts