Example #1
0
def p_expression_exists_excl(p):
    '''expression : EXISTS_EXCL variableList DOT LPAREN expression RPAREN'''
    q = [
        rename_var_list(p[5], list(zip(p[2], perm)))
        for perm in itertools.permutations(var_order, len(p[2]))
    ]
    p[0] = reduce(lambda x, y: mk_or_expr(x, y), q)
Example #2
0
def p_expression_rename(p):
    '''expression : VARIABLE LBRAC variableList COLON ASSIGNOP variableList RBRAC'''
    dom = sub_expr.keys()
    if p[1] in dom:
        expr = sub_expr[p[1]]
        p[0] = rename_var_list(expr,zip(p[3],p[6]))
    else:
        raise Parse_Error("Expression: " + p[1] + " is not declared. Line Number: " + str(line_num))
Example #3
0
def p_expression_exists_excl(p):    
    '''expression : EXISTS_EXCL variableList DOT LPAREN expression RPAREN'''
    q = [rename_var_list(p[5],zip(p[2],perm)) for perm in itertools.permutations(var_order, len(p[2]))]
    p[0] = reduce(lambda x,y: mk_or_expr(x,y), q)