def from_string()

in rules/predicate.py [0:0]


    def from_string(cls, predicate_str: str):
        attribute_name, operator, value = re.split(r'(==|=|!=|<=|<|>=|>)', predicate_str)
        # partial order in predicate indicates numerical type
        if operator[0] == '<' or operator[0] == '>':
            value = ast.literal_eval(value)
        if operator == '=':
            operator = '=='
        return cls(attribute_name, operator, value)