David Marr proposes that information processing systems can be understood at three separate levels:
In vision, for instance, we can characterize the computational problem (classify objects given a sequence of stimuli), algorithms (hierarchical layers of representations), and implementation (neural pathways, cones and rods).
It’s interesting to analogize these as lenses for thinking about Tools for thought. In my study of a Spaced repetition memory system, for example:
Marr, D. (1982), Vision: A Computational Approach, San Francisco, Freeman & Co.
A summary: https://cocosci.princeton.edu/papers/krafftCogsci.pdf