[HN Gopher] Beautiful Abelian Sandpiles
       ___________________________________________________________________
        
       Beautiful Abelian Sandpiles
        
       Author : eavan0
       Score  : 131 points
       Date   : 2025-12-09 20:16 UTC (4 days ago)
        
 (HTM) web link (eavan.blog)
 (TXT) w3m dump (eavan.blog)
        
       | skeltoac wrote:
       | Now I want to redo a bathroom. Good job, writer!
        
       | ggm wrote:
       | Isn't this single frame state of a classic cellular automata?
       | Note, not "just" because I mean no disrespect. I don't understand
       | how this differs from Conway's life other than nuances of the
       | live or die rule.
        
         | gsf_emergency_6 wrote:
         | CGL doesn't have the scale invariance ("fractality") of ASM.
         | ASM criticality is stable and persistent. "fractal life on
         | edge"?
         | 
         | what that looks like
         | 
         | https://youtu.be/rKD51IUNK3A?t=40s
        
           | ggm wrote:
           | So that gets to how it differs, but it doesn't say its not a
           | cellular automata. It could say "it's a cellular automata
           | with different rules"
        
             | gsf_emergency_6 wrote:
             | It is a cellular automata distinguished by commutativity.
             | You used CGL as the basis for comparison, that's highly
             | nonAbelian.
             | 
             | According to Wolfram (& I agree :), everything is a
             | cellular automaton, so comparing to CGL made more sense to
             | me.
        
         | Sharlin wrote:
         | I don't believe that Game of Life is Abelian.
        
           | tripplyons wrote:
           | I don't think you could even define an associative binary
           | operator on states in the Game of Life because of its
           | computational irreducibility.
        
       | recursive wrote:
       | It seems the sand only spills up and to the left.
        
         | omoikane wrote:
         | It seems like it spills to 4 directions on Chrome, but only up
         | and left on Firefox.
         | 
         | The really weird part is that when I fetch
         | https://eavan.blog/sandpile.js in Chrome, I see a "toppleAll"
         | function near the top, but that same function is not defined
         | when the script is fetched with Firefox.
        
       | haritha-j wrote:
       | Very related (yet idiotically titled, as always) veritasium video
       | https://youtu.be/HBluLfX2F_k?si=6lVPLvJNc2YH_4go
        
         | JimmyBuckets wrote:
         | It's like reverse clickbait with him
        
           | SiempreViernes wrote:
           | Yeah, I wish he'd do a second channel that is just reposts
           | with normal titles.
        
           | lupire wrote:
           | https://m.youtube.com/watch?v=S2xHZPH5Sng
           | 
           | "Clickbait is Unreasonably Effective", 2021 - Veritasium's
           | apologia for clicbait titles and and thumbnails, and
           | statement of principles.
           | 
           | Veritasiuk has at least stuck making soldi educational
           | videos, as Mark Rober has let slip away his past effort to
           | educate in addition to demonstrate his cool toys.
        
       | FredrikMeyer wrote:
       | I implemented this in Rust some years back. It is connected to
       | some serious research mathematics (see f.ex
       | https://www.ams.org/notices/201008/rtx100800976p.pdf)
       | 
       | https://github.com/FredrikMeyer/abeliansandpile
        
       | seanhunter wrote:
       | > "...an abelian group is both associative and commutative..."
       | 
       | If something is not associative it is not a group. An abelian
       | group is a group which is commutative.
        
         | MarkusQ wrote:
         | So...an abelian group is both associative (because it's a
         | group) and commutative (because it's abelian), which is exactly
         | what the OP said? It sounds like you're disagreeing about
         | something, but I'm not clear what your objection is.
        
           | seanhunter wrote:
           | I'm not disagreeing. I'm pointing out that in TFA it sounds
           | as associativity is a property of abelian groups specifically
           | whereas it as a property of all groups in general. In that
           | sense it's not wrong, just the emphasis is a bit misleading.
           | 
           | If you look in an abstract algebra textbook they all
           | basically say the same definition for abelian groups (eg in
           | Hien)
           | 
           | > "A group G is called abelian if its operation is
           | commutative ie for all g, h in G, we have gh = hg".
        
       | mcphage wrote:
       | > The rules of abelian groups guarantee that these identity
       | sandpiles must exist, but they tell us nothing about how
       | beautiful they are.
       | 
       | This has causality backwards--being a group _requires_ an
       | identity element. You can 't show something is a group without
       | knowing that the identity element exists in the first place.
       | 
       | In fact, a good chunk of how this article talks about the math is
       | just... slightly off.
        
       | pmcarlton wrote:
       | I found 'xsand.c' (X11) in 1995 by Michael Creutz, that simulated
       | these sandpiles; I had fun with the sand but also learned C from
       | it.
        
       | OgsyedIE wrote:
       | In the case of piling sand exactly in the centre, the
       | intermediate states between the initial state and reaching the
       | final equilibrium seem to get closer to having a circular
       | boundary as the grid size increases, instead of the diamond-
       | shaped boundary you might expect for a symmetrical object in a
       | planar grid. Take a look at the largest resettable grid doing
       | this within a couple seconds of being reset.
        
       | LegionMammal978 wrote:
       | It looks like the author has a pretty simple procedure for
       | computing the 'identity' sandpile (which they unfortunately don't
       | describe at all):
       | 
       | 1. Fill a grid with all 6s, then topple it.
       | 
       | 2. Subtract the result from a fresh grid with all 6s, then topple
       | it.
       | 
       | So effectively it's computing 'all 6s' - 'all 6s' to get an
       | additive identity. But I'm not entirely sure how to show this
       | always leads to a 'recurrent' sandpile.
       | 
       | EDIT: One possible route: The 'all 3s' sandpile is reachable from
       | any sandpile via a sequence of 'add 1' operations, including from
       | its own successors. Thus (a) it is a 'recurrent' sandpile, (b)
       | adding any sandpile to the 'all 3s' sandpile will create another
       | 'recurrent' sandpile, and (c) all 'recurrent' sandpiles must be
       | reachable in this way. Since by construction, our 'identity'
       | sandpile has a value >= 3 in each cell before toppling, it will
       | be a 'recurrent' sandpile.
        
       | lupire wrote:
       | Wikipedia has a picture/animation of the Identity for rectangular
       | and square grids
       | 
       | https://en.wikipedia.org/wiki/Abelian_sandpile_model
        
       ___________________________________________________________________
       (page generated 2025-12-13 23:00 UTC)