frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

The Fastest Way yet to Color Graphs

https://www.quantamagazine.org/the-fastest-way-yet-to-color-graphs-20250512/
62•GavCo•1y ago

Comments

tonyarkles•1y ago
In case you haven't looked at the article, this is looking specifically at the Edge Coloring problem and not the more commonly known Vertex Coloring problem. Vertex Coloring is NP-complete unfortunately.
erikvanoosten•1y ago
You can convert edge coloring problems into vertex coloring problems and vice versa through a simple O(n) procedure.
meindnoch•1y ago
Wrong. You can convert edge-coloring problems into vertex-coloring problems of the so-called line graph: https://en.m.wikipedia.org/wiki/Line_graph

But the opposite is not true, because not every graph is a line graph of some other graph.

erikvanoosten•1y ago
Indeed. Thanks, I stand corrected.
tonyarkles•1y ago
Hrm... right. It's been a while. And it looks like both Vertex Coloring and Edge Coloring are both NP-complete (because of the O(n) procedure you're talking about and the ability to reduce both problems down to 3-SAT). I've started looking closer at the actual paper to try to figure out what's going on here. Thanks for the reminder, I miss getting to regularly work on this stuff.

Edit: thanks sibling reply for pointing out that it's not a bidirectional transform.

mauricioc•1y ago
For the edge-coloring problem, the optimal number of colors needed to properly color the edges of G is always either Delta(G) (the maximum degree of G) or Delta(G) + 1, but deciding which one is the true optimum is an NP-complete problem.

Nevertheless, you can always properly edge-color a graph with Delta(G) + 1 colors. Finding such a coloring could in principle be slow, though: the original proof that Delta(G) + 1 colors is always doable amounted to a O(e(G) * v(G)) algorithm, where e(G) and v(G) denote the number of edges and vertices of G, respectively. This is polynomial, but nowhere near linear. What the paper in question shows is how, given any graph G, to find an edge coloring using Delta(G) + 1 colors in O(e(G) * log(Delta(G))) time, which is linear time if the maximum degree is a constant.

Syzygies•1y ago
Yes. The article ran through this point as follows:

"In 1964, a mathematician named Vadim Vizing proved a shocking result: No matter how large a graph is, it’s easy to figure out how many colors you’ll need to color it. Simply look for the maximum number of lines (or edges) connected to a single point (or vertex), and add 1."

I keep wondering why I ever read Quanta Magazine. It takes a pretty generous reading of "need" to make this a correct statement.

