How does this scheme enforce that the graph remain acyclic? The David Clear article (linked from the first paragraph) doesn’t appear to claim such an invariant.
This is an oversight on my part. A zettelkasten doesn’t have to be an acyclic graph (directed - yes). I’ve fixed the article. Thanks for noticing it.
Neuron does detect and display cycles if any. But it doesn’t enforce that there be no cycles.
directed acyclic you mean?
The links are pretty clearly ‘directed’, so that’s not my concern.
If notes are immutable and you can only link to a pre-existing note, then time would cause the graph to be acyclic, just like (e.g.) the git commit graph. I’m not sure that’s a desirable property in a note-taking system, though. Anyway, I didn’t see any mention of that constraint in my quick skim the linked article. I was just wondering if I missed something.
I think the idea is that anything that would create a cycle has to be segmented into different namespaces. This way you can have a full graph but each namespace is directed and acyclic.
Where do you see this idea?
tl;dr: nowhere, it’s just how I would do it…
I read the post about zettelkasten that he links to and in there it explains that you have tags and links, the tags are sets of cards and can overlap but the links are directed edges, forming a graph. The base namespace (names of cards) is a lattice (basically vector clocks) and you are encouraged to explain links so they are sequential (narrative), I suspect that if they loop you’d be in a different namespace (tag) or when you try to extract a narrative from the zettelkasten you need to resolve these “merge conflicts”.
Even if the links can loop then maybe he was just referring to the tags which according to the article will be centralized in an index card where you list the tags (rows) and the cards that implement them (in each row), this table is partially ordered by ordering of events.
Anyway, it’s not really formally specified how to link in the post so idk and I didn’t get deep enough into the code of this neuron thing to confirm any of this conjecture - so you can safely ignore the statement.