以下に図面を参照して、本発明にかかる生成プログラム、生成装置、および生成方法の実施の形態を詳細に説明する。
(実施の形態)
図1は、実施の形態にかかる生成方法の一実施例を示す説明図である。図1において、生成装置101は、化合物の示性式の生成を支援するコンピュータである。生成装置101は、例えば、PC(Personal Computer)であってもよく、また、サーバであってもよい。
ここで、化合物は、2種類以上の元素からなる化学物質である。化合物は、例えば、有機化合物と無機化合物とに分類される。有機化合物は、炭素を含む化合物の総称である。有機化合物は、炭素の連結が骨組みとなり、炭素に水素等が結合するという基本構造を有する。なお、化合物の骨格を形成する炭素以外の元素としては、シリコンや硫黄があり、無機高分子と呼ばれる。また、無機化合物は、炭素を含まない化合物の総称である。ただし、炭素化合物のうち、例えば、炭素の同素体(グラファイト、ダイヤモンドなど)や二酸化炭素は、無機化合物に分類される。以下の説明では、化合物として「有機化合物」を例に挙げて説明する。
示性式は、化合物の組成や化学構造などを表現する化学式の一例であり、分子内に含まれる原子団(官能基)を明示した化学式である。官能基は、有機化合物のおおよその性質を決める原子団である。示性式以外の化学式としては、例えば、分子式や構造式がある。分子式は、化合物を構成する原子の種類と数を、元素記号を用いて表現した化学式である。構造式は、分子内での原子の結合状態を図示した化学式である。
ここで、化合物の表記方法は様々存在しており、同一の物質であっても、異なる表記が用いられることがある。また、同一の物質以外にも、異性体、上位下位概念など類似する物質が存在することもある。また、化学分野は有機化学、無機化学、高分子化学、生化学などの専門分野に分かれており、化学の技術者であっても専門外の物質は把握しきれていないことが多い。
したがって、化合物の構造の理解を助けるために、化合物の化学式を示すことは有用である。例えば、様々な表記方法のうち、示性式は、分子式に比べて化合物の分子構造を読み取りやすい情報であり、示性式の構造情報から簡易図を作成するための基礎情報にもなる。また、示性式は、コンピュータにも可読なテキスト情報であるため、構造図(構造式)とは異なり、化合物の分析に活用することができる。
化合物の示性式を生成する技術としては、例えば、化合物を部分構造に分解して、部分構造ごとの部分示性式を特定し、それらの部分示性式を合成することで示性式を生成するものがある。また、既知の示性式に部品化ルールを適用して部品化したものを、部分構造の部分示性式として蓄積する技術がある。
ところが、部分構造ごとの部分示性式を合成して示性式を生成するにあたり、1つの部分構造に複数の部分構造が結合される場合を考慮しなければ、炭素に結合する水素の数が合わなくなることがある。すなわち、1つの部分構造が他の1つの部分構造と結合する場合しか考慮していないと、余分な水素を含む示性式が生成されることがある。
このため、各部分構造に余っている価数の情報を付加することで、示性式を生成する際に水素の数を調整可能にすることが考えられる。例えば、一般的に元素ごとに価数(原子価)が決まっているため、単結合のみで構成される部分構造であれば、部分構造の中で余っている価数の数は、各元素の価数から計算することができる。
しかしながら、1組の結合に関与する価数は、1価とは限らない。したがって、化合物における結合の多重度を認識できなければ、各部分構造で余っている価数を正確に計算することができず、二重結合や三重結合などの多重結合を含む化合物の示性式を生成することはできない。
例えば、エタン(C2H6)の場合、炭素の原子価が「4」であり、水素の原子価が「1」のため、全ての手がつながっている。一方、エチレン(C2H4)の場合、エタンと同様に計算すると、価数が2つ余ることになるが、実際には全ての手がつながっている。また、エチン(C2H)の場合、エタンと同様に計算すると、価数が5つ余ることになるが、実際には余っているのは1つのみである。
ここで、化合物(価数が余っていないもの)の名称は、命名規則に沿って付けられる。例えば、単純な炭化水素の場合は、炭素の数に応じて、「メタン(炭素の数:1)」、「エタン(炭素の数:2)」、「プロパン(炭素の数:3)」、「ブタン(炭素の数:4)」のように命名される。
また、名称の語尾で二重結合や三重結合があるかどうかが表現される。例えば、「〜アン」、「〜タン」、「〜パン」などは、一重結合(単結合)があることをあらわす。「〜エン」、「〜レン」などは、二重結合があることをあらわす。「〜イン」、「〜チン」などは、三重結合があることをあらわす。
また、「シクロ」、「ビシクロ」、「スピロ」などの接頭語を付けて環構造をあらわす。また、倍数接頭辞により、置換基の数、二重結合や三重結合の数が表現される。例えば、「ジ」、「ビス」は、2をあらわす。「トリ」、「トリス」は、3をあらわす。「テトラ」は、4をあらわす。「ペンタ」は、5をあらわす。
このように、化合物の名称から、化合物に含まれる多重結合の種類や、その多重結合の数を特定することができる。そこで、本実施の形態では、化合物の物質名の命名規則を利用して、化合物の価数の余りを算出することで、二重結合や三重結合などの多重結合を含む化合物の示性式を生成可能にする生成方法について説明する。以下、生成装置101の処理例について説明する。
(1)生成装置101は、化合物の物質名と化学式とを取得する。化学式は、例えば、化合物の示性式、または、化合物の示性式に対応する分子式である。化合物の物質名と化学式は、例えば、特許文献や学術論文などの文書情報から取得されることにしてもよい。また、化合物の化学式は、例えば、既知の示性式に部品化ルールを適用して部品化したものであってもよい。
図1の例では、化合物の物質名「1,3−ブタジエン」と示性式「CHCHCHCH2」とが取得された場合を想定する。ただし、ここでは、示性式「CHCHCHCH2」は、示性式「CH2CHCHCH2」から水素「H」を1つ引き抜いて部品化されているものとする。
(2)生成装置101は、化合物の物質名の命名規則に基づいて、化合物に含まれる多重結合の数と、多重結合によって単結合のときよりも多く使われる価数の数とを特定する。ここで、多重結合の数とは、化合物に含まれる二重結合や三重結合の数である。また、多く使われる価数の数とは、化合物の骨格を形成する元素(例えば、炭素)が、他の元素(例えば、炭素)と結合する場合に、単結合のときよりも余計に使う価数の数である。例えば、二重結合であれば、多く使われる価数の数は「1」である。三重結合であれば、多く使われる価数の数は「2」である。
具体的には、例えば、生成装置101は、化合物の物質名に含まれる倍数接頭辞に基づいて、化合物に含まれる多重結合の数を特定する。上述したように、倍数接頭辞は、二重結合や三重結合の数をあらわす接頭辞である。倍数接頭辞としては、例えば、2をあらわす「ジ」、「ビス」、3をあらわす「トリ」、「トリス」、4をあらわす「テトラ」、5をあらわす「ペンタ」などがある。
また、生成装置101は、例えば、化合物の物質名に含まれる多重度をあらわす文字表現に基づいて、多重結合によって単結合のときよりも多く使われる価数の数を特定する。多重度をあらわす文字表現としては、例えば、二重結合があることをあらわす「〜エン」、「〜レン」や、三重結合があることをあらわす「〜イン」、「〜チン」や、環構造をあらわす「シクロ」、「ビシクロ」、「スピロ」などがある。
図1の例では、化合物の物質名「1,3−ブタジエン」に倍数接頭辞「ジ」が含まれる。このため、化合物に含まれる多重結合の数「2」が特定される。また、化合物の物質名「1,3−ブタジエン」に、二重結合があることをあらわす「〜エン」が含まれる。このため、多重結合によって単結合のときよりも多く使われる価数の数「1」が特定される。
(3)生成装置101は、化合物の化学式に基づいて、化合物の基本形に対する、化合物の骨格を形成する元素に結合される他の元素の数の不足分を算出する。ここで、化合物の基本形とは、単結合のみで構成される化合物をあらわす。化合物の基本形は、化合物が単結合のみで構成される場合の化学式(分子式)によって表現される(価数の余り:0)。例えば、化合物が炭化水素の場合、基本形は「CnH2n+2」となる。この場合、化合物の骨格を形成する元素は、炭素である。また、炭素に結合される他の元素は、水素である。
図1の例では、基本形「CnH2n+2」における水素の数は、「10(=2×4+2)」である。これに対して、示性式「CHCHCHCH2」における水素の数は、「5」となる。したがって、基本形「CnH2n+2」に対する水素の数の不足分は「5(=10−5)」となる。
なお、上記(2)および(3)の処理は、逆の順序『(3)⇒(2)』で実行されてもよく、また、並行して実行されることにしてもよい。さらに、化合物の基本形に対する水素の数の不足分を示す情報は、例えば、化合物の化学式に付加されていてもよい。すなわち、基本形に対する水素の数の不足分は、あらかじめ求められていてもよい。この場合、上記(3)の処理は省略することができる。
(4)生成装置101は、特定した多重結合の数と、多く使われる価数の数と、算出した他の元素の数の不足分とに基づいて、化合物の価数の余りを算出する。ここで、化合物の価数の余りとは、化合物の骨格を形成する元素の価数(結合の手の数)の余り、例えば、炭素の価数の余りである。
上述したように、1つの二重結合に対して、単結合のときよりも多く使われる1炭素当たりの価数の数は「1」である。また、1つの三重結合に対して、単結合のときよりも多く使われる1炭素当たりの価数の数は「2」である。このため、生成装置101は、例えば、算出した他の元素の数の不足分から価数使用数Xを減算することにより、化合物の価数の余りを算出することができる。
価数使用数Xは、化合物に含まれる多重結合によって多く使われる炭素の価数の総数に相当する。価数使用数Xは、例えば、「多重結合の数」と「多重結合によって単結合のときよりも多く使われる価数の数」と「多重結合に関わる炭素の数」とを乗算することにより求めることができる。なお、多重結合に関わる炭素の数は、固定値「2」である。
図1の例では、化合物に含まれる多重結合の数は「2」である。また、多重結合によって単結合のときよりも多く使われる炭素の価数の数は「1」である。このため、価数使用数Xは「4(=2×1×2)」となる。また、基本形「CnH2n+2」に対する水素の数の不足分は「5」である。このため、化合物の価数の余りは、「1(=5−4)」となる。
このように、生成装置101によれば、化合物の物質名の命名規則を利用して、化合物の価数の余りを算出することができる。これにより、化合物の示性式を合成して別の化合物の示性式を生成する際に、価数の余りを考慮して水素の数を調整可能となる。この結果、1つの部分構造に複数の部分構造が結合される化合物や、二重結合や三重結合などの多重結合を含む化合物の示性式を精度よく生成可能となる。
図1の例では、物質名「1,3−ブタジエン」の化合物の価数の余りは「1」である。したがって、この化合物を部分構造として別の化合物の示性式を生成する場合、結合される他の部分構造が1つであれば、水素の数を調整する必要がないことがわかる。一方、例えば、結合される他の部分構造が2つであれば、示性式「CHCHCHCH2」から水素を1つ引き抜く調整を行う必要があることがわかる。
(生成装置101のハードウェア構成例)
図2は、生成装置101のハードウェア構成例を示すブロック図である。図2において、生成装置101は、CPU(Central Processing Unit)201と、メモリ202と、ディスクドライブ203と、ディスク204と、I/F(Interface)205と、ディスプレイ206と、入力装置207と、を有する。また、各構成部はバス200によってそれぞれ接続される。
ここで、CPU201は、生成装置101の全体の制御を司る。メモリ202は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する記憶部である。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU201のワークエリアとして使用される。メモリ202に記憶されるプログラムは、CPU201にロードされることで、コーディングされている処理をCPU201に実行させる。
ディスクドライブ203は、CPU201の制御に従ってディスク204に対するデータのリード/ライトを制御する。ディスク204は、ディスクドライブ203の制御で書き込まれたデータを記憶する。ディスク204としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
I/F205は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部装置に接続される。そして、I/F205は、ネットワーク210と自装置内部とのインターフェースを司り、外部装置からのデータの入出力を制御する。
ディスプレイ206は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ206としては、例えば、液晶ディスプレイ、CRT(Cathode Ray Tube)などを採用することができる。
入力装置207は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置207は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
なお、生成装置101は、上述した構成部のうち、例えば、ディスクドライブ203、ディスク204、ディスプレイ206、入力装置207などを有さないことにしてもよい。また、生成装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、スキャナ、プリンタなどを有することにしてもよい。
(部分示性式辞書300の記憶内容)
つぎに、生成装置101が有する部分示性式辞書300の記憶内容について説明する。部分示性式辞書300は、例えば、図2に示したメモリ202、ディスク204などの記憶装置に記憶される。
図3は、部分示性式辞書300の記憶内容の一例を示す説明図である。図3において、部分示性式辞書300は、部分名、部分示性式および価数の余りのフィールドを有し、各フィールドに情報を設定することで、部分示性式情報(例えば、部分示性式情報300−1,300−2)をレコードとして記憶する。
ここで、部分名は、部分構造の物質名を示す。部分構造とは、化合物の一部または全部となる化学物質である。部分示性式は、部分名の部分構造の示性式を示す。価数の余りは、部分構造の中で余っている価数の数を示す。より詳細に説明すると、価数の余りは、例えば、部分構造における炭素の価数(結合の手の数)の余りである。
例えば、部分示性式情報300−1は、部分名「メタン」の部分構造の部分示性式「CH2」および価数の余り「2」を示す。
なお、部分名と部分示性式との組は、例えば、特許文献や学術論文などの文書情報から取得される。また、部分示性式は、例えば、既知の示性式に部品化ルールを適用して部品化したものであってもよい。この場合、部品化ルールが適用された適用後の物質名を「部分名」という。既知の示性式に部品化ルールを適用して部分示性式を生成する技術については、例えば、特開2013−101508号公報を参照することができる。
(分子式基本形辞書400の記憶内容)
つぎに、生成装置101が有する分子式基本形辞書400の記憶内容について説明する。分子式基本形辞書400は、例えば、メモリ202、ディスク204などの記憶装置に記憶される。
図4は、分子式基本形辞書400の記憶内容の一例を示す説明図である。図4において、分子式基本形辞書400は、分子式の基本形を示す情報である。分子式の基本形は、単結合のみで構成される化合物の分子式である。
例えば、「CnH2n+2」は、炭化水素の基本形である(n:1以上の自然数)。また、「Cn[H,F,Cl,Br]2n+2」は、原子価が「1」である元素(水素、フッ素、塩素、臭素)が炭素に結合する化合物の基本形である。また、「CnH2n+2Om」は、酸素を含む化合物の基本形である(m:1以上の自然数)。
(倍数接頭辞係数辞書500の記憶内容)
つぎに、生成装置101が有する倍数接頭辞係数辞書500の記憶内容について説明する。倍数接頭辞係数辞書500は、例えば、メモリ202、ディスク204などの記憶装置に記憶される。
図5は、倍数接頭辞係数辞書500の記憶内容の一例を示す説明図である。図5において、倍数接頭辞係数辞書500は、倍数接頭辞と倍数接頭辞係数との対応関係を示す情報である。ここで、倍数接頭辞は、二重結合や三重結合の数をあらわす接頭辞である。倍数接頭辞係数は、倍数接頭辞があらわす二重結合や三重結合の数を示す。
例えば、倍数接頭辞「ジ」は、2をあらわす。このため、倍数接頭辞係数は「2」となる。また、倍数接頭辞「トリ」は、3をあらわす。このため、倍数接頭辞係数は「3」となる。また、倍数接頭辞「テトラ」は、4をあらわす。このため、倍数接頭辞係数は「4」となる。
(文字表現係数辞書600の記憶内容)
つぎに、生成装置101が有する文字表現係数辞書600の記憶内容について説明する。文字表現係数辞書600は、例えば、メモリ202、ディスク204などの記憶装置に記憶される。
図6は、文字表現係数辞書600の記憶内容の一例を示す説明図である。図6において、文字表現係数辞書600は、文字表現と文字表現係数との対応関係を示す情報である。ここで、文字表現は、物質名の語尾に付けられる文字表現であり、単結合や多重結合の存在をあらわすものである。文字表現係数は、文字表現があらわす単結合や多重結合によって、単結合のときよりも多く使われる炭素の価数の数を示す。
例えば、文字表現「アン」は、単結合(一重結合)があることをあらわす。このため、文字表現係数は「0」となる。また、文字表現「エン」は、二重結合があることをあらわす。このため、文字表現係数は「1」となる。また、文字表現「イン」は、三重結合があることをあらわす。このため、文字表現係数は「2」となる。また、文字表現「アルデヒド」は、二重結合があることをあらわす。このため、文字表現係数は「1」となる。文字表現として、「シクロ」、「ビシクロ」、「スピロ」などの環構造をあらわす接頭語が含まれていてもよい。
なお、ここでは、「日本語」の文字表現を例に挙げて説明したが、これに限らない。例えば、同じような命名規則を使う言語であれば、他の言語の文字表現を用いることにしてもよい。図5に示した倍数接頭辞についても同様である。例えば、英語や中国語では、単結合や多重結合の存在をあらわす文字表現は、表1のようになる。
(生成装置101の機能的構成例)
図7は、生成装置101の機能的構成例を示すブロック図である。図7において、生成装置101は、取得部701と、特定部702と、算出部703と、生成部704と、出力部705と、を含む構成である。取得部701〜出力部705は制御部となる機能であり、具体的には、例えば、図2に示したメモリ202、ディスク204などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F205により、その機能を実現する。各機能部の処理結果は、例えば、メモリ202、ディスク204などの記憶装置に記憶される。
取得部701は、化合物の物質名と化学式とを取得する。ここで、化合物の物質名は、命名規則に沿って付けられる名称である。命名規則は、例えば、IUPAC(International Union of Pure and Applied Chemistry)によって定められる。化学式は、例えば、化合物の示性式である。化合物は、化合物の部分構造であってもよい。
具体的には、例えば、取得部701は、化合物(部分構造)の部分名と部分示性式とを取得する。部分名と部分示性式との組は、例えば、特許文献や学術論文などの文書情報から取得されることにしてもよい。また、部分示性式は、例えば、既知の示性式に部品化ルールを適用して部品化したものであってもよい。
また、取得部701は、図2に示した入力装置207を用いたユーザの操作入力により、部分名と部分示性式との組を取得することにしてもよい。また、取得部701は、I/F205によって外部装置から受信することにより、部分名と部分示性式との組を取得することにしてもよい。
特定部702は、化合物の物質名の命名規則に基づいて、化合物に含まれる多重結合の数を特定する。具体的には、例えば、特定部702は、図5に示した倍数接頭辞係数辞書500を参照して、取得された部分名に含まれる倍数接頭辞に対応する倍数接頭辞係数を特定する。
一例として、部品名を「ブタジエン」とする。この場合、特定部702は、倍数接頭辞係数辞書500を参照して、部分名「ブタジエン」から倍数接頭辞「ジ」を抽出する。つぎに、特定部702は、倍数接頭辞係数辞書500を参照して、抽出した倍数接頭辞「ジ」に対応する倍数接頭辞係数「2」を特定する。これにより、部品名「ブタジエン」の部分構造に含まれる多重結合の数「2」を特定することができる。
また、特定部702は、化合物の物質名の命名規則に基づいて、化合物に含まれる多重結合によって単結合のときよりも多く使われる価数の数を特定する。具体的には、例えば、特定部702は、図6に示した文字表現係数辞書600を参照して、取得された部分名に含まれる多重度をあらわす文字表現に対応する文字表現係数を特定する。
一例として、部品名を「ブタジエン」とする。この場合、特定部702は、文字表現係数辞書600を参照して、部分名「ブタジエン」から文字表現「エン」を抽出する。つぎに、特定部702は、文字表現係数辞書600を参照して、抽出した文字表現「エン」に対応する文字表現係数「1」を特定する。これにより、部品名「ブタジエン」の部分構造に含まれる多重結合によって単結合のときよりも多く使われる1炭素当たりの価数の数「1」を特定することができる。
また、特定部702は、取得された化合物の化学式に基づいて、化合物の基本形に対する、化合物の骨格を形成する元素に結合される他の元素の数の不足分を算出する。ここで、化合物の骨格を形成する元素は、例えば、炭素である。また、炭素に結合される他の元素は、例えば、水素、フッ素、塩素、臭素などである。
具体的には、例えば、特定部702は、取得された部分示性式から分子式を生成する。つぎに、特定部702は、図4に示した分子式基本形辞書400を参照して、生成した分子式と元素の構成が一致する基本形を検索する。そして、特定部702は、検索した基本形に対する部分示性式の、炭素に結合される他の元素の数の不足分を算出する。
一例として、部分示性式を「CH2CHCHC」とする。この場合、特定部702は、部分示性式「CH2CHCHC」から分子式「C4H4」を生成する。つぎに、特定部702は、分子式基本形辞書400を参照して、生成した分子式「C4H4」と元素の構成が一致する基本形「CnH2n+2」を検索する。ここで、部分示性式「CH2CHCHC」に含まれる炭素の数は「4」である(n=4)。このため、基本形「CnH2n+2」における水素の数は「10(=2×4+2)」となる。また、部分示性式「CH2CHCHC」における水素の数は「4」である。したがって、基本形「CnH2n+2」に対する部分示性式「CH2CHCHC」の水素の数の不足分は「6(=10−4)」となる。
算出部703は、特定された多重結合の数と、多重結合によって単結合のときよりも多く使われる価数の数と、算出された他の元素の数の不足分とに基づいて、化合物の価数の余りを算出する。ここで、化合物の価数の余りとは、化合物の骨格を形成する元素の価数(結合の手の数)の余りである。
具体的には、例えば、算出部703は、算出された他の元素の数の不足分から価数使用数Xを減算することにより、化合物の価数の余りを算出することができる。価数使用数Xは、多重結合によって単結合のときよりも多く使われる炭素の価数の総数に相当する。価数使用数Xは、例えば、下記式(1)を用いて算出することができる。なお、下記式(1)に含まれる係数「2」は、多重結合に関わる元素(例えば、炭素)の数である。
X=倍数接頭辞係数×文字表現係数×2 ・・・(1)
一例として、化合物を部分名「ブタジエン」、部分示性式「CH2CHCHC」の部分構造とする。この場合、倍数接頭辞係数が「2」であり、文字表現係数が「1」のため、価数使用数Xは「4」となる。また、基本形「C4H10」に対する部分示性式「CH2CHCHC」の水素の数の不足分は「6」である。したがって、この部分構造(化合物)の価数の余りは、「2(=6−4)」となる。
なお、ここでは、化合物の一例として、炭化水素を例に挙げて説明したが、炭素に結合する水素を、フッ素、塩素、臭素等に置き換えた化合物であってもよい。例えば、ブタジエンの水素をフッ素に置き換えたものとして「フルオロブタジエン」がある。この場合、基本形として、例えば、「Cn[H,F,Cl,Br]2n+2」」が用いられる。
また、エチルアルデヒド、クロロアセトアルデヒドなどの酸素を含む化合物であってもよい。この場合、基本形として、例えば、「CnH2n+2Om」が用いられる。一例として、化合物を部分名「エチルアルデヒド」、部分示性式「CH3CHO」の部分構造とする。この場合、基本形が「C2H6O」、倍数接頭辞係数が「1」、文字表現係数が「1」となり、価数の余りは「0(=2−1×1×2)」となる。
また、化合物を部分名「クロロアセトアルデヒド」、部分示性式「CH2ClCHO」の部分構造とする。この場合、基本形が「C2[HCl]6O」、倍数接頭辞係数が「1」、文字表現係数が「1」となり、価数の余りは「0(=2−1×1×2)」となる。また、化合物を部分名「1,3−プロパンジアルデヒド」、部分示性式「CHOCH2CHO」の部分構造とする。この場合、基本形が「C3H8O2」、倍数接頭辞係数が「2」、文字表現係数が「1」となり、価数の余りは「0(=4−2×1×2)」となる。
出力部705は、算出された化合物の価数の余りを、化合物の物質名と示性式と対応付けて出力する。出力部705の出力形式としては、例えば、メモリ202、ディスク204などの記憶装置への記憶、I/F205による外部装置への送信などがある。
具体的には、例えば、出力部705は、算出された化合物(部分構造)の価数の余りを、部分名と部分示性式と対応付けて、図3に示した部分示性式辞書300に記録することにしてもよい。これにより、化合物(部分構造)の部分名と部分示性式との組に対応付けて、その化合物の価数の余りをデータベース化することができる。
なお、ここでは、化合物の価数の余りを、部分名と部分示性式と対応付けて記録することにしたが、これに限らない。例えば、出力部705は、部分示性式から分子式を生成して、化合物の価数の余りを、部分名と分子式と対応付けて記録することにしてもよい。
また、取得部701は、示性式の生成対象となる化合物の物質名を取得する。具体的には、例えば、取得部701は、入力装置207を用いたユーザの操作入力により、示性式の生成対象となる化合物の物質名を取得する。また、取得部701は、外部装置から受信することにより、示性式の生成対象となる化合物の物質名を取得することにしてもよい。
以下の説明では、示性式の生成対象となる化合物を「対象化合物」と表記し、対象化合物の物質名を「化合物名」と表記する場合がある。
生成部704は、対象化合物の化合物名に基づいて、対象化合物の示性式を生成する。具体的には、例えば、生成部704は、対象化合物の化合物名から、対象化合物に含まれる部分構造の部分名を検出する。この際、生成部704は、例えば、対象化合物の化合物名を階層的に解析して、部分構造の部分名を検出することにしてもよい。
なお、化合物名を階層的に解析して得られる部分構造の部分名の検出例については、図9を用いて後述する。
つぎに、生成部704は、検出した各部分構造の部分名に対応する部分示性式および価数の余りを取得する。具体的には、例えば、生成部704は、部分示性式辞書300から、検出した各部分構造の部分名に対応する部分示性式情報を抽出する。これにより、対象化合物の各部分構造の部分示性式および価数の余りを特定することができる。
そして、生成部704は、抽出した各部分構造の部分名に対応する部分示性式および価数の余りに基づいて、対象化合物の示性式を生成する。より詳細に説明すると、生成部704は、例えば、各部分構造の部分示性式を、各部分構造につながれる他の部分構造の数と各部分構造の価数の余りとが一致するように補正する。
例えば、ある部分構造の価数の余りが、その部分構造につながれる他の部分構造の数よりも多い場合、他の部分構造と結合しても、その部分構造の価数が余ることになる。この場合、生成部704は、例えば、部分構造の部分示性式に水素(あるいは、フッ素、塩素、臭素)を加えることにより、部分示性式を補正する。
この際、部分示性式内のいずれの炭素に水素等を加えるのかは任意に設定可能である。例えば、部分示性式内の炭素のうち、水素の結合数が最小の炭素に加えることにしてもよく、また、最も左あるいは右に位置する炭素に加えることにしてもよい。
また、例えば、ある部分構造の価数の余りが、その部分構造につながれる他の部分構造の数よりも少ない場合、他の部分構造と結合するにあたり、その部分構造の価数が不足することになる。この場合、生成部704は、例えば、部分構造の部分示性式から水素(あるいは、フッ素、塩素、臭素)を抜くことにより、部分示性式を補正する。
この際、部分示性式内のいずれの炭素から水素等を抜くのかは任意に設定可能である。例えば、部分示性式内の炭素のうち、水素の結合数が最大の炭素から抜くことにしてもよく、また、最も左あるいは右に位置する炭素から抜くことにしてもよい。
そして、生成部704は、補正した各部分構造の部分示性式を連結して対象化合物の示性式を生成する。具体的には、例えば、生成部704は、対象化合物の化合物名にしたがって、補正した部分示性式を並べて連結することにより、対象化合物の示性式を生成する。なお、対象化合物の示性式の生成例については、図8〜図10を用いて後述する。
また、出力部705は、生成された対象化合物の示性式と化合物名とを対応付けて出力する。出力部705の出力形式としては、例えば、メモリ202、ディスク204などの記憶装置への記憶、I/F205による外部装置への送信、図2に示したディスプレイ206への表示、不図示のプリンタへの印刷出力などがある。
また、出力部705は、例えば、生成された対象化合物の示性式から分子式を生成して、対象化合物の分子式と化合物名とを対応付けて出力することにしてもよい。
(対象化合物の示性式の生成例)
つぎに、図8を用いて、対象化合物の示性式の第1の生成例について説明する。
図8は、対象化合物の示性式の第1の生成例を示す説明図である。図8において、対象化合物の化合物名は「1−メトキシ−1,3−ブタジエン」である。なお、図8では、説明を分かりやすくするために、対象化合物や各部分構造の構造図(構造式)を合わせて表示している。
まず、生成部704は、対象化合物の化合物名「1−メトキシ−1,3−ブタジエン」から、部分名「メトキシ基(単に「メトキシ」でもよい)」と部分名「ブタジエン」とを検出する。つぎに、生成部704は、部分示性式辞書300から、検出した各部分構造の部分名に対応する部分示性式情報を抽出する。
ここでは、部分名「メトキシ基」の部分示性式「CH3O」および価数の余り「1」を示す部分示性式情報と、部分名「ブタジエン」の部分示性式「CCHCHCH2」および価数の余り「2」を示す部分示性式情報と、が抽出された場合を想定する。
ここで、部分名「メトキシ基」の部分構造につながれる他の部分構造の数は「1」である。また、部分名「メトキシ基」の部分構造の価数の余りは「1」である。すなわち、部分名「メトキシ基」の部分構造について、他の部分構造の数「1」と価数の余り「1」とが一致する。このため、生成部704は、部分名「メトキシ基」の部分示性式「CH3O」を補正しない。
一方、部分名「ブタジエン」の部分構造につながれる他の部分構造の数は「1」である。また、部分名「ブタジエン」の部分構造の価数の余りは「2」である。すなわち、部分名「メトキシ基」の部分構造について、他の部分構造の数「1」が、価数の余り「2」より少ない。
このため、生成部704は、部分名「ブタジエン」の部分示性式「CCHCHCH2」を補正する。具体的には、例えば、生成部704は、部分示性式「CCHCHCH2」内の炭素のうち、水素の結合数が最小の炭素に水素を1つ加える補正を行う。この結果、部分名「ブタジエン」の補正後の部分示性式は、「CHCHCHCH2」となる。
そして、生成部704は、対象化合物の化合物名「1−メトキシ−1,3−ブタジエン」にしたがって、部分示性式「CH3O」と、補正後の部分示性式「CHCHCHCH2」とを連結することにより、対象化合物の示性式を生成する。ここでは、示性式「CH3OCHCHCHCH2」が生成される。
つぎに、図9および図10を用いて、対象化合物の示性式の第2の生成例について説明する。まず、図9を用いて、化合物名を階層的に解析して検出される部分構造の部分名の検出例について説明する。
図9は、部分構造の部分名の検出例を示す説明図である。図9において、対象化合物の化合物名は「2,2−ビス(4−ヒドロキシフェニル)プロパン」である。この場合、生成部704は、対象化合物の化合物名「2,2−ビス(4−ヒドロキシフェニル)プロパン」を階層構造に展開して、核になる部分構造(母核)と、中間になる部分構造と、先端の部分構造と、に分類する。
例えば、「ビス」は、直後の()の中の「4−ヒドロキシフェニル」が2つあることをあらわす倍数接頭辞である。この場合、生成部704は、「プロパン」から2つの「4−ヒドロキシフェニル」を展開する。つぎに、生成部704は、2つの「4−ヒドロキシフェニル」それぞれを「フェニル」と「ヒドロキシ」とに展開する。
この結果、化合物名「2,2−ビス(4−ヒドロキシフェニル)プロパン」は、核になる部分構造「プロパン」と、中間になる部分構造「フェニル」と、先端の部分構造「ヒドロキシ」と、に分類される。このように、化合物名を階層構造に展開することにより、各部分構造に、他の部分構造がいくつつながれるのかを判断することができる。
例えば、核になる部分構造「プロパン」については、直下につながる部分構造の数「2」が、他の部分構造の数となる。また、中間になる部分構造「フェニル」については、直下につながる部分構造の数「1」に1(母核につながる分)を足した数「2」が、他の部分構造の数となる。また、先端の部分構造「ヒドロキシ」については、母核側につながる部分構造の数「1」が、他の部分構造の数となる。
なお、化合物の名称を階層構造に展開する技術としては、例えば、特開2013−101510号公報を参照することができる。
図10は、対象化合物の示性式の第2の生成例を示す説明図である。図10において、対象化合物の化合物名「2,2−ビス(4−ヒドロキシフェニル)プロパン」から検出された部分名「ヒドロキシ」と部分名「フェニル」と部分名「プロパン」とが示されている。なお、図10では、説明を分かりやすくするために、対象化合物や各部分構造の構造図(構造式)を合わせて表示している。
生成部704は、部分示性式辞書300から、検出した各部分構造の部分名に対応する部分示性式情報を抽出する。ここでは、部分名「ヒドロキシ」の部分示性式「OH」および価数の余り「1」を示す部分示性式情報が抽出された場合を想定する。また、部分名「フェニル」の部分示性式「C6H5」および価数の余り「1」を示す部分示性式情報が抽出された場合を想定する。また、部分名「プロパン」の部分示性式「CH3CHCH3」および価数の余り「1」を示す部分示性式情報が抽出された場合を想定する。
ここで、部分名「ヒドロキシ」の部分構造につながれる他の部分構造の数は「1」である。また、部分名「ヒドロキシ」の部分構造の余っている価数は「1」である。このため、生成部704は、部分名「ヒドロキシ」の部分示性式「OH」を補正しない。
また、部分名「フェニル」の部分構造につながれる他の部分構造の数は「2」である。また、部分名「フェニル」の部分構造の価数の余りは「1」である。すなわち、部分名「フェニル」の部分構造について、他の部分構造の数「2」が、価数の余り「1」より多い。このため、生成部704は、部分名「フェニル」の部分示性式「C6H5」を補正する。具体的には、例えば、生成部704は、部分示性式「C6H5」から水素を1つ抜く補正を行う。この結果、部分名「フェニル」の補正後の部分示性式は「C6H4」となる。
また、部分名「プロパン」の部分構造につながれる他の部分構造の数は「2」である。また、部分名「プロパン」の部分構造の価数の余りは「1」である。すなわち、部分名「プロパン」の部分構造について、他の部分構造の数「2」が、価数の余り「1」より多い。このため、生成部704は、部分名「プロパン」の部分示性式「CH3CHCH3」を補正する。具体的には、例えば、生成部704は、部分示性式「CH3CHCH3」内の炭素のうち、真ん中の位置の炭素から水素を1つ抜く補正を行う。この結果、部分名「プロパン」の補正後の部分示性式は「CH3CCH3」となる。
そして、生成部704は、対象化合物の化合物名「2,2−ビス(4−ヒドロキシフェニル)プロパン」にしたがって、2つの部分示性式「OH」と、2つの補正後の部分示性式「C6H4」と、補正後の部分示性式「CH3CCH3」とを連結することにより、対象化合物の示性式を生成する。ここでは、示性式「OHC6H4OHC6H4CH3CCH3」が生成される。具体的には、ヒドロキシフェニルの部分示性式を2回繰り返した後に、プロパンの部分示性式が連結されている。
(生成装置101の各種処理手順)
つぎに、生成装置101の各種処理手順について説明する。まず、図11を用いて、生成装置101のデータベース生成処理手順について説明する。
図11は、生成装置101のデータベース生成処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、生成装置101は、化合物(部分構造)の部分名と部分示性式との組を取得する(ステップS1101)。そして、生成装置101は、取得した部分示性式から分子式を生成する(ステップS1102)。
つぎに、生成装置101は、分子式基本形辞書400を参照して、生成した分子式と元素の構成が一致する基本形を検索する(ステップS1103)。そして、生成装置101は、検索した基本形に対する、部分示性式の水素(フッ素、塩素、臭素)の数の不足分を算出する(ステップS1104)。
つぎに、生成装置101は、算出した水素(フッ素、塩素、臭素)の数の不足分が「0」であるか否かを判断する(ステップS1105)。ここで、不足分が「0」の場合(ステップS1105:Yes)、生成装置101は、化合物の価数の余りを「0」として(ステップS1106)、ステップS1112に移行する。
一方、不足分が「0」ではない場合(ステップS1105:No)、生成装置101は、倍数接頭辞係数辞書500を参照して、取得した部分名から倍数接頭辞を抽出する(ステップS1107)。そして、生成装置101は、倍数接頭辞係数辞書500を参照して、抽出した倍数接頭辞に対応する倍数接頭辞係数を特定する(ステップS1108)。
つぎに、生成装置101は、文字表現係数辞書600を参照して、取得した部分名から多重度をあらわす文字表現を抽出する(ステップS1109)。そして、生成装置101は、文字表現係数辞書600を参照して、抽出した文字表現に対応する文字表現係数を特定する(ステップS1110)。
つぎに、生成装置101は、算出した水素(フッ素、塩素、臭素)の数の不足分と、倍数接頭辞係数と、文字表現係数とに基づいて、化合物の価数の余りを算出する(ステップS1111)。そして、生成装置101は、取得した部分名と部分示性式との組に対応付けて、化合物の価数の余りを部分示性式辞書300に記録して(ステップS1112)、本フローチャートによる一連の処理を終了する。
これにより、化合物(部分構造)の部分名と部分示性式との組に対応付けて、その化合物の価数の余りをデータベース化することができる。
なお、ステップS1107において、部分名から倍数接頭辞が抽出されなかった場合には、ステップS1108において、生成装置101は、倍数接頭辞係数を「1」とすることにしてもよい。また、ステップS1109において、部分名から多重度をあらわす文字表現が抽出されなかった場合には、ステップS1110において、生成装置101は、文字表現係数を「0」とすることにしてもよい。また、ステップS1103において、分子式と元素の構成が一致する基本形が検索されなかった場合には、生成装置101は、エラーを出力することにしてもよい。
つぎに、図12を用いて、生成装置101の示性式生成処理手順について説明する。
図12は、生成装置101の示性式生成処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、生成装置101は、対象化合物の化合物名を取得する(ステップS1201)。そして、生成装置101は、取得した化合物名を階層的に解析して、部分構造の部分名を検出する(ステップS1202)。
つぎに、生成装置101は、検出した部分構造の部分名のうち、化合物名において最初に出現する部分名を取得する(ステップS1203)。そして、生成装置101は、部分示性式辞書300から、取得した部分名に対応する部分示性式情報を抽出する(ステップS1204)。
つぎに、生成装置101は、取得した部分名の部分構造につながる他の部分構造の数を特定する(ステップS1205)。そして、生成装置101は、抽出した部分示性式情報に基づいて、部分示性式補正処理を実行する(ステップS1206)。部分示性式補正処理の具体的な処理手順については、図13を用いて後述する。
つぎに、生成装置101は、取得した部分名の部分示性式をメモリ202上に書き出す(ステップS1207)。この際、部分示性式補正処理において部分示性式が補正されている場合は、生成装置101は、補正後の部分示性式を書き出す。また、メモリ202上に既に書き出された部分示性式がある場合は、その部分示性式の後ろに、取得した部分名の部分示性式を連結する。
そして、生成装置101は、検出したすべての部分名を処理したか否かを判断する(ステップS1208)。ここで、未処理の部分名がある場合(ステップS1208:No)、生成装置101は、化合物名において次に出現する部分名を取得して(ステップS1209)、ステップS1204に戻る。
一方、すべての部分名を処理した場合(ステップS1208:Yes)、生成装置101は、メモリ202上に書き出された部分示性式群を示性式として、対象化合物の化合物名と示性式との組を出力して(ステップS1210)、本フローチャートによる一連の処理を終了する。
これにより、対象化合物の化合物名を階層構造のかたちで展開して部分構造を特定し、部分構造ごとの価数の余りを考慮して、対象化合物の示性式を生成することができる。
つぎに、図13を用いて、図12に示したステップS1206の部分示性式補正処理の具体的な処理手順について説明する。
図13は、部分示性式補正処理の具体的処理手順の一例を示すフローチャートである。図13のフローチャートにおいて、まず、生成装置101は、ステップS1205において特定した他の部分構造の数より、ステップS1204において抽出した部分示性式情報が示す価数の余りが少ないか否かを判断する(ステップS1301)。
ここで、他の部分構造の数より価数の余りが少なくない場合(ステップS1301:No)、生成装置101は、他の部分構造の数より価数の余りが多いか否かを判断する(ステップS1302)。ここで、他の部分構造の数より価数の余りが多くない場合(ステップS1302:No)、生成装置101は、ステップS1305に移行する。
一方、他の部分構造の数より価数の余りが多い場合(ステップS1302:Yes)、生成装置101は、抽出した部分示性式情報が示す部分示性式内のいずれかの炭素に水素(フッ素、塩素、臭素)を1つ加えて(ステップS1303)、ステップS1305に移行する。なお、部分構造の部分示性式に水素(フッ素、塩素、臭素)が1つ加えられると、部分構造の価数の余りはデクリメントされる。
また、ステップS1301において、他の部分構造の数より価数の余りが少ない場合(ステップS1301:Yes)、生成装置101は、部分示性式内のいずれかの炭素から水素(フッ素、塩素、臭素)を1つ抜く(ステップS1304)。なお、部分構造の部分示性式から水素(フッ素、塩素、臭素)が1つ抜かれると、部分構造の価数の余りはインクリメントされる。
そして、生成装置101は、他の部分構造の数と価数の余りが一致するか否かを判断する(ステップS1305)。ここで、他の部分構造の数と価数の余りが不一致の場合(ステップS1305:No)、生成装置101は、ステップS1301に戻る。一方、他の部分構造の数と価数の余りが一致する場合(ステップS1305:Yes)、生成装置101は、部分示性式補正処理を呼び出したステップに戻る。
これにより、部分構造につながる他の部分構造の数に合わせて、部分構造の部分示性式内の水素(フッ素、塩素、臭素)の数を調整することができる。
以上説明したように、実施の形態にかかる生成装置101によれば、化合物(部分構造)の部分名と部分示性式とを取得し、取得した化合物の部分名の命名規則に基づいて、化合物に含まれる多重結合の数を特定することができる。具体的には、例えば、生成装置101は、倍数接頭辞係数辞書500を参照して、部分名に含まれる倍数接頭辞から多重結合の数を特定することができる。これにより、化合物(部分構造)の部分名から、その化合物にいくつの多重結合(二重結合または三重結合)が含まれているのかを特定することができる。
また、生成装置101によれば、取得した化合物の部分名の命名規則に基づいて、化合物に含まれる多重結合によって単結合のときよりも多く使われる価数の数を特定することができる。具体的には、例えば、生成装置101は、文字表現係数辞書600を参照して、部分名に含まれる多重度をあらわす文字表現から、多重結合によって単結合のときよりも多く使われる価数の数を特定することができる。これにより、化合物(部分構造)の部分名から、その化合物に含まれる多重結合(二重結合または三重結合)によって余計に使われる価数の数を特定することができる。
また、生成装置101によれば、取得した化合物の部分示性式に基づいて、化合物の基本形に対する、化合物の骨格を形成する炭素に結合される水素(または、フッ素、塩素、臭素)の数の不足分を算出することができる。これにより、化合物が単結合のみで構成される場合に比べて、いくつの水素(または、フッ素、塩素、臭素)が不足しているのかを特定することができる。
また、生成装置101によれば、特定した多重結合の数(倍数接頭辞係数)と、多重結合により多く使われる価数の数(文字表現係数)と、算出した水素(または、フッ素、塩素、臭素)の数の不足分とに基づいて、化合物の価数の余りを算出することができる。これにより、化合物(部分構造)の部分示性式を合成して別の化合物の示性式を生成する際に、価数の余りを考慮して水素等の数を調整可能となる。
また、生成装置101によれば、算出した価数の余りを、化合物の部分名と部分示性式と対応付けて、部分示性式辞書300に記録することができる。これにより、化合物(部分構造)の部分名と部分示性式との組に対応付けて、その化合物の価数の余りをデータベース化することができる。
また、生成装置101によれば、示性式の生成対象となる対象化合物の化合物名を取得し、取得した化合物名に基づいて、対象化合物の各部分構造の部分名に対応する部分示性式情報を部分示性式辞書300から抽出することができる。そして、生成装置101によれば、抽出した各部分構造の部分名に対応する部分示性式情報に基づいて、対象化合物の示性式を生成することができる。これにより、対象化合物の示性式を生成する際に、各部分構造の価数の余りを考慮することができ、二重結合や三重結合などの多重結合を含む対象化合物の示性式を精度よく生成することができる。
また、生成装置101によれば、各部分構造につながれる他の部分構造の数と各部分構造の価数の余りとが一致するように、各部分構造の部分示性式に対して、水素(または、、フッ素、塩素、臭素)を加える、または、水素を抜く補正を行うことができる。そして、生成装置101によれば、補正した各部分構造の部分示性式を連結して、対象化合物の示性式を生成することができる。これにより、対象化合物の示性式を生成する際に、各部分構造の価数の余りを考慮して、各部分構造の部分示性式内の水素等の数を調整することができる。
また、生成装置101によれば、生成した対象化合物の示性式と、対象化合物の化合物名とを対応付けて出力することができる。これにより、明示的に示性式が示されていない化合物についても示性式を得ることができ、特許文献などの文書情報を読む人の理解を助けることができるとともに、コンピュータによる化合物の分析に活用することができる。
なお、本実施の形態で説明した生成方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本生成プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本生成プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)化合物の物質名と化学式とを取得し、
前記化合物の物質名の命名規則に基づいて、前記化合物に含まれる多重結合の数と、前記多重結合によって単結合のときよりも多く使われる価数の数とを特定し、
特定した前記多重結合の数と前記価数の数と、前記化合物の基本形に対する、前記化合物の化学式に含まれる前記化合物の骨格を形成する元素に結合される他の元素の数の不足分と、に基づいて、前記化合物の価数の余りを算出する、
処理をコンピュータに実行させることを特徴とする生成プログラム。
(付記2)前記多重結合の数は、前記化合物の物質名に含まれる倍数接頭辞から特定される、ことを特徴とする付記1に記載の生成プログラム。
(付記3)前記価数の数は、前記化合物の物質名に含まれる多重度をあらわす文字表現から特定される、ことを特徴とする付記1または2に記載の生成プログラム。
(付記4)前記コンピュータに、
前記化合物の化学式に基づいて、前記化合物の基本形に対する、前記化合物の骨格を形成する元素に結合される他の元素の数の不足分を算出する、処理を実行させ、
前記価数の余りを算出する処理は、
特定した前記多重結合の数と前記価数の数と、算出した前記他の元素の数の不足分とに基づいて、前記化合物の価数の余りを算出する、ことを特徴とする付記1〜3のいずれか一つに記載の生成プログラム。
(付記5)前記化合物の化学式は、前記化合物の示性式であり、
算出した前記価数の余りを、前記化合物の物質名と示性式と対応付けて記憶部に記録する、処理を前記コンピュータに実行させることを特徴とする付記1〜4のいずれか一つに記載の生成プログラム。
(付記6)化学式の生成対象となる化合物の物質名を取得し、
取得した前記生成対象の化合物の物質名に基づいて、前記生成対象の化合物の各部分構造の部分名に対応する化学式および価数の余りを前記記憶部から抽出し、
抽出した前記各部分構造の部分名に対応する化学式および価数の余りに基づいて、前記生成対象の化合物の化学式を生成する、
処理を前記コンピュータに実行させることを特徴とする付記5に記載の生成プログラム。
(付記7)前記生成する処理は、
前記各部分構造の化学式を、前記各部分構造につながれる他の部分構造の数と前記各部分構造の価数の余りとが一致するように補正し、
補正した前記各部分構造の化学式を連結して前記生成対象の化合物の化学式を生成する、ことを特徴とする付記6に記載の生成プログラム。
(付記8)生成した前記生成対象の化合物の化学式と、前記生成対象の化合物の物質名とを対応付けて出力する、処理を前記コンピュータに実行させることを特徴とする付記7に記載の生成プログラム。
(付記9)前記補正する処理は、
前記各部分構造の化学式に前記他の元素を加える、または、前記各部分構造の化学式から前記他の元素を抜く、ことを特徴とする付記7または8に記載の生成プログラム。
(付記10)前記価数の余りは、さらに、前記多重結合に関わる、前記化合物の骨格を形成する元素の数に基づき算出される、ことを特徴とする付記1〜9のいずれか一つに記載の生成プログラム。
(付記11)化合物の物質名と化学式とを取得し、
前記化合物の物質名の命名規則に基づいて、前記化合物に含まれる多重結合の数と、前記多重結合によって単結合のときよりも多く使われる価数の数とを特定し、
特定した前記多重結合の数と前記価数の数と、前記化合物の基本形に対する、前記化合物の化学式に含まれる前記化合物の骨格を形成する元素に結合される他の元素の数の不足分と、に基づいて、前記化合物の価数の余りを算出する、
制御部を有することを特徴とする生成装置。
(付記12)化合物の物質名と化学式とを取得し、
前記化合物の物質名の命名規則に基づいて、前記化合物に含まれる多重結合の数と、前記多重結合によって単結合のときよりも多く使われる価数の数とを特定し、
特定した前記多重結合の数と前記価数の数と、前記化合物の基本形に対する、前記化合物の化学式に含まれる前記化合物の骨格を形成する元素に結合される他の元素の数の不足分と、に基づいて、前記化合物の価数の余りを算出する、
処理をコンピュータが実行することを特徴とする生成方法。