棱镜是一个概率模型检查器,用于系统形式化建模和分析的工具表现出随机或概率行为的。它已用于分析来自许多不同的应用程序域,包括通信和多媒体协议、随机分布式算法、安全协议、,生物系统和许多其他系统。
PRISM可以建立和分析多种类型的概率模型:
- 离散时间和连续时间马尔可夫链(DTMC和CTMC)
- 马尔可夫决策过程(MDP)和概率自动机(PA)
- 概率时间自动机
- 部分可观察的MDP和PTA(POMDP和POPTA)
- 区间马尔可夫链和MDP(IDTMC和IMDP)
再加上这些模型的扩展以及成本和回报。
模型使用PRISM语言,一种简单的基于状态的语言。PRISM支持对这些模型的广泛定量属性进行自动分析,例如。“故障导致系统在4小时内关闭的概率是多少?”,“在所有可能的初始配置中,协议错误终止的最坏情况概率是多少?”,“30分钟后消息队列的预期大小是多少?”,或“算法终止的最坏预期时间是多少?”。这个属性规范语言包含时序逻辑PCTL、CSL、LTL和PCTL*,以及定量规范和成本/奖励的扩展。
PRISM融合了最先进的技术象征的数据结构和算法,基于BDD(二进制决策图)和MTBDD(多端二进制决策图[KNP04b型,第2部分].它还包括一个离散事件模拟发动机,为提供支持近似/统计模型检查,以及各种不同分析技术的实现,例如定量抽象精化和对称性减缩.
棱镜是自由的和开源,释放在GNU通用公共许可证(GPL公司).