TLA+ Graph Explorer 使用与启动教程
1. 项目介绍
TLA+ Graph Explorer 是一个静态的 Web 应用程序,用于探索和可视化 TLA+ 状态图或 TLA+ 跟踪。该应用程序通过解析由 TLA+ 规范生成的 dot 文件,提供对可达状态的视觉表示,从而帮助用户更容易理解和遍历这些状态。该应用特别设计为支持大型 dot 文件,通过分块读取文件并只存储节点位置的方式,显著减少内存使用。
2. 项目快速启动
环境准备
确保已经安装了 Java 和 TLA+ 工具箱。
获取代码
从 GitHub 克隆或下载项目代码:
git clone https://github.com/afonsonf/tlaplus-graph-explorer.git
cd tlaplus-graph-explorer
运行应用程序
打开 src
目录中的 index.html
文件,使用浏览器(如 Chrome 或 Firefox)启动应用程序。
3. 应用案例和最佳实践
获取 dot 文件
使用命令行:
export TLA_PATH=path/to/tla
alias tlc="java -cp $TLA_PATH/tla2tools.jar tlc2.TLC"
tlc -dump dot spec.dot spec.tla
使用 TLA+ 工具箱:
- 创建模型。
- 在“模型概览”中,启用“图形化状态图”功能。
- 运行模型。
- 在规格文件夹中找到生成的
.dot
文件,并在应用程序中以图形探索模式打开。
获取跟踪输出
使用命令行:
export TLA_PATH=path/to/tla
alias tlc="java -cp $TLA_PATH/tla2tools.jar tlc2.TLC"
tlc -tool spec.tla > spec.out
使用 TLA+ 工具箱:
- 创建并运行模型。
- 在规格文件夹中找到
.toolbox
文件夹,每个模型运行都会有一个文件夹。 - 找到并打开
.out
文件,在应用程序中以跟踪探索模式打开。
定制状态表示
可以通过修改 tla-state.js
文件中的 drawState
函数来定制状态的显示方式。项目中的 examples
文件夹包含了一些定制显示的例子。
4. 典型生态项目
目前,TLA+ Graph Explorer 项目周边没有明确列出的生态项目。但是,这个工具可以作为 TLA+ 开发流程中的一个重要组成部分,与 TLA+ 工具箱、TLA+ 规范编写工具以及其他状态图可视化工具共同协作,为用户提供一个完整的 TLA+ 开发和验证环境。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考