view slides/20160607/slide.md @ 122:b135e3db141f

auto-Update generated slides by script
author Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
date Tue, 07 Jun 2016 18:14:12 +0900
parents
children
line wrap: on
line source

title: Verification of programs using Continuation based C
author: Yasutaka Higa
profile:
lang: Japanese


# 研究目的
* コードセグメントとデータセグメントという単位を用いてプログラムを記述する手法を提案する
* プログラムはコードセグメントという処理の集合として表され、相互に接続される
* 個々のコードセグメントを検証し、検証されたコードセグメントどうしの組み合わせによりプログラム全体を検証する

# 研究内容
* コードセグメントとデータセグメントを用いたプログラムに対し、検証を行なう
* コードセグメントどうしの接続の間にメタ計算として検証機構を導入する
* コードを検証用に変更することなく、仕様を満たすか検証する
* 検証の対象として Gears OS のデータ構造を用いる

# 近況報告
* cbmc で llrb を検証する
    * nondet_int() があったのでいけそうです

# cbmc で llrb の検証
* cbmc は c のコードの symbolic execution なので C syntax にしないといけない
* なのでcbc -> c に変換
    * 具体的には code と goto の置換
* clang でコンパイル可能な状態まで書けました(syntax valid + executable)
* あとは assert を書いて cbmc でチェックしてやる

# あとやること
* cbmc のコードに assert を埋め込んで検証
* 仮に書いている C function を全部 cs に変換する
* JavaPathFinder + AVL-Tree in Java
* synchronized queue の akasha での検証
    * bounded/unbounded
* 論文提出締切: 2016/07/08


<!-- vim: set filetype=markdown.slide: -->