EYE

# Euler Yet another proof Engine - EYE

EYE is a reasoning engine supporting the Semantic Web layers.
It performs controlled chaining and it supports Euler paths.
Via N3 it is interoperable with Cwm.

Controlled chaining is backward chaining for rules using `<=` in N3
and forward chaining for rules using `=>` in N3.
This can be seen at work in EYE reasoning.

Euler paths are roughly "don't step in your own steps" which is inspired by
what Leonhard Euler discovered in 1736 for the Königsberg Bridge Problem.
EYE sees the rule `P => C` as `P & NOT(C) => C`.

EYE can be installed manually on Linux, Windows and MacOSX.
EYE is also available in a Docker container for command line use
and in a Docker container for HTTP client use.

### Architecture and design

The EYE stack comprises the following Software and Machines:

This is what the basic EAM (Euler Abstract Machine) does in a nutshell:

1. Select rule P => C
2. Prove P & NOT(C) (backward chaining) and if it fails backtrack to 1.
3. If P & NOT(C) assert C (forward chaining) and remove brake
4. If C = answer(A) and tactic limited-answer stop, else backtrack to 2.
5. If brake or tactic linear-select stop, else start again at 1.

### See also

- EYE paper: Drawing Conclusions from Linked Data on the Web: The EYE Reasoner
- EYE tutorial: Semantic Web Reasoning With EYE
- EYE talk: EYE looking through N3 glasses