# Mathematical object

**Mathematical object** is anything that can be formally defined and used in deductive reasoning and *mathematical proof*. Common mathematical objects include permutations, combinations, partitions, relations, theorems, even proofs themselves. With set theory (ZFC) at the foundation of mathematics, mathematical objects are defined in terms of sets.

**Discrete Structures** aid us in modelling the world in a way that enables us to think about it rigorously and computationally.

**Modelling** is used to approximate objects and concepts by identifying and encoding patterns in the data.

**Mathematical structure** on a set is an additional structural object that, in some manner, attaches (or relates) to that set, endowing it with some extra meaning or significance. Structure-preserving relations map structures in domain to equivalent structures in codomain: **homomorphisms** preserve algebraic structures, **homeomorphisms** preserve topological structures, **diffeomorphisms** preserve differential structures.

Since computers operate on discrete bits of data, Discrete Mathematics overlaps with Computer Science in its study of:

* algorithms
* algorithmic complexity
* proofs
* formal language
* automata
* computability
* correctness of programming languages
* automated and assisted theorem proving

Solving a problem computationally requires

* modeling the world
* devising an algorithm
* determining its efficiency and correctness
