[HN Gopher] Applied Compositional Thinking for Engineers
___________________________________________________________________
Applied Compositional Thinking for Engineers
Author : pawsed
Score : 66 points
Date : 2021-02-11 11:45 UTC (1 days ago)
(HTM) web link (applied-compositional-thinking.engineering)
(TXT) w3m dump (applied-compositional-thinking.engineering)
| tacon wrote:
| Category theory jumps out of its software silo and is applied to
| ... well, everything else. This looks like a fun course!
| Koshkin wrote:
| Dr. David Spivak, a guest speaker, is one of the well-known
| researchers and educators in this area.
| eli_gottlieb wrote:
| Nice to see the ACT field moving forward :-).
| madhadron wrote:
| I followed the first two thirds of this, and stopped because I
| felt that I wasn't getting much. A lot of names for things I
| already knew, but nary a theorem or meaty result that gave me any
| new insight. I think my greatest benefit was no longer feeling
| like MacLane's book needs to be on my reading list.
|
| Also, I discovered that there are cranks even in category theory!
| There was this guy Robert Rosen who tried to apply it to biology,
| got totally confused, wrote three giant books, and now has a
| posthumous following. That wasn't something the lecturers were
| pushing, but it came up among the students.
| gugagore wrote:
| I had (maybe unreasonably) hoped that this course would provide a
| glimpse into how CT can be applied to organizing and processing
| data in the sense of keywords like "knowledge graphs", "graph
| databases", "ontologies", "model-based engineering".... And on
| top of that, representing operations to do meaningful (semantic)
| version control on these representations (e.g. [1, 2]), and
| bidirectional transformations [3] between structured
| representations (e.g. [3, 4] and "Triple Graph Grammars"). I have
| the sense that there are dozens of disparate concepts and that
| category theory offers some unifying power.
|
| I hope that there simply hasn't been enough work done to do a
| category-theoretic treatment of all of these topics, and that
| perhaps even more category theory itself needs to be developed so
| that there are good ways to talk about concepts that are almost-
| but-not-quite-entirely described or subsumed by category theory.
|
| The alternative is that I'm painfully wrong about what applied
| category theory aims to be, and that I have a ton of application-
| specific terms to learn about and won't find a formalization of
| the sense in which all of these concepts relate.
|
| [1]
| https://en.wikibooks.org/wiki/Understanding_Darcs/Patch_theo...
|
| [2] https://github.com/trailofbits/graphtage
|
| [3] http://bx-community.wikidot.com
|
| [4] https://github.com/grammarware/bx-parsing
|
| [5] https://en.wikipedia.org/wiki/QVT
|
| [6]
| http://graphdatamodeling.com/Graph%20Data%20Modeling/GraphQL...
|
| [7] https://neo4j.com/developer/guide-data-modeling/
|
| [8] https://web-cats.gitlab.io/#some-of-the-cats-we-come-across
|
| [9] http://pauillac.inria.fr/~pilkiewi/papers/boomerang-tr.pdf
| bcheung wrote:
| CT is universal in the sense that if you understand how it is
| applied in one domain you can easily apply it to others.
|
| The problem with CT education IMO is that it cannot be taught
| at the abstraction level only -- there are too many floating
| abstractions that people can't anchor to any existing
| knowledge.
|
| This means CT can only REALLY be understood once you apply it
| to a domain. The problem is that not many people outside of
| mathematicians understand the domains that CT is traditionally
| taught with.
|
| CT for Engineers, CT for Programmers, CT for XYZ, is probably
| the only viable way CT is going to see wider adoption.
| Koshkin wrote:
| In CT terms, "CT _has a universal property_... "
| spekcular wrote:
| I always groan when I see posts on HN with grandiose claims about
| category theory, like this one.
|
| I think it is actively harmful to propagate pseudo-mathematical
| claims like the those, for example, found in the slides of Guest
| Lecture 1:
|
| >>> It's touched or greatly influenced all corners of
| mathematics.
|
| >>> It's become a gateway to learning mathematics.
|
| And from the audio of the lecture (paraphrasing):
|
| >>> Category theory is the stem cell that differentiates into and
| lies at the root of all pure mathematics. ["All forms of pure
| math" is also written on the slides.]
|
| These statements are simply false. The vast majority of pure
| mathematics research done today does not involve category theory
| at all, and does not benefit from it. An even greater majority
| (like 99%+) of mathematics done in industry and in national labs
| does not involve category theory. Numerical analysis,
| probability, statistics, partial differential equations,
| dynamical systems, harmonic analysis, even lots of modern
| differential geometry - no category theory to be seen!
|
| Want proof? Pick up any introductory graduate textbook, or any
| major journal in these fields.
|
| Now, if you want to do research in number theory, or algebraic
| topology, or algebraic geometry - sure, you likely would benefit
| from categorical thinking. But those fields hardly have a
| monopoly on pure mathematics. Even in, for example, Hatcher's
| introductory graduate text on algebraic topology (perhaps the
| most widely used), category theory is stuck in a small appendix
| and you can read the entire thing without it, with no real loss
| [1].
|
| I don't have the energy right now to explain why I find the
| lecture series misguided more generally, but I want to at least
| flag these _obviously incorrect statements_ and urge caution.
|
| [And before anyone grabs a PDE book and tells me the use of
| cohomology groups in certain places means PDE uses category
| theory, please note that e.g. homological algebraic and category
| theory are different things.]
|
| [1] OK, I guess you need to know what e.g. a natural
| transformation is to read some parts of the last chapter, but no
| one does that in an introductory course anyway. A motivated
| teacher could easily present the material in such a way that this
| didn't matter.
| Koshkin wrote:
| Personally, I wouldn't be _that_ skeptical. By its very nature
| CT as a foundational theory and is relevant to, and has at
| least in that sense indeed touched, all corners of mathematics.
| (Mathematicians had the same skepticism about Set Theory when
| it first appeared.) Especially the "theoretical" (pure) math.
| So, sure, "you can read the entire thing without it, with no
| real loss", but this only says something about the particular
| textbook and not the subject itself. I assure you, the _actual_
| loss, whether you realize it or not, will be very real. Books
| like Aluffi 's _Algebra: Chaper 0_ have a very good reason
| behind them. Category Theory is _the_ chapter zero of the
| modern _understanding_ of mathematics (and not only).
| spekcular wrote:
| Can you please explain to me how learning category theory is
| relevant to, or would enhance the work of, a research
| mathematician who works on, say, harmonic analysis or
| probability theory?
|
| What is the _actual loss_ to these mathematicians?
|
| Also, your claim that category theory is a foundational
| theory (in the sense that set theory is) is just mistaken.
| Homotopy type theory claims to be such a theory, but homotopy
| type theory should not be identified with category theory
| more broadly.
| Koshkin wrote:
| I wouldn't try, but Helemskii's _Lectures And Exercises on
| Functional Analysis_ show all this in exquisite detail.
|
| _The Convenient Setting of Global Analysis_ (freely
| available as a PDF) makes extensive use of the categorical
| notions and methods.
| spekcular wrote:
| This does not answer my question. The material in the
| first book is all well-known. A standard reference is
| Reed and Simon's _Methods of Modern Mathematical
| Physics_. Categories don 't gain you anything there, and
| in any case it's tangentially relevant to most work in
| harmonic analysis and probabiility. The second book is
| not relevant at all.
|
| Just because you can produce books on analysis where
| someone uses the word "category," does not mean a working
| mathematician ought to care.
| Koshkin wrote:
| (Funny that you mentioned "a working mathematician.")
|
| Anyway, wouldn't it be nice to _really_ understand, on
| some (higher, admittedly) level, what it is that you are
| _actually_ doing? Functors and all...
| spekcular wrote:
| But this is exactly my objection. Returning to your
| example, I don't think working through Helemskii's book
| helps one _really_ understand functional analysis
| relative to a well-written standard treatment. What
| interesting problems does this viewpoint permit a
| probabilist or harmonic analyst to solve that the
| standard approach does not? What theorems does it enable?
|
| I find it bizarre that you (and others - I don't mean to
| pick on you) seem to think that a translation to category
| theoretic language is necessary (and sufficient?) to
| understand what one is _actually_ doing. Do the many
| professional mathematicians who prove important theorems
| in functional analysis today without bothering to learn
| this language not _actually_ understand what they are
| doing [0]? But the undergraduate who reads Helemskii
| does? This seems like an absurd notion of what it means
| to _actually_ understand a subject.
|
| [0] See, for example, many of the papers noted here:
| https://en.wikipedia.org/wiki/Invariant_subspace_problem
| bcheung wrote:
| It's a bit of a white lie but I don't see it being harmful to
| claim that. It is increasingly becoming true.
|
| Lots of fields are adopting CT. And being taught CT earlier on
| in the process would provide a useful framework for building
| upon future knowledge.
|
| Mathematics seems to have 10 different names for the same
| concept depending on which field you are in. CT provides a
| common vocabulary.
| btilly wrote:
| _It 's a bit of a white lie but I don't see it being harmful
| to claim that. It is increasingly becoming true._
|
| I do.
|
| Category theory is something that appeals to some
| mathematicians, and not to others. Those who it doesn't
| appeal to are likely to wind up in fields like combinatorics,
| functional analysis, numerical analysis, and so on. If you
| inflict category theory prematurely on the latter group,
| people who might have proven quite talented will be driven
| away from mathematics.
|
| And I feel this quite personally. I left mathematics for
| other reasons. But still, had I had to deal with category
| theory first, I'd have never gone into mathematics in the
| first place.
| neonological wrote:
| >>> Category theory is the stem cell that differentiates into
| and lies at the root of all pure mathematics. ["All forms of
| pure math" is also written on the slides.]
|
| I would say this statement is not false. It does seem to lie at
| the root and is an alternative to set theory which means that
| mathematics can be perceived with category theory as it's
| foundation. Whether an actual written CT reformalization has
| been executed within all the pure mathematical sub fields or
| whether doing an actual formalization from the perspective of
| CT will be a benefit at all is another topic all together.
|
| I agree that category theory is not popular. However I feel
| software engineers should have interest in it as Category
| theory looks to intersect with an area of software engineering
| that is currently done ad-hoc style with just gut feelings.
|
| If you squint, Category theory looks to be a formalized theory
| for the design and complexity of modules. Fully understanding
| Category theory and how it applies to software could lead to a
| future where design and architecture is "calculated" rather
| then "designed."
| nine_k wrote:
| I suspect such claims might grow from the idea that you can
| replace set-theoretic constructs with category-theoretic
| constructs in certain places, and see what happens. It must be
| pretty fundamental, in the sense that dependence on a set
| theory lies in the foundation of many branches of mathematics.
| I can't say how _universally_ such an approach can be applied;
| likely not very much.
| motohagiography wrote:
| The way that CT is explained to engineers here is what tech
| architects do every day, and with the rigour of formalisms that
| would help clarify a lot of the muddled thinking some architects
| suffer from. Arguably, an architect is someone who uses
| categories and relationships between them to solve and optimize
| for aggregate behaviour and outcomes.
|
| I watched the first guest lecture, which was very good. I'm not a
| mathematician, engineer, or a category theorist, but I can apply
| the formalisms to system architecture instantly.
| skybrian wrote:
| I guess, but I'm reminded of the promises made for UML, where
| in the end it just introduced some standard conventions for
| whiteboard diagrams.
|
| Abstract, domain-independent formalisms can make ideas _harder_
| to understand than domain-specific, concrete examples. With
| category theory, I 'm not seeing examples of the formalism
| paying off that would justify the endeavor.
| zozbot234 wrote:
| UML did not have a categorical foundation in the way that,
| e.g. commutative diagrams, tensor networks or proof nets do,
| though. Categorical foundations help define some implied
| properties and allowed operations (e.g. "diagram chasing" as
| a diagrammatic representation of composition) that have no
| equivalent in ad-hoc modeling notations like UML.
| aWidebrant wrote:
| Is this just the second coming of cellular automata?
___________________________________________________________________
(page generated 2021-02-12 23:01 UTC)