Вопросы по теме 'bitvector'
Как найти алгоритм для тройки 1 в битвекторе за O (nlog (n)) с разделением и победой без БПФ?
У меня сегодня был экзамен по алгоритмам, и перед нами стояла следующая задача. На самом деле я не решал это, но знаю, что мне действительно интересно, как это работает.
Задача: у нас есть битовый вектор s, и мы хотим знать, есть ли в нем тройки,...
59 просмотров
schedule
21.02.2022
Использование перезаписи терминов в процедурах принятия решений для бит-векторной арифметики
Я работаю над проектом, целью которого является использование переписывания терминов для решения / упрощения арифметических задач с битовым вектором фиксированного размера, что полезно сделать в качестве предварительного шага к некоторой процедуре...
1174 просмотров
schedule
27.04.2022
Быстрое создание 32-битного хеш-кода, однозначно идентифицирующего структуру, состоящую (в основном) из примитивных значений.
РЕДАКТИРОВАТЬ: 64 или 128 бит также будут работать. Мой мозг по какой-то причине переключился на 32-битную версию, думая, что этого будет достаточно.
У меня есть структура, состоящая в основном из числовых значений (int, decimal) и 3 строк,...
1353 просмотров
schedule
30.09.2022
как устранить арифметику битвекторов в Z3
Я пытаюсь использовать z3, чтобы исключить выражение
not ((not x) add y)
что равно
x sub y
с помощью этого кода :
(declare-const x (_ BitVec 32))
(declare-const y (_ BitVec 32))
(assert (= (bvnot (bvadd (bvnot x) y)) (bvsub x...
611 просмотров
schedule
24.01.2023
(Z3Py) Concat, квантификаторы и битовые векторы
Можно ли использовать кванторы с битовыми векторами и конкатенациями? Чтобы проиллюстрировать это, запустим следующий код в новейшей версии Z3:
a = BitVec('a', 8)
b = Concat(BitVec('b', 4), BitVec('c', 4))
prove(ForAll(a, Exists(b, a == b)))...
979 просмотров
schedule
26.10.2022
Решение уравнений с использованием логики высказываний
Я ищу идеи о том, как кодировать математические уравнения в форму cnf-sat, чтобы их можно было решить с помощью SAT-решателя с открытым исходным кодом, такого как MiniSat.
Итак, как мне преобразовать что-то вроде:
3x + 4y - z = 14
-2x - 4z...
350 просмотров
schedule
13.02.2023
Битвекторная арифметика на Z3
Я пытаюсь использовать Z3 для решения арифметических уравнений с использованием битвекторной арифметики. Мне было интересно, есть ли способ обрабатывать также реальные числа. Например, если я могу указать константу, отличную от #x1, и вместо этого...
482 просмотров
schedule
21.01.2023
z3 преобразование из битовых векторов в целые числа
Есть несколько сообщений, касающихся преобразования битовых векторов в целые числа (и наоборот) в z3. См., Например, здесь , здесь и здесь .
В документации говорится, что Z3_mk_bv2int не интерпретируется:
«... Эта функция, по...
952 просмотров
schedule
19.07.2023
Битвекторные операции невозможны
Я хочу выполнить операцию xor над двумя BitVectors. При попытке превратить одну из строк в битовый вектор, чтобы затем перейти к операции xor, я получаю следующую ошибку:
ValueError: invalid literal for int() with base 10: '\x91'
Как я могу...
58 просмотров
schedule
19.11.2023
Как посчитать количество положительных битов без каких-либо сдвигов?
Некоторое время назад во время собеседования меня попросили вычислить количество положительных (т.е. установленных в "1") битов в структуре битового вектора (например, целое число без знака или длинное). Мое решение было довольно простым на C #:...
1048 просмотров
schedule
29.11.2023