ポートフォリオを新規に作成して保存 |
|
|
既存のポートフォリオに追加保存 |
|
PDFをダウンロード |
審決分類 |
審判 査定不服 2項進歩性 取り消して特許、登録 G06F 審判 査定不服 4項4号特許請求の範囲における明りょうでない記載の釈明 取り消して特許、登録 G06F 審判 査定不服 5項独立特許用件 取り消して特許、登録 G06F |
---|---|
管理番号 | 1334220 |
審判番号 | 不服2017-78 |
総通号数 | 216 |
発行国 | 日本国特許庁(JP) |
公報種別 | 特許審決公報 |
発行日 | 2017-12-28 |
種別 | 拒絶査定不服の審決 |
審判請求日 | 2017-01-05 |
確定日 | 2017-11-28 |
事件の表示 | 特願2013-514375「状態情報を提供するためのプログラム可能装置、階層型並列マシン、方法」拒絶査定不服審判事件〔平成23年12月15日国際公開、WO2011/156644、平成25年 9月 5日国内公表、特表2013-534660、請求項の数(30)〕について、次のとおり審決する。 |
結論 | 原査定を取り消す。 本願の発明は、特許すべきものとする。 |
理由 |
第1 手続の経緯 本願は,2011年6月9日(パリ条約による優先権主張外国庁受理2010年6月10日,米国 2011年3月1日,米国)を国際出願日とする出願であって,平成27年8月13日付けで拒絶理由が通知され,平成27年11月9日に意見書と手続補正書が提出され,平成28年4月7日付けで拒絶理由(最後)が通知され,平成28年7月11日に意見書,誤訳訂正書及び手続補正書が提出されたが,平成28年9月9日付けで平成28年7月11日に提出された手続補正書による手続補正が却下されるとともに拒絶査定がなされ,これに対し,平成29年1月5日に拒絶査定不服審判の請求がされると同時に手続補正書が提出され,平成29年1月30日に前置報告がされたものである。 第2 原査定の概要 原査定(平成28年7月11日付け拒絶査定)の概要は次のとおりである。 1.本願請求項1-38に係る発明は,以下の引用文献1-6に基づいて,その発明の属する技術の分野における通常の知識を有する者(以下,「当業者」という。)が容易に発明できたものであるから,特許法第29条第2項の規定により特許を受けることができない。 引用文献等一覧 1.特開2007-142767号公報 2.特開2005-242672号公報 3.特開2008-293226号公報 4.特開2000-181679号公報 5.特開2005-018310号公報 6.特開2002-026721号公報 2.本願の発明の詳細な説明は,当業者が請求項1-38に係る発明を実施することができる程度に明確かつ十分に記載されておらず,特許法第36条第4項第1号に規程する要件を満たしていない。 3.請求項1-38に係る発明は不明確であり,本願は,特許法第36条第6項第2号に規定する要件を満たしていない。 第3 審判請求時の補正について 審判請求時の補正は,特許法第17条の2第3項から第6項までの要件に違反しているものとはいえない。 1.請求項1について 審判請求時の補正によって請求項1の「前記N桁よりも多い数の最終状態」を「前記N桁よりも多い桁数の最終状態」とする補正は,拒絶理由通知に係る拒絶の理由に示す事項(平成28年4月7日付け最後の拒絶理由通知の理由3)に対するものであって,特許法第17条の2第5項第4号の明りようでない記載の釈明を目的とするものに該当する。 また,請求項1に「前記有限状態機械は,前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース,前記N桁の入力が入力されるデータ入力,及び前記プログラムに基づいて前記N桁の入力を識別した結果である前記M桁の出力を出力するデータ出力,を備える」という事項を追加する補正は,補正前の請求項1に記載された「有限状態機械」の構成を限定するものであって,同法第17条の2第5項第2号の特許請求の範囲の減縮を目的とするものに該当する。 また,特許法第17条の2第3項,第4項に違反するところはない。 2.請求項21について 審判請求時の補正によって請求項21の「前記N桁よりも多い数の最終状態」を「前記N桁よりも多い桁数の最終状態」とする補正は,拒絶理由通知に係る拒絶の理由に示す事項(平成28年4月7日付け最後の拒絶理由通知の理由3)に対するものであって,同法第17条の2第4項第4号の明りようでない記載の釈明を目的とするものに該当する。 また,請求項21に「前記第1の並列マシンは,前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース,前記N桁の入力が入力されるデータ入力,及び前記プログラムに基づいて前記N桁の入力を識別した結果である前記M桁の出力を出力するデータ出力,を含み,前記第2の並列マシンは前記M桁の出力の少なくとも一部に基づいて処理を実行しその結果を出力すると共に前記第1の並列マシンの前記プログラミングインタフェースにフィードバックして前記第1の並列マシンのプログラムを変更可能に構成される」との事項を付加する補正は,補正前の請求項21に記載された「第1の並列マシン」及び「第2の並列マシン」の構成を限定するものであって,同法第17条の2第4項第2号の特許請求の範囲の減縮を目的とするものに該当する。 また,特許法第17条の2第3項,第4項に違反するところはない。 3.請求項31-38について 請求項31-38を削除する補正は,特許法第17条の2第4項第1号の請求項の削除を目的とするものに該当する。 そして,「第4 本願発明」から「第6 対比・判断」までに示すように,補正後の請求項1-30に係る発明は,独立特許要件を満たすものである。 第4 本願発明 本願請求項1-30に係る発明(以下,それぞれ「本願発明1」-「本願発明30」という。)は,平成29年1月5日付けの手続補正で補正された特許請求の範囲の請求項1-30に記載された事項により特定される発明であり,本願発明1,21は以下のとおりの発明である。 「【請求項1】 複数のプログラム可能要素を含むプログラム可能装置であって, 前記プログラム可能要素が1つまたは複数の有限状態機械を実装するように構成され,前記複数のプログラム可能要素が,入力シンボル言語内の桁数であるN桁の入力を受信し,かつ前記N桁の入力に応じて前記N桁よりも多い桁数の最終状態を生成可能であると共に,前記N桁よりも多い桁数の最終状態を連結して前記最終状態の総数よりも少ないM桁の出力を提供するように構成され, 前記有限状態機械は,前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース,前記N桁の入力が入力されるデータ入力,及び前記プログラムに基づいて前記N桁の入力を識別した結果である前記M桁の出力を出力するデータ出力,を備える,プログラム可能装置。」 「【請求項21】 複数のプログラム可能要素を含む第1の並列マシンであって,前記プログラム可能要素が1つまたは複数の有限状態機械を実装するように構成され,前記複数のプログラム可能要素が入力シンボル言語内の桁数であるN桁の入力を受信し,前記N桁の入力に応じて前記N桁よりも多い桁数の最終状態を生成可能であると共に,前記N桁よりも多い桁数の最終状態を連結して前記最終状態の総数よりも少ないM桁の出力を提供するように構成される,第1の並列マシンと, 前記M桁の出力の少なくとも一部を受信および処理するように構成された第2の並列マシンと, を備え, 前記第1の並列マシンは,前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース,前記N桁の入力が入力されるデータ入力,及び前記プログラムに基づいて前記N桁の入力を識別した結果である前記M桁の出力を出力するデータ出力,を含み, 前記第2の並列マシンは前記M桁の出力の少なくとも一部に基づいて処理を実行しその結果を出力すると共に前記第1の並列マシンの前記プログラミングインタフェースにフィードバックして前記第1の並列マシンのプログラムを変更可能に構成される,階層型並列マシン。」 なお,本願発明2-20,22-30の概要は以下のとおりである。 本願発明2-20は,本願発明1を減縮した発明である。 本願発明22-30は,本願発明21を減縮した発明である。 第5 引用文献,引用発明等 1.引用文献1について 原査定の拒絶の理由に引用された引用文献1には,図面とともに次の事項が記載されている(なお,下線は重要箇所に対して当審が付した。以下,同様。)。 「【0003】パターンマッチング処理用として,NFA(Nondeterministic Finite Automaton)によりパターンマッチング回路を再構成可能なデバイスFPGA(Field Programmable Gate Array)上に構成し,高速な処理を行う研究が幾つかなされている。NIDSでは,新たな攻撃や侵入に従ってマッチングパターンが変更されるためNFAによるパターンマッチングの場合ASICに実装するのは実用的でなく,FPGAのような再構成可能なハードウェアがパターンマッチングエンジンとして用いられる。」 「【0005】パターンマッチング回路を実現する方法として,これまでに,非特許文献1に記載されているようなマッチングパターンを表す正規表現からNFAを構成し,これを回路化する方法が知られている。しかし,この方法では,1クロックサイクル当りに処理する入力データ幅が1バイトであったため,高いスループットを得ることが困難であった。また,非特許文献2に記載されているようにNFAより構成したパターンマッチング装置が1クロックサイクルあたりに処理する入力データ幅を拡張し,回路のスループットを向上させる技術も知られている。しかし,この技術では,スループットは向上するものの,データ幅の倍化に伴って回路規模も同様に倍化するため,現実的に適用できるものではなかった。」 「【0008】ハードウェアによるパターンマッチング処理のうち,NFA(Non-deterministic Finite Automaton)によってパターンマッチング装置を構成する方法が存在する。このパターンマッチング装置で,例えば,文字列「abb」を検出する場合の構築手順を図1に示す。 【0009】通常は,探索を受ける情報を,探索を容易にするために正規表現(通常の文字と,メタキャラクタと呼ばれる特別な意味を持った記号を組み合わせた表記)に変換しておく。また,探索しようとする文字列や記号列を変換して得られるマッチングパターンを示す正規表現からNFAステートマシンを生成する。このNFAステートマシン中のステート1つに1状態を保持するステートマシンを割り当ててパターンマッチング装置を構築する。 【0010】このような従来の技術では,パターンマッチング装置の処理データ幅を増やすと回路規模が大幅に増大してしまう,という問題があった。さらに,探索するマッチングパターンの数を増やすと回路規模が比例して増大してしまう,という問題もあった。これは,探索するマッチングパターンが複数ある場合に,それぞれのマッチングパターンに対して独立したNFAを生成してパターンマッチング装置を構築していたためである。 【0011】従来の技術によるパターンマッチング装置の構成を図2に示す。図2に示すパターンマッチング装置の処理するバイト幅は4バイトである。この装置は,入力されたデータを1バイト毎に比較する比較器部と各々のマッチングパターンに対応したステートマシン部より構成される。」 「【0020】上記のように,従来は複数のマッチングパターンそれぞれからステートマシンを生成していたが,本発明では,このステートマシンを集約するものである。さらに,ステートマシンのステート遷移条件を生成するANDゲート2,パターン検出信号を生成するORゲート3をステートマシン1の回路と独立させる。一例として,図3に本発明の技術によるパターンマッチング装置の構成を示す。前記構成は,入力されたデータを1バイト毎に比較する比較器部,ANDゲート群,マッチングパターン全てを含んだ1つのステートマシン,ORゲート群より成る。図3の単位ステートマシンA,B,Cでは,単位ステートマシンAを共有して,AとBの,あるいはAとCの単位ステートマシンの直列接続と同様の結果が得られる。」 a 段落【0011】の「図2に示すパターンマッチング装置の処理するバイト幅は4バイトである」との記載及び【図2】より,当該【図2】で示されるパターンマッチング装置は,4バイト(すなわち32ビット)を入力としていることが読み取れる。 b 段落【0020】の「図3の単位ステートマシンA,B,C」との記載及び【図3】より,「単位ステートマシン」は,ANDゲートとラッチ回路とからなることが読み取れる。 c 段落【0020】の「ステートマシンのステート遷移条件を生成するANDゲート2」との記載及び【図3】,並びに,【図2】の「ステート遷移条件生成」との記載が「4入力ANDゲート」を指していることを勘案すると,【図2】における「4入力ANDゲート」がステート遷移条件を生成するものであることが読み取れる。 さらに,上記b,cで読み取れる事項に基づいて【図2】を見ると,【図2】の「各々のマッチングパターンに対応したステートマシン」は,「パターン検出信号生成」との記載が指している「ORゲート」の出力を各パターンの検出信号として出力するものであること,及び,当該「ORゲート」への4つの入力へ接続される回路は,それぞれ直列接続された「単位ステートマシン」と各「単位ステートマシン」に接続された「4入力ANDゲート」からなるものであることが読み取れる。 したがって,引用文献1には次の発明(以下,「引用発明」という。)が記載されていると認められる。 「NFA(Nondeterministic Finite Automaton)によるパターンマッチング回路を再構成可能なデバイスFPGA(Field Programmable Gate Array)上に構成し,32ビットの入力を受信するパターンマッチング装置であって, 各々のマッチングパターンに対応したステートマシン部を複数有し, 各々のマッチングパターンに対応したステートマシン部は,ORゲートの出力を各パターンの検出信号として出力し,当該ORゲートへの4つの入力は,それぞれ直列接続された単位ステートマシンと各単位ステートマシンに接続された4入力アンドゲートからなる回路である, パターンマッチング装置。」 2.引用文献2について また,原査定の拒絶の理由に引用された上記引用文献2の段落【0054】-段落【0058】及び第1-2図の記載からみて,当該引用文献2には,元のパターンをk分割した分割パターンとし,且つ,任意の部分テキストをk分割して分割部分テキストとし,個々の分割部分テキストが個々の分割パターンと一致するか否かを,分割パターンを用いたオートマトンにより判定し,全ての分割パターンに対応するオートマトンが最終状態に遷移したか否かを判定することで,パターン全体と一致したか否かを判定し,各オートマトンを並列に動作させることによって,テキストとパターンとのマッチングを文字単位で並列処理するという技術的事項が記載されていると認められる。 第6 対比・判断 1.本願発明1について (1)対比 本願発明1と引用発明とを対比すると,次のことがいえる。 ア 引用発明の「FPGA」は,本願発明1の「複数のプログラム可能要素」に相当する。 イ 引用発明の「パターンマッチング」は,本願発明1の「入力」の「識別」に相当する。 ウ 引用発明の「NFA(Nondeterministic Finite Automaton)によるパターンマッチング回路」,「パターンマッチング装置」は,それぞれ本願発明1の「有限状態機械」,「プログラム可能装置」に含まれるものである。 エ 引用発明では,「パターンマッチング回路」を「FPGA」上に構成するから,「FPGA」上に「パターンマッチング回路」を構成するための「プログラム」を用いることは明らかである。そして,この「プログラム」は,本願発明1の「入力を識別するためのプログラム」に相当する。 オ 引用発明は,「32ビットの入力を受信する」のに対して,本願発明1は,「入力シンボル言語内の桁数であるN桁の入力を受信」するから,両者は「複数桁(ビット)の入力を受信する」という点で一致する。 カ 引用発明は,「各々のマッチングパターンに対応したステートマシン部」を複数備え,「各々のマッチングパターンに対応したステートマシン部」は,「ORゲートの出力を各パターンの検出信号として出力」するものであり,「当該ORゲートへの4つの入力に接続される回路は,それぞれ直列接続された単位ステートマシンと各単位ステートマシンに接続された4入力アンドゲートからなるもの」である。そして,オートマトンがパターン全体を表す状態を「最終状態」と呼ぶことが技術常識であることに鑑みれば,引用発明における直列接続された「単位ステートマシン」の最終段の状態が「最終状態」であることが明らかであり,ORゲートの出力が1ビットであることも技術常識であるから,引用発明の「ORゲート」は,4つの「最終状態」から1ビットの「パターン検出信号」を出力するものと認められる。 一方,本願発明1では,「前記N桁の入力に応じて前記N桁よりも多い最終状態を生成可能であると共に,前記N桁よりも多い桁数の最終状態を連結して前記最終状態の総数よりも少ないM桁の出力を提供する」ものであるが,「出力」の「M桁」は,「最終状態の総数よりも少ない」という相対的な関係が特定されているのみであるから,この点で両者が相違するとは認められない。 したがって,両者は「前記複数桁の入力に応じた複数の最終状態を生成可能であると共に,前記複数の最終状態を連結して前記最終状態の総数よりも少ないM桁の出力を提供する」という点で一致する。 キ 引用発明は,「32ビットの入力を受信する」から,「パターンマッチング回路」が32ビットの入力部を有することは明らかである。また,1ビットの「パターン検出信号」を出力する「各々のマッチングパターンに対応したステートマシン部」を複数備えているから,その出力は複数ビットであり,そのための出力部を有することも明らかである。 一方,本願発明1の「有限状態機械」は,「前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース,前記N桁の入力が入力されるデータ入力,及び前記プログラムに基づいて前記N桁の入力を識別した結果である前記M桁の出力を出力するデータ出力」を備えている。 しれみれば,両者は「前記有限状態機械は,前記複数桁の入力が入力されるデータ入力,及び入力を識別するためのプログラムに基づいて前記複数桁の入力を識別した結果である前記M桁の出力を出力するデータ出力」を備える点で一致する。 したがって,本願発明1と引用発明との間には,次の一致点,相違点があるといえる。 (一致点) 「複数のプログラム可能要素を含むプログラム可能装置であって, 前記プログラム可能要素が1つまたは複数の有限状態機械を実装するように構成され,前記複数のプログラム可能要素が,複数桁の入力を受信し,かつ前記複数桁の入力に応じて複数桁の最終状態を生成可能であると共に,前記複数桁の入力に応じた複数の最終状態を生成可能であると共に,前記複数の最終状態を連結して前記最終状態の総数よりも少ないM桁の出力を提供するように構成され, 前記有限状態機械は,前記複数桁の入力が入力されるデータ入力,及び入力を識別するためのプログラムに基づいて前記複数桁の入力を識別した結果である前記M桁の出力を出力するデータ出力, を備える,プログラム可能装置。」 (相違点) (相違点1)一致点の「複数桁の入力を受信し」に関して,「受信」されるのは,本願発明1では,「入力シンボル言語内の桁数であるN桁の入力」であるのに対して,引用発明では,「32ビットの入力」である点。 (相違点2)一致点の「前記複数桁の入力に応じて複数桁の最終状態を生成可能である」に関して,本願発明1では,「生成可能」な「最終状態」の数は,「前記N桁の入力に応じて前記N桁よりも多い桁数」であるのに対して,引用発明は,「各々のマッチングパターンに対応したステートマシン部を複数有し」ているものの,その具体的な数が不明であり,したがって,「生成可能」な「最終状態」の数も不明な点。 (相違点3)本願発明1は,「有限状態機械」が,「前記N桁の入力を識別するためのプログラムが供給されるプログラミングインタフェース」を備えるのに対して,引用文献1には,「FPGA」上に「パターンマッチング回路」を構成することは記載されているものの,この「FPGA」上に構成された「パターンマッチング回路」が「プログラミングインタフェース」を備えることについての記載がなく,したがって,引用発明の「パターンマッチング回路」が「プログラミングインタフェース」を備えることが明らかではない点。 (2)相違点についての判断 事案に鑑み,まず上記相違点1について検討する。 本願発明1の「入力シンボル言語内の桁数であるN桁の入力」に関して,本願明細書には次の記載がある。 「【0048】例を進めるため,ASCII文字セットが入力(シンボル)言語である例を使用する。この場合,各入力シンボルは,8ビットの2進ワードによって表される。代替実施形態では,各入力シンボルがNビットの2進ワードであるなど,他のシンボルが使用できる。」 「【0055】一例では,各状態機械532の最終状態208が統合され(例えば,ORされ)て,結果がN個の状態機械532の論理グループに分類(例えば,収集)され,ここで,Nは,それぞれの入力シンボル言語内の桁数に等しい。」 当該記載を参酌すると,「入力シンボル言語内の桁数であるN桁の入力」とは,「入力シンボルのビット数」であると解釈される。 一方,引用文献1では,1バイト文字を処理対象の前提とし(段落【0004】),「1クロックサイクル当たりに処理する入力データ幅が1バイトであったため,高いスループットを得ることが困難であった。」(段落【0005】)という課題認識の下,入力データ幅を4バイト(32ビット)に拡張してスループットを向上させたものであると認められるから,引用発明における入力のビット(桁)数を,32ビットから1文字単位のビット数である8ビットに減じて「入力シンボル言語内の桁数(すなわち,入力シンボルのビット数)」にすることは,スループットの向上という目的に反するものであって,そのような構成の変更には阻害要因があるといわざるを得ない。 また,仮に引用文献2に記載された技術事項を引用発明に適用することができたとしても,当該引用文献2に記載された技術事項は,k分割した分割パターンに対応する各オートマトンを並列に動作させることによって,テキストとパターンとのマッチングを文字単位で並列処理するというものであるから,並列処理される入力データのビット(桁)数が,1文字当たりのビット数と分割数kとの積となり,入力のビット(桁)数を「入力シンボル言語内の桁数(入力シンボルのビット数)」とする構成となり得ない。 そうすると,上記相違点1に係る本願発明1の構成は当業者が容易に想到し得たものではなく,したがって,他の相違点について検討するまでもなく,本願発明1は,当業者であっても引用発明及び引用文献2に記載された技術的事項に基づいて,当業者が容易に発明をすることができたものとはいえない。 2.本願発明2-30について 本願発明2-30も,本願発明1の「入力シンボル言語内の桁数であるN桁の入力を受信し」と同一の構成を備えるものであるから,本願発明1と同じ理由により,当業者であっても引用発明及び引用文献2に記載された技術的事項に基づいて,当業者が容易に発明をすることができたものとはいえない。 第7 原査定について 1.理由1(特許法第29条第2項)について 本願発明1-30は「入力シンボル言語内の桁数であるN桁の入力を受信し」という事項を有するものであり,当業者であっても,拒絶査定において引用された引用文献1-6に基づいて,容易に発明できたものとはいえない。 したがって,原査定の理由1を維持することはできない。 2.理由2(特許法第36条第4項第1号について) 平成28年7月11日付けの誤訳訂正書により,本願明細書の段落【0056】は,「8のセットにおけるように,」との誤訳が「8つで一組のように」と訂正された。そして,図8及び段落【0056】には,8つで一組とされるように状態機械がグループ化されたときでも,最終状態208の数が入力202の数を超えるものが記載されている。さらに,段落【0045】-【0047】には,最終状態の数を6554とする例が記載されており,8つで一組とされる状態機械532は,6554÷8で,820の最終状態を生成することが理解できる。 したがって,原査定の理由2を維持することはできない。 3.理由3(特許法第36条第6項第2号について) 審判請求時の補正により,請求項1及び21の「前記N桁よりも多い数の最終状態」という記載は「前記N桁よりも多い桁数の最終状態」に補正されており,原査定の理由3を維持することはできない。 第8 むすび 以上のとおり,原査定の理由によっては,本願を拒絶することはできない。 また,他に本願を拒絶すべき理由を発見しない。 よって,結論のとおり審決する。 |
審決日 | 2017-11-14 |
出願番号 | 特願2013-514375(P2013-514375) |
審決分類 |
P
1
8・
575-
WY
(G06F)
P 1 8・ 574- WY (G06F) P 1 8・ 121- WY (G06F) |
最終処分 | 成立 |
前審関与審査官 | 久々宇 篤志、脇水 佳弘、渡部 博樹 |
特許庁審判長 |
新川 圭二 |
特許庁審判官 |
松田 岳士 山澤 宏 |
発明の名称 | 状態情報を提供するためのプログラム可能装置、階層型並列マシン、方法 |
代理人 | 大菅 義之 |
代理人 | 野村 泰久 |