1 表すことができる数を書き出す
定義 1.1 (二数で表すことができる数).a、bを正の整数とする。0以上の整数nが、0以上の整数x、yを用いて
n=ax+byと書くことができるとき、nはaとbで表すことができるという。そうでないとき、nはaとbで表すことができないという。
係数x、yに0以上という条件を課している点が、この問いの前提です。この条件を外して整数全体を許すと、gcd(a,b)=1のとき、どの整数も表すことができます。
例 1.2 (a=3、b=5の場合).3と5で表すことができる0以上の整数を小さい順に書き出すと、
0, 3, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, …となる。8以上のすべての整数が現れる。表すことができないのは1、2、4、7の四つであり、その最大は7である。
a=3、b=5のときab−a−b=15−3−5=7であり、2(a−1)(b−1)=22⋅4=4です。上の観察は、この二つの式と一致しています。以下では、この一致がすべての場合に成り立つことを、証明すべき主張として書き下し、証明します。一つの場合についての計算は予想を立てる手段であって、すべての場合についての証明ではありません。
2 二つの仮定は、どちらも外すことができない
主定理を述べる前に、aとbに課す仮定を確認します。二つの仮定は、どちらも外すと「表すことができない最大の数」そのものが存在しなくなります。
以下では、aとbは互いに素であり、どちらも1より大きいものとします。
3 表すことができない最大の数
定理 3.1 (フロベニウスの硬貨問題).a、bをgcd(a,b)=1、a>1、b>1を満たす正の整数とする。このとき次が成り立つ。
- ab−a−bはaとbで表すことができない。
- ab−a−bより大きいどの整数も、aとbで表すことができる。
すなわち、ab−a−bは、aとbで表すことができない最大の整数である。
証明 (ab−a−bが表すことができないこと).ab−a−b=ax+by(x≥0、y≥0は整数)と書くことができたと仮定する。両辺にa+bを加えると
ab=a(x+1)+b(y+1)となる。この式から、aはb(y+1)を割り切る。gcd(a,b)=1であるから、素因数分解の一意性によりaはy+1を割り切る。y+1≥1であるからy+1≥aであり、したがってb(y+1)≥abである。一方、x+1≥1であるからa(x+1)≥a>0である。この二つを足すと
ab=a(x+1)+b(y+1)≥a+ab>abとなるが、ab>abは成り立たない。よってab−a−bは表すことができない。▨
証明 (ab−a−bより大きい整数が表すことができること).n>ab−a−bを満たす整数nを取る。gcd(a,b)=1であるから、一次不定方程式ax+by=nは整数解を持ち、その一般解は、解を一つ(x0,y0)とするとx=x0+bt、y=y0−at(tは整数)と書くことができる。
xをbで割った余りはtの取り方によらないので、tを選んで0≤x≤b−1とすることができる。このxに対するyについて、by=n−axであり、x≤b−1とn>ab−a−bから
by=n−ax≥n−a(b−1)>(ab−a−b)−ab+a=−bを得る。b>0であるからy>−1であり、yは整数であるからy≥0である。x≥0もすでに満たされているので、nはaとbで表すことができる。▨
4 表すことができない数の個数
個数を数える議論の出発点になるのは、N=ab−a−bについての次の対称性です。
定理 4.1 (表すことができるかどうかの対称性).a、bをgcd(a,b)=1、a>1、b>1を満たす正の整数とし、N=ab−a−bとおく。0≤n≤Nを満たすどの整数nについても、nとN−nのうち、ちょうど一方がaとbで表すことができる。
証明.0≤n≤Nを満たす整数nを取る。n=ax+by、N−n=ax′+by′(x,y,x′,y′はいずれも0以上の整数)と書くことができたとすると、辺ごとに加えてN=a(x+x′)+b(y+y′)となり、定理 3.1の 1 に反する。したがって、nとN−nの両方が表すことができることはない。
一方、gcd(a,b)=1であるからax+by=nは整数解を持ち、前の証明と同じ理由で0≤x≤b−1を満たす整数解(x,y)を取ることができる。y≥0であればnが表すことができる。y≤−1であるときは、
N−n=ab−a−b−ax−by=a(b−1−x)+b(−1−y)と変形する。0≤x≤b−1よりb−1−x≥0であり、y≤−1より−1−y≥0であるから、N−nが表すことができる。したがって、nとN−nの少なくとも一方が表すことができる。▨
証明.N=ab−a−bとおく。定理 3.1より、Nより大きい整数はすべて表すことができる。負の整数は定義の対象ではない。したがって、表すことができない0以上の整数は、0以上N以下の範囲にある。この範囲にある整数の個数は
N+1=ab−a−b+1=(a−1)(b−1)である。nがこの範囲にあればN−nもこの範囲にあるので、n↦N−nはこの範囲の整数の入れ替えを与える。定理 4.1により、nとN−nのうちちょうど一方が表すことができる。とくにn=N−nとなるnは存在しない。もし存在すれば、そのnについて「ちょうど一方」が成り立たない。
したがって、0以上N以下の(a−1)(b−1)個の整数は、nとN−nという二つずつの組へ重複なく分かれ、各組から表すことができないものがちょうど一つ出る。よって、表すことができない0以上の整数の個数は2(a−1)(b−1)である。▨
例 4.3 (a=4、b=7の場合).gcd(4,7)=1であり、どちらも1より大きい。ab−a−b=28−4−7=17であり、2(a−1)(b−1)=23⋅6=9である。
実際、4と7で表すことができない0以上の整数は
1, 2, 3, 5, 6, 9, 10, 13, 17の九つであり、その最大は17である。定理 4.1のとおり、たとえば6が表すことができないことと17−6=11=4+7が表すことができることが対応し、8=4+4が表すことができることと17−8=9が表すことができないことが対応する。