tvm
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tvm::arith::IntConstraintsTransformNode Class Reference

We can have different set of variables to represent the same constraints. For example, the following two systems are equivalent, {a + b = 0 | a >= 0, b >= 0} and {m - n = 0 | m >= 0, n <= 0} This data structure represents the transformation between two equivalent linear systems. In the above example, src : {a + b = 0 | a >= 0, b >= 0} dst : {m - n = 0 | m >= 0, n <= 0} src_to_dst : {a -> m, b -> -n} dst_to_src : {m -> a, n -> -b}. More...

#include <int_solver.h>

Inheritance diagram for tvm::arith::IntConstraintsTransformNode:
Collaboration diagram for tvm::arith::IntConstraintsTransformNode:

Public Member Functions

 TVM_DECLARE_FINAL_OBJECT_INFO (IntConstraintsTransformNode, Object)
 

Static Public Member Functions

static void RegisterReflection ()
 

Public Attributes

IntConstraints src
 
IntConstraints dst
 
Map< Var, PrimExprsrc_to_dst
 
Map< Var, PrimExprdst_to_src
 

Static Public Attributes

static constexpr TVMFFISEqHashKind _type_s_eq_hash_kind = kTVMFFISEqHashKindTreeNode
 
static constexpr const char * _type_key = "arith.IntConstraintsTransform"
 

Detailed Description

We can have different set of variables to represent the same constraints. For example, the following two systems are equivalent, {a + b = 0 | a >= 0, b >= 0} and {m - n = 0 | m >= 0, n <= 0} This data structure represents the transformation between two equivalent linear systems. In the above example, src : {a + b = 0 | a >= 0, b >= 0} dst : {m - n = 0 | m >= 0, n <= 0} src_to_dst : {a -> m, b -> -n} dst_to_src : {m -> a, n -> -b}.

See also
IntConstraintsTransform

Member Function Documentation

◆ RegisterReflection()

static void tvm::arith::IntConstraintsTransformNode::RegisterReflection ( )
inlinestatic

◆ TVM_DECLARE_FINAL_OBJECT_INFO()

tvm::arith::IntConstraintsTransformNode::TVM_DECLARE_FINAL_OBJECT_INFO ( IntConstraintsTransformNode  ,
Object   
)

Member Data Documentation

◆ _type_key

constexpr const char* tvm::arith::IntConstraintsTransformNode::_type_key = "arith.IntConstraintsTransform"
staticconstexpr

◆ _type_s_eq_hash_kind

constexpr TVMFFISEqHashKind tvm::arith::IntConstraintsTransformNode::_type_s_eq_hash_kind = kTVMFFISEqHashKindTreeNode
staticconstexpr

◆ dst

IntConstraints tvm::arith::IntConstraintsTransformNode::dst

◆ dst_to_src

Map<Var, PrimExpr> tvm::arith::IntConstraintsTransformNode::dst_to_src

◆ src

IntConstraints tvm::arith::IntConstraintsTransformNode::src

◆ src_to_dst

Map<Var, PrimExpr> tvm::arith::IntConstraintsTransformNode::src_to_dst

The documentation for this class was generated from the following file: