两种语言的交集是什么?

tot*_*oro 3 union intersection formal-languages automaton

给定语言

L1={anb2m|n,m≥1}
L2={anb3n|n≥0}

L = L1 ? L2
Run Code Online (Sandbox Code Playgroud)

我知道这是常规语言,可以用PDA表示。L1L2

但是我不明白答案L是什么。该解决方案是如何计算的?{a2nb6n|n≥1}

ric*_*ici 5

语言只是一组(有效字符串),所以我们在这里实际上只是整数算法中的一个简单问题。只需删除正式语言的高雅服装即可得出问题的实质。

集合和是的子集; 也就是说,它们包含一定数量的s,然后是一定数量的s。限制条件为正偶数,因为它必须为某个整数。对于条件限制必须准确。L1L2{acount(a)bcount(b)|j,k≥0}abL1count(b)2mm≥1L2count(b)3×count(a)

现在,用谓词定义的两个集合的交集是元素集合,使得两个谓词都为真。因此count(b)必须都可以被2和3整除,这意味着它必须可以被6整除。换句话说,它必须是6n某个正整数n。这意味着count(a)必须这样做,2n因为精确地是3倍b。这样就为您提供了答案。

像一样,不是正常的,但是可以用非常相似的PDA来实现。L2L