Can all knowledge be adequately represented as graphs?

Many of the current popular apps such as Roam and Obsidian allow users to generate graphs of their notes. And on the backend, Roam is based on a graph database, AFAIK.

I find graph representations to be very intuitive. The question is, can all knowledge be modeled with graph representations? Or are there situations where graphs do not properly model some knowledge accurately?


I thought I would give what, from my perspective, could be considered the “straight-forward” answer to the question. But I might be coming at it from a different angle than the one you had in mind.

Graphs can be thought of as either graphical or topological realizations of binary relations over some set of elements. A “binary relation over a set” is given by just saying which pairs of elements of that set are related, much like stating which nodes of a graph are connected by an edge. But relations are not necessarily binary: they can in principle relate many items simultaneously, such as in “if node X is relevant for thinking about something and node Y isn’t, then node Z is relevant too”. So there’s a sense in which graphs cannot express “higher-order” relations like that one (which would be a relation of size 3).

Something to keep in mind is that for these higher-order relations to be something really different, they should be “synergistic” in some way, i.e. not decomposable into pairwise relations. For instance, one could think of three nodes X, Y, Z as related because of sharing a tag, and that this defines a relation of size 3. But this doesn’t add something truly new, because in fact “sharing a tag” is a binary relation and one can see graphically that the three nodes share a tag by noting that they form a “clique” in the graph (that is, they are all connected to each other) (this is assuming a graph has an edge between two nodes if they share a tag).

One might want to use other, more complicated mathematical objects and their geometric realizations to depict relationships between items, which allow for more than two items to be related simultaneously (hypergraphs and simplicial complexes come to my mind). But this might be pointless if the resulting visualizations aren’t intuitive or manageable enough.

On the other hand one can represent higher-order relations in a graph by adding nodes of another type to represent those relations. One could have a graph with “note nodes” and “relation nodes”, and let note nodes have edges to/from a common relation node if they are synergistically related with each other. If we dictate that all edges are of this kind, so that a “standard” edge between note nodes X and Y must be replaced for a relation node to which both X and Y are connected, the result would be what is called a bipartite graph. This too might turn out to be cumbersome, and one might need even more additional stuff in the graph to make it work—but it would let you represent higher-order relationships without leaving the graph formalism if you want to.

1 Like

Thank you for this thoughtful reply @Gabo

To your point about greater-than-binary relations, I’ve been interested in this graph database tool:

It has hypergraph features and can hand “n-ary” relations.

The reason I’m interested in graph databases at all is because for some structured knowledge, like biomedical science or medical diagnosis (both areas I care about), I think there could be a lot of power in being able to make queries and possibly automated reasoning (like Grakn does) to make insights or see things that the unaided eye/mind alone could not.

1 Like

Great question, and thanks for the thoughtful reply, Gabo.

I agree that higher-order relations are essential for a more complete representation of knowledge. I would argue that all representable higher-order relations are fundamentally composed of pairwise relations. The pairwise or binary relation is the basic way of establishing difference (“a difference that makes a difference” in Gregory Bateson’s terms). That’s just an ontological point though. Practically we still have find a way to represent higher-order relations such that they function as higher-order relations, not just conglomerates of binary relations.

An interesting way to take this question as well is to ask what knowledge is not representable, period. In broad terms, “participatory”, “perspectival”, and “procedural” knowledge (in contrast to “declarative” knowledge) are not formally representable. There are a variety of post-Cartesian epistemologies that articulate this well.

Those types of knowledge may seem outside the direct scope of thinking tools, but thinking tools involve their own participation, perspective, and procedures through their interaction and use. Thinking tool creators would do well to pay attention to these other aspects of our relationship with technology.

1 Like