
predicate_term_condition(add_color(A,B,C,D),D+A)
predicate_term_condition(add_edges(A,B,C),B*C+A*B)
predicate_term_condition(add_vertices(A,B,C),B*C+A*B)
predicate_term_condition(append(A,B,C),C+A)
predicate_term_condition(assoc(A,B,C),1)
predicate_term_condition(assoc(A,B,C,D,E,F),1)
predicate_term_condition(assoc_left(A,B,C,D,E,F,G,H,I),1)
predicate_term_condition(assoc_right(A,B,C,D,E,F,G,H,I),1)
predicate_term_condition(assoc_to_list(A,B,C),A)
%%%  predicate_term_condition(clique(A,B,C),0)
%%%  predicate_term_condition(clique1(A,B,C),0)
predicate_term_condition(color_map(A,B),B+A)
predicate_term_condition(color_map(A,B,C,D),C*D+B*D+A*D)
predicate_term_condition(color_stack(A),A)
predicate_term_condition(color_stack(A,B,C,D),A*D)
%%% predicate_term_condition(coloring(A,B,C),0)
%%% predicate_term_condition(coloring(A,B,C,D,E),0)
%%% predicate_term_condition(colouring(A,B,C),0)
predicate_term_condition(complement(A,B),A)
predicate_term_condition(complement(A,B,C),A*C+A*B)
predicate_term_condition(compose(A,B,C),A*B)
predicate_term_condition(compose(A,B,C,D),B*(C*D)+A*(B*C))
predicate_term_condition(compose1(A,B,C,D),A*(B*C))
predicate_term_condition(compose1(A,B,C,D,E,F,G,H),B*(C*(D*(E*(F*G)))))
predicate_term_condition(dec_counts(A,B,C,D,E,F,G),A*D)
predicate_term_condition(del_edges(A,B,C),B*C+A*B)
predicate_term_condition(del_vertices(A,B,C),B*C+A*B)
predicate_term_condition(edges(A,B),A)
predicate_term_condition(edges(A,B,C,D),C+A)
predicate_term_condition(edges_vertices(A,B),B+A)
predicate_term_condition(enqueue(A,B,C,D),C+A)
predicate_term_condition(evaluate_vertex(A,B,C),A)
%%% predicate_term_condition(fanin_counts(A,B),0)
predicate_term_condition(fanin_counts(A,B,C),B*C+A*B)
predicate_term_condition(fanin_counts(A,B,C,D,E),A)
predicate_term_condition(gen_assoc(A,B,C),B)
predicate_term_condition(get_assoc(A,B,C),B)
predicate_term_condition(get_assoc(A,B,C,D,E),D+B)
predicate_term_condition(get_assoc(A,B,C,D,E,F),E*F)
predicate_term_condition(get_assoc(A,B,C,D,E,F,G,H,I,J,K,L),J*K+E*F)
predicate_term_condition(get_top_elements(A,B,C,D),A)
predicate_term_condition(graph_del_vertices(A,B,C),B*C+A*B)
predicate_term_condition(graph_del_vertices(A,B,C,D),B*(C*D)+A*(B*C))
predicate_term_condition(graph_del_vertices(A,B,C,D,E,F,G,H),E*(F*(G*H))+B*(C*(D*(E*(F*G)))))
predicate_term_condition(graph_difference(A,B,C),B*C+A*B)
predicate_term_condition(graph_difference(A,B,C,D,E,F,G,H),E*(F*(G*H))+B*(C*(D*(E*(F*G)))))
predicate_term_condition(graph_union(A,B,C),C+A*B)
predicate_term_condition(graph_union(A,B,C,D,E,F,G,H),H+B*(C*(D*(E*(F*G)))))
predicate_term_condition(group_edges(A,B,C),C+A*B)
predicate_term_condition(group_edges(A,B,C,D),C+A)
%%% predicate_term_condition(independent_set(A,B,C),0)
predicate_term_condition(map_colors(A,B,C),B)
predicate_term_condition(map_colors(A,B,C,D),C)
predicate_term_condition(max_path(A,B,C,D),A*(B*C))
%%% predicate_term_condition(max_path(A,B,C,D,E),0)
predicate_term_condition(max_path_init(A,B),B+A)
%%% predicate_term_condition(max_path_init(A,B,C,D,E,F),0)
predicate_term_condition(max_path_select(A,B,C),A)
predicate_term_condition(max_path_select(A,B,C,D,E,F),A)
predicate_term_condition(max_path_update(A,B,C,D),D+C)
predicate_term_condition(member(A,B),B)
predicate_term_condition(member_(A,B,C),A)
predicate_term_condition(merge(A,B,C),C+A*B)
predicate_term_condition(merge(A,B,C,D),D+A*C)
predicate_term_condition(merge(A,B,C,D,E,F),F+C*E)
%%% predicate_term_condition(min_path(A,B,C,D,E),0)
predicate_term_condition(min_path(A,B,C,D,E,F),A*(C*E))
%%% predicate_term_condition(min_paths(A,B,C),0)
predicate_term_condition(min_paths(A,B,C,D),A*(B*(C*D)))
%%% predicate_term_condition(min_tree(A,B,C),0)
predicate_term_condition(neighbor_graph(A,B,C,D,E),A+D*E)
predicate_term_condition(neighbors(A,B,C),B)
predicate_term_condition(neighbours(A,B,C),B)
predicate_term_condition(nodeinfo(A,B,C),C+B+A)
predicate_term_condition(ord_add_element(A,B,C),C+A)
predicate_term_condition(ord_add_element(A,B,C,D,E),E+C)
predicate_term_condition(ord_del_element(A,B,C),C+A)
predicate_term_condition(ord_del_element(A,B,C,D,E),E+C)
predicate_term_condition(ord_disjoint(A,B),A*B)
predicate_term_condition(ord_intersect(A,B),A*B)
predicate_term_condition(ord_intersect(A,B,C,D,E),C*E)
predicate_term_condition(ord_intersection(A,B,C),A*B)
predicate_term_condition(ord_intersection3(A,B,C,D),A*C)
predicate_term_condition(ord_intersection3(A,B,C,D,E,F),C*E)
predicate_term_condition(ord_list_to_assoc(A,B),A)
predicate_term_condition(ord_list_to_assoc(A,B,C,D),D+A)
predicate_term_condition(ord_subset(A,B),B)
predicate_term_condition(ord_subset(A,B,C,D),D)
predicate_term_condition(ord_subtract(A,B,C),B*C+A*B)
predicate_term_condition(ord_union(A,B,C),C+A*B)
predicate_term_condition(ord_union(A,B,C,D),C+A*D+A*B)
predicate_term_condition(ord_union4(A,B,C,D,E),D+C*E+A*C)
predicate_term_condition(ord_union4(A,B,C,D,E,F,G),F+C*G+C*E)
%%% predicate_term_condition(path(A,B,C),0)
%%% predicate_term_condition(path(A,B,C,D),0)
predicate_term_condition(pop(A,B,C,D,E,F,G,H,I),C*E)
predicate_term_condition(prim(A,B,C,D,E),B*(C*(D*E)))
%%% predicate_term_condition(prune(A,B,C,D),0)
predicate_term_condition(prune(A,B,C,D,E),A*B)
predicate_term_condition(put_assoc(A,B,C,D),B)
predicate_term_condition(put_assoc(A,B,C,D,E),A)
predicate_term_condition(put_assoc(A,B,C,D,E,F,G,H,I,J),I*J)
predicate_term_condition(random(A),1)
predicate_term_condition(random_neighbors(A,B,C,D,E),A)
predicate_term_condition(random_ugraph(A,B,C),B*C)
predicate_term_condition(random_ugraph(A,B,C,D),B*D)
%%% predicate_term_condition(reachable(A,B,C),0)
%%% predicate_term_condition(reachable(A,B,C,D),0)
%%% predicate_term_condition(reduce(A,B),0)
predicate_term_condition(reduced_edges(A,B,C,D,E),A*C)
predicate_term_condition(reduced_vertices_edges(A,B,C,D,E),A*C)
predicate_term_condition(reverse(A,B),A)
predicate_term_condition(reverse(A,B,C),A)
predicate_term_condition(select_vertex(A,B,C,D,E,F),A)
%%% predicate_term_condition(strong_components(A,B,C),0)
predicate_term_condition(subgraph(A,B,C),A*B)
predicate_term_condition(subtract(A,B,C),B*C+A*B)
predicate_term_condition(subtract3(A,B,C,D),A*D+A*C)
predicate_term_condition(subtract3(A,B,C,D,E,F),E*F+C*E)
predicate_term_condition(symmetric_closure(A,B),A)
predicate_term_condition(symmetric_closure(A,B,C),C+A*B)
%%% predicate_term_condition(top_sort(A,B),0)
predicate_term_condition(top_sort(A,B,C,D),A*(C*D))
predicate_term_condition(transitive_closure(A,B),A)
predicate_term_condition(transpose(A,B),A)
predicate_term_condition(transpose_edges(A,B,C),A)
predicate_term_condition(transpose_edges(A,B,C,D),C+A)
%%% predicate_term_condition(vertex_color(A,B,C,D),0)
predicate_term_condition(vertex_units(A,B),B+A)
predicate_term_condition(vertices(A,B),B+A)
predicate_term_condition(vertices_edges_to_ugraph(A,B,C),A*B)
%%% predicate_term_condition(visit(A,B,C,D,E,F,G,H,I,J,K),0)
predicate_term_condition(warshall(A,B,C),A*B)
predicate_term_condition(warshall(A,B,C,D),A*C)       