I've heard many times that all programming is really a subset of math. Some suggest that OO, at its roots, is mathematically based, but I don't get the connection, aside from some obvious examples:
- using induction to prove a recursive algorithm,
- formal correctness proofs,
- functional languages,
- lambda calculus,
- asymptotic complexity,
- DFAs, NFAs, Turing Machines, and theoretical computation in general,
- and the fact that everything on the box is binary.
I know math is very important to programming, but I struggle with this "subset" view. In what ways is programming a subset of math?
I'm looking for an explanation that might have relevance to enterprise/OO development, if there is a strong enough connection, that is.