[HN Gopher] Data structures as topological spaces (2002) [pdf]
___________________________________________________________________
Data structures as topological spaces (2002) [pdf]
Author : cpp_frog
Score : 126 points
Date : 2024-02-16 12:57 UTC (10 hours ago)
(HTM) web link (mgs.spatial-computing.org)
(TXT) w3m dump (mgs.spatial-computing.org)
| misja111 wrote:
| How is this fundamentally different than considering data
| structures as graphs?
| anon291 wrote:
| Graphs are discrete, topologies are potentially continuous.
| Moreover, you can do different things with them such as create
| homeomorphisms to another topology much more easily than you
| can create bijections between graphs. In general, continuity
| lets you assume things that are impossible in discrete spaces.
| For example, many optimization problems are really easy in
| continuous spaces but really hard in discrete ones (linear
| programming for example)
|
| Given the recent success with vectors as a general model for
| data (as witnessed by the continued success with deep neural
| networks), it's an interesting discussion to have.
| dlahoda wrote:
| feels so true.
| StevenXC wrote:
| Also relevant:
|
| https://en.m.wikipedia.org/wiki/Topological_data_analysis
| JensW wrote:
| Discrete spaces can also be topological spaces, see discrete
| topology
| HighFreqAsuka wrote:
| Did you not read the word "potentially"? Topological spaces
| are a more general case of spaces that contain the discrete
| case as a subset.
| aleph_minus_one wrote:
| > Moreover, you can do different things with them such as
| create homeomorphisms to another topology much more easily
| than you can create bijections between graphs. In general,
| continuity lets you assume things that are impossible in
| discrete spaces.
|
| If you argue with more generality: why not consider sites
| (and, relatedly, topoi) instead of topological spaces then:
|
| > https://en.wikipedia.org/wiki/Grothendieck_topology
|
| > https://en.wikipedia.org/wiki/Topos
| anon291 wrote:
| > If you argue with more generality: why not consider sites
| (and, relatedly, topoi) instead of topological spaces then:
|
| I thought linear programming would be something everyone
| knows, and I am not the original author so I can't speak
| for why they chose topological spaces instead of anything
| listed here. I think their e-mails are on the paper.
| Perhaps e-mailing them will help elucidate their choice.
| mathgradthrow wrote:
| Topologies are _necessarily_ continuous
| anon291 wrote:
| Perhaps the confusion is that I should have said
| topological spaces can be continuous. There are discrete
| topological spaces. Topologies (which I believe is
| typically used to refer to the collection of open sets in a
| topological space) are not functions or relations
| themselves, so I'm not sure a useful notion of continuity
| applies there, but if I'm wrong, please inform.
| m3ndax wrote:
| There isn't really such a thing as a 'continuous
| topological space'. Technically speaking, continuity is a
| property of functions between topological spaces. I think
| you're being tempted to use the terms continuous and
| discrete in a more colloquial sense mapping more to
| uncountable vs countable/countable and finite perhaps.
| But yeah, you really wouldn't use the term continuous to
| describe a topological space or a topology.
| nyrikki wrote:
| The classic middle-thirds Cantor Set being a
| topologically set is one of the easiest counter examples
| to the above misconception that the sets need to be
| continuous themselves.
|
| Being able to define a neighborhood or a concept of
| closeness is required, but the concept of distance is not
| required.
|
| If you can define a distance a topological space is a
| metric space
|
| If it is locally euclidean it may be a manifold.
|
| Really the union and finite intersection of subsets is
| the formal way of showing something is a topological
| space. Too har do describe here but that is where the
| concept of continuity arises.
| anon291 wrote:
| Connected or complete then.
| bmacho wrote:
| This is not even false.
| skhunted wrote:
| You and OP are using the word continuous in two different
| contexts. Generally one would not say that the integers
| with the trivial topology is continuous. It's a discrete
| space with a topology. But when someone says a space is
| continuous generally they mean not discrete.
| ducttapecrown wrote:
| You're going to tell me the discrete topology is
| continuous!?
| anon291 wrote:
| I wonder if this article is related to homotopy type theory at
| all, since they propose similar ideas.
| Verdex wrote:
| Ultimately, I don't think so. All the HoTT stuff seems to
| really be focusing on constructing proof objects so that the
| computer can run them on mathematics which would otherwise not
| have any computer verification run on it.
|
| More or less advanced type checking for math.
|
| Meanwhile, the MGS language's topological collections and
| associated transforms seems to be about simulating things like
| chemical reactions. Not really verification so much as
| exploration.
|
| Although, to be sure, I think both are examples of how
| mathematics (even highly abstract mathematics like topology)
| can be useful to other disciplines.
| reuben364 wrote:
| I'm left confused as to what the gluing in the rule replacement
| is. Must the boundary of a rule match on both sides? Also what
| examples there would be of what an example would of having
| topology that is not induced from a graph if it is at all
| possible.
| HackerThemAll wrote:
| > So, the expression
|
| > 1, 1+1, 2+1, ():set
|
| > builds the set with the three elements 1, 2 and 3
|
| Regarding the "():set" part, and the "():something" idiom
| repeating in the article, is that from the same competition for
| the most absurd syntax where Golang got most of its awkwardness?
| Verdex wrote:
| It feels like the following PDF better expresses what they're
| trying to accomplish.
|
| http://mgs.spatial-computing.org/PUBLICATIONS/lami-RR72--com...
|
| As far as I can tell, they're trying to model things like
| chemical reactions (and other stuff) where given a bunch of
| "stuff" in some solution it will combine with other "stuff" if
| it's in the same topological neighborhood (which I think is
| basically the idea that ALL of the "stuff" doesn't have to be
| next to each other b/c if you let a solution just sit there
| eventually reactions are going to react).
|
| It's kind of neat, but their website seems to indicate that it is
| not being actively supported. Or at the very least they don't
| seem to have any reason to make publicly available documentation
| after since around 2010.
|
| EDIT: So for example, you could use their "trans" transform
| primitive to implement conway's game of life by defining the
| birth rule as a pattern of an empty cell with three alive cells
| and a transform that results in the empty cell being alive and
| the alive cells being the same. The death rules in similar
| fashion. Neighbor here would be defined as being physically next
| to something (but the point is that because this is about
| topologies, then neighbor doesn't have to mean physical proximity
| ... although I'm not sure where that's defined ... in the
| collection maybe?).
|
| And then you just run the transform on a collection with some
| initial state.
|
| EDIT EDIT: Yeah, the notion of neighbor is defined on the
| collection. This allows you to use the same transform on
| different collection types and get the appropriate result.
|
| ALSO checkout figure 5 in the PDF I linked because it's an
| incredibly concise description of exactly what they're doing.
|
| EDIT EDIT EDIT:
|
| This also feels vaguely similar to what the Egison language is
| doing with their pattern matching. Documentation for Egison feels
| better at least to me.
|
| https://www.egison.org/
|
| However, I don't think that egison allows you to define arbitrary
| notions of neighbors in a collection like MGS does. But I haven't
| exactly tried to use it very much.
| Cacti wrote:
| Is this for modeling a single reaction or chain of reactions?
| ie you don't need neighborhoods if you are modeling 7 trillion
| of one thing combined with 14 trillion of another?
| amelius wrote:
| I'm puzzled by what's happening on page 9 of that PDF.
|
| Ok, I quickly browsed through it, but a chemical reaction where
| two identical molecules react into those same molecules plus
| another molecule? How can this be possible?
| hackandthink wrote:
| Stephen Wolfram's ruliad seems to be some sort of concurrent
| topological computations.
|
| There are some beautiful pictures.
|
| https://content.wolfram.com/sites/43/2021/11/1110swimg46.png
|
| https://writings.stephenwolfram.com/2021/11/the-concept-of-t...
| tudorw wrote:
| Fascinating, so would this mean an LLM is an approximator of a
| certain proportion of a 'ruliad'? Apologies for using GPT here,
| but it's a bit beyond my math to make a statement like that
| without reaching for my sidekick..."in a broad sense, one could
| conceptualize a Large Language Model (LLM) as an approximator
| of a specific, limited subsection of the ruliad" so I guess so,
| ish?
| bibanez wrote:
| Considering the ruliad consists of all possible rules and
| their applications, you could say that. But it's oh so much
| more!
| mjhay wrote:
| Related to this, AlgebraicJulia has been doing a lot with
| applying concepts from algebra and category theory to data
| analysis and modelling.
|
| https://www.algebraicjulia.org/
|
| There's some blog posts that are also interesting:
|
| https://blog.algebraicjulia.org/
| whosthatguy wrote:
| > 1. selects a sub-collection B of A whose elements match the
| path pattern b,
|
| > 2. computes a new collection C as a function f of B and its
| neighbors,
|
| > 3. and specifies the insertion of C in place of B into A.
|
| This sounds a lot like the presentation of comonads as directed
| containers (e.g. https://arxiv.org/abs/1408.5809).
| andoando wrote:
| I wish I understood what this paper was saying.
| andoando wrote:
| This is very interesting. Has anyone considered using
| paths/vectors in 2d/3d space as data structures?
| runsfromfire wrote:
| Jurassic Park definitely did
___________________________________________________________________
(page generated 2024-02-16 23:00 UTC)