I first learned of Bulgarian solitaire from one of Martin Gardner's books a while ago and have since investigated it somewhat. Google-searching has revealed that surprisingly little work has been done (publicly anyway) in this area.
The way the game works is as follows: take any number of items (like coins or small stones) and partition them into any number of piles with any number of items in each pile. Then take one item from each pile and make a new pile with them. Repeat for as long as necessary. For example:
$10$ items, starting with piles of $4, 4, 1, 1$
At first, there are four piles. Taking one item from each leaves us with $3, 3$. Adding back the four we took gives us $4, 3, 3$. Repeating this step results in...
$4, 4, 1, 1$
$4, 3, 3$
$3, 3, 2, 2$
$4, 2, 2, 1, 1$
$5, 3, 1, 1$
$4, 4, 2$
$3, 3, 3, 1$
$4, 2, 2, 2$
$4, 3, 1, 1, 1$
$5, 3, 2$
$4, 3, 2, 1$
$\mathbf{4, 3, 2, 1}$
$\dots$
Those with a good eye will quickly see that $4, 3, 2, 1$ is a stable state in that going through a turn of the game doesn't change anything. What is more interesting is that EVERY initial configuration of $10$ items will end up at this stable state. Additionally, $6$ items will always end up in $3, 2, 1$; $15$ items will always end up in $5, 4, 3, 2, 1$; and so on. Triangular numbers of items are the only numbers for which this happens. This is because only a $n, n-1, n-2, \dots, 3, 2, 1 { }$ state is stable; subtracting one from each gets rid of the $1$-pile and adds a pile of $n$. Clearly, a triangular number of items results in a "root loop" of size 1.
I'm going to go ahead and state an observation and a fact that follows from it. This observation is that all partitions of $n$ items will lead to exactly one other partition of $n$, by definition. This means that while loops can exist, there can never be a partition of $n$ that leads to two partitions of $n$. This has the effect of splitting a directed graph (an edge from $i$ to $j$ has weight 1 iff partition $i$ leads to partition $j$) into a number of subgraphs that exactly corresponds to the number of loops. This is not hard to prove, and I am not Fermat. :P
What I found to be even more interesting was what happened when you used a non-triangular number of items. In these cases, you will go into a loop. For example...
$7$
$6, 1$
$5, 2$
$4, 2, 1$
$3, 3, 1$
$3, 2, 2$
$3, 2, 1, 1$
$\mathbf{4, 2, 1}$
$\dots$
Thus, starting with $7$ items ends up in a root loop of size $4$. More experimenting reveals that given a non-triangular number $n$ of items, find the triangular number $T_k \geq n$ and $k$ is the size of at least one of the root loops in the directed graph of all partitions of $n$.
Why is this so?