Z规格说明中笛卡尔积算子自动求精的研究与实现

来源 :中国通信学会第五届学术年会 | 被引量 : 0次 | 上传用户:cao5556759
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Z是目前应用最为广泛的一种形式规格说明语言,它以一阶谓词逻辑和集合论作为其形式语义基础,具有简明、精确的特点。主要用于软件的需求阶段,它摒弃了采用自然语言描述需求的模糊性和二义性。但由于z规格说明本身缺少一套完整的编译环境,发展较为缓慢,鉴于这个原因提出了Z向高级程序语言自动转化的思想。本文主要研究的是集合论中笛卡尔积算子的自动求精。 论文包括了以下几个方面:首先研究了Z中的各种数据类型及其间的相互关系。其次归纳总结了Z规格说明文法,形成了一个Z文法的子集,我们称之为Smart Z。之后把它转换成EBNF文法,再通过一系列变换转化成无二义性的SI-NS图,根据此图就可以写出相应的各个子程序。再次本文主要是研究了笛卡尔积算子的数据求精和过程求精,笛卡尔积本质上是n个集合元素组成序偶的集合,根据笛卡尔积自身的特点数据求精后转化成C++中的记录类型,而在过程求精中则采用了C++模板和STL技术,首先编写了两个乃至多个集合所形成的笛卡尔积的模板,其次制定了两个笛卡尔积之间的交、并、补的求精规则。最后举例说明Z到C自动求精的过程,在这里对Z词法分析后输出各类单词及其内码值,对Z语法分析后如有错给出相应的错误处理,最终通过求精规则转化成C++程序代码。 提出从Z规格说明到高级语言自动转换的思想,实现了从完全形式化的需求说明到编码的自动转换,这不仅将加快Z在工业界的广泛推广,也将加快软件产品的开发。
其他文献