holmes
holmes copied to clipboard
Datalog engine with extensions for integrating analyses
In my original design (back when Holmes was still a server) I had multiple processing threads. I think this would be valuable to bring back because: * It may work...
Currently, typechecking is performed only dynamically. This leads to a compile/test cycle that's much longer than it needs to be if the rule wouldn't trigger until later in the program....
While Postgres has a number of features that make it nicer to use, it may be worthwhile to get SQLite support working because: * It'd remove the need for the...
Right now, dynamically extended types are implemented via the assumption that they are being implemented for postgres. Since for many types (e.g. bitvectors) it may not be plausible to be...
Record which rule, matched on which facts, is being used to generate each output fact. This record should contain redundant entries. This is intended as prerequisite work for circumscription.
Add monotonic aggregation, as explained in thesis proposal. Essentially: 1.) User defines a bounded join-semilattice. 2.) User can match on whether the join of a field in a submatch will...
* Add circumscription entries to the inference structure records * Allow rules which examine the join of all known field values in a match * Trigger these rules on quiescence,...
Create a RPC-style Holmes server, which entails: * One program sitting in front of the server * The ability to load logic programs into the server over the network *...