Knowledge graph
A knowledge graph is a graph in which entities in your business (e.g. Users, Companies, Wallets) are connected to other entities via relationships. For instance, user “Alice” “works at” the company “Acme Corp”. “Alice” has a “Wallet” for storing currency. Using a knowledge graph, you can find the amount of currency “Acme Corp” has by traversing the graph and summing up all the wallets of all users who work at “Acme Corp”. Typically, knowledge graphs are stored as triples: (Entity A, Relationship, Entity B). Prometheux doesn’t force you to conceptualise your data in this way, allowing you to model relationships that involve multiple properties and entities.Core building blocks
Data source
A data source is any structured or semistructured data that you wish to connect into a knowledge graph. See Data Sources for the connectors and formats supported.Ontology
At the core of Prometheux is an ontology. This is the set of business rules that you write to define how the entities in your system relate to each other, and how entities are connected to your real data. These rules are written in Vadalog.Data binding
Included in your ontology is a way to tell Prometheux which data sources power the entities in your ruleset. In Vadalog, there are specific@bind and @qbind annotations for binding your rules to your data.
Reasoning
By processing the rules and data in your ontology, Prometheux is able to deduce new facts or specific outcomes by processing your rule program. This processing is known as reasoning.The chase graph: how results are derived
When you ask Prometheux to reason over a set of rules, it performs this processing by repeatedly chasing the rules in your ruleset until their logical conclusion. The steps it takes to reach an answer are known as a chase graph: a graph of the rules and data that contributed to the answer. This graph is itself a knowledge graph that can be explored and analysed, giving you full lineage and provenance over every derived fact. For the full reference, see Chase and Provenance.Materializing the chase graph
Prometheux natively supports full explanations of logical processes for output generation in reasoning tasks via the materialization of the chase graph during its parallel and distributed evaluation. The chase graph mode is activated using the@chase annotation and is materialized into data sources such as CSV files or Neo4j databases. Its syntax is:
disk/data/chase.csv:
Working with concepts in the app
This page covers the concepts behind the platform. To see where you build and run them in the product UI:- Project Workspace — the Explorer tree, the Concepts and Data tabs, and the lineage canvas.
- Concept Editor — every control, tab, and keyboard shortcut in the editor.
Where to go next
- Vadalog overview — the language used to write rules
- Annotations —
@bind,@qbind,@chase, and@output - Data sources — connecting your data
- Chase and provenance — full lineage reference
- Explanations — explaining reasoning outputs

