docs: def update_sum(self, assump):
          """
              The method is used to increase the bound for a given
              totalizer sum. The totalizer object is identified by the
              input parameter ``assump``, which is an assumption literal
              associated with the totalizer object.
  
              The method increases the bound for the totalizer sum,
              which involves adding the corresponding new clauses to the
              internal SAT oracle.
  
              The method returns the totalizer object followed by the
              new bound obtained.
  
              :param assump: assumption literal associated with the sum
              :type assump: int
  
              :rtype: :class:`.ITotalizer`, int
  
              Note that if Minicard is used as a SAT oracle, native
              cardinality constraints are used instead of
              :class:`.ITotalizer`.
          """
  
          # getting a totalizer object corresponding to assumption
          t = self.tobj[assump]
  
          # increment the current bound
          b = self.bnds[assump] + 1
  
          if self.solver != 'mc':  # the case of standard totalizer encoding
              # increasing its bound
              t.increase(ubound=b, top_id=self.topv)
  
              # updating top variable id
              self.topv = t.top_id
  
              # adding its clauses to oracle
              if t.nof_new:
                  for cl in t.cnf.clauses[-t.nof_new:]:
                      self.oracle.add_clause(cl)
          else:  # the case of cardinality constraints represented natively
              # right-hand side is always equal to the number of input literals
              rhs = len(t.lits)
  
              if b < rhs:
                  # creating an additional bound
                  if not t.rhs[b]:
                      self.topv += 1
                      t.rhs[b] = self.topv
  
                  # a new at-most-b constraint
                  amb = [[-t.rhs[b]] * (rhs - b) + t.lits, rhs]
                  self.oracle.add_atmost(*amb)
  
          return t, b