科学なるほど新聞English

トップ › 用語集 › AI

自動形式化(AIが数学を証明の言葉に訳すこと)とは?

別の呼び名:Autoformalization

用語解説 ・ 確かめた日 2026年11月10日 ・ 読む 14分

1分で解説

自動形式化とは、人の言葉(ふつうの文と数式)で書かれた数学の問題や証明を、AIが、形式の言葉(記号1つ1つの意味がきっちり決めてあり、コンピューターが1行ずつ正しさを確かめられる言葉)に、自動で訳すことです。

数学の証明は、ふつう人の言葉で書かれ、人が読んで確かめます。でも、長い証明では見落としも起きます。形式の言葉で書けば、Lean(リーン)や Isabelle(イザベル)という、証明を確かめるソフトが手順を1つずつ確かめ、まちがいがあれば通しません。ただ、大きな証明を人の手で訳すのは、専門家が何年もかける大仕事です。そこで、大規模言語モデル(LLM。ChatGPT のような、文を作るAI)に訳させる研究が進み、証明を作るAIを鍛えるのにも使われています。

落とし穴は、訳の意味がまちがっていても、Lean は気づかないことです。すると、証明が通っても、元とは別の問題を解いたことになります。

よくある思い込み

「Lean で確かめたAIの証明なら、もう絶対に正しい」

半分だけ合っています。証明の手順は、Lean(リーン。証明を確かめるソフト)が1つずつ機械的に確かめるので、そこは信用できます。でも、Lean が確かめるのは「Lean の言葉で書いた文が、証明できたか」だけで、その文が元の問題と同じ意味かどうかは確かめません。たとえば「どんな整数でも、2回かけると0以上になる」という問題を、AIが「0以上の整数なら、2回かけると0以上になる」という文に訳したとします。この文の証明は Lean で通りますが、−3×(−3) のような負の数の場合を、一度も考えていません。元の問題よりずっとやさしい、別の問題を証明しただけです。人が訳した問題集でも、訳のまちがいは見つかっています。AIを試すのによく使われる miniF2F という問題集には、訳した文がまちがった主張になっていて証明できないものや、前提どうしが食いちがう文がまじっていて、Google DeepMind の研究者たちが直した版を作りました。前提が食いちがう文とは、たとえば「x は5より大きく、3より小さい」のように、当てはまる数が1つも無い前提を置いた文です。当てはまる数が無いので、結論に何を書いても、それに合わない例を出せず、証明が通ってしまいます。「Lean で通った」から「元の問題が解けた」と言うには、訳が合っているかの確かめが、別に要るのです。

図で解説

