#ifndef __EqualityResolution__
#define __EqualityResolution__
#include "Forwards.hpp"
#include "InferenceEngine.hpp"
#include "Inferences/ProofExtra.hpp"
namespace Inferences {
using namespace Kernel;
using namespace Indexing;
using namespace Saturation;
class EqualityResolution
: public GeneratingInferenceEngine
{
public:
ClauseIterator generateClauses(Clause* premise) override;
static Clause* tryResolveEquality(Clause* cl, Literal* toResolve);
private:
struct ResultFn;
struct IsNegativeEqualityFn;
};
using EqualityResolutionExtra = LiteralInferenceExtra;
};
#endif