예제 #1
0
def init_loops_to_split (p, restrs):
	to_split = loops_to_split (p, restrs)

	rep = mk_graph_slice (p)
	return [n for n in to_split
		if not [n2 for n2 in to_split if n2 != n
			and rep.get_reachable (n2, n)]]
예제 #2
0
def restr_others_both (p, restrs, n, m):
	extras = [(sp, vc_double_range (n, m))
		for sp in loops_to_split (p, restrs)]
	return restrs + tuple (extras)
예제 #3
0
def init_loops_to_split (p, restrs):
	to_split = loops_to_split (p, restrs)

	return [n for n in to_split
		if not [n2 for n2 in to_split if n2 != n
			and p.is_reachable_from (n2, n)]]