O'Reilly logo
  • You Wang thinks this is interesting:

The process of distilling the relevant aspects of a problem is called abstraction. It is a necessary step so the problem is described precisely, using the language of logic and mathematics. The result of abstraction is a model that represents all the relevant aspects of the problem.

From

Cover of Introduction to Computing Using Python: An Application Development Focus

Note

abstraction can divide complex system into manageable pieces.

in this case, the relationship can be described as a dict type in Python