摘要

AltaRica 3.0是一类面向复杂关键系统的安全性建模与分析语言,由于AltaRica 3.0的结构模型S2ML(System Structure Modeling Language)是描述真实系统的层次结构信息,无法进行模型的安全性分析,而AltaRica 3.0的语义模型GTS(Guarded Transition Systems)可以用来进行安全性分析,因此,将AltaRica 3.0的S2ML转换为语义等价GTS语义模型是最新的AltaRica 3.0中的一个关键技术.为此,本文提出了一种基于ANTLR(Another Tool for Language Recognition)的AltaRica 3.0模型平展化算法.首先,根据Block和Class对AltaRica 3.0模型进行分割分别获取对应的AST(Abstract Syntax Tree);然后设计相关的转换算法,在遍历AST时,对结点存储的AltaRica 3.0模型语言信息进行获取和转换,通过不断的递归过程获取到平展化后的文件.实验表明,设计的算法可以很好地完成AltaRica 3.0模型的平展化过程.