'Update the induced cut points.'

def _update_points(self):

    if ((self.data is None) or (not len(self.data))):
        return
    def induce_cuts(method, data, var):
        dvar = _dispatch[type(method)](method, data, var)
        if (dvar is None):
            return ([], None)
        elif (dvar is var):
            return (None, var)
        elif is_discretized(dvar):
            return (dvar.compute_value.points, dvar)
        else:
            assert False
    for (i, var) in enumerate(self.varmodel):
        state = self.var_state[i]
        if ((state.points is None) and (state.disc_var is None)):
            (points, dvar) = induce_cuts(state.method, self.data, var)
            new_state = state._replace(points=points, disc_var=dvar)
            self._set_var_state(i, new_state)
