Created: January 20, 2022
Modified: February 20, 2022
Modified: February 20, 2022
abstraction
This page is from my personal notes, and has not been specifically reviewed for public consumption. It might be incomplete, wrong, outdated, or stupid. Caveat lector.Abstraction is lossy compression. A good abstraction throws away everything not relevant to a particular problem, while preserving a well-behaved representation that supports reasoning and/or maintains a useful notion of causality.
Abstraction allows us to use a single line of reasoning or planning to come up with statements that are true, or plans that will be effective, in a wide range of situations.
- Any long-term plan must be in terms of abstract high-level actions.
- Any coherent memory must also be largely in terms of abstractions: otherwise we wouldn't have enough space!
homomorphisms are a pure model of abstraction. They are (at least potentially) many-to-one functions, such that passing an element through the homomorphism 'forgets' which exact element you started with, but still preserves the group structure.