IT・システム判例メモ

弁護士 伊藤雅浩が,システム開発,ソフトウェア,ネットなどのIT紛争に関する裁判例を紹介します。

アルゴリズム特許 知財高判平20.2.29判時2012-97

ハッシュ関数に関する発明についての特許性(特に「発明性」)が問題となった事例。


本件は,米国法人の原告の発明を特許出願したところ,拒絶査定を受け,これを不服として審判請求したが,請求不成立の審決が出たため,取消を求めた事案である(この場合,一審が知財高裁となる―特許法178条1項)。

本願発明の要旨

【請求項1】
ビットの集まりの短縮表現を生成する装置において、少なくともnビットを有するキーと、入力されたnビットの集まりとの和をとり、
前記和を2乗して、和の2乗を生成し、
pを、2nより大きい最初の素数以上の素数として、前記和の2乗に対して、法p演算を実行して法p演算結果を生成し、
nより小さいlにより、前記法p演算結果に対して、法2l演算を実行して法2l演算結果を生成し、
前記法2l演算結果を出力している、ビットの集まりの短縮表現を生成する装置。

審決の要旨

特許庁は,本願発明は,特許法2条1項の「発明」に該当しないとした。

…これら各段階は、ビットの集まりに対する数学的計算の段階であって、<1>対象の物理的性質や技術的性質に基づく情報処理を特定したものということはできず、又、<2>上記数学的計算が機器等に対する制御や制御に伴う処理に関与するものでもない。更に、<3>本願発明1は『ビットの集まりの短縮表現を生成する装置』と記載されているのみであって、『ビットの集まりの短縮表現を生成する装置』としての具体的な回路構成や、ソフトウェアとハードウェア資源とが協働した具体的手段が何ら記載されていない。

裁判所の判断

まず,一般論として,

数学的課題の解法ないし数学的な計算手順(アルゴリズム)そのものは、純然たる学問上の法則であって、何ら自然法則を利用するものではないから、これを法2条1項にいう発明ということができないことは明らかである。また、既存の演算装置を用いて数式を演算することは、上記数学的課題の解法ないし数学的な計算手順を実現するものにほかならないから、これにより自然法則を利用した技術的思想が付加されるものではない。

とし,これを本願発明にあてはめると,

この点、本願発明が演算装置自体に新規な構成を付加するものでないことは、原告が自ら認めるところであるし、特許請求の範囲の記載(前記第3、1(2))をみても、単に「ビットの集まりの短縮表現を生成する装置」により上記各「演算結果を生成し」これを「出力している」とするのみであって、使用目的に応じた演算装置についての定めはなく、いわば上記数学的なアルゴリズムに従って計算する「装置」という以上に規定するところがない。
そうすると、本願発明は既存の演算装置に新たな創作を付加するものではなく、その実質は数学的なアルゴリズムそのものというほかないから、これをもって、法2条1項の定める「発明」に該当するということはできない。

とした。

若干のコメント

コンピュータでの演算に適した計算アルゴリズムを考えただけでは,発明性がないとされる。では,どのような場合,発明性が肯定されるのか。これは,発明の内容というよりは,クレームの書き方で決まるように思う。例えば,特許庁の審査基準3.2.1の事例2-1によれば,二つの自然数mとnの積を求める計算方法について,

【発明に該当しない例】
自然数mとnとの乗算sを,
s = {(m+n)^2 – (m-n)^2} / 4
によって,計算する方法。

とする一方で,

【発明に該当する例】
自然数nとmを入力する入力手段と,
k番目にk2の値が格納された二乗テーブルと,
加減算器及びシフト演算器からなる演算手段と,
上記演算手段が上記二乗テーブルを参照して二乗の値を導出することにより,乗除算器を用いることなく,
s = {(m+n)^2 – (m-n)^2} / 4
を計算する装置。

としている。


本願発明も,仮に「和をとり」ではなく,「和をとる手段と」や,「2乗を生成し」ではなく,「2乗を生成する手段と」などとされていれば,発明該当性が認められたのではないだろうか。


本件事例に限らず,ここ1年2年で,特許法2条1項の発明該当性に関する判断が相次いでおり,発明の概念が少しずつ柔軟になっているのではないかとも言われている。この点については,別の事例を取り上げるときにもう少し詳しく考えてみたい。