# Changeset View

Changeset View

# Standalone View

Standalone View

# mlir/include/mlir/Analysis/Presburger/IntegerRelation.h

Show First 20 Lines • Show All 499 Lines • ▼ Show 20 Lines | public: | ||||

} | } | ||||

/// Return a set corresponding to all points in the domain of the relation. | /// Return a set corresponding to all points in the domain of the relation. | ||||

IntegerPolyhedron getDomainSet() const; | IntegerPolyhedron getDomainSet() const; | ||||

/// Return a set corresponding to all points in the range of the relation. | /// Return a set corresponding to all points in the range of the relation. | ||||

IntegerPolyhedron getRangeSet() const; | IntegerPolyhedron getRangeSet() const; | ||||

/// Invert the relation i.e., swap it's domain and range. | |||||

ftynse: Nit: I would rather phrase this as "Invert the relation, i.e., swap its domain and range."… | |||||

/// | |||||

/// Formally, let the relation `this` be R: A -> B, then this operation | |||||

/// modifies R to be B -> A. | |||||

void inverse(); | |||||

void print(raw_ostream &os) const; | void print(raw_ostream &os) const; | ||||

void dump() const; | void dump() const; | ||||

protected: | protected: | ||||

/// Checks all rows of equality/inequality constraints for trivial | /// Checks all rows of equality/inequality constraints for trivial | ||||

/// contradictions (for example: 1 == 0, 0 >= 1), which may have surfaced | /// contradictions (for example: 1 == 0, 0 >= 1), which may have surfaced | ||||

/// after elimination. Returns true if an invalid constraint is found; | /// after elimination. Returns true if an invalid constraint is found; | ||||

/// false otherwise. | /// false otherwise. | ||||

▲ Show 20 Lines • Show All 203 Lines • Show Last 20 Lines |

Nit: I would rather phrase this as "Invert the relation, i.e., swap its domain and range." "Get" implies the new relation is returned.