souffle
2.0.2-371-g6315b36
|
Go to the documentation of this file.
35 const TranslationUnit& tu,
const Clause& clause,
const Aggregator& aggregate);
41 const TranslationUnit& tu,
const Clause& clause,
const Aggregator& aggregate);
65 const TranslationUnit& tu,
const Clause& clause,
const Aggregator& aggregate);
std::set< std::string > getLocalVariables(const TranslationUnit &tu, const Clause &clause, const Aggregator &aggregate)
Computes the set of local variables in an aggregate expression.
std::set< std::string > getVariablesOutsideAggregate(const Clause &clause, const Aggregator &aggregate)
Computes the set of variables occurring outside the aggregate.
std::string findUniqueRelationName(const Program &program, std::string base)
Find a new relation name.
std::string findUniqueVariableName(const Clause &clause, std::string base)
Find a variable name using base to form a string like base1 Use this when you need to limit the scope...
std::set< std::string > getWitnessVariables(const TranslationUnit &tu, const Clause &clause, const Aggregator &aggregate)
Computes the set of witness variables that are used in the aggregate A variable is a witness if it oc...
std::set< std::string > getInjectedVariables(const TranslationUnit &tu, const Clause &clause, const Aggregator &aggregate)
Given an aggregate and a clause, we find all the variables that have been injected into the aggregate...