Tools
This page collects the tools and software libraries that have been created around the IDP-Z3 project. They are categorized according to their purpose: knowledge base tools,
FO(·) tools
Linter
FOLint is a linter for FO(·). It comes with a range of useful verification capabilities that can help you spot errors more quickly. It can be integrated into most (if not all) editors with support for external tools. The FOLint link contains an installation guide, and this directory contains specific guides on setting up FOLint in Notepad++, (neo)vim, and vscode.
FOLint is also enabled in the online knowledge editor.
Syntax highlighters
The following urls explain how to get syntax highlighting for some common editors:
- (neo)vim
- neovim using tree-sitter: parser , nvim-treesitter (slightly more experimental, but likely better in the future)
- vscode
Development tools
Tools for people who are developing IDP-Z3 or similar systems. Be sure to also check the development page in the IDP-Z3 wiki .
- fodot parser using tree-sitter (language-independent)
Other
KeBAP
The Knowledge-Base API for Python (KeBAP) library offers an ergonomic API for building FO(·) KBs through Python. It is currently in active development, so some features are still missing.
cDMN
cDMN is a user-friendly, tabular format for formalizing knowledge. Its main goal is to be easier to use than standard FO(·) for non-experts, to better bridge the gap between academia and industry. The cDMN solver is a software tool which converts cDMN models into FO(·) so they can be used in IDP-Z3.
SLI
SLI is an alternative IDP engine with a focus on speed and efficiency. It is under heavy development, and not production ready. However, it already promises some substantial speed gains, so if you’re stuck with a slow KB, you can always try it in SLI. :-)