CALCULATOR  +           %     x               =      /           <        
                         Home  ||  Bible-calculator  ||  About-Help-Contact  ||  Learning  ||  Reliability Testing  ||  Updates



Appendix III.   "No Year Zero"  and Timespan Calculations

Why is there no Year Zero?

We all know the BC|AD system was instituted to honor Christ, and the year numbers are somehow geared to His birth.

But unless we know the exact details of what is involved with the "gearing" of these year-numbers, we cannot hope to do any math operations using them.

To begin, let us forget all about the BC|AD system, and focus on something very basic which we can all understand.

Man's birth initiates a numbering process

Imagine that a boy named Fred is born.

During his first year of life, Freddie is getting older.  He is awaiting his first birthday.

When that day comes, he is called "one year old".

He is also called "one year old" for the entire year to come.

From then on, all through his life, Freddie will be associated with the number of his most recent birthday.

  1 year  old:  most recent birthday was # 1

45 years old:  most recent birthday was # 45
Going back to the matter of his first birthday:  This happy event marks the beginning of his second year on earth.

So, all the time he is called "1 year old", he is living in year # 2.

This is because Fred-- like all of us mortal humans-- is tied to the lower of the two possible numbers:

"45 years old", though living in Year # 46

"90 years old", though living in Year # 91
This convention does represent a mathematical truth:
- one who is halfway through Year #46 is agreeably 45+1/2 years old

- the term "years old" implies "complete years old"

- 45+1/2 contains only 45 complete years
The key point is, we associate a person with the number of complete years they have seen.

Christ's birth initiates a numbering process

The passage of time in general, which we also mark with an annually increasing number, is apt to be confused with our own, individual age-reckoning process (outlined above).

Why?  Because we all know this tracking of the years is somehow a measure of accumulated time since the birth of the one key person, central to all history:  Jesus Christ.

When we decided to reckon our years by the Son of God, it was evidently the intent to track His era as one would an Old Testament ruler:  By the n-th year of his reign:

Ezra 5:13  But in the first year of Cyrus the king of Babylon the same king Cyrus made a decree to build this house of God.
The first year of Christ's life (as accurately as could be determined) was made Year # 1 of History.

In mirror fashion, the first year prior to His birth earned the name "Year # 1 before Christ".

    BC            |    AD
  = before Christ |  = anno domini  (latin, "year of the Lord")
All of this appropriately and fittingly honored the Savior; yet a key mathematical disadvantage arises:

There is no Year Zero

To anyone who has studied math, the BC|AD span of time may resemble a numberline:

    -8  -7  -6  -5  -4  -3  -2  -1   0   1   2   3   4   5
On such a line-graph of numbers, calculation of distances from negative-to-positive numbers is simple:
    distance d  =  |A - B|    (absolute value of the difference)

    Example:   Find the distance from  -7  to  4

    Solution:  Let A = -7   and  B = 4

          ==>  d = |(-7) - 4|

                 = |-11|

                 = 11

                                            | Switch A & B.
    Solution:  Let A =  4   and  B = -7     |
                                            | Order is not
          ==>  d = |4 - (-7)|               | important.

                 = |4 + 7|

                 = |11|

                 = 11
All of this is simple, and familiar to many.  Yet the same math fails in the BC|AD system when crossing from BC-to-AD,  or vice-versa:   For there is no "year zero" in the middle.

Since a year has been left out, we expect our normal math to be off by one year.  What follows is a detailed look at the math involved, and a set of formulas for calculating a  BC-to-AD  span of time.

Calculation of yearspans

The span of time between a  [BC moment]  and an  [AD moment]  is composed of two portions:

BC  D                                                 AD  D
    A                                                     A
    T                                                     T
    E                                                     E
    |                                                     |
     -----------------------       -----------------------
    | Time spent on BC side |  +  | Time spent on AD side |
     =======================       =======================

Each "portion" can itself be composed of two components:  partial and complete
  BC  D
      ----     ------------.------------.------------
  partial | + |                complete              |_____
  BC year |   |                BC years              |     |
      ====     ============'============'============      |
        _______________________  +  _______________________|
       |       ------------.------------.------------     --------
       |______|               complete               | + |    partial   
              |               AD years               |   |    AD year 
               ============'============'============     ========
                                                             AD  D
