bzip2图灵完备吗?

Posted

技术标签:

【中文标题】bzip2图灵完备吗?【英文标题】:Is bzip2 turing complete? 【发布时间】:2017-12-10 21:04:57 【问题描述】:

或任何其他压缩算法,就此而言。

(话说回来,如果有图灵完备的压缩算法,还会认为是压缩算法,而不是编程语言吗?)

【问题讨论】:

.rar 支持功能齐全的字节码。 【参考方案1】:

如果您询问的是 de-compressor,而不是压缩器,那么这个问题几乎是有道理的。压缩器的工作实际上是编写要由解压缩器执行的程序,该程序将重新创建被压缩的原始文件。该程序是用压缩数据格式的语言编写的。

那个问题的答案是否定的,bzip2 解压器不是图灵完备的,因为它无法循环或递归。我知道的任何其他标准压缩格式的解​​压缩器也没有。

更新:

由于安全问题,它似乎已被弃用,但显然 WinRAR 在解压缩器中内置了一种称为RarVM 的后处理语言,这是一个图灵完备的机器,用于实现任意复杂的数据预压缩过滤器.

【讨论】:

Rar 有 RarVM,一个图灵完备的数据过滤虚拟机。另一个是(虽然不是那么流行)ZPAQ,它也正在完善(我不是 100% 确定这个)。

以上是关于bzip2图灵完备吗?的主要内容,如果未能解决你的问题,请参考以下文章

C++ 预处理器元编程图灵完备吗?

寻找不是图灵完备的语言

13.图灵完备和哈希算法

BSV 上的图灵完备的“规则110”

BSV 上的图灵完备的“规则110”

“非图灵完备”到底意味着什么