自動形式化から、証明が確かめられるまでの流れの図(例は、このページで作ったもの。Even と Even.add は、Lean の数学の書庫 Mathlib にあるもの)。題「訳して、証明して、Lean が確かめる」。左から右へ4つの箱が矢印でつながる。1つめの箱「人の言葉」:「2つの偶数を足すと、偶数になる」。オレンジの矢印で、2つめのうすいオレンジの箱「Lean の文」へ:(a b : ℕ) (ha : Even a) (hb : Even b) : Even (a + b) の4行と、その下に「ℕ=0以上の整数」「Even=偶数」「ha・hb=前提の名前」。3つめの箱「証明」:Even.add ha hb の2行と、「偶数+偶数は偶数」「Mathlib の定理」、「人かAIが作る」。4つめの紺の箱「Lean」:「1つずつ確かめる」と、「✓ 通る」「✗ 通らない」の2つの札。箱の下に2つのかっこ:1つめと2つめの箱をまとめるオレンジのかっこ「自動形式化(AIが訳す)」、3つめと4つめをまとめる紺のかっこ「証明を作り、Lean が確かめる」。いちばん下の帯:Lean が確かめるのは証明。訳の意味は確かめない。
自動形式化から、証明が確かめられるまでの流れの図です。左の箱が人の言葉の問題「2つの偶数を足すと、偶数になる」、次の箱が、AIが訳した Lean(リーン。証明を確かめるソフト)の文で、オレンジのかっこでまとめた所が自動形式化です。「:」の右には、左のものが何かを書きます。(a b : ℕ) は「a と b は0以上の整数」、(ha : Even a) は「a は偶数」という前提で、ha はその前提に付けた名前です。最後の「:」の後ろの Even (a + b)「a+b は偶数」が、示したいことです。証明の Even.add ha hb は、Lean の数学の書庫 Mathlib にある「偶数と偶数を足すと偶数」という定理に、前提の ha と hb を渡して使っています。この証明を人かAIが作り、Lean が手順を1つずつ確かめて、決まりに合えば通し、合わなければ通しません。ただ、Lean が確かめるのは証明の手順だけで、訳した文が元の問題と同じ意味かは確かめません。
同じ問題を2通りに Lean へ訳した図(例は、このページで作ったもの。Lean の文は一部だけ)。題「訳がちがうと、通っても別の問題」。上の箱「元の問題」:「どんな整数 n でも、n×n は0以上」と「−3×(−3)=9 のような負の数も入る」。そこから左右へ矢印。左の紺の実線の箱「正しい訳」:(n : ℤ) : 0 ≤ n * n、「ℤ=整数(負の数も入る)」、札「Lean:通る ✓」、「→ 元の問題を証明した」。右のオレンジの点線の箱「まちがった訳」:(n : ℕ) : 0 ≤ n * n、「ℕ=0以上の整数だけ」、札「Lean:通る ✓」、「→ 負の数を考えない、別の問題」。ℤ と ℕ の字は、オレンジの太字で目立たせてある。いちばん下の帯:ちがいは1文字。Lean は、どちらも通す。
同じ問題を、2通りに Lean(証明を確かめるソフト)の言葉へ訳した図です。上の箱が元の問題「どんな整数 n でも、n×n は0以上」です。左の実線の箱が正しい訳で、(n : ℤ) は「n は ℤ(整数。負の数も入る)」、0 ≤ n * n は「n×n は0以上」という意味です。右の点線の箱がまちがった訳で、n を ℕ(0以上の整数)としています。ちがいは、n の種類を表すこの1文字だけです。どちらの証明も Lean で通りますが、右は −3×(−3) のような負の数を考えなくてよい、ずっとやさしい別の問題です。証明が通っても、訳がちがえば、元の問題を解いたことにはなりません。
2022年の論文(Wu ほか)の2つの数を並べた図。題「正しい訳は4問に1問。それでも証明のAIは伸びた」。副題:2022年の論文の数(訳したAIは Codex、証明の言葉は Isabelle)。左の半分「人が確かめた150問の訳」:たて10・よこ15の小さなマス150個のうち、上から38個がオレンジに塗ってあり、残りの112個は白。下に印の説明「塗ったマス:完全に正しい訳 38問(25.3%)」「白いマス:完全ではない訳 112問」。右の半分「証明のAI(Thor)が証明できた割合」と「miniF2F の、成績を測る244問」:紺の棒「練習の前」29.9%、オレンジのしま模様の棒「訳した3,363問で練習した後」35.2%。下に「(ほかのAIの、それまでの最高は29.6%)」。いちばん下の帯:訳した問題で練習させると、証明のAIの成績が上がった。
2022年の論文の数を並べた図です。左の150個のマスは、AI(Codex)が Isabelle(証明を確かめるソフト)の言葉に訳した数学の競技の問題150問で、人が1問ずつ確かめ、オレンジの38マスが完全に正しい訳でした(25.3%)。右の2本の棒は、証明を作る別のAI(Thor)が、miniF2F(人が形式の言葉に訳した488問の問題集)のうち、成績を測るための244問を証明できた割合です。練習の前は29.9%で、AIが訳した3,908問のうち文の形が正しかった3,363問で練習した後は、35.2%になりました。「それまでの最高」の29.6%は、ほかの研究のAIが前に出した数です。完全に正しい訳は4問に1問ほどでも、練習には役立ちました。

