「上書き機能」を活用すれば、複雑な法令はもっとシンプルになるはず

先日、法令のオープンデータ化で官僚内閣制から議院内閣制へを書きましたが、今回はこれに関連して。

情報学と法学の融合については、「juris-informatics」という学問領域があります。

情報学と法学を融合する新しい学問領域、juris-informaticsの提案(PDF)
http://research.nii.ac.jp/~ksatoh/juris-informatics-papers/jssst2010-ksatoh.pdf

上記の提案では、「今まで自然言語により表現された知識と法学者の頭の中にある法律モデルを明示的に記号化して計算機で扱えるようにすることにより、情報学の知見を利用して法学のより高度な発展を目指す」とあります。

これに関連して、

数理法学 An Axiomatic Approach to Law | .Nat Zone
http://www.sakimura.org/2006/04/370/
できるだけ少ない仮定からスタートして、各種の法律や判例を導き出してみる。その上で、実際の法令や判例にあわないものは、果たしてその法令・判例が妥当であるかを吟味し、妥当であるならば公理・仮定を変更して再度トライするというようなサイクルを回してゆくと良いのではないかと。

法律を読む情報技術 | Take IT Easy
http://easy.mri.co.jp/20140304.html
マイナンバー法は税や社会保障など100以上の業務に影響が及ぶため、豊富な知識と経験のあるシステム開発者にとっても、関連法令が多すぎ、一筋縄ではゆかないのが現状。法改正を背景とした改修プロジェクトにおける要件の抽出は、実際のところ、対象の社会制度に経験ノウハウをもつごく少数の有識者によって行われている。限られたリソースでどう要件の抽出を行っていくかということはどのベンダも持つ悩みと。

これらの考えは、「法令は複雑なもの」という前提で、裁判など法令の運用を支援するために、「複雑な法令処理をコンピュータにやらせよう」ということだと思います。こうした視点は、大変重要と思います。

さて、個人的には、ちょっと違った視点も必要と考えています。

それは、「法令は複雑なもの」という前提を変えた方が良いのでは、という視点です。

例えば、法律には「上書き機能」があります。「上書き機能」とは、

・新しい法律は、古い法律に優先する
・上位の法律は、下位の法律に優先する

といった「優先順位付け」のルールのことです。

プログラミングでも複数の条件がある場合、どの条件を優先するかルールがあり、最優先の条件以外は無視されたりしますが、法律でも同じようなルールがあるのです。

この「上書き機能」をもっと活用すれば、「法令はもっとシンプルになる」はずです。

具体的には、新しい法令を作る時に、過度に既存の法令との整合性を保とうとするのではなく、法律が本来持っている「上書き機能」を生かして、「旧法や下位の法令をとりあえず無視してしまう」ということです。

例えば、マイナンバー法(行政手続における特定の個人を識別するための番号の利用等に関する法律)を読んでいくと、他の法令や条文を参照する必要がでてきたりして、意味が通じなくなってしまいます。

こうした意味不明な箇所については、マイナンバー法に全部書いてしまえば良いのです。つまり、とりあえずマイナンバー法だけを読めば、意味が通じて、関連法への対応もできるような文章構成にするのです。

その上で、マイナンバー法と矛盾する過去の法令や下位の法令については、無視するようにします。

もちろん、その分、マイナンバー法が今よりも長文になってしまいますが、読んでも意味が通じないよりは、ずっと良いでしょう。

「旧法や下位の法令をとりあえず無視してしまう」ためには、法令の階層関係や時間的な順位が明確になることが必要ですが、これらは法令のメタデータとして政府が管理・公開しておけば良いと思います。

蓄積されていく整合性の矛盾については、10-20年など中長期の視点で定期的なオーバーホールを行い、法令の統廃合を行うと良いでしょう。オーバーホールは、法令の運用と同時並行で行い、法改正を邪魔しないようにします。

こうした仕組みにより、社会の変化に法令が対応するスピードも改善されて、中高生ぐらいの学力があれば、少なくとも日本語の文章として、法令を誰でも読み解くことができるようになるでしょう。