[发明专利]模块化森林自动机有效
申请号: | 200980139411.6 | 申请日: | 2009-08-20 |
公开(公告)号: | CN102165434A | 公开(公告)日: | 2011-08-24 |
发明(设计)人: | G·M·德拉-利贝拉;S·E·卢科 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/00 | 分类号: | G06F17/00;G06F17/30 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 陈斌 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 模块化 森林 自动机 | ||
背景
编程语言可以使用模式来区别值的类。例如,下面的两行伪代码定义计算一列整数的总和的函数。
Sum(nil)=0;
Sum(cons[head,tail])=head+Sum(tail);
此示例中的模式有两个目的。首先,它们区别输入情况。其次,它们允许通过使用模式变量和类型推断来进行简洁值解构。
模式与结构类型紧密相关。此处所描述的正则树模式是也可以包括变量绑定的正则树类型。与语义动作相耦合的树模式叫做树变换规则。
诸如XML模式语言之类的结构类型系统定义各类别的值。编程语言常常使用结构类型系统来静态地检查程序安全属性。SQL数据库还使用主要聚焦于结构的类型系统。通过联接所产生的表例如包含可以描述为具有匿名结构类型的元组。数据库管理系统要求各种程序可以解释存储在该系统中的数据。结构类型系统帮助数据库管理系统满足这一要求。
分布式系统也产生对于结构类型的要求。由于等待时间,在分布式程序组件之间交换的消息常常比在对象之间交换的方法参数更大、更加复杂。
存储在数据库中的并且在分布式组件之间交换的值在复杂性方面介于由程序表达式操纵的简单值和图灵机的复杂性之间。如此处所描述的,正则树模式被用来定义结构复杂性的这些中间级别。
表达和分析有序的和无序的正则树模式是有用的和有益的能力。其中分析将被有利地改进的域的示例包括模型校验和使用部分有序的树模式的授权逻辑。诸如XML模式之类的某些现有语言可以使用部分有序的正则树,但是当前缺乏用于进行子类型化(subtyping)的手段。此外,这样的语言可以施加语义约束,以便在当前已知方法下支持有效的实现。
对贪婪正则表达式匹配和编程语言XStatic的某些工作已经研究了如何将正则有序的树类型合并到面向对象的语言中。类似于XDuce,XStatic对于序列使用统一表示。这样的工作将正则有序的树类型映射到对象,但是使用展平处理(flattening)来支持所包括的正则语言的自然语义。最后,trx在Scheme(模式)的上下文中研究正则有序的树类型。
对下推森林自动机(PFA)也完成了某些工作。然而,PFA却不提供子类型化算法,或用于寻址无序的嵌套(多重集)的机制。
简要概述
本发明的各实施例涉及模块化森林自动机(MFA)。此处所描述的模块化森林自动机可以被用来描述和分析正则树模式,并可以创建可以简明地表达带标记的有向图的转换的模块化森林转换器(transducer)(MFT)。图转换是逻辑、过程模型、以及编程语言的实现中的基本成份。模块化森林自动机的实现可以被用来支持高性能的、强类型的图转换。
模块化森林自动机是用于定义、重新组织、以及转换部分有序的、有限的、未分层级(unranked)的树的集合的机制。MFA支持对MFA分层结构的分析和合成。MFA提供对有序的和无序的树模式的统一处理。
此处所描述的实施例包括用于分析正则树模式的方法、系统、以及计算机程序产品。特定实施例允许接收可以被确定或重写为描述序列和集合两者的模块(机器)的数据。可以从根据接收到的数据确定的模块创建并集。所确定的模块和模块的并集可以包括带标记的接受状态。根据带标记的接受状态,可以为模块确定子类型关系。
此处所描述的其他实施例还包括用于表达正则树模式的转换的方法、系统、以及计算机程序产品。可以接收正则树模式,并可以接收特定实例数据。可以从接收到的正则树模式编译转换器。可以利用对应于所需转换的指令来扩充转换器变换。可以根据经扩充的转换器变换和实例数据,确定正则树模式的元素和实例数据的元素之间的对应关系。
提供本概述是为了以精简的形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中叙述,且其一部分根据本描述将是显而易见的,或可通过对本发明的实践来获知。本发明的特征和优点可通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的这些和其他特征将通过以下描述和所附权利要求书变得更加显而易见,或可通过对下文中所述的本发明的实践来领会。
附图简述
为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解,这些附图只描绘了本发明的各典型实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释本发明,在附图中:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200980139411.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种叶腊石粉高电阻绝缘水泥
- 下一篇:一种自清洁玻璃的制备方法