図は、出典(科学なるほど新聞 naru.news)を書けば、授業・資料・ブログなどで自由に使えます(CC BY 4.0)。

たとえるなら

黒板の問題を、ノートに写してから解く

とても厳しい先生がいて、ノートに書いた答えを、1行ずつ、計算の決まりに合っているか確かめてくれるとします。この先生は、まちがった行を1つも見のがしません。ただし、先生が見るのはノートだけで、黒板の問題は見ません。

生徒は、黒板の問題をノートに写してから解きます。写すのが自動形式化、ノートの答えを確かめる先生が Lean です。もし生徒が、黒板の「どんな整数でも」を「0以上の整数なら」と写しまちがえたら、先生は「答えは全部正しい」と言います。でも、生徒が解いたのは、黒板とはちがう問題です。だから、写した問題が黒板の問題と同じかを、別に見比べる必要があります。

ただ、たとえが合わないところもあります。黒板の問題を写すときは同じ日本語のままですが、自動形式化では、人の言葉から、言葉の意味をすべて決めておく形式の言葉へ書きかえます。「数」と書くだけでは足りず、整数か、0以上の整数か、小数も入るのかを決めなければなりません。まちがいの多くは、うっかりした写しまちがいより、意味の選びまちがいから起きます。また Lean は、先生のように内容を分かって読むのではなく、決まりに合っているかを、機械的に確かめるだけです。

ポイント解説

なぜ、形式の言葉に訳すの?

数学で「定理」とは、正しいと証明されたことがらです。証明は、ふつう人の言葉と数式で書かれ、ほかの数学者が読んで確かめます。でも人の言葉には、あいまいな所や、「明らか」として省いた所があり、長い証明では見落としも起きます。

形式の言葉(形式言語)は、使ってよい記号と、そのつなぎ方の決まりが、すべてはっきり決めてある言葉です。数学をこの言葉で書き直すことを、形式化と呼びます。Lean(リーン)や Isabelle(イザベル)は、形式の言葉で書いた証明を、コンピューターに確かめさせる道具です(証明支援系と呼びます)。証明の一歩ずつが決まりに合っているかを確かめ、合わない所があると通しません。Lean では、この確かめを、核(カーネル)と呼ぶ小さな部分が受け持ちます。核は関所の番人のようなもので、どの証明も最後はここを通り、決まりに合わない一歩があれば止められます。Lean には、定義や定理を集めた Mathlib という、100万行を超える大きな数学の書庫もあります。

形式の言葉で確かめた証明は、正しさがほぼ完全に確かになります。四色定理(地図は4色あれば、となり合う国を別の色に塗り分けられる)のような、とても長い証明も、形式化されてきました。

AIの証明を確かめるのにも役立ちます。大規模言語モデルは数学の問題も解くようになりましたが、もっともらしいまちがい(ハルシネーション)をすることがあります。AIが人の言葉で書いた長い証明を、人が全部読んで確かめるのは大変です。証明の言葉で書かせれば、手順のまちがいは Lean が見つけます。

なぜ、人の手で訳さないの?

人の手でも訳せますが、とても手間がかかります。大きな証明の形式化は、ふつう専門家が何年もかけて、こつこつ進める仕事です。訳すには、数学の意味が分かることと、形式の言葉の細かい決まりを知っていることの、両方が要ります。

そのため、形式の言葉で書かれた数学は、人の言葉で書かれた数学に比べて、とても少ないままです。2022年の論文(Wu ほか)は、Isabelle の証明を集めた書庫(Archive of Formal Proofs)が約180MBで、AI(Codex)が学んだデータの0.18%にも足りないこと、同じ数学を人の言葉と形式の言葉の両方で書いた組は、ほとんど無いことを挙げています。2025年の AlphaProof の論文(Google DeepMind)も、人が Lean に形式化した問題の数は、人の言葉の問題より何けたも少ない、と書いています。

