A suspicious simplification
Here is a terrible way of simplifying a fraction:
\[\frac{1\cancel{6}}{\cancel{6}4} = \frac{1}{4}.\]Cancelling digits is, of course, not how fractions work. But the answer happens to be right! So is this one:
\[\frac{4\cancel{9}}{\cancel{9}8} = \frac{4}{8}.\]This was the puzzle Sourin brought to our conversation, though he phrased it as a curiosity about numbers like \(498\): splitting its digits in two different places gives \(4 \times 98 = 49 \times 8\). Rearranging gives exactly the fraction above.
We soon learned that this trick has a name, anomalous cancellation, and that others had already explored it; Boas's 1972 article is one place to start. Could we find all such fractions, even with arbitrarily many digits?
Setting up the puzzle
Longer examples do exist:
\[\frac{24\cancel{9}}{\cancel{9}96} = \frac{24}{96}.\]Let us be a little more precise about the game. The numerator and denominator must have the same number of digits, and we cancel the last digit of the numerator against the first digit of the denominator. We are looking for
\[\frac{\overline{A\,b}}{\overline{b\,C}} = \frac{A}{C},\]where \(A\) and \(C\) each have \(k\) digits, and \(b\) is a single nonzero digit. The bars mean joining digits, so \(\overline{(24)\,9} = 249\). The fraction on the right need not be in lowest terms: deleting the digits must simply preserve its value. There are no leading zeros, and we set aside identities like \(55/55 = 5/5\), where every digit is the same. From here on, a solution means a nontrivial example of this particular form.
I wrote a brute-force search, and we began looking for patterns in its output. One small conjecture led to another. Each proof gave us a restriction that every solution had to obey, and a way to make the next search run faster and deeper.
Solutions run in families
There is an easy way to keep producing solutions:
\[\begin{aligned} \frac{1\cancel{6}}{\cancel{6}4} &= \frac{1}{4}, \\[1.0em] \frac{16\cancel{6}}{\cancel{6}64} &= \frac{16}{64}, \\[1.0em] \frac{166\cancel{6}}{\cancel{6}664} &= \frac{166}{664}. \end{aligned}\]Keep adding sixes, and the trick keeps working! Something similar works for any solution.
The extension rule
For \(k\)-digit blocks \(A,C\) and a nonzero digit \(b\), consider
| \(\dfrac{\overline{A\,b}}{\overline{b\,C}}\quad\) | and | \(\quad\dfrac{\overline{A\,b\,b}}{\overline{b\,b\,C}}.\) |
The fraction on the left is a solution if and only if the fraction on the right is. We call the second an extension of the first.
A solution that is not itself an extension starts a family; the family consists of that starting point and all its repeated extensions. The examples above begin the family starting at \(16/64\).
The extension rule therefore gives us infinitely many solutions. But this feels a little like cheating: we are just making old examples longer. Can we keep finding new families, or are there only finitely many starting points?
Two digits determine the rest
We did find new starting points, including this one:
\[\frac{3402\cancel{7}}{\cancel{7}7776} = \frac{3402}{7776}.\]It is not an extension of a shorter solution, yet its denominator \(77776\) still repeats the cancelled digit until its final \(6\). Our structure theorem confirms that this pattern is unavoidable.
The structure of a solution
In every solution \(\overline{A\,b}/\overline{b\,C} = A/C\), the number \(C\) has the form
\[C = \overline{\underbrace{b\cdots b}_{k-1\text{ copies}}\,d},\]where \(2 \leq d \lt b\).
The original denominator is therefore a run of the cancelled digit followed by one smaller digit. When \(k=1\), this simply means \(C=d\).
This changes the search considerably. Previously, we chose \(b\) and tried every possible \(k\)-digit block \(C\). Now we only choose two single digits, \(b\) and \(d\): the theorem fills in the rest of \(C\). The cancellation equation then determines the only possible value of \(A\):
\[A_k = \frac{b(10^{k-1}-1)}{9} + \frac{bd\,10^{k-1}}{10b-9d}.\]We only need to check whether \(A_k\) is an integer with exactly \(k\) digits.
There are just 28 pairs satisfying \(2\leq d\lt b\leq 9\), regardless of \(k\). The old candidate list grew tenfold with every extra digit; this one stays the same size, whether the fractions have three digits or three thousand!
How far must we look?
We can now search efficiently at any fixed length. But how far do we have to go before we can say we have found every family?
Each pair \((b,d)\) can start at most one family. Once it produces a solution, extension gives the unique solution for that pair at every greater length. Since there are only finitely many pairs, new families must eventually stop appearing. We call this saturation.
The paper's saturation theorem tells us when we can safely stop.
A saturation bound
In decimal, every family has appeared by \(k=9\).
So we only need to check one length, \(k=9\), where the original numerator and denominator each have ten digits. Every earlier family extends to this length, and none can begin later. This one search therefore finds a representative of every family.
A complete classification
The search at \(k=9\) finds exactly eight solutions. Working backwards with the extension rule, we shorten each one to the starting fraction of its family.
The eight decimal families
Every solution in our decimal setting belongs to exactly one of the eight families starting with these fractions:
\[\begin{aligned} \frac{1\cancel{6}}{\cancel{6}4} &= \frac{1}{4}, &\qquad \frac{2\cancel{6}}{\cancel{6}5} &= \frac{2}{5}, \\[1.0em] \frac{1\cancel{9}}{\cancel{9}5} &= \frac{1}{5}, &\qquad \frac{4\cancel{9}}{\cancel{9}8} &= \frac{4}{8}, \\[1.0em] \frac{21\cancel{7}}{\cancel{7}75} &= \frac{21}{75}, &\qquad \frac{24\cancel{9}}{\cancel{9}96} &= \frac{24}{96}, \\[1.0em] \frac{124\cancel{9}}{\cancel{9}992} &= \frac{124}{992}, &\qquad \frac{3402\cancel{7}}{\cancel{7}7776} &= \frac{3402}{7776}. \end{aligned}\]These starting fractions and all their extensions give every solution.
Beyond decimal
We have stayed in decimal to keep the examples familiar. The same ideas work in other bases, with similar structure and saturation results, giving only finitely many families in each base. There is also a nice dividing line: composite bases have nontrivial solutions, while prime bases have none.
The proofs and further results are in the published article.
For me, the fun was the back-and-forth. Code gave us examples to puzzle over, patterns suggested conjectures, and proofs let us improve the code for the next search.
In decimal, the hunt ended with eight families and a proof that we had found them all. Infinitely many anomalous fractions, all accounted for.
References
-
R. P. Boas, Anomalous Cancellation, The Two-Year College Mathematics Journal, 3(2) (1972), 21–24
-
M. N. Fried, M. Goldberg, A Pumping Lemma for Invalid Reductions of Fractions, The College Mathematics Journal, 41(5) (2010), 357–364
-
Satvik Saha, Sohom Gupta, Sayan Dutta, Sourin Chatterjee, Characterising Solutions of Anomalous Cancellation, Resonance, 29 (2024), 51–68