Remix.run Logo
Slava's Monoid Zoo(factorcode.org)
50 points by luu 2 days ago | 8 comments
voidUpdate 4 hours ago | parent | next [-]

> "Can you see a way to transform a string of 8 apples "" into a string of 10 apples ""?"

Am I missing something? The only rules we have are BAB -> AAA and BBB -> BB, and we start with only A, no B, so neither of those rules can be used, so the answer is no?

EDIT: Ah, looks like you cant put emoji in HN comments. Imagine there's apples in there

Phemist 4 hours ago | parent [-]

The relations are bi-directional. So you can change AAA -> BAB and BB -> BBB as well.

dhosek 3 hours ago | parent | next [-]

Yeah, that was the secret sauce that left me a bit confused

voidUpdate 4 hours ago | parent | prev [-]

Oh, I see. That makes sense

entaloneralie 4 hours ago | parent | prev [-]

I'm too scared to leave the comfy world of commutative monoids.

Sesse__ 2 hours ago | parent [-]

Is the word problem easier if the monoids are commutative? (Or even trivial? I haven't thought deeply about it.)

hyperpape 2 hours ago | parent [-]

I haven't previously thought about this, but I think words over a commutative monoid are equivalent to a vector of non-negative integers, at which point you have vector addition systems, and I believe those are decidable, though still computationally incredibly hard: https://www.quantamagazine.org/an-easy-sounding-problem-yiel....

Sesse__ 2 hours ago | parent [-]

Thanks, that's an interesting tidbit!

(The whole thing made me think about applications to SQL query optimizers, although I'm not sure if it's practically useful for anything.)