The Universal Logic Knowledge Base (ULKB) is a HOL-based framework for reasoning over knowledge graphs.
It consists of two main components:
-
ULKB Logic. A higher-order logic (HOL) language and interactive theorem-prover like environment for reasoning over knowledge graphs.
-
ULKB Graph. A core knowledge graph augmented by a federation of external knowledge bases.
This repository contains the source code of ULKB Logic (i.e., the Python
library ulkb
). Code examples and tutorials can be found under
examples. For more detailed documentation, see the Reference
Manual.
(The ontology files of the ULKB Graph can be found under graph. The ULKB Logic code does not depend on these files.)
- docs: Reference manual.
- docs_src: Reference manual sources.
- examples: Code examples and tutorials.
- graph: Ontology files and graph generation code.
- tests: Testing code.
- ulkb:
ulkb
library sources.
$ git clone https://github.com/IBM/ULKB
$ cd ULKB
$ pip install -e .
Install the test dependencies:
$ make install-deps
Run all tests:
$ make check
Guilherme Lima, Alexandre Rademaker, Rosario Uceda-Sossa. (2024). ULKB Logic: A HOL-Based Framework for Reasoning over Knowledge Graphs. In: Barbosa, H., Zohar, Y. (eds) Formal Methods: Foundations and Applications. SBMF 2023. Lecture Notes in Computer Science, vol 14414. Springer, Cham.