Описание тега pydatalog
Реализация Datalog на чистом Python, действительно декларативного языка, полученного на основе Prolog.
1
ответ
Использование pyDatalog для хранилищ ограничений
Рассмотрим следующие правила: pyDatalog.create_atoms('X') pyDatalog.create_atoms('Y') pyDatalog.create_atoms('a') pyDatalog.create_atoms('b') b(X,1) <= (X<0) b(X,Y) <= (X==1) & (Y>0) a(X,Y) <= b(X,Y) & (X>0) И проблема нахо…
02 май '13 в 15:49
0
ответов
pyDatalog, как представить список и получить ответ истина / ложь, если элемент X принадлежит списку
Как я представляю дальше с pyDatalog. belongs(X, [X|_]). belongs(X, [_|Ys]):- belongs(X, Ys). it_is(X):- belongs(X,[6,7,8,9,10,11,12,13,14,15]). it_is(10). true. Я пытался так: from pyDatalog import pyDatalog . gpyDatalog.create_terms('belongs,it_is…
02 июн '18 в 21:52
1
ответ
pyDatalog: обработка несвязанных переменных в пользовательском предикате
Я пишу программу pyDatalog для анализа данных о погоде из Weather Underground (в качестве демонстрации для себя и других сотрудников компании на данный момент). Я написал собственный распознаватель предикатов, который возвращает показания между врем…
04 мар '13 в 10:40
1
ответ
Есть ли в pyDatalog оператор "cut", такой как пролог?
Это может быть довольно просто, но я нигде не могу найти ответ. В Прологе, когда вы хотите запретить ему искать дополнительные ответы, когда экземпляр уже создан, вы можете использовать! знак (обычно называется "вырезать" знак). Вы можете увидеть ег…
29 янв '18 в 09:12
0
ответов
Определение глобальных переменных в pyDatalog
Я читаю этот учебник pyDatalog. Это дает этот синтаксис для определения (отдельных значений) функций: function['argument'] = 110, Я ожидал, что глобальные переменные будут такими, без каких-либо аргументов. Синтаксис, который они предлагают, таков: …
22 окт '17 в 23:10
1
ответ
Статическая типизация в pyDatalog: возможно?
Например, используя библиотеку mypy, можно указать, что функция вводит строку и выводит строку, например: def greeting(name: str) -> str: return 'Hello, {}'.format(name) В pyDatalog можно определить (скажем) унарную функцию по одному значению за …
05 мар '18 в 00:24
1
ответ
Почему создание отношений в pyDatalog, кажется, дает мне неправильный ответ?
Я новичок в понятиях Datalog, и я изучаю его через pyDatalog. Я экспериментирую с преобразователем единиц измерения. Так, учитывая факты о том, сколько дюймов в метре, например, он должен быть в состоянии сказать мне, сколько метров в дюйме. Вот мой…
13 сен '14 в 11:08
0
ответов
pyDatalog: поиск отсутствующего элемента в наборе
У меня есть набор из семи номеров. Каждое число связано с одной из пяти букв (от A до E). Каждую букву необходимо представить хотя бы один раз в данном наборе. В наборе со всеми буквами, кроме одного, я хотел бы найти пропущенную букву. Результатом …
29 мар '18 в 09:28
1
ответ
Загрузка программы регистрации данных из файла в pyDatalog
Я пытаюсь использовать метод pyDatalog.load() для загрузки небольшой программы pyDatalog. Например, я загружаю пример факториала с https://sites.google.com/site/pydatalog/ from pyDatalog import pyDatalog pyDatalog.create_atoms('factorial, N, F') # g…
06 фев '13 в 17:14
1
ответ
Как создать динамические арифметические факты в pyDatalog?
Мне нужно создать простую машину регистрации данных (что означает, что мои данные представляют собой 2 файла: 1. факты, 2. правила.) В настоящее время я использую пакет pyDatalog. Мне нужно проанализировать факты и создать условия динамически. из уч…
16 июн '17 в 15:38
0
ответов
Как динамически создавать символы функций в pyDatalog?
Например, у меня есть такие правила в Datalog: Как мне создать эти правила динамически в pyDatalog, используя "load"? Спасибо!
04 авг '17 в 17:19
2
ответа
Логическое разделение с PyDatalog
Кажется, я не могу написать (псевдокод): выведите X и Y для всех X,Y, где X==True и Y==True или Y==False >>> from pyDatalog import pyDatalog >>> pyDatalog.create_terms('X,Y') >>> print((X==True) X ---- True >>> pr…
29 дек '15 в 03:06
1
ответ
Есть ли другой способ использовать PyDataLog в CherryPy, чем обычный способ использования PyDataLog?
Я получаю ошибку, как это ниже в 500 internal server error стр. File "/usr/local/lib/python3.5/dist-packages/pyDatalog/pyParser.py", line 388, in __call__ literal = Literal.make(self._pyD_name, tuple(args), kwargs) File "/usr/local/lib/python3.5/dis…
07 дек '18 в 06:45
1
ответ
Как убрать правила из pyDataLog
Я реализую FOIL-подобный алгоритм, в котором я хочу эффективно опробовать различные гипотезы (например, предложения), в то время как оставшиеся данные остаются нетронутыми. Мне было интересно, как без использования функции clear() я мог убрать прави…
25 фев '18 в 01:23
1
ответ
Использование логических операторов в pyDatalog
Я попытался создать предикат в pyDatalog, используя == оператор, но определение легковоспламеняющихся [X] представляется недействительным: from pyDatalog import pyDatalog pyDatalog.create_terms('flammable, notFlammable, X, Y') flammable[X] = ((X == …
25 ноя '14 в 22:26
1
ответ
Как создать арифметические предикаты в pyDatalog?
Как мне перевести этот вид арифметического предиката в легальный предикат pyDatalog? добавить (X, Y, Z) ← X + Y = Z например: ? добавить (5, 7, Z). ответ должен быть: добавить (5, 7, 12). Спасибо!
23 июн '17 в 16:48
0
ответов
Ошибка PyDatalog - переупорядочивание фактов в функции загрузки приводит к зависанию программы
Рассмотрим следующий код: from pyDatalog import pyDatalog from pyDatalog.pyDatalog import assert_fact, load, ask, clear assert_fact('A', 'f', 'b') assert_fact('B', 'a', 'f') load(""" C(A,B) <= B(A,F) & A(F,B) C(A,B) <= D(B,A) & E(B,A) …
20 дек '18 в 10:03
0
ответов
Поддерживает ли Pydatalog инкрементное обновление
Я использую pydatalog, производительность хорошая, но в некоторых случаях это инкрементальное обновление также необходимо. Итак, я хочу знать, поддерживает ли pydatalog возрастающее обновление? Если он не поддерживает, можем ли мы каким-то образом и…
16 ноя '17 в 14:30
0
ответов
Как решить уравнение в pyDatalog?
Страница pyDatalog показывает, как реализовать алгоритм факториала для вычисления N! ценности. Можно ли изменить его (например, используя предикаты), чтобы решить, для которого N N! будет равна заданному значению (например, 6)? from pyDatalog import…
22 ноя '17 в 17:58
0
ответов
Почему pyDatalog не завершается?
Я взглянул на pydatalog и создал эту программу быстрого конвертирования на основе этой записи в блоге: convert_length.py: from pyDatalog import pyDatalog pyDatalog.create_terms(','.join(( 'scale', 'convert', 'From', 'To', 'Intermediate', 'Value', 'X…
23 авг '17 в 05:47