高校の「集合と命題」では、命題の真偽を判定し、逆・裏・対偶の関係を学びます。「すべての $x$ で成り立つ」「ある $x$ が存在する」という表現も登場しますが、その論理構造を深く掘り下げることはありません。
大学数学では、これらの表現を量化子 $\forall$(すべての)と $\exists$(存在する)という記号で正確に書き下し、述語論理という体系で扱います。
量化子の否定を機械的に取る技術を身につけると、たとえば「$\varepsilon$-$\delta$ 論法」の複雑な論理構造が読めるようになり、数学の定理の証明を正確に読み書きする力が飛躍的に向上します。
高校の「集合と命題」(数学I)では、命題に関する基本的な概念を次のように学びます。
また、「すべての $x$ について $P(x)$ が成り立つ」「ある $x$ が存在して $P(x)$ が成り立つ」という表現も登場します。 たとえば、「すべての実数 $x$ に対して $x^2 \geq 0$」や「ある実数 $x$ が存在して $x^2 = 2$」のような命題です。
高校では、これらの命題の真偽を個別に判定する方法を学びます。 しかし、「すべての」と「ある」の否定の取り方について体系的に学ぶ機会は限られています。 たとえば、「すべての実数 $x$ に対して $x^2 \geq 0$」の否定は何か、と聞かれると、直感的には答えられても、複雑な命題になると途端に難しくなります。
次のセクションでは、大学の視点を導入することで、命題の内部構造を記号で正確に表現し、否定を機械的に取れるようにする方法を見ます。
大学数学では、命題を述語論理という枠組みで分析します。 高校で「すべての $x$ について〜」「ある $x$ が存在して〜」と日本語で書いていた部分を、$\forall$(すべての)と $\exists$(存在する)という量化子で書き表します。 これにより、命題の論理構造が一目でわかるようになり、否定を機械的に取る操作が可能になります。
この記事を読み終えると、以下のことができるようになります。
1. 量化子 $\forall$ と $\exists$ の正確な意味を説明し、日本語の「すべて」「ある」との対応を述べられる
2. 量化子を含む命題の否定を、機械的な規則($\lnot \forall \leftrightarrow \exists \lnot$, $\lnot \exists \leftrightarrow \forall \lnot$)で正確に取れる
3. 多重量化子の順序($\forall x \exists y$ と $\exists y \forall x$)の違いを具体例で説明できる
4. 数学の定理(中間値の定理、$\varepsilon$-$\delta$ 論法など)を量化子で書き直し、その否定を取れる
これらの技術を身につけるために、まず量化子 $\forall$ と $\exists$ を正確に定義するところから始めます。
数学の命題は、文が長くなるほど論理構造が見えにくくなります。 たとえば、次の2つの文を比べてみましょう。
記号で書いた方が、「すべて → 存在 → すべて」という量化子の入れ子構造が明確に見えます。 この構造を正確に読み取ることが、大学数学の証明を理解する第一歩です。
$P(x)$ を変数 $x$ に関する条件(述語)とする。
$$\forall x \in S, \; P(x)$$
は「集合 $S$ に属するすべての $x$ に対して $P(x)$ が成り立つ」を意味します。
$\forall$ は "for all" の A を上下逆にした記号です。高校で「任意の $x$ について〜」「すべての $x$ に対して〜」と書いていたものに対応します。
具体例で確認しましょう。
$\forall x \in S, \; P(x)$ が偽であることを示すには、$P(x)$ を満たさない $x \in S$ を1つ見つければよいのです。 このような $x$ を反例(counterexample)と呼びます。これは高校でも馴染みのある考え方です。
$P(x)$ を変数 $x$ に関する条件(述語)とする。
$$\exists x \in S, \; P(x)$$
は「集合 $S$ に属する $x$ で $P(x)$ を満たすものが少なくとも1つ存在する」を意味します。
$\exists$ は "there exists" の E を左右反転した記号です。高校で「ある $x$ が存在して〜」と書いていたものに対応します。「少なくとも1つ」がポイントで、2つ以上存在してもよいのです。
具体例で確認します。
$\exists x \in S, \; P(x)$ が真であることを示すには、$P(x)$ を満たす $x$ を1つ具体的に提示すればよいのです。 偽であることを示すには、$S$ のどの要素も $P(x)$ を満たさないこと、すなわち $\forall x \in S, \; \lnot P(x)$ を示す必要があります。 ここに、$\forall$ と $\exists$ の否定の関係が自然に現れています。
誤解:「$\exists x, \; P(x)$」は「$P(x)$ を満たす $x$ がちょうど1つある」という意味。
正しい理解:「$\exists x, \; P(x)$」は「$P(x)$ を満たす $x$ が少なくとも1つある」という意味です。ちょうど1つであることを表すには「$\exists ! \, x, \; P(x)$」(一意的に存在する)という別の記法を使います。
ここまでで $\forall$ と $\exists$ の意味を確認しました。すでに、$\exists$ の偽を示すのに $\forall \lnot$ が必要であることを見ました。次のセクションでは、この関係を一般的な否定の規則として定式化し、複雑な命題の否定を機械的に取る技術を習得します。
セクション3の末尾で、$\exists x, \; P(x)$ が偽であることは $\forall x, \; \lnot P(x)$ が真であることと同じだ、と述べました。 これを否定の等価関係として書き下すと、次の2つの規則になります。
$$\lnot (\forall x \in S, \; P(x)) \iff \exists x \in S, \; \lnot P(x)$$
「すべての $x$ で $P(x)$ が成り立つ」の否定は、「$P(x)$ が成り立たない $x$ が少なくとも1つ存在する」です。
$$\lnot (\exists x \in S, \; P(x)) \iff \forall x \in S, \; \lnot P(x)$$
「$P(x)$ を満たす $x$ が存在する」の否定は、「すべての $x$ で $P(x)$ が成り立たない」です。
規則は単純です。否定 $\lnot$ が量化子を通過するとき、$\forall$ と $\exists$ が入れ替わり、$\lnot$ が述語 $P(x)$ に移動します。
この規則は、高校で学ぶド・モルガン法則の一般化です。 高校のド・モルガン法則は次の2つでした。
$$\lnot (A \land B) \iff (\lnot A) \lor (\lnot B)$$
$$\lnot (A \lor B) \iff (\lnot A) \land (\lnot B)$$
量化子との関係を見るために、集合 $S = \{a_1, a_2, \ldots, a_n\}$ が有限集合の場合を考えます。 $\forall x \in S, \; P(x)$ は、$S$ のすべての要素で $P$ が成り立つということなので、
$$\forall x \in S, \; P(x) \iff P(a_1) \land P(a_2) \land \cdots \land P(a_n)$$
と書けます。同様に、$\exists x \in S, \; P(x)$ は
$$\exists x \in S, \; P(x) \iff P(a_1) \lor P(a_2) \lor \cdots \lor P(a_n)$$
です。つまり、$\forall$ は「$\land$(かつ)の一般化」、$\exists$ は「$\lor$(または)の一般化」と見なせます。 この見方をすると、量化子の否定規則はド・モルガン法則そのものです。
有限集合では $\forall$ は「すべて $\land$(かつ)でつないだもの」、$\exists$ は「すべて $\lor$(または)でつないだもの」に等しくなります。量化子の否定規則は、ド・モルガン法則を無限集合にも適用できるように拡張したものです。
量化子が複数重なった命題でも、否定は次の手順で機械的に取れます。
具体例でこの手順を練習しましょう。
例1.「$\forall x \in \mathbb{R}, \; x^2 \geq 0$」の否定を取ります。
$$\lnot (\forall x \in \mathbb{R}, \; x^2 \geq 0) \iff \exists x \in \mathbb{R}, \; x^2 < 0$$
$\lnot$ が $\forall$ を通過して $\exists$ に変わり、$\lnot(x^2 \geq 0)$ は $x^2 < 0$ になります。 元の命題は真ですから、否定は偽です。実際、$x^2 < 0$ となる実数は存在しません。
例2.「$\exists x \in \mathbb{R}, \; x^2 + 1 = 0$」の否定を取ります。
$$\lnot (\exists x \in \mathbb{R}, \; x^2 + 1 = 0) \iff \forall x \in \mathbb{R}, \; x^2 + 1 \neq 0$$
$\lnot$ が $\exists$ を通過して $\forall$ に変わり、$\lnot(x^2 + 1 = 0)$ は $x^2 + 1 \neq 0$ になります。 元の命題は偽(実数の範囲では $x^2 + 1 \geq 1 > 0$)ですから、否定は真です。
例3(2重量化子).「$\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; x + y = 0$」の否定を取ります。
$$\lnot (\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; x + y = 0) \iff \exists x \in \mathbb{R}, \; \forall y \in \mathbb{R}, \; x + y \neq 0$$
$\lnot$ を左から順に通過させます。$\forall$ が $\exists$ に、$\exists$ が $\forall$ に変わり、条件 $x + y = 0$ が $x + y \neq 0$ に変わります。 元の命題は真($y = -x$ と取ればよい)ですから、否定は偽です。実際、どんな $x$ に対しても「すべての $y$ で $x + y \neq 0$」が成り立つことはありません($y = -x$ を取れば $x + y = 0$)。
このように、どれほど複雑な命題でも、否定は「$\forall \leftrightarrow \exists$ を入れ替え、末尾の条件を否定する」という機械的操作で取れます。次のセクションでは、量化子が複数重なる場合にその順序がどれほど重要かを見ます。
セクション4で2重量化子の否定を練習しました。ここでは、量化子の順序を入れ替えると意味がまったく変わることを確認します。
次の2つの命題を比べましょう。どちらも実数の範囲で考えます。
命題A:$\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; x + y = 0$
これは「どんな $x$ に対しても、$x + y = 0$ を満たす $y$ が(少なくとも1つ)存在する」という意味です。$y = -x$ と取ればよいので、これは真です。 ここで重要なのは、$y$ の値は $x$ に依存してよいということです。$x = 3$ なら $y = -3$、$x = \pi$ なら $y = -\pi$ というように、$x$ ごとに別の $y$ を選べます。
命題B:$\exists y \in \mathbb{R}, \; \forall x \in \mathbb{R}, \; x + y = 0$
これは「ある特定の $y$ が存在して、すべての $x$ に対して $x + y = 0$ が成り立つ」という意味です。 つまり、1つの $y$ を固定して、どんな $x$ が来ても $x + y = 0$ にならなければなりません。 しかし、$y$ を1つ固定すると $x = -y$ 以外の $x$ では $x + y \neq 0$ になるので、これは偽です。
誤解:「$\forall x \exists y$」と「$\exists y \forall x$」は同じことを言っている。
正しい理解:$\forall x \exists y$ では $y$ の値が $x$ ごとに変わってよい($y$ は $x$ の関数でよい)のに対し、$\exists y \forall x$ では $y$ を先に1つ固定しなければならないため、$y$ は $x$ に依存できません。一般に $\exists y \forall x$ の方がはるかに強い主張です。
もう1つ例を見ましょう。
命題C:$\forall \varepsilon > 0, \; \exists \delta > 0, \; |x| < \delta \Rightarrow |x^2| < \varepsilon$
これは「どんなに小さな $\varepsilon > 0$ を取っても、それに応じた $\delta > 0$ が存在して、$|x| < \delta$ ならば $|x^2| < \varepsilon$ となる」という意味です。 $\delta = \sqrt{\varepsilon}$ と取ればよい($|x| < \sqrt{\varepsilon}$ ならば $|x^2| = |x|^2 < \varepsilon$)ので、これは真です。
命題D:$\exists \delta > 0, \; \forall \varepsilon > 0, \; |x| < \delta \Rightarrow |x^2| < \varepsilon$
これは「ある $\delta > 0$ が存在して、すべての $\varepsilon > 0$ に対して $|x| < \delta \Rightarrow |x^2| < \varepsilon$」という意味です。 $\delta$ を1つ固定すると、$|x| < \delta$ を満たす $x \neq 0$ に対して $|x^2| > 0$ なので、$\varepsilon$ を $|x^2|$ より小さく取れば条件を満たせません。したがって命題Dは偽です。
命題Cの形は、実は$\varepsilon$-$\delta$ 論法の骨格そのものです。 大学の解析学で学ぶ「関数 $f(x)$ が $x = a$ で連続である」という定義は、次のような構造を持ちます。
$$\forall \varepsilon > 0, \; \exists \delta > 0, \; (|x - a| < \delta \Rightarrow |f(x) - f(a)| < \varepsilon)$$
セクション4で学んだ否定の技術を使えば、「$f(x)$ が $x = a$ で連続でない」ことの正確な意味も機械的に書き下せます。
$$\exists \varepsilon > 0, \; \forall \delta > 0, \; \exists x, \; (|x - a| < \delta \land |f(x) - f(a)| \geq \varepsilon)$$
否定を取るとき、$\Rightarrow$ は $\lnot(P \Rightarrow Q) \iff P \land \lnot Q$ という規則で処理します($P \Rightarrow Q$ は $\lnot P \lor Q$ と同値なので、その否定は $P \land \lnot Q$ です)。
$\varepsilon$-$\delta$ 論法の完全な解説は M-6-2 $\varepsilon$-$\delta$ 論法 で行います。この記事では、その論理構造が「多重量化子の入れ子」であることを確認するにとどめます。ここで学んだ量化子の読み方・否定の取り方が、$\varepsilon$-$\delta$ 論法を理解するための前提知識になります。
ここまでで、量化子の定義(セクション3)、否定規則(セクション4)、順序の重要性と $\varepsilon$-$\delta$ 論法の構造(本セクション)を学びました。次のセクションでは、これらの技術を使って、高校で馴染みのある数学の定理を量化子で書き直し、その否定を取る練習を行います。
高校(数学III)で学ぶ中間値の定理は、日本語では次のように述べられます。
「関数 $f(x)$ が閉区間 $[a, b]$ で連続で、$f(a) < 0$ かつ $f(b) > 0$ ならば、$f(c) = 0$ を満たす $c$ が $a$ と $b$ の間に存在する。」
これを量化子で書くと、次のようになります。
$f$ が $[a, b]$ で連続、$f(a) < 0$、$f(b) > 0$ のとき:
$$\forall f, \; \forall a, \; \forall b \; (a < b), \; \exists c \in (a, b), \; f(c) = 0$$
ここで、角括弧 $[\cdots]$ 内が条件(仮定)、$\Rightarrow$ の右辺が結論です。 この構造から、定理の骨格が「$\forall \forall \forall$(条件 $\Rightarrow$ $\exists$)」であることがわかります。
この否定を取ってみましょう。中間値の定理が偽であるとは、どういうことでしょうか。
条件($f$ が $[a,b]$ で連続、$f(a) < 0$、$f(b) > 0$)を満たすにもかかわらず:
$$\exists f, \; \exists a, \; \exists b \; (a < b), \; \forall c \in (a, b), \; f(c) \neq 0$$
つまり、「連続で端点の符号が異なるのに、区間内のどこでも $f(c) = 0$ にならない関数が存在する」ということです。 中間値の定理はこれが起こらないことを保証しているわけです。
「すべての2次方程式 $ax^2 + bx + c = 0$($a \neq 0$)は、複素数の範囲で解を持つ。」
これを量化子で書くと次のようになります。
$$\forall a, b, c \in \mathbb{R} \; (a \neq 0), \; \exists z \in \mathbb{C}, \; az^2 + bz + c = 0$$
これは高校で学ぶ解の公式($z = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$)から確かに成り立ちます。 判別式 $b^2 - 4ac < 0$ の場合でも、$\sqrt{b^2 - 4ac}$ は虚数になり、複素数の範囲では解が存在します。
否定を取ると次のようになります。
$$\exists a, b, c \in \mathbb{R} \; (a \neq 0), \; \forall z \in \mathbb{C}, \; az^2 + bz + c \neq 0$$
「解を持たない2次方程式が存在する」という主張であり、これは偽です。
高校(数学III)では「数列 $\{a_n\}$ が $L$ に収束する」ことを「$n$ を限りなく大きくすると $a_n$ が $L$ に限りなく近づく」と表現します。 大学ではこれを次のように正確に書きます。
$$\forall \varepsilon > 0, \; \exists N \in \mathbb{N}, \; \forall n > N, \; |a_n - L| < \varepsilon$$
この命題の構造は「$\forall \exists \forall$」という3重の量化子です。 セクション4の手順でこの否定を取ると次のようになります。
$$\exists \varepsilon > 0, \; \forall N \in \mathbb{N}, \; \exists n > N, \; |a_n - L| \geq \varepsilon$$
これは「$L$ からある程度以上離れた項がいくらでも先の方に現れる」という意味です。すなわち、数列が $L$ に収束しないことの正確な定義です。
このように、セクション3で導入した量化子と、セクション4で学んだ否定規則を使うことで、高校で曖昧に理解していた概念を正確に記述し、その否定も機械的に得ることができます。
Q1. 命題「$\forall x \in \mathbb{R}, \; x^2 + 1 > 0$」の否定を量化子を使って書きなさい。
Q2. 命題「$\exists n \in \mathbb{N}, \; n^2 = n$」は真ですか偽ですか。理由も述べなさい。
Q3. 「$\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; y > x$」と「$\exists y \in \mathbb{R}, \; \forall x \in \mathbb{R}, \; y > x$」の真偽をそれぞれ判定しなさい。
Q4. 量化子の否定規則がド・モルガン法則の一般化であるとはどういう意味か、$S = \{1, 2\}$ の場合で説明しなさい。
次の命題を量化子 $\forall$, $\exists$ を使って記号で表しなさい。
(1) すべての正の整数 $n$ に対して、$n + 1$ も正の整数である。
(2) ある実数 $x$ が存在して、$x^3 = 8$ が成り立つ。
(3) すべての実数 $x$ に対して、$x < y$ を満たす実数 $y$ が存在する。
(1) $\forall n \in \mathbb{Z}^{+}, \; (n + 1) \in \mathbb{Z}^{+}$
(2) $\exists x \in \mathbb{R}, \; x^3 = 8$
(3) $\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; x < y$
(1) 「すべての」は $\forall$ で表します。$\mathbb{Z}^{+}$ は正の整数全体の集合です。
(2) 「ある〜が存在して」は $\exists$ で表します。実際に $x = 2$ が条件を満たします。
(3) 「すべての $x$ に対して」「$y$ が存在する」の2つの量化子が入れ子になっています。$y$ は $x$ に依存してよいので(例えば $y = x + 1$)、$\forall$ が先、$\exists$ が後の順序になります。
次の命題の否定を、量化子を使って書きなさい。また、元の命題と否定のどちらが真か判定しなさい。
(1) $\forall x \in \mathbb{R}, \; x^2 - 2x + 1 \geq 0$
(2) $\exists n \in \mathbb{N}, \; 2^n < n$
(1) 否定:$\exists x \in \mathbb{R}, \; x^2 - 2x + 1 < 0$。元の命題が真です。
(2) 否定:$\forall n \in \mathbb{N}, \; 2^n \geq n$。否定の方が真です。
(1) $x^2 - 2x + 1 = (x - 1)^2 \geq 0$ は常に成り立つので、元の命題は真です。否定は「$(x-1)^2 < 0$ となる実数が存在する」ですが、これは偽です。
(2) $2^n < n$ を満たす自然数は存在しません。$n = 1$ のとき $2^1 = 2 \geq 1$、$n = 2$ のとき $2^2 = 4 \geq 2$ であり、数学的帰納法で $2^n \geq n$ が示せます。したがって元の命題は偽、否定は真です。
次の2つの命題の真偽をそれぞれ判定し、理由を述べなさい。
(1) $\forall x \in \mathbb{R}, \; \exists y \in \mathbb{R}, \; xy = 1$
(2) $\exists y \in \mathbb{R}, \; \forall x \in \mathbb{R}, \; xy = 1$
(1) 偽 (2) 偽
(1) $x = 0$ のとき、どんな $y$ を取っても $xy = 0 \neq 1$ なので、$xy = 1$ を満たす $y$ は存在しません。したがって偽です。$x \neq 0$ なら $y = 1/x$ で成り立ちますが、$\forall x$ なので $x = 0$ も含みます。
(2) $y$ を1つ固定します。$x = 0$ のとき $xy = 0 \neq 1$ なので、どんな $y$ を選んでも「すべての $x$」に対しては成り立ちません。したがって偽です。
この問題は、量化子の順序の問題だけでなく、$x = 0$ という特殊な場合が命題の真偽を左右する例です。
数列 $\{a_n\}$ が $L$ に収束することの定義は次の通りです。
$$\forall \varepsilon > 0, \; \exists N \in \mathbb{N}, \; \forall n > N, \; |a_n - L| < \varepsilon$$
この否定(すなわち $\{a_n\}$ が $L$ に収束しないことの定義)を量化子を使って書きなさい。また、その否定が日本語で何を意味しているか説明しなさい。
$$\exists \varepsilon > 0, \; \forall N \in \mathbb{N}, \; \exists n > N, \; |a_n - L| \geq \varepsilon$$
否定を取る手順は次の通りです。
1. $\forall \varepsilon > 0$ → $\exists \varepsilon > 0$
2. $\exists N \in \mathbb{N}$ → $\forall N \in \mathbb{N}$
3. $\forall n > N$ → $\exists n > N$
4. $|a_n - L| < \varepsilon$ → $|a_n - L| \geq \varepsilon$
日本語で言うと、「ある正の数 $\varepsilon$ が存在して、どんなに大きな $N$ を取っても、$N$ より先に $L$ から $\varepsilon$ 以上離れた項 $a_n$ が見つかる」ということです。つまり、数列がいつまでたっても $L$ の近くに落ち着かない、という意味です。
関数 $f(x)$ が $x = a$ で連続であることの $\varepsilon$-$\delta$ 定義は次の通りです。
$$\forall \varepsilon > 0, \; \exists \delta > 0, \; \forall x, \; (|x - a| < \delta \Rightarrow |f(x) - f(a)| < \varepsilon)$$
(1) この定義の否定($f(x)$ が $x = a$ で連続でないことの定義)を量化子で書きなさい。
(2) $f(x) = \begin{cases} 1 & (x = 0) \\ 0 & (x \neq 0) \end{cases}$ が $x = 0$ で連続でないことを、(1)の否定の定義に基づいて示しなさい。
(1) $\exists \varepsilon > 0, \; \forall \delta > 0, \; \exists x, \; (|x - a| < \delta \land |f(x) - f(a)| \geq \varepsilon)$
(2) $\varepsilon = \frac{1}{2}$ とします。任意の $\delta > 0$ に対して、$x = \frac{\delta}{2}$($\neq 0$)を取ると、$|x - 0| = \frac{\delta}{2} < \delta$ かつ $|f(x) - f(0)| = |0 - 1| = 1 \geq \frac{1}{2} = \varepsilon$ が成り立ちます。よって否定の定義が満たされ、$f(x)$ は $x = 0$ で連続ではありません。
(1) $\lnot(P \Rightarrow Q) \iff P \land \lnot Q$ を使って含意 $\Rightarrow$ の否定を処理します。$|x - a| < \delta$ はそのまま残り、$|f(x) - f(a)| < \varepsilon$ が $|f(x) - f(a)| \geq \varepsilon$ に変わります。
(2) 否定の定義に従って示します。まず存在を主張する $\varepsilon$ を具体的に選び($\varepsilon = 1/2$)、次に「任意の $\delta$」に対して反例となる $x$ を構成します。$x = \delta/2$ は $0$ に近いのに関数値は $0$ であり、$f(0) = 1$ との差が $1$ もあります。これは $\varepsilon = 1/2$ 以上ですから、条件を満たします。
この問題は、セクション4の否定規則とセクション5の $\varepsilon$-$\delta$ 論法の構造を組み合わせた総合問題です。