鉴于现有的形式化方法及其形式化语言(简称“桥”系列)具有的优点和缺点,

特依据信息基本定律发明新的“秤”系列,以扩充并解决“桥”系列所解决不了的问题。

1.“”系列(第一路径):ML-------FL-------PL-------CL-------NL

2.“”系列(第二路径):AL----------------------------------------NL

3.“桥”和“秤”两个系列协同并进(双重路径):

ASCII+现有的Unicode---------------------------------优化的Unicode

实施例:二进制数或十进制数----------------------------英语或汉语

注释

ML--机器语言(machine language)
FL --形式语言(formal language)形式语言学(Formal Linguistics)
PL --编程语言(Programming Language)
CL --计算语言(computing language)计算语言学(Computational Linguistics)
NL --自然语言(natural language)普通语言学(Linguistics)
AL --算术语言(Arithmetic Language)

附录

1 形式化方法的发展
2 形式化方法的定义
3 形式化方法的研究内容
4 形式化方法的分类
形式化方法英文的名称是formal methods。   在逻辑科学中是指分析、研究思维形式结构的方法。它把各种具有不同内容的思维形式(主要是命题和推理)加以比较,找出其中各个部分相互联结的方式,如命题中包含概念彼此间的联结,推理中则是各个命题之间的联结,抽取出它们共同的形式结构;再引入表达形式结构的符号语言,用符号与符号之间的联系表达命题或推理的形式结构。例如,把全称肯定命题,用符号形式化为“S∀P”;把联言命题、假言命题分别形式化为:“p∧q、“p→q”。又例如:一个具体的假言联言推理“如果这种金属是纯铝,那么它的物理性质必与纯铝相同;如果这种金属是纯铝,那么它的化学性质必与纯铝相同;但这种金属的物理性质和化学性质与纯铝不相同;所以,它不是纯铝。”这个推理的形式结构是:“如果p,则q;如果p,则r;非q且非r;所以非p。”可进而形式化为下列公式:((p→q)∧(p→r)∧┐p∧┐r→┐p。   在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和鲁棒性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。   形式化方法在古代就运用了,而在现代逻辑中又有了进一步的发展和完善。这种方法特别在数学、计算机科学、人工智能等领域得到广泛运用。它能精确地揭示各种逻辑规律,制定相应的逻辑规则,使各种理论体系更加严密。同时也能正确地训练思维、提高思维的抽象能力。

1 形式化方法的发展

  软件形式化方法最早可追溯到20世纪50年代后期对于程序设计语言编译技术的研究,即J.Backus提出BNF描述Algol60语言的语法,出现了各 种语法分析程序自动生成器以及语法制导的编译方法,使得编译系统的开发从“手工艺制作方式”发展成具有牢固理论基础的系统方法。形式化方法的研究高潮始于 20世纪60年代后期,针对当时所谓“软件危机”,人们提出种种解决方法,归纳起来有两类:一是采用工程方法来组织、管理软件的开发过程;二是深入探讨程 序和程序开发过程的规律,建立严密的理论,以其用来指导软件开发实践。前者导致“软件工程”的出现和发展,后者则推动了形式化方法的深入研究。经过30多 年的研究和应用,如今人们在形式化方法这一领域取得了大量、重要的成果,从早期最简单的形式化方法——一阶谓词演算方法到现在的应用于不同领域、不同阶段 的基于逻辑、状态机、网络、进程代数、代数等众多形式化方法。形式化方法的发展趋势逐渐融入软件开发过程的各个阶段,从需求分析、功能描述(规约)、(体 系结构/算法)设计、编程、测试直至维护。

2 形式化方法的定义

  用于开发计算机系统的形式化方法是描述系统性质的基于数学的技术,这样的形式化方法提供了一个框架,可以在框架中以系统的而不是特别的方式刻划、开发和验 证系统。 如果一个方法有良好的数学基础,那么它就是形式化的,典型地以形式化规约语言给出。这个基础提供一系列精确定义的概念,如:一致性和完整性,以及定义规范 的实现和正确性。形式化方法的本质是基于数学的方法来描述目标软件系统属性的一种技术。不同的形式化方法的数学基础是不同的,有的以集合论和一阶谓词演算为基础(如Z和 VDM),有的则以时态逻辑为基础。形式化方法需要形式化规约说明语言的支持。

3 形式化方法的研究内容

  形式化方法的一个重要研究内容是形式规约(Formal Specification,也称形式规范或形式化描述),它是对程序“做什么”(what to do)的数学描述,是用具有精确语义的形式语言书写的程序功能描述,它是设计和编制程序的出发点,也是验证程序是否正确的依据。对形式规约通常要讨论其一 致性(自身无矛盾)和完备性(是否完全、无遗漏地刻画所要描述的对象)等性质。形式规约的方法主要可分为两类:一类是面向模型的方法也称为系统建模,该方 法通过构造系统的计算模型来刻画系统的不同行为特征;另一类是面向性质的方法也称为性质描述,该方法通过定义系统必须满足的一些性质来描述一个系统。不同 的形式规约方法要求不同的形式规约语言,即用于书写形式规约的语言(也称形式化描述语言),如代数语言OBJ、Clear、ASL、ACT One/Two等;进程代数语言CSP、CCS、π演算等;时序逻辑语言PLTL、CTL、XYZ/E、UNITY、TLA等;这些规约语言由于基于不同 的数学理论及规约方法,因而也千差万别,但它们有一个共同的特点,即每种规约语言均由基本成分和构造成分两部分构成。前者用来描述基本(原子)规约,后者 把基本部分组合成大规约。构造成分是形式规约研究和设计的重点,也是衡量规约语言优劣的主要依据。下面给出用于顺序和并发程序形式规约的常见方法及语言: 形式验证形式化方法的另一重要研究内容是形式验证(Formal Verification)。形式验证与形式规约之间具有紧密的联系,形式验证就是验证已有的程序(系统)P,是否满足其规约(φ,ψ)的要求(即P (φ,ψ)),它也是形式化方法所要解决的核心问题。传统的验证方法包括模拟(simulation)和测试(testing),它们都是通过实验的方法 对系统进行查错。模拟和测试分别在系统抽象模型和实际系统上进行,一般的方法是在系统的某点给予输入,观察在另一点的输出,这些方法花费很大,而且由于实 验所能涵盖的系统行为有限,很难找出所有潜在的错误。基于此,早期的形式验证主要研究如何使用数学方法,严格证明一个程序的正确性(即程序验证)。

附录2

形式化方法基本内容  软件工程 - 形式化方法 知识大全 
2011.06.09  12458 次浏览

目录

基本内容
        在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和鲁棒性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。
        根据说明目标软件系统的方式形式化方法可以分为两类
  1)面向模型的形式化方法。面向模型的方法通过构造一个数学模型说明系统的行为
  2)面向属性的形式化方法。面向属性的方法通过描述目标软件系统的各种属性间接定义系统行为
  根据表达能力,形式化方法可以分为五类
  1)基于模型的方法:通过明确定义状态和操作来建立一个系统模型(使系统从一个状态转换到另一个状态)。用这种方法虽可以表示非功能性需求(诸如时间需求),但不能很好地表示并发性。如:Z语言,VDM,B方法等。
  2)基于逻辑的方法:用逻辑描述系统预期的性能,包括底层规约、时序和可能性行为。采用与所选逻辑相关的公理系统证明系统具有预期的性能。用具体的编程构 造扩充逻辑从而得到一种广谱形式化方法,通过保持正确性的细化步骤集来开发系统。如:ITL(区间时序逻辑),区段演算(DC),hoare 逻辑,WP演算,模态逻辑,时序逻辑,TAM(时序代理模型),RTTL(实时时序逻辑)等。
  3)代数方法:通过将未定义状态下不同的操作行为相联系,给出操作的显式定义。与基于模型的方法相同的是,没有给出并发的显式表示。如:OBJ, Larch族代数规约语言等;

