特殊情况下的DFA交集算法


9

我对特殊情况下DFA交集的高效算法感兴趣。即,当相交的DFA遵循某种结构和/或以有限的字母进行操作时。有什么资料可以找到这种情况的算法吗?

为了不使问题过于笼统,以下结构特别受关注:所有要相交的DFA都以二进制字母(0 | 1)进行操作,它们也可以使用无关符号。此外,除最多K个特殊状态(仅有两个过渡)外,所有状态都只有一个过渡(并且这些过渡始终为0或1,但不在乎)。K是整数,出于实用目的,小于10。而且,它们具有单个接受状态。此外,已知交集始终是“条”形式的DFA,即无分支,如下图所示:

在此处输入图片说明

编辑:也许对输入DFA的约束的描述不是很清楚。我将在本段中尝试对其进行改进。您有输入T DFA。这些DFA均仅对二进制字母进行操作。每个国家最多拥有N个州。对于每个DFA,其每个状态均为以下之一:

1)接受状态(只有一种状态,从它到任何其他状态都没有过渡)

2)具有两个转换(0和1)到同一目标状态的状态(大多数状态是这种状态)

3)具有两个转换(0和1)到不同目标状态(最多这种K)的状态

可以确保每个输入DFA中只有一个接受状态,并且最多只有K个类型(3)的状态。还保证所有输入DFA的交点DFA是“条”(如上所述),大小小于N

EDIT2: DW在评论中要求的一些附加约束:

  • 输入的DFA是DAG。
  • 输入的DFA按照注释中的DW定义进行“级别调整”。也就是说,您可以为每个状态分配不同的整数,以使每次转换都从整数u到整数v,从而u + 1 = v
  • 接受状态的每个输入DFA的数量,不超过ķ

有任何想法吗?谢谢。


您如何精确建模“不在乎”?在某种程度上,它似乎使自动机变得不确定。
Shaull

@Shaull为什么要使自动机具有不确定性。仅当存在从相同状态进行的另一种转换(明确排除)时,才可能发生这种情况。
2015年

1
什么a DFA in form of "strip", i.e., no branches啊 您是否有任何特定的理由相信您的情况可以比标准算法做得更好?
2015年

1
你好 计算实际的相交会很棒,因为它将简化许多事情,但是确定空度也将很有用。
ale64bit 2015年

1
刚刚在相交图上碰到了一篇新论文,这种理论中的某些是否有意义?您能否扩展理论计算机科学聊天室中您的评论中提到的应用程序?并邀请其他人继续在那里进一步讨论。
vzn 2015年

Answers:


9

是的,P内有一些DFA非空插入的问题。我的硕士论文专门针对这个问题,但不幸的是它是法文。但是,大多数结果都出现在这里[2]

如果字母为一元,则每个DFA最多具有两个最终状态时问题是L-完成的,否则问题是NP-complete。其他大多数情况是对自动机的过渡半定式的限制。例如,对于阿贝尔群过渡单等式,问题出在数控3每个DFA最多具有一个最终状态,否则NP完成;对于基本的2组过渡Monoid,问题是当每个DFA最多具有两个最终状态时,L-完成;否则,NP-完成。


现在让我解决您更精确的问题,该问题只能在 [1个]。假设为您提供了DFA工作{01个} 形如树木,即存在状态 ü (初始状态),以便每个状态 v 从那里存在一条独特的道路 üv。然后,确定交叉点非空为:

  1. 每个DFA中一个最终状态的L-完成,
  2. 每个DFA中两个最终状态的NL完整,以及
  3. 每个DFA中三个或更多最终状态的NP完全性。

即使您分别“叉” 0、1或2次(这是您的 ķ)。现在,如果您的DFA是有向无环图而不是有向图,那么问题是NP完全的,即使每个DFA中都有一个最终状态,ķ=2; 减少是非常简单的,是从Monotone 1-in-3 3-SAT中得出的。

因此,,我认为没有有效的算法可以解决您的问题。

现在,如果自动机的数量是固定的,那么您可能要与最近出版的Michael Wehar进行讨论[3]


编辑:由于OP编辑了他的问题,所以让我用他的新要求来澄清我的答案。考虑NP完全问题单调1-在-3 3-SAT,你给出一个公式中3-CNF没有否定,并在那里你必须确定是否存在转让,使恰好每个子句中一个变量如此。您可以按如下方法将此问题简化为非空交叉问题。例如,对于子句X2X3X5,您将构建以下自动机:

还原小工具

请注意,自动机是树(因此是DAG),已级别化,并且具有三个最终状态。实际上,如果对DAG满意,则可以将三个最终状态合并为一个状态。此外,只有两个州有两个(不同的)外向过渡。

  1. 迈克尔·布朗丁。自动化交叉路口的复杂建筑 论文,蒙特利尔大学,2012年。
  2. 迈克尔·布朗丁(Michael Blondin),安德烈亚斯·克雷布斯(Andreas Krebs)和皮埃尔·麦肯齐(Pierre McKenzie)具有很少最终状态的有限自动机相交的复杂性,计算复杂性(CC),2014年。
  3. 迈克尔·韦哈(Michael Wehar)。交叉点非空度的硬度结果。ICALP,2014年。

2
非常感谢!我接受你的回答。这个问题源于一些实际测试,在经过许多步骤之后,一切都减少了,使许多具有此特定特征的DFA解决方案相交。尽管如此,我们观察到,尽管最后我们将获得一个简单的DFA,但是由于中间DFA(依次相交)正迅速发展成指数级的状态,因此该过程从未完成。因此,如何不通过中间“天真的”步骤就获得答案的问题。
ale64bit 2015年

1
非常感谢(并不清楚,我在这个领域还不是新手。)现在有些事情我不明白。您提到“形状像树”是指“从根到每个其他节点的唯一路径”。但是,例如,在您在编辑中发布的图像中,那不是一棵树(除非您将0/1过渡算作一个标签)?
ale64bit 2015年

1
您是对的,但我的理解是您允许“无关”转换。是不是这样
迈克尔·布朗丹2015年

2
嗨,迈克尔。感谢您的好答案。我希望一切都好。:)
Michael Wehar 2015年

2
@MichaelWehar如果您同时固定了k和c,则提到您可以“迅速”解决问题。但是您没有提到时间复杂度,只有空间复杂度。在这种情况下,“快速”到底意味着什么?
ale64bit 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.