souffle
souffle copied to clipboard
Soufflé is a variant of Datalog for tool designers crafting analyses in Horn clauses. Soufflé synthesizes a native parallel C++ program from a logic specification.
I'm not sure the right title for this issue. Here's an input file. ``` .comp A { .decl E(s: symbol, t: symbol) E("a", "b"). E("b", "c"). .comp A1 { .decl...
Our project would like to use `explain` to generate a proof tree for our analysis. It appears that our use of ADTs is blocking us from being able to use...
Souffle fails an assertion for the example below. This occurs in release 2.3 and latest master (ecee065f54bea9f0caf7b7508b17577948c277ea). ``` $ souffle -g test.cpp test.dl souffle: /home/aseitz/Projects/souffle/src/ast2ram/seminaive/ValueTranslator.cpp:47: virtual souffle::Own souffle::ast2ram::seminaive::ValueTranslator::visit_(souffle::type_identity, const souffle::ast::Variable&):...
Souffle generates a segmentation fault when printing error message for ungrounded variable in a record when the rule is inlined, see below. This occurs in release 2.3 and latest master...
Right now, the auto-scheduler can be used with the interpreter as follows: `souffle -p --emit-statistics` `souffle --auto-schedule=` The first command generates a profile with index selectivity statistics. The second command...
Aggregates in Soufflé are very useful. However, there are use-cases where a developer would want to use its own aggregating function (instead of the intrinsics min, max, count, sum, etc.)...
We added new features to Souffle. We need to check whether these new features are adequately reflected in the documentation: - [ ] Scheduling (new scheduling heuristic / auto-scheduling) -...
In addition to being a performance optimization, the magic sets transform often grounds variables that might otherwise be ungrounded. Unfortunately, it appears that souffle performs a check for grounding prior...
Another attempt at #2231. For more context on why merge-extend is a bottleneck, see https://github.com/souffle-lang/souffle/issues/2054