An Introduction to Graph Theory
arxiv.org
arxiv.org
For describing algorithms sticking with just the notion of graphs is convenient however, as it allows you to speak of edges, nodes, colours etc. keeping things easier to grasp.
Also, there are notions such as planar graphs which probably don't have a nice interpretation in the linear algebra point of view only.
It really depends on what is meant by graph theory vs. linear algebra here. If GT means we can fix an embedding to the space, then we have additional information such as number of crossings. However, it seems like a bit arbitrary restriction.
P.s. what does being an industrial mathematician involve? Sounds like a role I would have dreamed about in undergrad.
https://egraphs-good.github.io/
Addendum: many algorithms book describe algorithmic solutions to a multitude of graph problems without linear algebra at all, like connected components, network flow, shortest paths, etc, etc
So, in case it's helpful to anybody else, I asked ChatGPT to help me explore a bit of graph theory based on my experience with mind mapping:
> I am used to making mind maps. What are some concepts related to mind maps that might help me expand into graph theory? What about the fact that there's always this central node? Is there counter-theory? Is there a name for this type of graph, and are there associated weaknesses and strengths?
This turned into a really fascinating discussion of sorts, based on quickly identifying and remedying some early gaps in what I know about graph theory. It was a lot of fun.
Talking with the matrices, you sometimes get made up nonsense or overly verbose trite answers, but I think it's really valuable having a conversation partner with infinite patience for explaining things, and an almost accurate memory of just about anything you might find on en.wikipedia.org
You do have to be careful and to spot check any fact with other sources, but where I find it's great is helping understand complicated or abstract concepts. Having an actual conversation can be so much more efficient that banging your head against the dry definition until it starts to make sense. Anyone who's tried reading math articles on Wikipedia as a layperson and ended 15 tabs deep into very abstract foundational definitions (like "closed" and "open" sets, along with the eternal gift upon the world that is the world "clopen".)
So having a large pile of numbers standing by can genuinely make learning math a lot more fun, and it's one of the few topics where there is a provable right and wrong, so you'll notice pretty quickly if you're being fed contradictory nonsense
That made me want to find a data-focused mapping API, start building & connecting nodes, and...wait a minute, what about just a database ;-) But sticking with mind-maps and a locally-scoped enhancement to the practice, instead of "let's completely jump concepts, mind maps are just a cheap DB" is really fascinating in its own way.
The new "Custom Instructions" for ChatGPT are pretty neat here, kinda similar to your pile of numbers, because I asked it what e.g. "fostering connections" meant in context, and it gave me a deep example based on one of my career fields. That led me to a really interesting back & forth regarding how to exploit the concept of betweenness centrality.
This is what keeps me coming back. So much knowledge is just unapproachable because of the domain-specific semantics used, even in introductory/help contexts. From the opening text of the man page for "cat," arguably the most basic command in Linux:
> By default, sparse SOURCE files are detected by a crude heuristic and the corresponding DEST file is made sparse as well. That is the behavior selected by --sparse=auto. Specify --sparse=always to create a sparse DEST file whenever the SOURCE file contains a long enough sequence of zero bytes. Use --sparse=never to inhibit creation of sparse files.
I've been using Linux for 20 years and have no idea what the fuck any of this means. Slapping an "ELI5" prefix on it and feeding it to GPT makes this stuff intelligible, even if it's wrong (for unfamiliar concepts about not-code, I'll ask the same question three different ways and see if/how much it differs).
[1] https://www.iwriteiam.nl/counting.html
[2] https://en.wikipedia.org/wiki/Graph_(discrete_mathematics)#G...
Definition 2.1.1. A simple graph is a pair (V, E), where V is a finite set, and where E is a subset of P_2(V).
Sure in some examples V happens to be a set of natural numbers and then edges must be pairs if natural numbers, but there's nothing weird with that as any set would do. (Incidentally in model theory countably infinite graphs are often assumed to have as underlying set the naturals because it is convenient notationwise)