Synthetic models
One goal of various people in a variety of sub-disciplines of electrical engineering and computer science is automatic synthesis of machine from formal descriptions of their given behaviour.
This is a well specified problem, but usually the search space of possible given circuits or programs is much too big for an automated process; the intuition and past experience of an expert designer may not yet be matched by computational search functions.
However, persons use informal functions of machine for synthesis. The documentation of a software library, which defines the function of the several procedures, serves as an informal function that a programmer may use to reassemble those elements to create new, complex computer.