4)过程代数方法:通过限制所有容许的可观察的过程间通信来表示系统行为。此类方法允许并发过程的显式表示。如:通信顺序过程(CSP),通信系统演算 (CCS),通信过程代数(ACP),时序排序规约语言(LOTOS),计时CSP(TCSP),通信系统计时可能性演算(TPCCS)等。
  5)基于网络的方法:由于图形化表示法易于理解,而且非专业人员能够使用,因此是一种通用的系统确定表示法。该方法采用具有形式语义的图形语言,为系统开发和再工程带来特殊的好处。如 Petri图,计时Petri图,状态图等。

http://www.qqywf.com/view/b_584857.html
开放分类:
软件工程
相关词条:
计算机科学进程代数

鉴于现有的形式化方法(简称“桥”系列)有其优点和缺点,特发明新的“秤”系列相关推荐

  1. 【形式化方法:VDM++系列】4.VDM实战1——铁路费用计算

    又有将近2个月没更新博客了啊!winter holiday简直玩儿疯了的说!结果假期前学习的形式化方法已经忘了大半!面对期末作业,大脑一片空白.于是,赶快复习了一下之前学习的姿势! 这次的主要任务是完 ...

  2. 《融智学进阶文集》01:间接计算模型和间接形式化方法

    <融智学进阶文集>01: 间接计算模型和间接形式化方法 01-间接计算模型和间接形式化方法_邹晓辉.pdf 怎么采用融智学七遍通方法熟悉原创文本? 对照阅读 摘要: 本文旨在:从人机交互界 ...

  3. 2022 CCF形式化方法工业应用前沿分论坛暨中科国创高可信联合上海控安新品发布会顺利召开!...

    11月27日,2022年CCF中国软件大会"形式化方法工业应用前沿"技术分论坛暨中科国创高可信联合上海控安新品发布会于线上顺利召开.本次活动由CCF形式化方法专业委员会主办,华东师 ...

  4. CCF ChinaSoft 2022预告丨形式化方法工业应用前沿分论坛 暨中科国创高可信联合上海控安新品发布...

    2022年11月25-27日,2022年CCF中国软件大会(CCF ChinaSoft 2022)将于线上举行.大会将围绕"聚焦产教研用协同创新,提升关键软件供给能力"主题,举办包 ...

  5. 软件工程——形式化方法概述

    目录 前言 一.形式化方法定义 二.形式化方法分类 三.形式化方法意义 四.形式化方法作用 五.形式化方法优缺点 1.优点 2.缺点 前言 形式化方法英文的名称是formalmethods,形式化方法 ...

  6. ChinaSoft 论坛巡礼 | 形式化方法工业应用前沿

    2022年CCF中国软件大会(CCF ChinaSoft 2022)将于2022年11月25-27日在线上举行.预期将有林惠民.陈左宁.邬江兴.何积丰.梅宏.吕建.柴洪峰.廖湘科.王怀民.郑纬民.蒋昌 ...

  7. 迈向可验证的 AI: 形式化方法的五大挑战

    来源:AI科技评论 本文约10500字,建议阅读20分钟本文回顾了形式化方法传统的应用方式,指明了形式化方法在 AI 系统中的五个独特挑战. 人工智能试图模仿人类智能的计算系统,包括人类一些与智能具有 ...

  8. 形式化方法、《大象:Thinking in UML》

    形式化方法英文的名称是formal methods.在逻辑科学中是指分析.研究思维形式结构的方法.它把各种具有不同内容的思维形式(主要是命题和推理)加以比较,找出其中各个部分相互联结的方式,如命题中包 ...

  9. 形式化方法|形式化方法对软件开发的挑战:历史与发展

    几年前到某著名大学参加学术活动,无意中听到该校两位老师闲聊,现在还记得的一句话就是"形式化方法已经不行了".看来真是隔行如隔山,评价自己不熟悉的领域,而且随便说,难免出错.在对形式 ...

