class_docstr: Kind of an instruction, e.g. Split, Reorder, etc.
  Besides the name, every kind of instruction has its own properties, including:
  1) A boolean indicating if the instruction is pure, i.e. change nothing in the schedule state
  2) A functor that applies the instruction to a TensorIR schedule
  3) A functor that converts the instruction to a statement in python syntax
  4) A functor that serialize its attributes to JSON
  5) A functor that deserialize its attributes from JSON
  
  Unlike `tvm.ir.op`, `InstructionKind` doesn't support unstructured properties,
  mainly because there is no such usecase yet to add any other property.
  
  Attributes
  ----------
  name : str
      The name of a kind of instructions
  
  Note
  ----
  The functor properties are not exposed on python side at the moment
class_docstr_tok: ["Kind","of","an","instruction",",","e.g",".","Split",",","Reorder",",","etc",".","Besides","the","name",",","every","kind","of","instruction","has","its","own","properties",",","including",":","1",")","A","boolean","indicating","if","the","instruction","is","pure",",","i.e",".","change","nothing","in","the","schedule","state","2",")","A","functor","that","applies","the","instruction","to","a","TensorIR","schedule","3",")","A","functor","that","converts","the","instruction","to","a","statement","in","python","syntax","4",")","A","functor","that","serialize","its","attributes","to","JSON","5",")","A","functor","that","deserialize","its","attributes","from","JSON","Unlike","`","tvm.ir.op","`",",","`","InstructionKind","`","does","n't","support","unstructured","properties",",","mainly","because","there","is","no","such","usecase","yet","to","add","any","other","property",".","Attributes","--","--","--","--","--","name",":","str","The","name","of","a","kind","of","instructions","Note","--","--","The","functor","properties","are","not","exposed","on","python","side","at","the","moment"]
docstr: Indicates if the instruction is pure, i.e. removing it alone doesn't mutate the schedule
  state. For example, the instruction `GetBlock` is pure because it changes
  nothing, while `ComputeInline` is not because removing it leads to a different resulting
  schedule.
  
  Returns
  -------
  pure : bool
      The boolean flag indicating if the instruction is pure
docstr_tok: ["Indicates","if","the","instruction","is","pure",",","i.e",".","removing","it","alone","does","n't","mutate","the","schedule","state",".","For","example",",","the","instruction","`","GetBlock","`","is","pure","because","it","changes","nothing",",","while","`","ComputeInline","`","is","not","because","removing","it","leads","to","a","different","resulting","schedule",".","Returns","--","--","--","-","pure",":","bool","The","boolean","flag","indicating","if","the","instruction","is","pure"]
code: def is_pure(self) -> bool:
      """Indicates if the instruction is pure, i.e. removing it alone doesn't mutate the schedule
      state. For example, the instruction `GetBlock` is pure because it changes
      nothing, while `ComputeInline` is not because removing it leads to a different resulting
      schedule.
  
      Returns
      -------
      pure : bool
          The boolean flag indicating if the instruction is pure
      """
      return bool(self._is_pure)
  
file_path: tvm/python/tvm/tir/schedule/instruction.py
imports: from typing import TYPE_CHECKING, Any, List, Union
  from tvm._ffi import register_object
  from tvm.runtime import Object
  from .None import _ffi_api
label_desc: Use image node_id 1 for calling the InstructionKind obj's underlying member method code with example usage: obj.is_pure() and returns: bool