乐于分享
好东西不私藏

LTL2BA在线使用说明

LTL2BA在线使用说明

2026
LTL2BA在线使用说明
形式化宇宙 逻辑化世界

转化

高效可靠

基于 CAV ’01 顶会论文实现

深度兼容 Spin 模型检验器

适配

复杂公式

输出

全面实用

可输出标准 /广义Büchi 自动机 

形式化方法第二弹
问?
LTL公式如何转化为自动机?

该自动机所对应的LTL公式:

F ( ( pi_2_1_2_1&& ! pi_2_1_3 )&& F pi_2_1_3_1 ) && F pi_1_2_4 && ! pi_2_1_3 U pi_1_2_4 

大家可以看到,该自动机主要由图的顶点V和有向边E组成,每个顶点代表一个状态,相应的边则代表状态转移的条件即输入的语言。下面我将为大家介绍如何将抽象的LTL公式语言转化为自动机图的直观形式,大家可以跟着手动操作一遍。

PART 01
工具基本信息
PART.01
工具地址:https://lsv.ens-paris-saclay.fr/~gastin/ltl2ba/(点击链接进入网站)

核心功能:快速将线性时序逻辑(LTL)公式转换为Büchi自动机,适配模型检验场景,可直接生成Spin模型检验器兼容的never claim,支持自动机图形化展示与性能统计。

开发维护:由Denis Oddoux编写初版,Paul Gastin迭代优化至v1.3版本,基于CAV ’01会议论文《Fast LTL to Büchi Automata Translation》实现。(该文章非常经典,建议阅读)

运行限制:服务器内存限制1GB,单公式转换最长时限2小时。

PART.02
LTL公式输入语法规范(强制遵守)
LTL2BA

2.1 基础书写规则

  1. 所有符号、运算符、原子命题之间必须加空格分隔,无空格会直接触发语法报错

  2. 原子命题仅支持小写字符串,禁止使用大写字母、特殊符号(除下划线外)

  3. 否定运算符禁止使用!,统一改用大写NOT,避免服务器安全策略触发403禁止访问错误

  4. 所有布尔、时序运算符无默认优先级,必须用括号()明确运算顺序,禁止省略括号

LTL2BA

2.2可用符号与运算符对照表

(1)命题常量

true(真)、false(假)

(2)布尔运算符

运算符 含义 示例
NOT
否定
NOT p
&
合取(且)
p && q
||
析取(或)
p || q
->
蕴含
p -> q
<->
等价
p <-> q

(3)时序运算符

标准运算符 Spin兼容语法 含义 示例
G
[]
始终成立(全局)
G p、[] p
F
<>
最终成立
F p、<> p
X
下一时刻成立
X p
U
直到
p U q
R
V
释放
p R q、p V q
LTL2BA

2.3合法公式示例(直接复制可用)

  • G ( req -> F ack )

  • NOT ( F ( p && NOT q ) )

  • [] ( safe -> <> live )

  • ( p U q ) || X r

PART.03

网页功能选项说明

页面选项分为兼容设置、输出设置、化简优化三类,可按需勾选,下方标注推荐必选选项。

选项名称
功能说明
推荐勾选
Use Spin syntax
启用Spin专用语法,支持[]、<>、V符号
Use Spin 4.3.0
兼容旧版Spin 4.3.0语法规则
❌(新版Spin无需勾选)
Display an image of the generalised Büchi automaton
展示广义Büchi自动机图形
Display an image of the Büchi automaton
展示标准化简后Büchi自动机图形
echo a never claim for Spin
生成Spin可直接调用的never claim代码
Use verbose mode
开启详细转换日志模式
❌(调试时可选)
Display time and size statistics
展示转换耗时、自动机状态数、边数统计
Enable on-the-fly automata simplification
转换过程中实时化简自动机
Enable a posteriori automata simplification
转换完成后全局化简自动机
Enable strongly connected components simplification
基于强连通分量优化化简自动机
Consider second set in fj->fj
工具内部参数,仅供开发调试使用
PART 04
标准使用步骤
  1. 打开工具官网链接,进入操作页面

  2. 在页面上方LTL formula输入框内,按照语法规范填写目标公式

  3. 根据需求勾选功能选项,新手直接勾选推荐必选选项即可

  4. 点击输入框下方的Convert按钮,启动公式转换

  5. 等待转换完成后,页面会展示自动机图形、never claim代码、转换统计三类结果

  6. 复制never claim代码至Spin工具,或保存自动机图形与统计数据用于分析

PART 05
常见问题及解决方法

1. 403 Forbidden错误 原因:使用了!作为否定运算符,触发服务器安全拦截 解决:将所有!替换为大写NOT,严格遵守语法规范

2. Syntax Error语法报错 原因:符号间缺少空格、原子命题大写、括号不匹配、运算符拼写错误 解决:逐一检查空格、大小写、括号完整性,修正拼写错误

3. 自动机图形无法显示 原因:网络加载异常、公式过于复杂导致渲染失败 解决:刷新页面重试,简化公式后重新转换

4. 转换超时/内存超限 原因:公式过于复杂,触发服务器内存或时长限制 解决:开启全部化简选项,拆分复杂公式,简化逻辑结构

形式化方法
立即扫码

排版:三十六画生

文字:三十六画生

图片:来源LTL2BA在线网站