题目:

令A、B和C是任意正规式,证明以下关系成立:

A∣A=A

(A*)*= A*

        A*=ε∣A A*

       (AB)*A=A(BA)*

       (A∣B)*=(A*B*)*=(A*∣B*)*

A=b∣aA当且仅当A=a*b

解答:

(1)、A∣A=A

L(A∣A)=L(A)∪L(A)=L(A),所以有A∣A=A。

(2)、(A*)*= A*

(3)、A*=ε∣A A*

通过证明两个正规式所表示的语言相同来证明两个正规式相等。

L(ε∣A A*)=L(ε)∪L(A)L(A*)= L(ε)∪L(A)(L(A) )*

=L(ε)∪L(A)((L(A))0∪(L(A))1∪(L(A))2∪(L(A))3∪…)

=L(ε)∪(L(A))1∪(L(A))2∪(L(A))3∪(L(A))4∪…

=(L(A))*=L(A*)

即:L(ε∣A A*)=L(A*),所以有:A*=ε∣A A*

(4)、(AB)*A=A(BA)*

利用正规式的分配率和结合律直接推导。

(AB)*A=((AB)0∣(AB)1∣(AB)2∣(AB)3∣…)A

=εA∣(AB)1A∣(AB)2A∣(AB)3A∣…

=Aε∣A (BA)1∣A (BA)2∣A (BA)3∣…

=A(ε∣(BA)1∣(BA)2∣(BA)3∣…)

=A(BA)*

即:(AB)*A=A(BA)*

(5)、(A∣B)*=(A*B*)*=(A*∣B*)*

证明:先证(A∣B)*=(A*B*)*

因为L(A)L(A) *L(B) *,L(B)  L(A) *L(B) *

故:L(A) ∪L(B) L(A) *L(B) *

于是由本题第二小题结论可知(L(A)∪L(B)) *(L(A) *L(B)*)*      ①

又L(A)L(A)∪L(B),  L(B) L(A)∪L(B)

故:L(A)*(L(A)∪L(B))*

L(B)*(L(A)∪L(B))*

因此有:L(A)*L(B)* (L(A)∪L(B))* (L(A)∪L(B))*=( (L(A)∪L(B))*) 2

故(L(A)*L(B)*)*((L(A)∪L(B))*)*

由本题第二小题得: ((L(A)∪L(B))*)*= (L(A)∪L(B)) *

故得: (L(A)*L(B)*)*(L(A)∪L(B)) *             ②

则由①②得: (L(A)∪L(B)) *=(L(A)*L(B)*)*

由于L((A*B*))*=(L(A*B*))*=(L(A*)L(B*))*=(L(A)*L(B)*)*

即有(L(A)∪L(B))*=L((A*B*))*               ③

而(A|B)*对应的语言为(L(A)∪L(B))*,且(A*B*)*对应的语言为L((A*B*))*

则根据③得(A|B)*=(A*B*)*

再证:(A*|B*)*=(A*B*)*

因为:A,B是任意正规式,由以上结论得: (A*|B*)*=((A*)*(B*)*)*

又由本题第二小题目的结论可得:(A*)*=A*,(B*)*=B*

因此,(A*|B*)*=(A*B*)*

综合上述两种结论,最后得:(A∣B)*=(A*B*)*=(A*∣B*)*

编译原理课后习题答案令A,B和C是任意正规式,证明以下关系成立(A|B)*=(A*B*)*=(A*|B*)*的更多相关文章

  1. C++面向程序设计(第二版)课后习题答案解析

    最近没什么心情整理零散的知识点,就整理一下第四章的课后习题答案. 1.定义一个复数类Complex,重载运算符“+”,使之能用于复数的加法运算.将运算符函数重载为非成员函数,非友元的普通函数.编程序, ...

  2. 《编译原理》画 DAG 图与求优化后的 4 元式代码- 例题解析

    <编译原理>画 DAG 图与求优化后的 4 元式代码- 例题解析 DAG 图(Directed Acylic Graph)无环路有向图 (一)基本块 基本块是指程序中一顺序执行的语句序列, ...

  3. 实验七 《FBG》—-小学生课后习题答案原型设计

    一.实验目的与要求 1.掌握软件原型开发技术 2.学习使用软件原型开发工具 二.实验内容与步骤 1.开发工具: 使用的工具:墨刀(APP端开发原型) 工具简介: 墨刀(MockingBot)是一款简单 ...

  4. 大数据基础--R语言(刘鹏《大数据》课后习题答案)

    1.R语言是解释性语言还是编译性语言?   解释性语言 2.简述R语言的基本功能.   R语言是一套完整的数据处理.计算和制图软件系统,主要包括以下功能: (1)数据存储和处理功能,丰富的数据读取与存 ...

  5. Java语言程序设计(第三版)第二章课后习题答案(仅供参考)

    2.1   注意不同类型转换 import java.util.Scanner; public class Ch02 { public static void main(String[] args) ...

  6. C语言程序设计:现代方法(第2版)第二章全部习题答案

    前言 本人在通过<C语言程序设计:现代方法(第2版)>自学C语言时,发现国内并没有该书完整的课后习题答案,所以就想把自己在学习过程中所做出的答案分享出来,以供大家参考.这些答案是本人自己解 ...

  7. C++Primer第五版——习题答案目录

    目前正在刷<C++Primer>这本书,会在博客上记录课后习题答案,答案仅供参考. 因为水平有限,如有有误之处,希望大家不吝指教,谢谢! 目录地址 使用的系统为:win 10,编译器:VS ...

  8. C语言程序设计:现代方法(第2版)第三章全部习题答案

    前言 本人在通过<C语言程序设计:现代方法(第2版)>自学C语言时,发现国内并没有该书完整的课后习题答案,所以就想把自己在学习过程中所做出的答案分享出来,以供大家参考.这些答案是本人自己解 ...

  9. Thinking in Java 4th(Java编程思想第四版)文档、源码、习题答案

    Thinking in Java 4th 中.英文两版pdf文档,书中源码及课后习题答案.链接:https://pan.baidu.com/s/1BKJdtgJ3s-_rN1OB4rpLTQ 密码:2 ...

随机推荐

  1. python 练习题练习题2--多分支选择

    题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%:20万到40万之 ...

  2. WebService 页面重定向错误

    “/”应用程序中的服务器错误. 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败. xxx.xxx.xxx.xxx:xx 说明: 执行当前 Web 请求期间,出现未经处理的异常.请 ...

  3. C#中的事件介绍

    什么是事件?事件有哪些?怎么用事件? 一.什么是事件? 事件(Event) 基本上说是一个用户操作,如按键.点击.鼠标移动.输入值改变等等,或者是一些出现,如系统生成的通知.应用程序需要在事件发生时响 ...

  4. esp8266必备知识

    gpio定义 RX和TX为D9和D10

  5. Chrome浏览器快捷键(收藏!)

  6. mac 安装memcache扩展问题

    执行php -i 报错: Warning: PHP Startup: memcached: Unable to initialize module Module compiled with build ...

  7. [转帖收集] Java注解

    1.Annotation 它的作用是修饰编程元素.什么是编程元素呢?例如:包.类.构造方法.方法.成员变量等.Annotation(注解)就是Java提供了一种元程序中的元素关联任何信息和任何元数据( ...

  8. vmware 虚拟机下 ubuntu 与主机共享锐捷

    一直以来.想要学习 linux ,在 vm 虚拟机下安装了 ubuntu 系统. 可是这个系统并不能上网.原因就是 vm 虚拟机的虚拟网卡会和锐捷冲突.锐捷会检測到多网卡,断开网络,所以不得不禁用 v ...

  9. Objective-C规范注释心得——同时兼容appledoc(docset、html)与doxygen(html、pdf)的文档生成

    作者:zyl910 手工写文档是一件苦差事,幸好现在有从源码中抽取注释生成文档的专用工具.对于Objective-C来说,目前最好用的工具是appledoc和doxygen.可是这两种工具对于注释的要 ...

  10. CURLOPT_SSL_VERIFYPEER CURLOPT_SSL_VERIFYHOST

    w /** * Set curl options relating to SSL. Protected to allow overriding. * @param $ch curl handle */ ...