For someone (me) interested in using Category Theory, Algebra and Topology in applications, these examples of using Cohomology and Sheaf Theory are really interesting! Really excited to read more on David's work. Thanks very much for sharing the talk!
These three realisms apply to software engineering pretty well :P Fixed realism: "There is one spec and one implementation" Covariant realism: "There is one spec but many possible implementations" Local realism: "There are many specs, depending on your (bounded) context, each with many possible implementations"
What you described is essentially called a lattice. Lattices are pretty common in existence. As humans we make a lot of names and concepts for the same things and it can get confusing juggling all the stuff but it turns out most things are actually the exact same thing. Sorta like "a rose is a rose by any other name". Category theory is precisely a theory about all this. E.g., X has internal structure and Y has internal structure and functors are what lets us translate between them. An "apple" and a "jabolko" are two seemingly different things that have a functorial relationship.
I think it’s a bit stretched. Fixed focus on each model, covariant focus on models’ equivalence, and local focus on models quotient by equivalence in some sense. Covariant and local are two almost complementary ways of seeing things: covariant only sees sameness, and structure of such sameness as important; local takes sameness as given, and we take the totality of all given we know very well where different parts coincide. Forcing an analogy in software engineering is not easy. Spec is important by defining sameness, but we never care how two programs are the same, given they are the same modulo the spec already; on the other hand, local realism is not immediately translatable to s.e. because there is hardly concern to care about the global inconsistency - such problems are usually undecidable in SE context. It is also rarely the case that we can soundly allow inspecting different impls of a same spec. Most often, we forbid these for soundness, or in the other direction, allow them by abandoning it. Thus, we are never taking the quotient (like pushout) but more like filtering out the difference (like pullback), but without being really interested in the sameness structure at the same time
Very interesting indeed. I liked a lot the examples you gave of sheaves. And I didn't know the cohomology example from Penrose: very clear. Thank you!!!
I like the philosophy of local realism (cf. animistic multinature, relational quantum mechanics etc.), but the technical discussion is somewhat dubious. What if, to begin with, we have a serious disagreement about "real numbers", or other aspects of number theory? How to make the philosophically sound aspects of sheaf theory less "technical" and more foundationally general? The philosophical approach of the sheaf idea seems as such much more general than Category theory.
Hmm, to "measure disagreement", as long as the question implicates some order based on relational operators (< >; more-less; increases-decreases), there is some "group theory" of relational operators involved? If the theory is striving for some sort of coherence theory of truth, any case?
the problem with this "local realism" is it says that atoms didn't exist before Perrin settled the question of the reality of atoms, and then they existed after. In general, you can't have a sensible notion of "realism" without some world for models to model, but that's exactly what this "local realism" tries to do. It's just a models of models, pure epistemology, no ontology.
I mostly agree with you. But it is not realism but rather materialism, which settles the issue that things must be real. Because real can mean anything. It can mean “describable, normatively”. For example, the Tao or the Logos is considered real. But it is not material. So actually it is not real and is merely a result of generative effects on the category of materials. Why? Well, tell me how you do math or anything really. Do you have the godlike power to materialize objects? Or do you compose them with your body? Math is real only when it’s being done. Applied, discussed- or just being a part of everyday life. Material has properties and that must be accepted. They are intrinsic to matter and were never assigned to the material any more than the material was ever assigned to the universe. This is the idea of the “unity of opposites”. It is the dialectic. That critique of realism can be said for any metaphysical explanation of reality. E.G. Bhaskar, who extrapolates from “science” a bucketfull of nonsense. But I have a deep, deep respect for Lawvere.
Categories (form, syntax) are dual to sets (substance, semantics) -- category theory. Global realism is dual to local realism. Homology is dual to co-homology. Objects are dual to subjects. "Always two there are" -- Yoda. Thesis is dual to anti-thesis creates the converging or syntropic thesis, synthesis -- the time independent Hegelian dialectic. The synthesis is a product of duality! Symmetry is dual to conservation -- the duality of Noether's theorem.
So, to make something clear which is probably quite important: If you have generalized contradictory you can solve those contradictory by making them more specific. It's, "It is ? raining at ___ where ___, ___, ___". Here ? represents a possible not and the ___'s are specializations that can make the statement true(e.g., find the correct part of the generalization that gives a truth). Wars have been fought over people miscommunication and almost all of it has been due to the generalization-specialization. Humanity is the way it is precisely because of the ambiguities in our languages. People develop different languages independent but the are all related. But lots of pitfalls and such which has created many social problems since most people do not really understand the things that this video presents(but does not make more explicit along the social side of things). E.g., Everyone has a different perspective. Everyone is local = "concrete" = "specific" in most of their thinking. "Generalizers" are people who think more freely in "generalizations" of specifics and this can be very difficult for a "specifier" to make sense of and many times they will insert their own for the blanks and hence get a false statement(or true) and think you area moron(and get in to an argument to try to prove to you that you are wrong... when in fact they are wrong since they inserted "hidden assumptions"(they filled in the blanks with things that were likely not what the original thought process had in mind. I experience these issues on a regular bases since a large part of my thinking is very general. Most people don't have the time, patience, discipline, or intelligence to understand that communication, meaning, truth, etc is extremely extremely complex.)). I think mathematics is starting to uncover how the subconscious mind works. Clearly there is structure in the mind and this structure seems to be mathematical or have a mathematical embedding in it. I think as we all, as a species, learns to deal with generalization and specification better potentially the better off we can be. People get in to all kinds of arguments over things that are meaningless. Untold issues have been seeded by simple miscommunications or interpretations that it's amazing we even have a society.
For someone (me) interested in using Category Theory, Algebra and Topology in applications, these examples of using Cohomology and Sheaf Theory are really interesting! Really excited to read more on David's work. Thanks very much for sharing the talk!
These three realisms apply to software engineering pretty well :P
Fixed realism: "There is one spec and one implementation"
Covariant realism: "There is one spec but many possible implementations"
Local realism: "There are many specs, depending on your (bounded) context, each with many possible implementations"
What you described is essentially called a lattice. Lattices are pretty common in existence. As humans we make a lot of names and concepts for the same things and it can get confusing juggling all the stuff but it turns out most things are actually the exact same thing. Sorta like "a rose is a rose by any other name". Category theory is precisely a theory about all this. E.g., X has internal structure and Y has internal structure and functors are what lets us translate between them. An "apple" and a "jabolko" are two seemingly different things that have a functorial relationship.
I think it’s a bit stretched. Fixed focus on each model, covariant focus on models’ equivalence, and local focus on models quotient by equivalence in some sense. Covariant and local are two almost complementary ways of seeing things: covariant only sees sameness, and structure of such sameness as important; local takes sameness as given, and we take the totality of all given we know very well where different parts coincide.
Forcing an analogy in software engineering is not easy. Spec is important by defining sameness, but we never care how two programs are the same, given they are the same modulo the spec already; on the other hand, local realism is not immediately translatable to s.e. because there is hardly concern to care about the global inconsistency - such problems are usually undecidable in SE context. It is also rarely the case that we can soundly allow inspecting different impls of a same spec. Most often, we forbid these for soundness, or in the other direction, allow them by abandoning it. Thus, we are never taking the quotient (like pushout) but more like filtering out the difference (like pullback), but without being really interested in the sameness structure at the same time
The market example was great! really enjoyed this talk.
Hi can we please start getting subtitles
Very interesting indeed. I liked a lot the examples you gave of sheaves. And I didn't know the cohomology example from Penrose: very clear.
Thank you!!!
Great talk! Thanks!
I like the philosophy of local realism (cf. animistic multinature, relational quantum mechanics etc.), but the technical discussion is somewhat dubious. What if, to begin with, we have a serious disagreement about "real numbers", or other aspects of number theory?
How to make the philosophically sound aspects of sheaf theory less "technical" and more foundationally general? The philosophical approach of the sheaf idea seems as such much more general than Category theory.
Hmm, to "measure disagreement", as long as the question implicates some order based on relational operators (< >; more-less; increases-decreases), there is some "group theory" of relational operators involved? If the theory is striving for some sort of coherence theory of truth, any case?
the problem with this "local realism" is it says that atoms didn't exist before Perrin settled the question of the reality of atoms, and then they existed after. In general, you can't have a sensible notion of "realism" without some world for models to model, but that's exactly what this "local realism" tries to do. It's just a models of models, pure epistemology, no ontology.
I mostly agree with you. But it is not realism but rather materialism,
which settles the issue that things must be real. Because real can mean anything. It can mean “describable, normatively”. For example, the Tao or the Logos is considered real. But it is not material. So actually it is not real and is merely a result of generative effects on the category of materials. Why? Well, tell me how you do math or anything really. Do you have the godlike power to materialize objects? Or do you compose them with your body? Math is real only when it’s being done. Applied, discussed- or just being a part of everyday life.
Material has properties and that must be accepted. They are intrinsic to matter and were never assigned to the material any more than the material was ever assigned to the universe.
This is the idea of the “unity of opposites”. It is the dialectic.
That critique of realism can be said for any metaphysical explanation of reality. E.G. Bhaskar, who extrapolates from “science” a bucketfull of nonsense. But I have a deep, deep respect for Lawvere.
Categories (form, syntax) are dual to sets (substance, semantics) -- category theory.
Global realism is dual to local realism.
Homology is dual to co-homology.
Objects are dual to subjects.
"Always two there are" -- Yoda.
Thesis is dual to anti-thesis creates the converging or syntropic thesis, synthesis -- the time independent Hegelian dialectic.
The synthesis is a product of duality!
Symmetry is dual to conservation -- the duality of Noether's theorem.
So, to make something clear which is probably quite important: If you have generalized contradictory you can solve those contradictory by making them more specific. It's, "It is ? raining at ___ where ___, ___, ___". Here ? represents a possible not and the ___'s are specializations that can make the statement true(e.g., find the correct part of the generalization that gives a truth).
Wars have been fought over people miscommunication and almost all of it has been due to the generalization-specialization. Humanity is the way it is precisely because of the ambiguities in our languages. People develop different languages independent but the are all related. But lots of pitfalls and such which has created many social problems since most people do not really understand the things that this video presents(but does not make more explicit along the social side of things). E.g., Everyone has a different perspective. Everyone is local = "concrete" = "specific" in most of their thinking. "Generalizers" are people who think more freely in "generalizations" of specifics and this can be very difficult for a "specifier" to make sense of and many times they will insert their own for the blanks and hence get a false statement(or true) and think you area moron(and get in to an argument to try to prove to you that you are wrong... when in fact they are wrong since they inserted "hidden assumptions"(they filled in the blanks with things that were likely not what the original thought process had in mind. I experience these issues on a regular bases since a large part of my thinking is very general. Most people don't have the time, patience, discipline, or intelligence to understand that communication, meaning, truth, etc is extremely extremely complex.)).
I think mathematics is starting to uncover how the subconscious mind works. Clearly there is structure in the mind and this structure seems to be mathematical or have a mathematical embedding in it. I think as we all, as a species, learns to deal with generalization and specification better potentially the better off we can be. People get in to all kinds of arguments over things that are meaningless. Untold issues have been seeded by simple miscommunications or interpretations that it's amazing we even have a society.
Identifying the locations like that is the "agree to disagree" except that instead of labeling as "Alice" you label as [Alice's location]