Описание тега transitive-closure

Используйте этот тег для транзитивного закрытия отношения или когда он связан с теорией графов.
1 ответ

Результаты не сравниваются с данными фактами

Используя пролог, создайте код для получения некоторых сравниваемых выходных данных, но некоторые выходные данные не работают должным образом кажется, это не сравнивать с фактами. здесь код fact(Fact) :- Fact,!. fact(Fact):-Fact = ..[Rel, Arg1, Arg2…
23 дек '15 в 04:11
4 ответа

Пролог Бесконечный цикл (циклический граф)

Это может быть простой проблемой, но мне нужно сделать это по-другому. Проблема в том, что я должен найти в прологе возможные маршруты полетов. У меня есть эта база знаний from_to(fresno,seattle). from_to(fresno,albany). from_to(albany,dallas). from…
26 ноя '14 в 22:43
0 ответов

Таблицы закрытия MySQL: как получить данные в правильном порядке, если для ребенка существует несколько родителей?

Я использую таблицы закрытия аналогично этому ответу. У меня есть следующие две таблицы: CREATE TABLE `part` ( `id` int(11) NOT NULL, `name` varchar(45) DEFAULT NULL, PRIMARY KEY (`id`), ) ENGINE=InnoDB DEFAULT CHARSET=latin1; Какая таблица содержит…
0 ответов

Пролог Родословная Кровные отношения, Рекурсия?

Мне нужна рекурсивная функция, которая находит всех кровных родственников в родословной. Но я, честно говоря, понятия не имею, как реализовать это в Прологе. Мое текущее понимание решения - поиск текущей ветви на предмет соответствия и переход к сле…
2 ответа

Пролог: устранение циклов из косвенного отношения

У меня есть список пользовательских фактов, определенных как: user(@michael). user(@ana). user(@bob). user(@george). user(@john). и так далее. Кроме того, у меня есть ряд фактов: follows(@michael,@ana). follows(@ana,@bob). follows(@bob,@michael). Я …
02 дек '14 в 20:20
1 ответ

Выполнение запроса транзитивного замыкания в Neo4j

Я пытаюсь вычислить транзитивное замыкание неориентированного графа в Neo4j, используя следующий Cypher Query ("E" - метка, которую имеет каждое ребро графа): MATCH (a) -[:E*]- (b) WHERE ID(a) < ID(b) RETURN DISTINCT a, b Я пытался выполнить этот…
17 апр '18 в 09:43
1 ответ

Все возможные маршруты между входом и выходом

Мне нужна помощь, чтобы решить путь лабиринта. заранее спасибо link(a,b). link(b,c). link(c,d). link(f,c). link(b,e). link(d,e). link(e,f). Напишите предикат, который определяет маршрут между любыми двумя соседними точками (например, X и Y), основыв…
24 ноя '14 в 21:39
0 ответов

Вычислить время до транзитивного закрытия

У меня есть набор данных с меткой времени, как показано ниже t = c("2006-01-02 09:09:38 UTC", "2006-01-04 08:45:34 UTC", "2006-01-10 12:55:41 UTC", "2006-01-20 09:33:54 UTC", "2006-02-02 11:36:06 UTC", "2006-02-15 08:51:03 UTC", "2007-06-07 16:26:56…
14 янв '19 в 00:10
3 ответа

В чем разница между циклом и схемой

У меня путаница, в чем разница между этими двумя? Цикл и схема, поэтому, пожалуйста, убедитесь в диаграммах, если это возможно. Я имею в виду, что цикл всегда находится в неориентированном графе, а схема всегда является ориентированным графом. попра…
1 ответ

Можете ли вы привести пример транзитивного замыкания отношения, которое не является отношением эквивалентности?

У меня возникают проблемы с поиском примеров транзитивного замыкания отношений, которые не являются отношениями эквивалентности.
0 ответов

Алгоритм Варшалла для симметричного транзитивного замыкания

У меня есть одно упражнение в моем учебнике, чтобы придумать небольшое изменение алгоритма Варшалла, чтобы найти симметричное транзитивное замыкание отношения вместо транзитивного. Так как мне это сделать?
2 ответа

Не могу понять, почему пролог зацикливается

Из книги Братко " Программирование пролога для искусственного интеллекта" (4-е издание) у нас есть следующий код, который не работает: anc4(X,Z):- anc4(X,Y), parent(Y,Z). anc4(X,Z):- parent(X,Z). В книге на странице 55, рисунок 2.15, показано, что p…
07 сен '18 в 09:17
0 ответов

Пролог Неопределенная процедура (DWIM не может достичь цели)

Я всегда получаю ошибку, упомянутую выше, когда я пытаюсь этот код reicher(adam,berta). reicher(berta,clemens). reicher(adam,erwin). reicher(eva,adam). % adam > berta & erwin & clemens % berta > clemens & eva > all reicher_als (…
19 ноя '17 в 19:37
4 ответа

Как сформировать транзитивное замыкание множества кортежей?

Каков наилучший способ генерировать транзитивное замыкание набора кортежей? Пример: вход Set((1, 2), (2, 3), (3, 4), (5, 0)) Выход Set((1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4), (5, 0))
11 май '11 в 10:17
1 ответ

SWI-Prolog: findall/3 не находит все решения?

Я пытаюсь решить эту проблему пасьянс Pebble, и это часть моего кода: % Base case play(List, X) :- count_pebbles(List, X). %%%%%%%%%%%%%% % JUMP RIGHT % %%%%%%%%%%%%%% % oo-XXXXXXXXX play( [111, 111, 45|Tail], X) :- play([45, 45, 111|Tail], X). % Xo…
02 май '16 в 14:40
1 ответ

В Прологе, как сделать сравнение, когда порядок определен в цепочке предикатов?

Имея следующее определение: biggerThan(a,b). biggerThan(b,c). biggerThan(c,d). Как определить правило is_bigger(X,Y)такой, что is_bigger(a,c) а также is_bigger(a,d) вернет истину. Кроме того, я очень новичок в Прологе. Правильно ли решено название, …
2 ответа

Пролог, определите, является ли граф ациклическим

Мне нужно определить предикат acyclic/1, который принимает граф в качестве входных данных и определить, является ли этот граф ациклическим. Так что из моего понимания graph1(a,b). graph1(b,c). graph1(c,a). Вернется нет и graph2(a,b). graph2(b,c). ве…
2 ответа

В прологе почему не добавляется "край (X, Y):- край (Y, X)". работа по преобразованию определения ориентированного графа в неориентированный граф

Я только изучаю Пролог, и я рассматриваю конспекты лекций, и все примечания говорят о том, что: дано следующее определение для ориентированных графов: path(X, Y) :- edge(X, Y). path(X, Y) :- edge(X, Z), path(Z, Y). Если бы мы хотели сделать это неор…
14 апр '14 в 04:06
2 ответа

Пролог Ошибка "Out of local stack"

Вот моя простая программа Пролог: friend(X,Y):- knows(X,Y). friend(X,Z):- friend(X,Y), friend(Y,Z). knows(brian,tom). knows(tom,peter). Если я наберу следующий запрос friend(brian,peter). Пролог выдаст следующий вывод: ?- friend(brian,peter). true Е…
13 фев '14 в 15:51
0 ответов

От CTE до кода хранимой процедуры mySQL

Это запрос с использованием sql CTE для создания транзитивного замыкания таблицы, содержащей отношения между пользователями (ребра графа). Как это можно сделать в MySQL? WITH RECURSIVE transitive_closure (a, b, distance, path_string) AS (ВЫБЕРИТЕ ра…