Skip to content

IBM/ULKB

Repository files navigation

ULKB

The Universal Logic Knowledge Base (ULKB) is a HOL-based framework for reasoning over knowledge graphs.

It consists of two main components:

  1. ULKB Logic. A higher-order logic (HOL) language and interactive theorem-prover like environment for reasoning over knowledge graphs.

  2. 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.)

Directory structure

  • 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.

Installation

$ git clone https://github.com/IBM/ULKB
$ cd ULKB
$ pip install -e .

Testing

Install the test dependencies:

$ make install-deps

Run all tests:

$ make check