Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel ...
Search
y_taka_23
August 22, 2026
Technology
920
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
Kernel/VM 探検隊@東京 No.19 で使用したスライドです。
y_taka_23
August 22, 2026
More Decks by y_taka_23
See All by y_taka_23
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
1k
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
1.3k
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
17
8.3k
形式手法特論:CEGAR を用いたモデル検査の状態空間削減 #kernelvm / Kernel VM Study Hokuriku Part 8
ytaka23
3
920
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
2.5k
AWS と定理証明 〜ポリシー言語 Cedar 開発の舞台裏〜 #fp_matsuri / FP Matsuri 2025
ytaka23
12
6.6k
問 1:以下のコンパイラを証明せよ(予告編) #kernelvm / Kernel VM Study Kansai 11th
ytaka23
3
1.2k
AWS のポリシー言語 Cedar を活用した高速かつスケーラブルな認可技術の探求 #phperkaigi / PHPerKaigi 2025
ytaka23
15
6k
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
7
1k
Other Decks in Technology
See All in Technology
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
230
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
360
Self Healing Rollouts: Automating Production Fixes with Agentic AI
kdubois
0
130
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
150
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
1
280
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
0
150
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
520
[RSJ26] NarrativeFlow: Flow-Based Vision-Language-Action Model Using Robot Velocity Fields
keio_smilab
PRO
0
130
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
25k
Claude Codeで開発以外の業務も爆速化しよう!
minorun365
PRO
12
9.5k
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
140
はじめてのDatabricks:技術者向けワークショップ / beginner-workshop
databricksjapan
PRO
0
110
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Being A Developer After 40
akosma
91
590k
Typedesign – Prime Four
hannesfritz
42
3.2k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
The browser strikes back
jonoalderson
0
1.6k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Darren the Foodie - Storyboard
khoart
PRO
3
3.8k
ラッコキーワード サービス紹介資料
rakko
1
4.7M
The Curious Case for Waylosing
cassininazir
1
490
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.6k
Transcript
#kernelvm チェシャ猫 (@y_taka_23) Kernel/VM 探検隊@東京 No.19 (22nd Aug. 2026) 形式手法特論
Hyperproperty と モデル検査
夏休みといえば冪集合
例:押しボタン式信号機
押しボタン式信号機の状態空間 • 色は赤 R と青 G、押しボタン P を持つ • 系の状態としては
2 × 2 で 4 通り ◦ (R, -):信号は赤、ボタンは押されていない ◦ (R, P):信号は赤、ボタンは押されている ◦ (G, -):信号は青、ボタンは押されていない ◦ (G, P):信号は青、ボタンは押されている
(R, -) (G, -) (R, P) (G, P)
単に状態を 無作為に並べた列 … (R, -) (R, P) (R, -) (R,
-) (G, -) … (R, -) (G, -) (G, P) (R, P) (G, -) … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
単に状態を 無作為に並べた列 状態遷移図で 発生し得る列 … (R, -) (R, P) (R,
-) (R, -) (G, -) … (R, -) (G, -) (G, P) (R, P) (G, -) … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
仕様:青の間はボタンが反応しない
システムの安全性 • Safety(安全性) ◦ 違反する場合、ある有限 Prefix まで見れば違反が確定 • 例:「青の間はボタンが反応しない」は Safety
◦ どこかで (G, P) が現れた時点で違反が確定 • 例「赤の後いつか青になる」は Safety ではない ◦ 赤が 100 回続いても、101 回目が青の可能性が残る
単に状態を 無作為に並べた列 状態遷移図で 発生し得る列 … (R, -) (R, P) (R,
-) (R, -) (G, -) … (R, -) (G, -) (G, P) (R, P) (G, -) … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
単に状態を 無作為に並べた列 状態遷移図で 発生し得る列 … (R, -) (R, P) (R,
-) (R, -) (G, -) … (R, -) (G, -) (G, P) (R, P) (G, -) 仕様を満たす列 … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
単に状態を 無作為に並べた列 状態遷移図で 発生し得る列 仕様違反確定 … (R, -) (R, P)
(R, -) (R, -) (G, -) … (R, -) (G, -) (G, P) (R, P) (G, -) 仕様を満たす列 … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
Trace と Property • Trace:状態の(無限)列 • Property:Trace の集合 ◦ t
∈ P は「t に対して P が成り立つ」を意味する • Plotkin 位相 ◦ 共通 Prefix が長い Trace 同士は「近い」とみなす ◦ Safety は Plotkin 位相における閉集合に相当
仕様:ボタンを早く押せば 青になるのも早い
複数の Trace の比較が必要
Hyperproperties M.R. Clarkson, F.B. Schneider (JCS 2010) https://doi.org/10.3233/JCS-2009-0393
Hyperproperty • 通常の Property ◦ Trace の集合 ◦ 一本の Traceに対して性質を記述(t
∈ P かどうか) • Hyperproperty ◦ Trace の集合の集合 ◦ Trace の集合(複数本の関係)に対して性質を記述
Hyperproperty の世界における Safety の対応物は何であるべきか?
Vietoris 位相 • 位相空間 X に対し、その冪集合 P(X) に位相を入れたい • X
の開集合 U に対し、自然な P(X) の準開基の構成ふたつ • Lower Vietoris 位相 ◦ {A ⊆ X : A ∩ U ≠ ∅}(U と交わる集合の全体) • Upper Vietoris 位相 ◦ {A ⊆ X : A ⊆ U}(U に含まれる集合の全体)
それぞれの位相における閉集合 • Plotkin 位相の閉集合(元々の Safety) ◦ ある有限 Prefix が生じ得ると分かれば違反 •
Lower Vietoris 位相の閉集合 ◦ ある有限本の有限 Prefix が生じ得ると分かれば違反 • Upper Vietoris 位相の閉集合 ◦ 特定の有限 Prefix 以外が生じ得ないと分かれば違反
Lower Vietoris 位相の方が 元の Safety を上手く拡張している
ふたつの Trace を比較したいなら 信号機を 2 個組にすれば良いのでは?
k-Safety • 高々 k 本の有限 Prefix が生じれば違反が確定 • 例:「ボタンを早く押せば、青になるのも早い」 は以下の
2 本の Prefix で違反確定なので 2-Safety … (R, -) (R, P) (R, P) (R, P) (G, -) … (R, -) (R, -) (R, P) (G, -) (G, -)
k-Safety のモデル検査 定理(Clarkson-Schneider, 2010, Theorem 2) k-Safety のモデル検査は、元の状態遷移系を k 個複製して
同期積を取った状態遷移系に対する、 Hyper でない従来の Safety のモデル検査に帰着できる
本日のまとめ • Property:Trace がなす集合 • Safety:Plotkin 位相における閉集合 ◦ 有限 Prefix
を見れば違反が確定 • Hyperproperty:Trace がなす集合の集合 • Hypersafety:Lower Vietoris 位相における閉集合 ◦ 有限本の有限 Prefix を見れば違反が確定
Check Hypersafeties for Hyper-safe systems! Presented By チェシャ猫 (@y_taka_23)