z3

    1

    1답변

    내장 및 사용자 정의 Z3 정렬을 여러 개 사용한다고 가정합니다. Int, Bool, S1, S2, ..., 일반 정렬 래핑 및 -unwrapping 함수를 작성하는 방법이 있습니다. 그런 종류의 정렬을 A에서 B로 정렬하고 다시 정렬 할 수 있습니까? 예 : (declare-const a S1) (declare-const b S2) (declare-c

    4

    1답변

    Windows7에서 병렬 Z3 3.2 (bin_mt 또는 x64_mt 디렉토리에서)와 함께 프로세서의 코어를 모두 PAR_NUM_THREADS=2과 함께 사용할 수 없습니다. 단일 스레드 버전과 동일한 50 % 및 시간 차이가 없습니다. 이 논리에 대해 병렬 버전이 지원 되나요? 아니면 QF_IDL에서만 작동합니까?

    4

    1답변

    Z3 C API를 사용하여 한정 기호를 포함하는 제약 조건을 해결하려고합니다. 온라인 또는 tar 파일의 예제에서 어떤 예제도 찾을 수 없기 때문에 "Z3_mk_exists()"와 같은 함수를 사용하는 데 어려움을 겪고 있습니다. 필자는 이러한 함수에서 요구하는 모든 인수와 그 정확한 의미를 정확하게 이해하지 못합니다. 아무도 도와 줄 수 있습니까? 감사합

    1

    1답변

    큰 정수 값이 SMT의 성능에 영향을 미치는지 궁금합니다. 때로는 큰 값으로 작업해야합니다. 주로 (즉, 다른 정수 항) 산술 연산 (주로 덧셈 및 곱셈)을 수행하고 결과 값을 제약 조건 (즉, 다른 정수 항)과 비교할 필요가 있습니다.

    2

    1답변

    모델에 초기 '소프트'값을 지정하는 방법은 무엇입니까? 이 초기 모델은 유사한 쿼리를 해결 한 결과이며이 모델이 올바른 조각을 가지고 있거나 현재 쿼리에 대해 사실 일 수 있습니다. 은 현재 내가 증분 해결 및 hard/soft constraints으로이 시뮬레이션 오전 : (define-fun trans_assumed ((a Int)) Int ; an

    2

    1답변

    Z3_benchmark_to_smtlib_string() 함수를 사용하려고합니다. 다음은 내가 사용하는 주장입니다 : Z3_benchmark_to_smtlib_string( ctx, /* this one is valid */ "test", /* this one is random, I don't understand it *

    3

    1답변

    다음 예제에서는 각 가정에 대해 단일 부울 상수가 아닌 "(declare-const p (Int) Bool)"와 같은 해석되지 않은 부울 함수를 사용하려고했습니다. 하지만 작동하지 않습니다 (컴파일 오류가 발생합니다). (set-option :produce-unsat-cores true) (set-option :produce-models true) (

    1

    1답변

    내 프로그램은 Z3_open_log()와의 모든 z3 상호 작용의 로그를 만듭니다. 그런 다음 다른 프로그램에서 Z3_parse_z3_file()으로 다시 읽습니다. 그것은 입력에 대한 모든 주장의 결합을 제공합니다. 두 가지 주장이 있다고 가정 해 봅시다 : a1과 a2. 그런 다음 z3 파일을 구문 분석하면 얻을 수 있습니다 (그리고 a1 a2). 테스

    1

    1답변

    : x = Real ('x') solve(x * x == 2, show=True) 내가 잘 얻을 : Problem: [x·x = 2] Solution: [x = -1.4142135623?] 내가 생각 같은 솔루션을 것이다 다음 SMT-LIB2 스크립트 : (set-option :produce-models true) (declare-fun s

    3

    1답변

    수량 자에 대한 질문이 있습니다. 는 I 배열을 가지고 있다고 가정하며이 어레이 배열 인덱스 0, 1, 2를 계산할 - (declare-const cpuA (Array Int Int)) (assert (or (= (select cpuA 0) 0) (= (select cpuA 0) 1))) (assert (or (= (select cpuA 1) 0) (=