そこで、大規模言語モデル(LLM)に訳させれば、形式化の重い手間を減らせるのではないか、と考えられました。これが自動形式化です。

AIの訳は、どのくらい正しいの?

2022年の論文(Wu ほか)は、大規模言語モデルに、アメリカの中学・高校生の数学の競技(AMC・AIME など)の問題を集めた問題集(MATH)の問題を、Isabelle(イザベル。証明を確かめるソフト)の言葉に訳させました。訳し方を特別に学ばせてはおらず、お手本の訳を少し見せただけです。人が150問の訳を1問ずつ確かめると、AIの1つ(Codex)が完全に正しく訳せたのは38問、25.3%でした。

まちがいの多くは、人の言葉の意味と、形式の言葉の定義が、うまく合わないことから起きていました。たとえば、問題の「いちばん大きい値」を、Isabelle で決まっている書き方(Greatest や Max)で書けず、訳した文が「いちばん大きい」を正しく表せないことが、よくありました。「f は1次関数」という問題で、Isabelle に無い linear という言葉を、あるものとして作って書いてしまい、1次関数という条件を正しく訳せなかった例もあります。

その後、訳は正しくなってきました。2025年に論文が出た AlphaProof(Google DeepMind)の、訳す役のAI(Gemini をもとに作ったもの)は、国際数学オリンピック(IMO)の代表的な問題50問で、1問に1つだけ出した訳の60%が、正しい訳と評価されました。ただ、問題も言葉も確かめ方もちがうので、25.3%と60%を、そのまま比べることはできません。

訳のまちがいは、どう見つけるの?

Lean や Isabelle は、訳した文が形式の言葉の決まりに合っているか(文の形が正しいか)は確かめます。でも、元の問題と同じ意味かは確かめません。意味のまちがいを見つけるには、別の確かめが要ります。いちばん確かなのは、両方の言葉が分かる人が読むことです。でも、人の手では、たくさんは確かめられません。

そこで、AIに確かめさせる工夫があります。2024年の Lean Workbook という研究(Ying ほか)は、AIが訳した Lean の文を、AIに人の言葉へ訳し戻させ、元の問題と同じことを言っているかを、別のAIに判断させました。Lean で通らない文は除き、ちがうと判断された文は、人が直す方へ回します。こうして両方の確かめを通った約5万7千問の問題集から選んだ問題を、専門家が確かめると、93.5%が正しい訳でした。

この研究は、よく起きたまちがいも挙げています。Lean では、数の種類を書かずに 1/3 と書くと、整数どうしの割り算として計算し、答えの小数を切り捨てて0にします。小数も入る数として計算させるには、式の中に (1:ℝ)/3 と書き、「この1は ℝ(実数。小数も入る数)」と決めます。AIが式の中に、それを書かずに 1/3 と書いて、元とちがう式になってしまうまちがいが、くり返し見つかりました。

前から決めてある文と比べるやり方もあります。2026年9月に Anthropic(AIの会社)が発表した、AIによるフェルマーの最終定理の証明の形式化では、AIが証明した最後の文が、Mathlib にもとからあるこの定理の文と同じであることを、道具で確かめたとしています(会社の発表)。

訳がまちがっていても、役に立つの?

証明を作るAIを鍛える、練習の問題としてなら、役に立ちます。2022年の論文(Wu ほか)は、MATH の練習用の問題3,908問をAI(Codex)に Isabelle の言葉へ訳させ、文の形が正しかった3,363問を使って、証明を作るAI(Thor)に、証明を探す練習をくり返させました。すると、miniF2F(数学オリンピックなどの問題488問を、人が形式の言葉に訳した問題集)の試験の問題で、証明できた割合が29.9%から35.2%に上がりました。それまでの最も高い成績(29.6%)を超えています。

