コンプトゥス
そのためグレゴリオ暦は太陽暦でありながら、太陰太陽暦のニサンの月(春分)にこだわり、第1ニカイア公会議で決定した「3月21日以降の最初の満月」というキーワードを守るため、太陰暦(月の満ち欠け)とも関わりあいを持ち続けているのである。
世界宗教になりつつあったカトリックでは、ユニバーサルな計算方法が必要であった。キリスト教が実際の天文観測でなく「教会による計算上の」月の満ち欠けを用いることに決めた理由はここにある。地球から見た新月の瞬間は全世界どこでも同じである。しかし同じ夜空を眺めていてもヨーロッパは午後9時、日本は翌朝4時である。つまり時差によって、朔望月が1日ずれるのである。「3月21日以降の最初の満月」がヨーロッパで土曜、日本で日曜なら、復活祭の日付は1週間ずれてしまうことになる。地域差を越えて全世界共通の教会暦を作り上げるために、教会はできるだけ天文現象に忠実であろうとしながらも、実際とは異なる「教会の計算上の」春分の日、新月、満月を用いることにしたのである。よって本項における新月、満月というのは、原則として「計算上の」新月、満月であるということに留意しなくてはならない。
ジャン・メーウスはまた、著書『アストロノミカル・アルゴリズムス』において、ユリウス暦における復活祭の日曜日を求める公式も発表した。
この手法はすべてのユリウス暦に有効で、なおかつ例外はなく、表作成も不要である。
表記法は前述のガウスのアルゴリズムに準ずる。すべての数値は、 ⌊ 7 3 ⌋ = 2 {\displaystyle \left\lfloor {\frac {7}{3}}\right\rfloor =2} (商の小数切り捨て)、 7 mod 3 = 1 {\displaystyle 7{\bmod {3}}=1} (|割り算の余り)というように整数である。
a = Y mod 4 {\displaystyle a=Y{\bmod {4}}} b = Y mod 7 {\displaystyle b=Y{\bmod {7}}} c = Y mod 1 9 {\displaystyle c=Y{\bmod {1}}9} d = ( 19 ∗ c + 15 ) mod 3 0 {\displaystyle d=(19*c+15){\bmod {3}}0} e = ( 2 ∗ a + 4 ∗ b − d + 34 ) mod 7 {\displaystyle e=(2*a+4*b-d+34){\bmod {7}}} m o n t h = d + e + 114 31 {\displaystyle month={\frac {d+e+114}{31}}} d a y = ( ( d + e + 114 ) mod 3 1 ) + 1 {\displaystyle day=((d+e+114){\bmod {3}}1)+1}
「太陽」方程式を「太陰」方程式と分けたことで、太陰暦には誤差が及ばずに済むのである。
太陽暦の誤差のほかに、グレゴリオ暦の太陰暦部分にもいくつかの欠点がある。ただし、過越月や復活祭日の決定に影響を及ぼすものではない。
朔望月が31(時には28)日になってしまうことがある。
もし黄金数19の年にエパクトも19であったなら、教会の計算上の最終新月は12月2日で、次の新月は翌年の1月1日である。しかし、新しい年の始まりにはサルトゥス・ルーナエといってエパクトを1つ増やすため、新月は前日(12月31日)になってしまう。ということは、新月が新年の記録から消えてしまう。ローマ・ミサ典礼書(英語版)のカレンダリウムは、これを考慮に入れており、このような年には12月31日のエパクトを20の代わりに19と記すことにしている。修正が入る前のグレゴリオ暦エパクト表を使用していた頃は19年ごとに起こっていたが、1690年を最後に次回8511年まで同じ事態は起こらなくなった。
エパクト20の年は、12月31日に計算上の新月となる。もしそれが百の前の年(下二桁が99の年)であったなら、たいてい百の年に合わせる「太陽方程式」によってエパクトを1つ減らすことになる。その結果、エパクトが「*」と記され、1月1日も新月となる。新月が連続し、朔望周期がたった1日で終わったようになる。これは4200年の始まりごろに起こるであろう。
その後も(ずっと後だが)年の境に起こる問題が出てくる。もしグレゴリオ暦のルールが厳しく守られ、何も手を加えなかった場合、計算上では新月と新月の間が1、28、59(めったにないが58)日も離れてしまうことがある。