Originally written by John Webb

The year is 365.2422 days long. To make this inconvenient number fit into calendars with whole numbers of days in a year, a system of Leap Years is needed.

Julius Caesar decreed a calendar with years of 365 days, with an extra day every four years. That was equivalent to using 365 +\frac 14 = 365.25 as the number of days in a year. This number was a little too large, so that more Leap Years were added than needed.

Over the years, the error built up to ten days, until in 1582 Pope Gregory XIII decreed that there should be a Leap Year in every year divisible by 4, except in years that were divisible by 100 but not by 400.

That amounted to using 365 + \frac 14 - \frac 3{400} =365.2425 as the length of the year, which is a very good approximation to the true year of 365.2422 days. Today’s Western Calendar follows Pope Gregory’s rule.

However, the Gregorian year is too long by 0.0003 days, and after some 3000 years it will get out of step with the Sun. A much more accurate method is to note that that the fraction: \frac{31}{128} = 0.2421875 = 0.2422 to four decimal places. That is a very good approximation. In practical terms, it means that in order for a calendar to keep in step with the Sun, it needs to have 365 days, with 31 Leap Years every 128 years. Since the denominator of this fraction is 128 = 2^7, and the numerator is 31 = 2^5 - 1, an obvious solution is to Think Binary.

It has been suggested that Pope Gregory’s Leap Year Rule should be replaced by a Binary Leap Year Rule:

A year is a Leap Year when its binary representation ends in at least two zeros, but no more than six.

Putting the next five years in binary shows that how the system works.

2016 = 11111100000    : a Leap Year

2017 = 11111100001

2018 = 11111100010

2019 = 11111100011

2020 = 11111100100   : a Leap Year

Continuing this table will show that Binary Leap Years and Gregorian Leap Years coincide until 2048 = 2^{11} = 100000000000 which is a Gregorian Leap Year but not a Binary Leap Year. The last time that happened was 1920 = 15\times 2^{7} = 11110000000.

Going further ahead, 2100 = 100000110100 will be a Binary Leap Year but not a Gregorian Leap Year.

The Binary Leap Year is a neat idea. It has mathematical appeal, and is very accurate. But it will take a bit more than mathematical elegance and precision to displace a 400-year-old Papal edict.

How clear is this post?