Re: a logarithmic-time alternative to summed-area tables for reducing arbitrary semigroup operations over arbitrary ranges (a generalization of RMQ segment trees)

Dave Long <[email protected]> Thu, 6 Dec 2012 12:43:46 +0100
Newsgroups gmane.culture.people.kragen.discuss
Message-ID <[email protected]>
> There's an alternative to summed-area tables with a small, linear
> space cost and linear construction time and space, providing worst- 
> case
> logarithmic-time reduction over arbitrary intervals under arbitrary
> semigroup operations, and which supports updates efficiently, unlike
> summed-area tables.  The algorithm is like twenty fricking lines of  
> code
> if you leave out the "update" and "small" parts.


cf fenwick trees (which could be useful for your rice-coded spelling  
correction, if one wished to check single words instead of entire  
documents)
also blelloch's parallel prefix sum, which uses straight (non-heap  
indexed) array storage
also xanalogical dspative properties are summed leaf-to-root and  
widative properties are summed "left"-to-"right"
the former suggests we may apply stokes' theorem to arbitrary graphs  
(and also, eg for finite state machines, in higher dimensions)
that is to say: we arrive at the same answer
whether we integrate an operation over the boundary of a given volume
or we integrate the differential of the operation over the volume itself
we often use this equivalence in one direction, eg to break up a  
large operation over external storage into a series of small  
operations in internal
we also use this equivalence in the opposite direction, eg to perform  
a single major update when iterating and updating for each minor  
modification would lag

-Dave

-- 
To unsubscribe: http://lists.canonical.org/mailman/listinfo/kragen-discuss