class_docstr: Class to add a Linear Tree Hybrid Big-M formulation to OmltBlock.
  
  .. math::
      \begin{align*}
      & d = \sum_{\ell \in L} (a_{\ell}^T x + b_{\ell})z_{\ell} \\
      & x_i \leq \sum_{\ell \in L} \overline{x}_{i,\ell} z_{\ell} &&
          \forall i \in [n] \\
      & x_i \geq \sum_{\ell \in L} \underline{x}_{i,\ell} z_{\ell} &&
          \forall i \in [n] \\
      & \sum_{\ell \in L} z_{\ell} = 1
      \end{align*}
  
  Where the following additional nomenclature is defined:
  
  .. math::
      \begin{align*}
      [n] &:= \text{the integer set of variables that the tree splits on
        (e.g. [n] = {1, 2, ... , n})} \\
      \overline{x}_{\ell} &:= \text{Vector of upper bounds for leaf } \ell \in L \\
      \underline{x}_{\ell} &:= \text{Vector of lower bounds for leaf } \ell \in L \\
      \end{align*}
  
  Attributes:
      Inherited from _PyomoFormulation Class
      model_definition : LinearTreeDefinition object
class_docstr_tok: ["Class","to","add","a","Linear","Tree","Hybrid","Big-M","formulation","to","OmltBlock",".","..","math",":",":","\\begin","{","align","*","}","&","d","=","\\sum_","{","\\ell","\\in","L","}","(","a_","{","\\ell","}","^T","x","+","b_","{","\\ell","}",")","z_","{","\\ell","}","\\\\","&","x_i","\\leq","\\sum_","{","\\ell","\\in","L","}","\\overline","{","x","}","_","{","i",",","\\ell","}","z_","{","\\ell","}","&","&","\\forall","i","\\in","[","n","]","\\\\","&","x_i","\\geq","\\sum_","{","\\ell","\\in","L","}","\\underline","{","x","}","_","{","i",",","\\ell","}","z_","{","\\ell","}","&","&","\\forall","i","\\in","[","n","]","\\\\","&","\\sum_","{","\\ell","\\in","L","}","z_","{","\\ell","}","=","1","\\end","{","align","*","}","Where","the","following","additional","nomenclature","is","defined",":","..","math",":",":","\\begin","{","align","*","}","[","n","]","&",":","=","\\text","{","the","integer","set","of","variables","that","the","tree","splits","on","(","e.g",".","[","n","]","=","{","1",",","2",",","...",",","n","}",")","}","\\\\","\\overline","{","x","}","_","{","\\ell","}","&",":","=","\\text","{","Vector","of","upper","bounds","for","leaf","}","\\ell","\\in","L","\\\\","\\underline","{","x","}","_","{","\\ell","}","&",":","=","\\text","{","Vector","of","lower","bounds","for","leaf","}","\\ell","\\in","L","\\\\","\\end","{","align","*","}","Attributes",":","Inherited","from","_PyomoFormulation","Class","model_definition",":","LinearTreeDefinition","object"]
docstr: The indexes of the formulation inputs.
docstr_tok: ["The","indexes","of","the","formulation","inputs","."]
code: def input_indexes(self):
      """The indexes of the formulation inputs."""
      return list(range(self.model_definition.n_inputs))
  
file_path: OMLT/src/omlt/linear_tree/lt_formulation.py
imports: import numpy
  import pyomo.environ
  from pyomo.gdp import Disjunct
  from omlt.formulation import _PyomoFormulation, _setup_scaled_inputs_outputs
label_desc: Use image node_id 2 for calling the LinearTreeHybridBigMFormulation obj's underlying member method code with example usage: obj.input_indexes() and returns: list