InfiniTensor/include/nnet/Pass/Rule7DLT.h

17 lines
396 B
C++

#pragma once
#include "nnet/Pass/Pass.h"
namespace nnet {
class Rule7DLT : public Pass {
public:
Rule7DLT(Derivator &derivator) : Pass(derivator, "Rule7DLT") {}
private:
virtual void transform(Formula &origin, int dfsDepth, Expr &rCur) override;
Expr buildDLTSingleRangeOp(const RangeOp &original, const Expr &newSummand);
vector<int> getFactors();
};
} // namespace nnet