Pullbacks rule!
Jul. 29th, 2016 09:45 amВы будете смеяться, но я, кажется, нашел способ, как в общем виде с помощью pullbacks изобразить решение любых проблем. Причем, этот способ можно будет объяснить даже десятилетнему ребенку.
Для начала, возьмем общую схему pullbacks:

Let C be a set of all possible solutions;
Let B be a set of all possible problems;
Let D be a set of all attempts to solve problems.
f:B->D map from all possible problems to problem-solving attempts
g:C->D map from all possible solutions to problem-solving attempts
To solve a problem means to show that there exists a non-empty set A and functions g' and/or f' such that the pullback diagram commutes. That is, there should exist an arrow h: A -> D, such that h = f';g or h = g';f
Paths f';g and g';f indicate the existence of a major fork in our thinking about problem solving.
- One path (f') would be to create solutions for no particluar problem. One might call such path "technology development". After that we take path g to map such solutions to a supplied problem space.
- Another path (g') would be to proactively identify all possible problems. One might call such path "market research". After that we take path f to map problems to possible solutions, using existing solutions map f.
We choose a particular path, depending on criteria, e.g. costs and payoff (need to think how diagram those). If developing solutions is cheap or solutions don't exist, we take the first route. If problem discovery is cheap and lots of solutions exist, we take the second route.
Now, to explain this approach to a child we need to imagine four towns: one where all problem solvers live (C); another where all problem owners live (B); one where they meet and mingle(D); and one where future seers live (A). All arrows are roads. Depending on the existence of the road and travel costs, people choose different roads to visit each other.
Для начала, возьмем общую схему pullbacks:

Let C be a set of all possible solutions;
Let B be a set of all possible problems;
Let D be a set of all attempts to solve problems.
f:B->D map from all possible problems to problem-solving attempts
g:C->D map from all possible solutions to problem-solving attempts
To solve a problem means to show that there exists a non-empty set A and functions g' and/or f' such that the pullback diagram commutes. That is, there should exist an arrow h: A -> D, such that h = f';g or h = g';f
Paths f';g and g';f indicate the existence of a major fork in our thinking about problem solving.
- One path (f') would be to create solutions for no particluar problem. One might call such path "technology development". After that we take path g to map such solutions to a supplied problem space.
- Another path (g') would be to proactively identify all possible problems. One might call such path "market research". After that we take path f to map problems to possible solutions, using existing solutions map f.
We choose a particular path, depending on criteria, e.g. costs and payoff (need to think how diagram those). If developing solutions is cheap or solutions don't exist, we take the first route. If problem discovery is cheap and lots of solutions exist, we take the second route.
Now, to explain this approach to a child we need to imagine four towns: one where all problem solvers live (C); another where all problem owners live (B); one where they meet and mingle(D); and one where future seers live (A). All arrows are roads. Depending on the existence of the road and travel costs, people choose different roads to visit each other.