Skip to content
This repository was archived by the owner on Jun 10, 2026. It is now read-only.
This repository was archived by the owner on Jun 10, 2026. It is now read-only.

A wrong result for the query containing multiplication #1

Description

@martinjonas

For the formula

(set-logic QF_BV)

(declare-fun a () (_ BitVec 32))
(declare-fun b () (_ BitVec 32))
(declare-fun c () (_ BitVec 32))

(assert (bvugt a #x0000A000))
(assert (bvugt b #x0000A000))
(assert (bvuge c #xFFFFFFF0))

(assert (= c (bvmul a b)))

(check-sat)

the output of mcBV is

Z3> Error, literal in conflict clause is not false (-43=True)
unsat

but the formula is satisfiable (as witnessed by Z3 or Boolector).

The error occurs with

  • mcBV -- version 1.0,
  • Z3 library -- git revision b080e3a
  • mono -- version 4.4.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions