基本的にステージクリア型ゲーム。ビジュアルノベル(選択式アドベンチャーゲーム)の要素も入る。
- ステージはツリー状に配置される。親ステージと子ステージ〈サブステージ〉がある。
- ステージツリーは、状態遷移により動的に変化する。
- ステージにコンテキスト〈混合コンテキスト〉が付く。コンテキストは子に継承される。よって、固有コンテキストを持たなくても先祖からの継承は使える。
- ステージはいつでも作れる。プレーンなステージ以外に、特定目的の構造化ステージがある。
- ステージ内に知識シーケント、事実シーケント、判断シーケント、質問シーケントがいる。
- 質問シーケントはいつでも自由に作れる。
- 質問シーケントが居るステージは閉じることが出来ない。シーケントが居なければ閉じてよい。
- ステージを閉じることが「クリア」になる。
- 既にセットアップされたステージをロードして生成してもよい。
- シナリオに沿ってプレイしてもよいし、自由に自律的にプレイしてもよい。
- 質問シーケントに「予想」の属性を付けると親ステージに予想を所属させて仮クリアできる。
- 得られた事実を、ステージのコンテキストにストアしてよい。ストアしてない事実・判断は、ステージのクローズ時に失われる(ログは残る)。
- ステージがクローズするとき、固有のコンテキストは親ステージが受け取る。成果物〈アーティファクト〉が失われることはない。
- 質問を解決する代わりに削除して強制クローズはできる。
- ステージコンテキストと知識シーケントは本質的に同じもの。
- コンテキストのアイテムをアンパックしてシーケントにしてステージに載せることができる。
コンテキストΓを持つステージを次のように書く。
Γ |- { // ステージ内部 }
サブステージは:
Γ |- { (P, Q, R: Prop) |- { // サブステージ |-? (P∧Q)→(Q∧P) // 質問 } }
コンテキストはステージからシーケントに移してもよい。
Γ |- { |- { // サブステージ (P, Q, R: Prop) |-? (P∧Q)→(Q∧P) // 質問 } }