



















A formal specification of a mathematical structure or a data type described in terms of a graph and diagrams (and cones (and cocones)) on it. It can be implemented by means of “models”, which are functors which are graph homomorphisms from the formal specification to categories such that the diagrams become commutative, the cones become limiting (i.e., products), the cocones become colimiting (i.e., sums).
Хотя это было сложно, архитектор программного обеспечения использовал формальную спецификацию, чтобы формально определить структуры данных и их взаимосвязи, прежде чем программисты начали писать код.