JohnKemeny•1y ago
phkahler•1y ago
Is this going to lead to faster compile times? Faster register allocation...
john-h-k•1y ago
Very few compilers actually use vertex coloring for register allocation
isaacimagine•1y ago
Totally. The hard part isn't coloring (you can use simple heuristics to get a decent register assignment), rather, it's figuring out which registers to spill (don't spill registers in hot loops! and a million other things!).
NooneAtAll3•1y ago
and this post isn't even about vertex coloring
DannyBee•1y ago
No.

In SSA, the graphs are chordal, so were already easily colorable (relatively).

Outside of SSA, this is not true, but the coloring is still not the hard part, it's the easy part.

Not really. Coloring a graph is almost always talking about proper coloring, meaning that things that objects that are related receive different colors.

If you read the introduction, you'll also read that the goal is to "color each of your lines and require that for every point, no two lines connected to it have the same color."

Ps. "How many colors a graph needs" is a very well established term in computer science and graph theory.

mockerell•1y ago
I think the comment referred to the phrase „a graph needs X (colors or whatever)“. For me, this can be read two ways: 1. „a graph always needs at least X colors“ or 2. „a graph always needs at most X colors“.

Personally, I would interpret this as option 1 (and so did the comment above I assume). In that case, the statement is wrong. But I’d prefer to specify „at most/ at least“ anyways.

Or even better, use actual vocabulary. „For every graph there exists a coloring with X colors.“ or „any graph can be coloured using X colors“.

PS: I also agree with the sentiment about quanta magazine. It’s hard to get some actual information from their articles if you know the topic.

JohnKemeny•1y ago
What about this statement:

No matter how large a car is, it is easy to figure out how much money you'll need to buy it. Simply look at the price tag.

(From: No matter how large a graph is, it’s easy to figure out how many colors you’ll need to color it. Simply look for the maximum ...)

mauricioc•1y ago
Parent's point is that sometimes (but not always) the store is perfectly fine selling you a car for $1 less than what the "price tag" of Delta(G)+1 dollars asks for, so "need" is a bit inaccurate.

QBittorrent breaks out of sandbox to commit crimes

https://beige.party/@intransitivelie/117057396732763183
847•mraniki•5h ago•155 comments

Your intellectual fly is open (2025)

https://bcantrill.dtrace.org/2025/12/05/your-intellectual-fly-is-open/
325•cyb0rg0•6h ago•206 comments

NetBSD 9.5 released and EOL for NetBSD-9

https://blog.netbsd.org/tnf/entry/netbsd_9_5_released_and
53•jaypatelani•2h ago•2 comments

An Alien Mind

https://openai.com/index/an-alien-mind/
93•tosh•1h ago•52 comments

We monitor internal coding agents for misalignment

https://openai.com/index/how-we-monitor-internal-coding-agents-misalignment/
30•lukaspetersson•1h ago•18 comments

Isar Aerospace reaches orbit and deploys payloads on second flight

https://isaraerospace.com/press/history-for-european-spaceflight-isar-aerospace-reaches-orbit-and...
451•mpweiher•10h ago•134 comments

Research carried out using NetBSD

https://www.netbsd.org/gallery/research.html
29•Bluestein•1h ago•1 comments

Opalite Health (YC W26) Is Hiring – Founding GTM

https://www.ycombinator.com/companies/opalite-health/jobs/bNedVAD-founding-gtm
1•ckuo9•1h ago

A/I shuts down – Stay human

https://keepitfree.ai/announcements/a/i-shuts-down-stay-human/
319•captainmuon•3h ago•200 comments

Research acceleration: The view inside OpenAI

https://openai.com/index/research-acceleration-view-inside-openai
43•iamsyr•2h ago•13 comments

Doomscrolling Ourselves to Death

https://www.edwest.co.uk/p/doomscrolling-ourselves-to-death
251•shubhamjain•6h ago•168 comments

Electronic skin for prosthetics to sense temperature and pressure

https://news.wsu.edu/press-release/2026/08/20/researchers-develop-electronic-skin-for-prosthetics...
14•gmays•3d ago•2 comments

Recreating Minecraft Is Not a Benchmark

https://kuber.studio/blog/Reflections/Recreating-Minecraft-is-Not-a-Benchmark
25•kuberwastaken•3h ago•19 comments

Is There I/O After Death? What Happens to Io_uring When a Process Dies

https://blog.ydb.tech/is-there-i-o-after-death-what-happens-to-io-uring-when-a-process-dies-92c65...
28•porridgeraisin•3d ago•3 comments

M-DISC – DVD/Blu-ray compatible discs that may last up to 1000 years

https://en.wikipedia.org/wiki/M-DISC
143•gurjeet•4d ago•60 comments

Asahi Linux Now Officially Supports Apple M3 Macs – With Caveats

https://www.phoronix.com/news/Asahi-Linux-Official-M3
165•mdp2021•3h ago•100 comments

The many mysteries and lessons of the Bayeux tapestry

https://economist.com/interactive/culture/2026/09/03/the-many-mysteries-and-lessons-of-the-bayeux...
38•andsoitis•4h ago•5 comments

I'm teaching an introductory 12 week course on Quantum Oracle Engineering

https://shukla.io/quantum-oracle-engineering/
33•BinRoo•5h ago•10 comments

Cloud in a Bottle: making self-hosting accessible to everyone

https://cloudinabottle.org/blog/launch-post
560•zplizzi•18h ago•277 comments

The revolt of the reader

https://bcantrill.dtrace.org/2026/09/05/the-revolt-of-the-reader/
517•chmaynard•20h ago•246 comments

Babylonian Lamb Stew with Beets (1750–1730 BCE)

https://babylonian-collection.yale.edu/about/babylonian-cooking
7•yubblegum•2d ago•13 comments

The pencil case model of creativity

https://dub.uu.nl/en/column/pencil-case-model-creativity
40•jruohonen•5h ago•15 comments

IBM Quantum Nighthawk R2

https://www.ibm.com/quantum/blog/nighthawk-r2
60•fuglede_•3d ago•33 comments

Music Theory for Programmers

https://runjs.app/blog/music-theory-for-programmers
292•birdculture•3d ago•190 comments

Ganon's Mysterious Origins (Revisited)

https://www.thrillingtalesofoldvideogames.com/blog/ganon-name-origin-kamen-rider
13•tobr•21h ago•4 comments

Discovery of a new OpenAI agent message board

https://collusion.wiki/
2248•moultano•2d ago•1572 comments

Cultivating Trust

https://kaeruct.github.io/posts/2026/09/06/conquering-entropy-cultivating-trust/
5•kaeruct•2h ago•1 comments

Show HN: Kadō – open-source habit tracker, with non-binary habit score, for iOS

https://github.com/scastiel/kado
39•scastiel•3h ago•18 comments

Household Laser Cuts

https://cceckman.com/writing/household-laser-cuts/
39•evakhoury•1d ago•14 comments

AI, Tools and Transformation

https://www.ben-evans.com/benedictevans/2026/9/3/ai-tools-and-transformation
133•firexcy•15h ago•60 comments