An abstract structure is a formal object that is defined by a set of laws, properties and relationships in a way that is logically if not always historically independent of the structure of contingent experiences, for example, those involving physical objects. Abstract structures are studied not only in logic and mathematics but in the fields that apply them, as computer science, and in the studies that reflect on them, such as philosophy (especially the philosophy of mathematics). Indeed, modern mathematics has been defined in a very general sense as the study of abstract structures (by the Bourbaki group: see discussion there, at algebraic structure and also structure).
An abstract structure may be represented (perhaps with some degree of approximation) by one or more physical objects – this is called an implementation or instantiation of the abstract structure. But the abstract structure itself is defined in a way that is not dependent on the properties of any particular implementation.
An abstract structure has a richer structure than a concept or an idea. An abstract structure must include precise rules of behaviour which can be used to determine whether a candidate implementation actually matches the abstract structure in question. Thus we may debate how well a particular government fits the concept of democracy, but there is no room for debate over whether a given sequence of moves is or is not a valid game of chess.
- A sorting algorithm is an abstract structure, but a recipe is not, because it depends on the properties and quantities of its ingredients.
- A simple melody is an abstract structure, but an orchestration is not, because it depends on the properties of particular instruments.
- Euclidean geometry is an abstract structure, but the theory of continental drift is not, because it depends on the geology of the Earth.
- A formal language is an abstract structure, but a natural language is not, because its rules of grammar and syntax are open to debate and interpretation.