Skip to content

SMT solver errors in counterexample extraction over quantified expressions #5970

Closed
@SaswatPadhi

Description

@SaswatPadhi

CBMC version: develop

Operating system: Mac OS 10.15.7

Test case:

#include <assert.h>

void main()
{
  unsigned A, x[64];
  __CPROVER_assume(0 <= A && A < 64);
  __CPROVER_assume(__CPROVER_forall { int i ; (0 <= i && i < A) ==> x[i] >= 1 });
  assert(x[0] > 0);
}

Exact command line resulting in the issue:

cbmc --smt2 --trace test.c

What behaviour did you expect:
CBMC would report a counterexample trace.
(A = 0 violates the assertion.)

What happened instead:
CBMC does not generate a counterexample trace, and shows the following error:

SMT2 solver returned error message:
        "line 296 column 16: invalid get-value term, term must be ground and must not contain quantifiers"

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions