# eyeprolog 中文文档

规范地址：https://npmcn.com/package/eyeprolog/

版本：1\.6\.44
npm 元数据更新时间：2026-11-03T13:59:23.687Z
中文译文更新时间：2026-11-03T15:53:22.214Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/eyeprolog
原文对照：https://npmcn.com/package/eyeprolog/?lang=original
项目主页：https://github.com/eyereasoner/eyeprolog#readme
源码仓库：https://github.com/eyereasoner/eyeprolog

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：58.5 MB，3394 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=18
- 运行依赖：0 个
- 首次发布：2026-08-07T00:25:53.166Z
- 最新版本发布：2026-11-03T13:59:23.186Z
- 已发布版本数：359（近 12 个月 359 个）

## 中文简介

EyeProlog将事实和规则转化为答案和证明。

## 安装

```sh
npm install eyeprolog
```

也可以使用：`pnpm add eyeprolog`、`yarn add eyeprolog`、`bun add eyeprolog`

## README

# EyeProlog

[![npm version](https://img.shields.io/npm/v/eyeprolog.svg)](https://www.npmjs.com/package/eyeprolog) [![DOI](https://img.shields.io/badge/DOI-10.5281%2Fzenodo.21446308-blue.svg)](https://doi.org/10.5281/zenodo.21446308)

EyeProlog将便携式ISO Prolog程序转换为答案和可检查的证明。

[![Read The Art of EyeProlog](https://npmcn.com/package/eyeprolog/book-assets/title-page.svg "Click to read The Art of EyeProlog")](https://eyereasoner.github.io/eyeprolog/the-art-of-eyeprolog)  
**点击封面阅读 _视觉的艺术_。**

单个实现引用是 [_视觉的艺术_](https://eyereasoner.github.io/eyeprolog/the-art-of-eyeprolog)。 它记录了语言，内置，库，命令行，JavaScript API， 示例、证明、一致性概要文件和实现。

## 20年的EYE，接下来的20年

欧拉项目始于2001年，并于2006年成为基于prolog的推理器EYE；它在2026年还活着。EYE以一种象征性的方式纪念一只眼睛失明的莱昂哈德·欧拉。视网膜项目始于2021年，并于2026年成为EyeProlog；我们希望在接下来的二十年里保持增长。这种延续让人想起了欧拉，他后来失去了另一只眼睛，而这个项目一直试图通过逻辑、证明和推理看得更远。

## 快速启动

EyeProlog需要Node.js 18或更新版本：

```sh
node --version
```

如有必要，请通过Node版本管理器或 [官方Node.js下载](https://nodejs.org/en/download)。

运行EyeProlog而不全局安装：

```sh
npx --yes eyeprolog
?- member(X, [prolog, logic]).
   X = prolog
;  X = logic.
?- halt.
```

对于一个持久化命令，使用一个用户自定义的npm前缀：

```sh
npm install --global --prefix "$HOME/.local" eyeprolog
export PATH="$HOME/.local/bin:$PATH"
eyeprolog
```

添加 `PATH` 导出到shell启动文件。不要使用 `sudo npm install`； npm的 [EACCES指导](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally/) 还建议使用Node版本管理器或用户拥有的前缀。

非交互式地运行程序：

```sh
printf 'human(socrates).\nmortal(X) :- human(X).\n' |
  npx --yes eyeprolog --proof --goal 'mortal(socrates)' -
```

或者将答案以对话的形式播放出来，让验证检查者作为对手：

```sh
printf 'human(socrates).\nmortal(X) :- human(X).\n' |
  npx --yes eyeprolog --dialogue --goal 'mortal(socrates)' -
```

## 链接

-   [视觉的艺术](https://eyereasoner.github.io/eyeprolog/the-art-of-eyeprolog) -完整参考
-   [为什么EyeProlog ?](https://eyereasoner.github.io/eyeprolog/why-eyeprolog) -项目范围和设计
-   [ARC在EyeProlog](https://eyereasoner.github.io/eyeprolog/arc-in-eyeprolog) -答案，理由，检查
-   [SPEC.md](https://eyereasoner.github.io/eyeprolog/SPEC) -答案，证明和检查格式，以及证明检查建立的C1-C7七个条件
-   [操场上](https://eyereasoner.github.io/eyeprolog/playground) —在浏览器中运行EyeProlog
-   [例子](https://npmcn.com/package/eyeprolog/examples) -可运行程序和检查输出
-   [例子甲板](https://eyereasoner.github.io/eyeprolog/examples/deck/) -可解释的RDF/Prolog场景与可复制的往返
-   [EyeProlog简介](https://eyereasoner.github.io/eyeprolog/examples/deck/introduction-to-eyeprolog) -为初次观众准备的简短演示
-   [共生知识图](https://eyereasoner.github.io/eyeprolog/examples/deck/symbiotic-knowledge-graphs) - RDF↔人类/AI/KG共同进化的Prolog热浪响应演示
-   [rdf-interchange](https://github.com/eyereasoner/rdf-interchange) - standalone RDF 1.2↔RDF示例使用的ISO Prolog桥
-   [RDF和Prolog：两个基于标准的分支](https://eyereasoner.github.io/rdf-interchange/why-rdf-prolog) -为什么W3C RDF和ISO Prolog是基础
-   [ISO符合性审查](https://eyereasoner.github.io/eyeprolog/test/conformance/ISO-COMPLIANCE) -支持第1部分配置文件
-   [最新的neuerkel一致性](https://eyereasoner.github.io/eyeprolog/test/conformance/NEUMERKEL-LATEST) -跟踪当前上游库存的结果
-   [一致性报告](https://eyereasoner.github.io/eyeprolog/conformance-report) -生成的可执行一致性状态，本地语料库摘要，以及已知偏差
-   [OpenRuleBench](https://eyereasoner.github.io/eyeprolog/openrulebench/) -便携式基准配置文件

## RDF、Prolog和共生知识图

EyeProlog可以隐藏在RDF知识图之后，而无需发明私有的图表示。 [`rdf-interchange`](https://github.com/eyereasoner/rdf-interchange) 将RDF 1.2数据集转换为普通数据集 `rdf(Subject, Predicate, Object, Graph)` 事实，EyeProlog应用可移植的规则和基础 `rdf/4` 结果可以转换回RDF。

的检查 [共生知识图的例子](https://npmcn.com/package/eyeprolog/examples/symbiotic-knowledge-graph.pl) 使用命名图和RDF 1.2三重术语来区分可信知识、人工智能建议的语句和人工审阅。它的 [广大读者的同伴](https://eyereasoner.github.io/eyeprolog/examples/deck/symbiotic-knowledge-graphs) 解释了为什么这是人类/AI/KG共同进化的一个有用的软件模型：RDF提供共享的语义记忆，Prolog提供明确的审议，AI提供新的假设，而人们仍然是意义和判断的参与者。

相同的RDF→Prolog→RDF边界由五个额外的检查场景执行： [跨组织数据共享](https://eyereasoner.github.io/eyeprolog/examples/deck/cross-organization-data-sharing)， [可解释的EV-depot配置](https://eyereasoner.github.io/eyeprolog/examples/deck/explainable-ev-depot-configuration)， [运营事件响应](https://eyereasoner.github.io/eyeprolog/examples/deck/operational-incident-response)， [软件供应链漏洞响应](https://eyereasoner.github.io/eyeprolog/examples/deck/sbom-vulnerability-response)，和 [科学证据图](https://eyereasoner.github.io/eyeprolog/examples/deck/scientific-evidence-graph)． 它们一起涵盖了策略决策、可逆配置推理、依赖图诊断、可传递的SBOM公开和明显不一致的证据聚合。

## 表演

EyeProlog没有单独的挂钟基准测试套件。 `npm test`在数千个一致性、回归和示例程序中运行的运行时间是粗略的性能指标——在那里显示了真正的减速。 [OpenRuleBench](https://eyereasoner.github.io/eyeprolog/openrulebench/) 仍然是专门针对Datalog规则引擎配置文件的经过检查的正确性和规模基准。 有关后iso标准和WG17兼容性特性（如数字分隔符）的项目策略，请参见 [ISO/WG17兼容性扩展](https://eyereasoner.github.io/eyeprolog/test/conformance/ISO-WG17-EXTENSIONS)。

## 发展

```sh
git clone https://github.com/eyereasoner/eyeprolog.git
cd eyeprolog
npm install
npm test
```

npm命令列表故意设置得很小：

-   `npm test` (或 `npm run test`)：运行发布闸门，包括实时的上游符合性检查（其中包括WG17语法）。
-   `npm run neumerkel`：重新获取上游neuerkel一致性源，如果跟踪的报告不再与它们匹配，则失败。释放门将漂移报告为警告；这个命令会导致错误，所以它会自己回答“我们还在运行吗？”

使用 `npm test -- --offline` 用于无网络的本地通行证（这也会跳过实时发现的WG17语法检查，因为它没有脱机快照）。例如，集中检查仍然是直接可用的 `node test/run-regression.mjs docs`;看到 [测试运行](https://eyereasoner.github.io/eyeprolog/test/)． 自动版本挂钩重新构建生成的库和图书文件，运行发布闸门，刷新和执行一致性报告，并推送发布。详细的上游报告维护记录在 [一致性指导](https://eyereasoner.github.io/eyeprolog/test/conformance/)。

EyeProlog是在 [麻省理工学院的许可](https://npmcn.com/package/eyeprolog/LICENSE.md)。

## 常见问题

### eyeprolog 是什么？

EyeProlog将事实和规则转化为答案和证明。

### 如何安装 eyeprolog？

在项目目录运行 npm install eyeprolog，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 eyeprolog，可以用 npx eyeprolog 直接运行。

### eyeprolog 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### eyeprolog 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### eyeprolog 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=18。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### eyeprolog 可以商用吗？

eyeprolog 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### eyeprolog 还在维护吗？

最新版本 1\.6\.44 发布于 2026/11/03（今天）；至今共发布 359 个版本，其中过去 12 个月发布了 359 个；首次发布于 2026/08/07。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