Google DeepMind の AlphaProof(2024年に発表、2025年に論文)は、これをずっと大きくしました。人が Lean に訳した約2,500問を最初の材料にして、訳す役のAIを学ばせ、そのAIが、人の言葉の問題約100万問を、約8000万問の Lean の問題に訳しました。1つの問題から何通りもの訳を作ったのは、その中に正しい訳が入りやすくするためです。そして、強化学習(うまくできたらごほうびを与えて学ばせるやり方)で、証明の練習をさせました。論文は、訳したどの文も、元の問題に忠実かどうかにかかわらず、証明する(正しいと示す)か、反証する(まちがいだと示す)かを試せる、きちんとした形式の問題なので、練習の材料として役立つ、と書いています。まちがった訳は、練習の中ですぐに片づくことが多く、それ自体がおもしろい問題になることもあった、とも書いています。

ただし、元の問題を解いたと言うためには、訳が正しくなければなりません。練習の問題と、答えを出したい問題とでは、訳のまちがいの重さがちがうのです。

確認問題

  1. 問1数学の「自動形式化」(英語で autoformalization)で、AIがすることは、どんなこと?

    答えと解説

    答え:C 人の言葉の数学を、証明の言葉に訳す

    自動形式化は、人の言葉(ふつうの文と数式)で書かれた数学の問題や証明を、AIが、Lean・Isabelle などの、コンピューターが正しさを確かめられる証明の言葉に訳すことです。証明が正しいかを確かめるのは、訳した後の Lean などの道具で、訳したAIではありません。反対に、証明の言葉を人の言葉に訳すのは、逆の向きの訳です。訳のまちがいを見つけるのに使われることがあります。

    くわしくは → 1分で解説

  2. 問2AlphaProof(Google DeepMind の、Lean の言葉で証明を作るAI)は、AIが人の言葉の問題を Lean の言葉に訳した、約8000万の問題で練習した。AIの訳には、元の問題と意味のちがうものもまじりうる。論文は、そうした訳について、どう書いている?

    答えと解説

    答え:A 意味がちがう訳も、練習に役立つ

    論文は、訳したどの文も、元の問題に忠実かどうかにかかわらず、証明する(正しいと示す)か、反証する(まちがいだと示す)かを試せる、きちんとした形式の問題になるので、練習の材料として役立つ、と書いています。その文についての証明は、元の問題とちがっても、正しい証明だからです。約8000万もの訳を、人が全部直したわけではありません。ただし、元の問題を解いたと言うには、訳が正しいことが要ります。

    くわしくは → ポイント解説:訳がまちがっていても、役に立つの?

  3. 問3「どんな整数 n でも、n×n は0以上」という問題を、AIが Lean の言葉に訳すとき、n を「0以上の整数」として訳した。この訳した文の証明が、Lean で通ったとき、言えることは?

    答えと解説

    答え:B 元の問題より、やさしい問題を証明した

    0以上の整数だけなら、負の数を考えなくてよいので、元の問題よりずっとやさしい、別の問題になります。たとえば −3×(−3)=9 のような場合を、一度も確かめていません。Lean は、訳した文の証明が正しいことは確かめますが、その文が元の問題と同じ意味かは確かめません。考える数の範囲がせまくなっただけなので、元の問題よりむずかしくなったわけでもありません。Lean で通っても、訳が合っているかは、別に確かめる必要があります。

    くわしくは → 図で解説

参考文献と確かめ方

このページは、上の資料をもとにAIが書き、書いたAIとは別のAIが、資料の本文と照らして確かめました(2026年11月10日)。理学の修士号と、高校理科の教員免許を持つ人も読んで確かめてから出しています。数字は、その時点のものです。わかりにくかったところ、誤りのご指摘、解説してほしい用語は、[email protected] へお寄せください。

AIの用語

AIの用語をすべて見る(34) →