PQ

powergiant/qmd-prover

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

84 stars 品質 66 トレンド 19MIT

qmd-proverは、AIコーディングアシスタントのアドオンです。つまり、実際の数学を書き、確認するのに役立ちます.

概要

qmd-proverは、AIコーディングアシスタントのアドオンです。つまり、実際の数学を書き、確認するのに役立ちます。 証拠を書くための規律を設定し、その後、懲戒律が続くことを確認します。 あなたの数学は、プレーンテキスト.qmdファイルで書かれています。 .qmd ファイルは、Quarto マークダウンと呼ばれる形式で書かれた普通のテキストファイル(エディタで開くことができる種類)です。 それの中で、すべての定義、レンマ、理論、および証拠は、それぞれに座っています。 ブロックは3つのコロンのラインで開いて閉じられます。 :::、その最初の行は短いラベルを与え、それが何であるかを言う。 以下は、完全な小さな例です。1つの定義、1つの理論とその証拠: - テキストの残りの部分から1ブロックをフェンスします。 コロンの2行間のすべてがそのブロックに属しています。 (中央の $... $ は数学表記が書かれているだけです。後で実際の記号としてレンダリングします。) - ブロックの名、その短縮名です.

概要(AI 翻訳)

qmd-prover は、AI コーディングアシスタントのアドオンです。Claude Code または Codex — これにより、 実質の数学を書き、点検して下さい。 証拠を書くための規律を設定し、その後、懲戒律が続くことを確認します。

規律。 あなたの数学は、プレーンテキスト[.qmd]ファイルで書かれています。 [.qmd]ファイルだけが Quartoという形式で書かれている普通のテキストファイル(エディタで開くことができる種類) マークダウン それの中で、すべての定義、レンマ、理論、および証拠は独自のblockに座っています。 ブロック 3つのコロン、[:::のラインで開いて閉じられ、その最初のラインは短いラベルを与え、 どんなことなのか。 ここでは、完全な小さな例です。1つの定義、1つの理論、および その証拠:

その部分から読むこと:

-[[:::]… [:::]] テキストの残りの部分から1ブロックオフフェンス。 2つの線間のすべて コロンは、そのブロックに属します。 ([$…$])は、数学的な表記がいかにあるかです 記述; それは後で実質の記号としてレンダリングします。) -[`#def-even`はブロックのlabelです。その短い名前は[`@id`です。 あらゆるステートメントは一つあり、 プロジェクト全体でユニークです。 -**[`.definition`/[`.theorem`]/`.

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

qmd-prover

qmd-prover is an add-on for your AI coding assistant — Claude Code or Codex — that helps it write and check real mathematics. It sets up a discipline for writing proofs, and then checks that the discipline was followed.

The discipline. Your mathematics is written in plain-text .qmd files. A .qmd file is just an ordinary text file (the kind you can open in any editor) written in a format called Quarto markdown. Inside it, every definition, lemma, theorem, and proof sits in its own block. A block is opened and closed by a line of three colons, :::, and its first line gives it a short label and says what kind of thing it is. Here is a complete, tiny example — one definition, one theorem, and its proof:

::: {#def-even .definition name="Even number"}
An integer $n$ is **even** when $n = 2k$ for some integer $k$.
:::

::: {#thm-sum-even .theorem name="Sum of two even numbers"}
If $a$ and $b$ are even, then $a + b$ is even.
:::

::: {.proof of="thm-sum-even"}
By @def-even, write $a = 2k$ and $b = 2m$. Then $a + b = 2(k + m)$,
which is even by @def-even.
:::

Reading that from the pieces:

  • ::: … ::: fences one block off from the rest of the text. Everything between the two lines of colons belongs to that block. (The $…$ in the middle is just how mathematical notation is written; it renders as real symbols later.)
  • #def-even is the block’s label — its short name, its @id. Every statement has one, and it is unique across the whole project.
  • .definition / .theorem / .proof says what kind of block it is. name="…" is the plain title a reader sees.
  • The proof is its own separate block, and of="thm-sum-even" links it to the statement it proves. A statement and its proof are never mixed together.
  • @def-even inside the proof is a pointer: it says “this step uses the definition labeled def-even.” Every time a proof leans on another result, it names that result this way, right at the spot where it uses it. Those pointers are what make every assumption visible.

You never type any of this — the assistant writes it. What matters is that the discipline is fixed, so the assistant (and the checks) can always tell which result depends on which.

Among all the results you build, one theorem is the one you ultimately want proved — that theorem is your goal. In the example above, the theorem thm-sum-even would be the goal, and the definition exists only to support it.

How the discipline is checked. Because every proof follows the discipline, the work can be checked in two layers:

  • Mechanical checks (no AI). A plain program reads all the references @id and confirms the wiring is sound: every block has a unique label, every proof links to a real statement, every @id points at a result that actually exists, and no chain of citations loops back on itself. This
GitHub で README 全文を見る

推奨ツール

別のキーワードを試すか、フィルタを外してください。

インストール

npx skillfish add powergiant/qmd-prover
MCP 初心者?mcpskill.org のガイドから始めましょう →