We will demonstrate BC-AD timespan calculations in the following order:
                                BC            AD
                              ------        ------
1.  Complex timespans:        date_X   to   date_Y

2.  Anniversary timespans:    date_X   to   date_X

3.  Simple yearspan:          year_P   to   year_Q

Complex timespans:   date_X  to  date_Y

As diagrammed above, a BC-to-AD timespan can consist of four parts:

i. partial BC year

ii. complete BC years ... ( BC year # - 1 )

iii. complete AD years ... ( AD year # - 1 )

iv. partial AD year

Example:    9-1- 2 BC to 6-1- 2 AD

i.     4 months           (all of Sep, Oct, Nov, Dec)

ii.    1 complete BC year (1 BC)  ( 2 - 1 = 1 ...per ii.  above)

iii.   1 complete AD year (1 AD)  ( 2 - 1 = 1 ...per iii. above)

iv.    5 months           (all of Jan, Feb, Mar, Apr, May)
     + __________________
     = 2 years, 9 months

Constructing a formula for complex timespans

 i.            ii.                   iii.                 iv.
----------    -----------------     -----------------    ----------
BC_partial + (BC_yearNumber - 1) + (AD_yearNumber - 1) + AD_partial

Re-order components:  

= (BC_yearNumber - 1) + (AD_yearNumber - 1) + BC_partial + AD_partial

Move numbers to the right:

=  BC_yearNumber + AD_yearNumber + BC_partial + AD_partial - (2 years)

complex  timespan  =  
BC_yearNumber  +  AD_yearNumber 

+  BC_partial  +  AD_partial  –  2

Anniversary timespans:   date_X  to  date_X

If [startDate_BC] and [endDate_AD] share the same mm/dd values, we have a simplified version of the complex timespan above.

From date_X in one year, to date_X in another year (i.e., matching mm/dd), is a complete number of years.  Proving this will help simplify our anniversary timespan formula.


Anniversary timespans consist of:

   1.  |                    a partial year at the start |

   2.  |Whole years, if any; short spans may have 1 or 0|
       |                                                |
       | 1st  whole year (Jan - Dec) of chosen timespan |
       | 2nd  whole year (Jan - Dec) of chosen timespan |
       |              ...             ...               |
       |              ...             ...               |
       | last whole year (Jan - Dec) of chosen timespan |

   3.  | partial year at end                            |

We are seeking to verify the existence of complete years.  Line 2, composed entirely of complete year(s), can be removed from the "hunt" without ill effect.

There remains only to show that lines 1 & 3,  when combined, will also add up to complete year(s).

Fact:  Dates mmdd_BC and mmdd_AD, being identical (as they are
       anniversaries), will each bisect their respective years
       at the same spot.  Choose any date:  say, Aug 1 & Aug 1:

Start year, BC:                                X==================
"Line 1"           Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

End   year, AD:    ============================X
"Line 3"           Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Accordingly, we can label the resulting segments:
                   (         BC_left          ) (    BC_right    )
Start year, BC:    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

                   (         AD_left          ) (    AD_right    )
End   year, AD:    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Fact 1:     BC_left  =  AD_left    and    BC_right  =  AD_right

Fact 2:     BC_left  +  BC_right  =  1 year

Substitute BC_left in Fact 2 with its equivalent, AD_left (per Fact 1)

Therefore:  AD_left  +  BC_right  =  1 year 

By this we have shown that in BC-to-AD anniversary timespans,
BC_partial + AD_partial = 1 year
This fact will simplify our anniversary timespan formula.  Rather than determining  BC_partial  &  AD_partial  and adding them to the equation, we will merely add their combined value of  1.

Constructing a formula for anniversary yearspans

Begin with the structure of the complex yearspan :

 i.            ii.                   iii.                 iv.

BC_partial + (BC_yearNumber - 1) + (AD_yearNumber - 1) + AD_partial

Knowing from the above proof that for any anniversary timespan ,
( BC_partial  +  AD_partial  =  1 year ), we insert 1 for parts i & iv:

    ii.                  iii.                   i. + iv.

  (BC_yearNumber - 1) + (AD_yearNumber - 1)   +    1

=  BC_yearNumber      +  AD_yearNumber - 1  - 1  + 1

=  BC_yearNumber      +  AD_yearNumber - 2  + 1

=  BC_yearNumber      +  AD_yearNumber - 1

anniversary  timespan  =  
BC_yearNumber  +  AD_yearNumber  –  1

Simple yearspans:   year_P  to  year_Q

Yearspan     Definition:  For two non-identical years P and Q, the yearspan is the count of whole years, equal to the number of spaces on a numberline of years, required to shift year P to a position squarely overlapping year Q  (not merely  touching year Q ).

Determine BC years

In the preceding cases of complex and anniversary timespans, the measurement of Time Before Christ required counting two parts:  Whole years; and a Partial year.

1. First, whole BC years were counted, beginning at the BC|AD juncture and working backwards into BC time, halting right before touching any part of start-year P:  thus yielding a whole-year count of (P - 1), not (P).  This gave the whole years.

2. Then the fractional year at the start of the timespan was added.
Example:  Find the BC portion of a timespan beginning  10-1-77 BC
1.  77 years - 1 year = 76 years

2.  October, November, December = 3 months

TOTAL:  76 years, 3 months

Yet such a two-part process is not required for simple yearspans from "year_P to year_Q".

As P is a full year, it is counted with the whole-years in Step 1; this leaves no partial year to be counted in Step 2.

The total BC years is simply the value of the BC year named in the yearspan.

Example:  Find the BC portion of a yearspan beginning with the year  400 BC

1.  400 years

2.    n / a

TOTAL:  400 years
The BC portion of the simple yearspan (year_P-to-year_Q) is:  P

Determine AD years

Per the yearspan definition above, the span is determined by counting how many years the start-year needs to shift until reaching overlap with the end-year.

At the completion of counting the BC years, the imagined year being shifted on the numberline has fully crossed into the AD area; overlapping the first AD year (1 AD).

January 1 of this sliding imaginary year overlays January 1, 1 AD.

To complete the shifting process toward the AD endpoint, 1-1-1 AD must overlay 1-1-[year_Q] AD.

To achieve a shift from (year 1)-to-(year Q) requires a shift of (Q-1) years (proven below). This will be the AD portion of the simple yearspan.


Yearspans confined to AD time  (or confined to BC time ) can be measured using normal numberline-math; as the BC-AD spectrum, when graphed, is identical with a numberline in all points but the zero-less transition.  Therefore transactions that avoid this middle-ground can be graphed on a "timeline", exactly as they would be on a numberline.

The required shift in years to move from 1-to-Q is given by the numberline distance formula:

distance d  =  |A - B|  

         d  =  |B - A|

When applying absolute value to a difference such as (x - y),
either order of the operands produces the same result:

               |x - y|  =  |y - x|

Find the distance in AD_years from 1 AD  to  Q-AD = |1 - Q|    

             = |Q - 1|     | Using this order of operands
                           | avoids negative-number math.
             =  Q - 1

    Example:   Find the distance from  1 AD  to  2011 AD

    Solution:  Let A = 1   and  B = 2011  

          ==>  d = |1 - 2011|

                 =  |-2010|

                 =    2010


    Solution:  Let A =  2011   and  B = 1   | Switching A & B to
                                            | show that order is 
                                            | not important.
          ==>  d = |2011 - 1|               

                 =  |2010|

                 =   2010
The AD portion of the simple yearspan (year_P-to-year_Q)  is (Q - 1)

Adding BC and AD

Thus a simple yearspan of  year_P  (BC)   to   year_Q  (AD)  can be stated as:

        BC  +  AD
        ___   ______

        P  +  (Q - 1)  =

        P  +  Q - 1

simple  yearspan  =  
BC_yearNumber  +  AD_yearNumber  –  1

Formula summary

  BC   AD
      complex  timespan: date_X to date_Y
      BC_yearNumber  +  AD_yearNumber  +  BC_partial  +  AD_partial  –  2      
      anniversary  timespan: date_X to date_X
      BC_yearNumber  +  AD_yearNumber  –  1      
      simple  yearspan: year_P to year_Q
      BC_yearNumber  +  AD_yearNumber  –  1      

John O'Leary / Bible-calculator