Submit Search
Upload
レイトン教授で始めるAlloy Analyzer入門
•
Download as PPTX, PDF
•
13 likes
•
5,633 views
啓 小笠原
Follow
8/15にgeekbarで使った資料です。 Alloyのコードは下記エントリーをご覧ください。 http://d.hatena.ne.jp/osiire/20110829
Read less
Read more
Technology
Report
Share
Report
Share
1 of 29
Download now
Recommended
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
y_taka_23
形式手法で捗る!インフラ構成の設計と検証
形式手法で捗る!インフラ構成の設計と検証
y_taka_23
形式手法とalloyの紹介
形式手法とalloyの紹介
Daisuke Tanaka
サンプルで学ぶAlloy
サンプルで学ぶAlloy
NSaitoNmiri
冬のLock free祭り safe
冬のLock free祭り safe
Kumazaki Hiroki
状態遷移機械を構成するための新しいイベントコンビネーターの提案(PPL2014 カテ3ポスター)
状態遷移機械を構成するための新しいイベントコンビネーターの提案(PPL2014 カテ3ポスター)
啓 小笠原
Alloyによるハミルトン閉路
Alloyによるハミルトン閉路
Takamasa Saichi
大規模グラフの数え上げ
大規模グラフの数え上げ
奈良先端大 情報科学研究科
Recommended
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
y_taka_23
形式手法で捗る!インフラ構成の設計と検証
形式手法で捗る!インフラ構成の設計と検証
y_taka_23
形式手法とalloyの紹介
形式手法とalloyの紹介
Daisuke Tanaka
サンプルで学ぶAlloy
サンプルで学ぶAlloy
NSaitoNmiri
冬のLock free祭り safe
冬のLock free祭り safe
Kumazaki Hiroki
状態遷移機械を構成するための新しいイベントコンビネーターの提案(PPL2014 カテ3ポスター)
状態遷移機械を構成するための新しいイベントコンビネーターの提案(PPL2014 カテ3ポスター)
啓 小笠原
Alloyによるハミルトン閉路
Alloyによるハミルトン閉路
Takamasa Saichi
大規模グラフの数え上げ
大規模グラフの数え上げ
奈良先端大 情報科学研究科
Alloyへの挑戦
Alloyへの挑戦
Nadoyama Natsuko
Alloy ではじめる簡単モデル検査
Alloy ではじめる簡単モデル検査
y_taka_23
Arduino programming of ML-style in ATS
Arduino programming of ML-style in ATS
Kiwamu Okabe
ATS language overview
ATS language overview
Kiwamu Okabe
Metasepi team meeting #17: Invariant captured by ATS's API
Metasepi team meeting #17: Invariant captured by ATS's API
Kiwamu Okabe
ATS/LF for Coq users
ATS/LF for Coq users
Kiwamu Okabe
Embedded application designed by ATS language
Embedded application designed by ATS language
Kiwamu Okabe
Metasepi team meeting #14: ATS programming on MCU
Metasepi team meeting #14: ATS programming on MCU
Kiwamu Okabe
Start! ATS programming
Start! ATS programming
Kiwamu Okabe
ATS programming on ESP8266
ATS programming on ESP8266
Kiwamu Okabe
ATSプログラミングチュートリアル
ATSプログラミングチュートリアル
Kiwamu Okabe
Metasepi team meeting #19: ATS application on Arduino
Metasepi team meeting #19: ATS application on Arduino
Kiwamu Okabe
Metasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCU
Kiwamu Okabe
ATS Programming Tutorial
ATS Programming Tutorial
Kiwamu Okabe
Real-time OS system state captured by ATS language
Real-time OS system state captured by ATS language
Kiwamu Okabe
Metasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCU
Kiwamu Okabe
ATS language overview'
ATS language overview'
Kiwamu Okabe
Static typing and proof in ATS language
Static typing and proof in ATS language
Kiwamu Okabe
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Masahiro Sakai
Alloy Analyzer のこと
Alloy Analyzer のこと
Hiromi Ishii
自前言語を仕事に使う話
自前言語を仕事に使う話
啓 小笠原
Alloy論理データモデル
Alloy論理データモデル
啓 小笠原
More Related Content
Viewers also liked
Alloyへの挑戦
Alloyへの挑戦
Nadoyama Natsuko
Alloy ではじめる簡単モデル検査
Alloy ではじめる簡単モデル検査
y_taka_23
Arduino programming of ML-style in ATS
Arduino programming of ML-style in ATS
Kiwamu Okabe
ATS language overview
ATS language overview
Kiwamu Okabe
Metasepi team meeting #17: Invariant captured by ATS's API
Metasepi team meeting #17: Invariant captured by ATS's API
Kiwamu Okabe
ATS/LF for Coq users
ATS/LF for Coq users
Kiwamu Okabe
Embedded application designed by ATS language
Embedded application designed by ATS language
Kiwamu Okabe
Metasepi team meeting #14: ATS programming on MCU
Metasepi team meeting #14: ATS programming on MCU
Kiwamu Okabe
Start! ATS programming
Start! ATS programming
Kiwamu Okabe
ATS programming on ESP8266
ATS programming on ESP8266
Kiwamu Okabe
ATSプログラミングチュートリアル
ATSプログラミングチュートリアル
Kiwamu Okabe
Metasepi team meeting #19: ATS application on Arduino
Metasepi team meeting #19: ATS application on Arduino
Kiwamu Okabe
Metasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCU
Kiwamu Okabe
ATS Programming Tutorial
ATS Programming Tutorial
Kiwamu Okabe
Real-time OS system state captured by ATS language
Real-time OS system state captured by ATS language
Kiwamu Okabe
Metasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCU
Kiwamu Okabe
ATS language overview'
ATS language overview'
Kiwamu Okabe
Static typing and proof in ATS language
Static typing and proof in ATS language
Kiwamu Okabe
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Masahiro Sakai
Alloy Analyzer のこと
Alloy Analyzer のこと
Hiromi Ishii
Viewers also liked
(20)
Alloyへの挑戦
Alloyへの挑戦
Alloy ではじめる簡単モデル検査
Alloy ではじめる簡単モデル検査
Arduino programming of ML-style in ATS
Arduino programming of ML-style in ATS
ATS language overview
ATS language overview
Metasepi team meeting #17: Invariant captured by ATS's API
Metasepi team meeting #17: Invariant captured by ATS's API
ATS/LF for Coq users
ATS/LF for Coq users
Embedded application designed by ATS language
Embedded application designed by ATS language
Metasepi team meeting #14: ATS programming on MCU
Metasepi team meeting #14: ATS programming on MCU
Start! ATS programming
Start! ATS programming
ATS programming on ESP8266
ATS programming on ESP8266
ATSプログラミングチュートリアル
ATSプログラミングチュートリアル
Metasepi team meeting #19: ATS application on Arduino
Metasepi team meeting #19: ATS application on Arduino
Metasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCU
ATS Programming Tutorial
ATS Programming Tutorial
Real-time OS system state captured by ATS language
Real-time OS system state captured by ATS language
Metasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCU
ATS language overview'
ATS language overview'
Static typing and proof in ATS language
Static typing and proof in ATS language
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Alloy Analyzer のこと
Alloy Analyzer のこと
More from 啓 小笠原
自前言語を仕事に使う話
自前言語を仕事に使う話
啓 小笠原
Alloy論理データモデル
Alloy論理データモデル
啓 小笠原
函数プログラミングのエッセンスと考え方
函数プログラミングのエッセンスと考え方
啓 小笠原
線形型のある言語でLEDを光らせる
線形型のある言語でLEDを光らせる
啓 小笠原
Alloy analyzer
Alloy analyzer
啓 小笠原
Alloy Analyzer LT
Alloy Analyzer LT
啓 小笠原
ぱわわっぷOCaml
ぱわわっぷOCaml
啓 小笠原
関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)
啓 小笠原
GADTブランチの今
GADTブランチの今
啓 小笠原
More from 啓 小笠原
(9)
自前言語を仕事に使う話
自前言語を仕事に使う話
Alloy論理データモデル
Alloy論理データモデル
函数プログラミングのエッセンスと考え方
函数プログラミングのエッセンスと考え方
線形型のある言語でLEDを光らせる
線形型のある言語でLEDを光らせる
Alloy analyzer
Alloy analyzer
Alloy Analyzer LT
Alloy Analyzer LT
ぱわわっぷOCaml
ぱわわっぷOCaml
関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)
GADTブランチの今
GADTブランチの今
Recently uploaded
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
Recently uploaded
(9)
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
レイトン教授で始めるAlloy Analyzer入門
1.
レイトン教授で始める Alloy Analyzer入門
2011年8月15日 有限会社ITプランニング 小笠原 啓
2.
アジェンダ Alloy Analyzerのご紹介 Alloyって何ができるの? レイトン教授の例題 まとめ
3.
Alloy Analyzerのご紹介
4.
Alloy Analyzerとは Alloy AnalyzerはMITで開発されたオープンソース (MITライセンス)のJava製GUI付き仕様記述・検 証ツール。 B,
Z, VDMのようなツールは仲間。 2006年頃から公開されており、Version 4で解析速 度向上、文法のブラッシュアップ。 2011年8月現在Version 4.1.10が最新(4.2 RCあり)。 開発者のDaniel Jackson@MIT
5.
Alloy Analyzerの検証は全自動 簡素な言語で仕様を記述すると、その仕様を満た す状態を検索して図示してくれる(モデルファイ ンダー)。 検証したい性質を記述すると、その性質が満たさ れるかどうか全自動でチェックしてくれる。
6.
小スコープ仮説 全自動チェックにはスコープ(チェックする範 囲)があり有限。それでも多くの設計がチェック できる。(小スコープ仮説)
探索空間とAlloyのスコープ(イメージ)
7.
デモ:Alloy Analyzer
8.
Alloyって何が嬉しいの? どういう時に使えるの?
9.
正しいAlloyの使い方 データモデリング 正確なER図の記述と図示。設計書への添付。 ビジネスの仕組みの記述 曖昧性の早期発見。明確な意思疎通。 手続きの検証 アルゴリズム・プロトコルの設計・検証。
10.
今日はAlloyの真の姿を ご紹介します。
11.
SATソルバー呼び出し器
12.
satisfiability problem 略してSAT。充足可能性問題。 要するに、特定の組わせが希望の条件を満たすか どうかを調べる、組合せ問題。 組み合わせて試してみるしか有効な解法が知られ ていない。NP完全問題。 SATを高速に解いてくれるのがSATソルバー。
13.
SATソルバーを使うのは大変 SATソルバーは強力だが、使うのが面倒だった。 1.
自分の解きたい問題をSATにエンコード。 2. 乗法標準形への変換。 3. SATソルバーへ。 4. 出てきた充足解をデコード。 5. デコードされた解の意味を理解。
14.
Alloy Analyzerなら 簡単な言語で問題を記述するだけ でSATソルバーを呼び出し可能。
しかも、見つかった解を 図示までしてくれる。
15.
実演してみましょう
16.
そこでレイトン教授
17.
悪魔の箱、面白かったです
18.
問題No.50
5頭の牛がいる。うち2頭は本当 の事しか言わないトンホー種。3 頭はウソしか言わないソーウ種だ という。さて、次の会話からウソ つき牛に×印をつけてほしい。 A「Dはソーウ種だね」 B「Cはトンホー種じゃないよ」 C「Aはソーウ種じゃない」 D「Eはソーウ種です」 E「Bはトンホー種じゃないぞ」
19.
問題No.39 Aは赤、Bは青、Cは白のシャツとズ
ボンを着ていた。彼らに目隠しを して服をデタラメに取り替えさせ てから目隠しをはずして感想を聞 いてみた。 A「3人とも上下の色がバラバラだ ね。」 B「Cだけは自分のものを着てない な。」 C「赤いズボンなんて恥ずかしい よ」
20.
問題No.87
トランプの4種のマーク、ス ペード、ハート、クラブ、ダ イヤを4枚ずつ、全部で16枚 並べる。 図のような縦横4列のカード が置かれている。縦の列、横 の列、対角線のななめの列の それぞれに、4種のカードが 入るように並べてほしい。 カードをタッチすると、絵柄 を切り替えることができる。
21.
まとめ Alloy AnalyzerはMITで作られたオープンソースの仕 様記述・検証ツール。決められたスコープ内での 網羅的全自動チェックが可能。 正確なデータモデリングの支援、仕様記述による 曖昧さの早期発見、複雑な手続きの検証など。正 しい使い方。 Alloyの真価はSATソルバーを簡単に呼べること。応 用方法はアイディア次第。 日本語の情報源も登場!始めるには良い時期。
22.
情報源(1):本家サイト http://alloy.mit.edu/alloy4/
23.
情報源(2):コミュニティサ
イト http://alloy.mit.edu/community/
24.
情報源(3):チュートリアル http://alloy.mit.edu/alloy4/tutorial4/
25.
情報源(4):書籍
抽象によるソフトウェア設計-Alloyではじめる形式手 法 Daniel Jackson (著), 中島 震 (監訳), 今井 健男 (翻訳), 酒井 政裕 (翻訳), 遠藤 侑介 (翻訳), 片岡 欣夫 (翻訳) オーム社
26.
情報源(5):日本のコミュニ
ティ https://groups.google.com/group/alloy-jp?hl=ja/
27.
あなたの脳をソルバーで加速!
28.
ご清聴ありがとうございました。
29.
関数プログラミング・形式手法
夏のイベント 函数プログラミングの Proof Summit CUFP 集い http://partake.in/even http://cufp.org/confe http://partake.in/events/a ts/ac41261d-6026- rence c41261d-6026-4d09-8814- 4d09-8814- 5ad3e58446e8 5ad3e58446e8
Download now