Here is a list of rational numbers:
$\frac{22}{21}, \frac{7}{11}, \frac{13}{7}, \frac{51}{65}, \frac{13}{17}, \frac{1}{13}, \frac{15}{2}, \frac{7}{1}$
This list is actually a computer program! It takes an integer as its input, and outputs a sequence of integers. The way it executes is as follows:
Find the first fraction on the list that, when multiplied to the input, produces an integer. That integer is output. The process is then repeated using that integer as the new input.
For example, if the program is run with input $2$, then the output will be the sequence $15, 105, 110, 70, 130, ...$.
When given $2$ as its input, what does this program do?
More specifically, when it produces an integer of the form $2^a 3^b$, what can you say about $a$ and $b$?
Source:
This puzzle is mostly an excuse to show this esoteric, Turing-complete programming language that few people have heard of. I wrote the simple program used in this puzzle myself. The programming language is called FRACTRAN, and it was invented by John Horton Conway.