最新文章

  1. vc++64位系统下long的长度为4个字节_64位系统究竟牛逼在哪里?
  2. mysql 创建date,在MySQL中从DATE和TIME创建DATETIME?
  3. 用C#和本地Windows API操纵系统菜单
  4. 时间戳引起的网站访问不了的问题(net.ipv4.tcp_timestamps)
  5. 基于Android Studio搭建hello world工程
  6. DL之DNN:基于神经网络(从1层~50层)DNN算法实现对非线性数据集点进行绘制决策边界
  7. videojs如何获取请求消息_中通消息平台 Kafka 顺序消费线程模型的实践与优化
  8. js写随机输出7位数代码教程
  9. 汉诺塔VII(递推,模拟)
  10. 现在Windows Server 2012在Windows Azure 虚拟机库中可用
  11. matlab中如何将视频保存成图像
  12. 第三方开源项目名称_如何为您的开源项目选择品牌名称
  13. 华为Mate X2黄牛价已超两万,结果小伙子没拿稳,成全网首摔?
  14. eclipse 选取当前行_苏云金杆菌的防虫效果,取决于能否科学利用,绝非一句“用就行”...
  15. 使用MyEclipse开发Java EE应用:用XDoclet创建EJB 2 Session Bean项目(二)
  16. Linux-1:安装忘记密码CRT连接centos 6.5
  17. “软下来”的苹果和小米能否拯救智能手机的焦虑? | 畅言
  18. 电路与模拟电子技术(作业答案)
  19. 微信小程序复制就好-JS工具eval5,用JS替换VBA处理Excel数据
  20. 双线性对映射 概念理解

热门文章

  1. matlab 将数据存为txt文件,怎么用matlab将数据存为txt文件
  2. Robocode教程1——安装、运行、配置
  3. FreeRTOS 通信方式
  4. Apache Atlas的部署
  5. windows LSP 实现及多个lsp兼容安装的几个坑
  6. 格雷码解析以及计算(仅供自己记录查阅)
  7. VC实现对Excel表格的操作
  8. 图文:eclipse中SVN分支合并到主干
  9. 构建 PHP运行环境
  10. python建模大赛算法_利用Python实现主题建模和LDA 算法(附链接)