Ejemplo n.º 1
0
def backward_chaining(kb, query):
    all_variables = find_variables_symbol(query)
    query, var_map = standardize_variables(query)
    result = __backward_chaining_or(kb, query, {})
    if result is not problem.FAILURE:
        propagate_substitutions(result)
        query_vars = {var: result[var_map[var]] for var in all_variables}
        return query_vars

    return result
Ejemplo n.º 2
0
def backward_chaining(kb, query):
    all_variables = find_variables_symbol(query)
    query, var_map = standardize_variables(query)
    result = __backward_chaining_or(kb, query, {})
    if result is not problem.FAILURE:
        propagate_substitutions(result)
        query_vars = {var: result[var_map[var]] for var in all_variables}
        return query_vars

    return result
Ejemplo n.º 3
0
def __parser(sentence):
    return parse_cnf(standardize_variables(sentence)[0])
Ejemplo n.º 4
0
 def assert_standardize(self, expression, expected):
     standart, var_map = logic.standardize_variables(expression, use_global=False)
     self.assertEqual(standart, expected)
Ejemplo n.º 5
0
def __parser(sentence):
    return parse_cnf(standardize_variables(sentence)[0])
Ejemplo n.º 6
0
 def assert_standardize(self, expression, expected):
     standart, var_map = logic.standardize_variables(expression,
                                                     use_global=False)
     self.assertEqual(standart, expected)