Дан неориентированный граф. Найдите номер внутренней устойчивости графа. Это означает определение степени наибольшего пустого подграфа. (Пустой подграф - это такой подграф, вершины которого не соединены непосредственно ребрами).
Я задаю ребра и вершины. И я показываю список вершин, не связанных ребрами.
Что я должен делать дальше?
reb(a,1,2). % (* 1 ---a--- 2 ---b--- 3 ---d--- 4 ---e--- 6 *)
reb(b,2,3). % (* \_________c_______/ / *)
reb(c,1,3). % (* 7 ---g--- 5 ---f-* *)
reb(d,3,4).
reb(e,4,6).
reb(f,5,6).
reb(g,5,7).
ver(1). % (* empty subgraphs here are *)
ver(2). % (* 145, 146, 147, 245, 246, 247, 35, 36, ... *)
ver(3). % (* the length of the largest of them is 3 *)
ver(4).
ver(5).
ver(6).
ver(7).
edge(A, B) :- reb(_,A,B) ; reb(_,B,A).
nonadjacency(A, B) :-
ver(A), ver(B), \+(edge(A,B)).
do(L) :-
findall( (A,B), nonadjacency (A,B), L), write(L), nl.
dfs(From, To, _, [edge(From, To)]) :-
edge(From, To).
dfs(From, To, VisitedNodes, [(From, X) | TailPath]) :-
edge(From, X),
not(member(X, VisitedNode)),
dfs(X, To, [From | VisitedNodes], TailPath).
reb/3
. то есть 1-2-3-4-6-5-7. или это не так? не могли бы вы просто показать нам несвязанный подграф в вашем случае? просто результат, а не код. - person Will Ness   schedule 11.11.2020nonadjacency (A,B)
и серьезном предупреждении об одноэлементной переменной из-за опечаткиVisitedNode
в строке 30. Пожалуйста, обновите вопрос. - person Isabelle Newbie   schedule 12.11.2020