仕様変更を行ない、受付票を常に発行することになりました。詳しくはこちらをご覧ください。Finished)15/25Description静的コード解析とこの勉強会について静的コード解析をご存知でしょうか。静的コード解析とは、コンピュータのソフトウェアの解析手法の一種で、ソフトウェアを実行することなく解析を行うことです。その他しかしこれらの手法は特性が異なります。メモリの安全性しか検査できないものや、実行バイナリを数学的に証明できるものまで幅があるのです。実際の製品に応用する際には「どの手法が製品のどの部分に適しているのか」知っておく必要があります。実際の製品の安全性は単に設計すれば済む問題ではありません。お客様が製品を入手する際に、その製品はどのような検証をなされていて、どの程度の安全性なのか納得していただいた上で、安心して使用していただかねばなりません。そのためにはこれらの手法をわかりやすく初学者に解説できる必要があるのです。この勉強会は上記のような静的コード解析についての意見交換を目的としています。発表スタイルと発表者の募集この勉強会では発表者を毎回募集しています。基本的に発表者は「自分の話したい内容」を「自分の話したい形式」で「自分の意図したレベル」にて発表できます。無理に高度な話をする必要もありませんし、無理に初心者にわかりやすくする必要もありません。初心者はわからないところを(ある程度)質問できるものとします。初学者からは、この勉強会で発表者が宇宙語を話しているように見えるでしょう。主催者はあまりにも初歩的な質問内容であった場合には任意のタイミングでその質問を打ち切ることができることとします。発表者は可能であれば当日の発表資料を後日公開してください。勉強会に参加できなかった方々にも知見を共有したいためです。発表の模様について録画し、後日YouTubeで公開する予定です。公にしたくない内容を発表する発表者は、事前にその旨を主催者に申告してください。当日のスケジュール仮ですが、以下のようなスケジュールを想定しています。@h_sakurai自動検証を構築するには基礎となる理論の理解が必要です。論文に乗っているような数式は、それなりの教育を受けていない人にとって非常に難しく見えます。関数型言語による言語の構築は高速で確実に動きますがそれなりの規模になってしまいます。実のところ、評価や型検査、型推論の推論規則は一種の論理型言語にすぎません。論理型言語でよく知られているPrologを使えば推論規則をトライ&エラーで実行しながら試してみることができます。Javaの実装、ATSの基礎となる線形論理型言語のインタプリタの実装やInferの理論的な基礎となるホーア論理を使った簡単な検証システムをなどを紹介します。@eldeshVeriFastは分離論理に基づくCとJava言語の検証器です。分離論理とは手続き型言語の挙動を理解するための方法の一つであるホーア論理を拡張したもので、ポインタを用いた高度なメモリ操作を含むプログラムを記述する事ができます。本発表では定理証明器に関する会議であるTPP2016で出題された問題であるTPPMarkを題材として、VeriFastによる注釈と検証の方法の入門的な解説を0から行います。TPPMarkの要求の形式化から始め、そのために必要となる仕様の定義を行い、その実装を組み上げながら、検証に必要な注釈を付けていきます。@masterqInferはObjective-C,Java,Cコードを対象にした静的自動検証器で、Facebookが買収したことで話題になりました。任意のC言語コードをこのツールにかけることで表明を書かずにメモリ関連の欠陥などを自動的に検出してくれます。古くから契約プログラミングが提唱され、動的な事前条件と事後条件をコードに埋め込むことによってその品質を向上させることが知られています。この発表ではInferを使うことで静的に検証可能な事前条件と事後条件を表明することができることを示し、またその利用の限界についても言及します。静的コード解析を国際標準化するには」お客様は製品を手にする際「この製品はどんな検証をされていて、どの程度安全なのだろうか?」と疑問を持つのではないでしょうか。一方で、ホーア論理や分離論理などの理論的背景を全ての人類に理解させることも困難です。「様々な静的コード解析を包括した国際標準があったら」この問題を解消することはできるでしょうか?すなわち安全性をうたう製品には全て当該の国際標準にそったグレードや種別がマークで記載されていたとしたら、お客様に「この製品はどの程度安全なのか」たやすく実感していただくことができるのではないでしょうか。そのような国際標準を作ることは本質的に可能なのかブレインストーミングしてみましょう。次回の計画しかし会場からの活発な議論があった場合などは柔軟に対応しようと考えています。会場について永和システムマネジメント様に会議室を提供していただきました。map(1階がサンクスのビルです。参加者のみなさんは次の段取りに従って入館してください。同ビル1階のサンクスの飲食スペースあたりに集合してください。入館できる人が引率して、まとまって入館します。同席予定者へ連絡してください。使えるようにしてあります)。