def _validate(self):
        """
        Ensure that our expression string has variables of the form x_0, x_1,
        ... x_(N - 1), where N is the length of our inputs.
        """
        variable_names, _unused = getExprNames(self._expr, {})
        expr_indices = []
        for name in variable_names:
            if name == 'inf':
                continue
            match = _VARIABLE_NAME_RE.match(name)
            if not match:
                raise ValueError("%r is not a valid variable name" % name)
            expr_indices.append(int(match.group(2)))

        expr_indices.sort()
        expected_indices = list(range(len(self.inputs)))
        if expr_indices != expected_indices:
            raise ValueError(
                "Expected %s for variable indices, but got %s" % (
                    expected_indices, expr_indices,
                )
            )
        super(NumericalExpression, self)._validate()
def _validate ( self ) : variable_names , _unused = getExprNames ( self . _expr , { } ) expr_indices = [ ] for name in variable_names : if name == 'inf' : continue match = _VARIABLE_NAME_RE . match ( name ) if not match : raise ValueError ( "%r is not a valid variable name" % name ) expr_indices . append ( int ( match . group ( 2 ) ) ) expr_indices . sort ( ) expected_indices = list ( range ( len ( self . inputs ) ) ) if expr_indices != expected_indices : raise ValueError ( "Expected %s for variable indices, but got %s" % ( expected_indices , expr_indices , ) ) super ( NumericalExpression , self ) . _validate ( )
Ensure that our expression string has variables of the form x_0, x_1,
        ... x_(N - 1), where N is the length of our inputs.