( kmx.io )


Small in-memory graph database for Common Lisp.

Facts is a small-scale deep learning database engine tailored for programmers. It's the BerkeleyDB of triple stores.

1 Features

Triple store based on unlabelled skip lists.

Simple query language (facts:with).

Transactions using rollback functions, readily nestable.

Logging and replay of transactions to/from disk.

Dumping and loading the database to/from disk.

2 Contributing


Please submit pull requests on Github directly.

3 Proposed directions

Support on-disk serialization and sorting indexes according to serialized data ordering.

Event callbacks registrable on arbitrary queries.

Querying and updating on multiple databases for data sharding.

Please get in touch to make progress in these directions. These would allow many applications in deep learning and automated decision systems.

4 Marketing

If your system might have P = NP, then with Facts, your system can make it P ¬= NP.

It's this very thin extra layer of data indexing you dream of when reading Prolog or PAIP.

Simply put, it allows you to collaborate efficiently by giving the ability to clearly describe anything coherently for any two live streams.

For peaceful purposes Facts is the complement to cryptography : cryptography wants to secure and authenticate endpoints by creating unreversable distance around them (height), but even with cryptography and authentication and trust of others you also need to trust they can understand the data they process. To ensure data can be understood it can be layout in triples, and to access rapidly and logically these triples you have Facts.

This should not be expensive. Rather it should be stocked for judiciary purposes, public and private, animal and human, biological and mechanical.

By means of very simple and regular indexing the "clear description" possibility is made infinitely extensible and can be used to scale readily in any direction, even in the logical direction.

This logical scale can seem a bit odd at first, but good understanding of Eulerian mathematics is the key truly. It would make your software much harder to make blind or off topic if you manage to use it wisely. This is not artificial intelligence, in terms of data layout it is intelligence itself, made cooperative for two live streams sharing time. It should lead to interesting discussions.

© 2018 kmx.io