Результаты поиска по запросу "z3"

2 ответа

QF_FPA? Поддерживает ли Z3 арифметику IEEE-754?

2 ответа

Проверьте переполнение с Z3

2 ответа

Какие логики поддерживаются z3?

Есть ли полный список всех теорий / логик, которые поддерживает z3? Я консультировался с этимУчебное пособие по SMTLIB который предоставляет ряд логики, но я...

ТОП публикаций

2 ответа

Z3 максимизировать в C ++

2 ответа

Используйте Z3 и SMT-LIB, чтобы определить функцию sqrt с действительным числом

Как я могу написать функцию sqrt в формате smt-libv2.Примечание: чтобы получить максимум два значения, я нашел здесь полезную ссылку:Используйте Z3 и SMT-LIB...

2 ответа

Сумма всех битов в битовом векторе Z3

Учитывая немного вектора в

2 ответа

 функция, которая больше не интерпретируется. В любом случае это достаточно отличная тема от оригинального поста. Я рекомендую вам опубликовать отдельный вопрос, чтобы подробно описать, чего вы пытаетесь достичь.

кто-нибудь объяснить, почему я получаю контр-пример с этим кодом Py. a = Int('a') def X(a): if (a == 3): return 1 else: return 2 z3.prove( X(a) == If (a == 3, 1, 2) )контрпример [a = 3]

2 ответа

Как только вы используете квантификаторы, все ставки отключаются, так как логика становится полуразрешимой. Z3 делает хорошую работу здесь и возвращает одно решение, а затем сдается. Я не думаю, что вы можете ожидать чего-то лучшего, если вы не используете некоторые собственные процедуры принятия решений.

у проверить формулу формы: Exists p . ForAll x != 0 . f(x, p) > 0Реализация (которая не работает) следующая: def f0(x0, x1, x, y): return x1 ** 2 * y + x0 ** 2 * x s = Solver() x0, x1 = Reals('x0 x1') p0, p1 = Reals('p0 p1') s.add(Exists([p0, ...

2 ответа

Да, мы предполагаем, что логика + теории первого порядка, такая как арифметика, является последовательной. Большинство математиков считают, что это так. Когда мы говорим о корректности Z3, мы рассматриваем алгоритмы и процедуры, использованные при его реализации, а не согласованность логической системы, на которой она основана. Наконец, как я указывал в своем ответе, доказательство правильности должно осуществляться в другой системе, которая «понимает» семантику C / C ++ (язык программирования, используемый для реализации Z3). Эта система может использовать другую логическую систему и даже может вызывать Z3 в качестве подпрограммы.

ибудь пробовал доказыватьZ3 [http://,research.microsoft.com/en-us/um/redmond/projects/z3/]с самим Z3? Можно ли даже доказать, что Z3 является правильным, используя Z3? Более теоретически, возможно ли доказать, что инструмент X является ...

2 ответа

Используйте Z3 и SMT-LIB, чтобы получить максимум два значения

Как получить максимум формулы, используя smt-lib2? Я хочу что-то вроде этого: (declare-fun x () Int) (declare-fun y () Int) (declare-fun z () Int) (assert (= x 2)) (assert (= y 4)) (assert (= z (max x y)) (check-sat) (get-model) (exit) Конечно, ...