Module smt_check

Module smt_check 

Source
Expand description

SMT checking package for the staged verifier.

The package is split into:

  • common: the shared SMT entry point, query/result types, and term model.
  • one SP-specific module per safety property family, such as align.

SP-specific modules should only lower verifier properties into common SMT obligations. They should not construct independent solver APIs.

Modulesยง

alias ๐Ÿ”’
Alias hazard checks for unsafe view-producing APIs.
align ๐Ÿ”’
SMT lowering for the Align safety property.
alive ๐Ÿ”’
Lifetime anchoring checks for the Alive safety property.
allocated ๐Ÿ”’
SMT lowering for the Allocated safety property.
common ๐Ÿ”’
Common SMT checking backend for the staged verifier.
deref ๐Ÿ”’
SMT lowering for the Deref safety property.
in_bound ๐Ÿ”’
SMT lowering for the InBound safety property.
init ๐Ÿ”’
SMT lowering for the Init safety property.
non_null ๐Ÿ”’
SMT lowering for the NonNull safety property.
non_overlap ๐Ÿ”’
SMT lowering for the NonOverlap safety property.
non_volatile ๐Ÿ”’
SMT lowering for the NonVolatile safety property.
typed ๐Ÿ”’
Path-local checking for the Typed safety property.
valid_num ๐Ÿ”’
SMT lowering for the ValidNum safety property.
valid_ptr ๐Ÿ”’
SMT lowering for the composite ValidPtr safety property.

Structsยง

SmtCheckResult
Result of one SMT check.
SmtChecker
SMT backend for verifier properties.
SmtQuery
Solver query built from path facts plus one negated obligation.

Enumsยง

SmtObligation
General SMT obligation produced by an SP-specific lowering.