Skip to content
Pre-release
Pre-release

@NikolajBjorner NikolajBjorner released this Jun 4, 2020 · 141 commits to master since this release

for Geoff

Assets 4

@NikolajBjorner NikolajBjorner released this May 8, 2020

4.8.8 release

Changes:

See More

This list of changes was auto generated.

Assets 6

@NikolajBjorner NikolajBjorner released this Nov 19, 2019

4.8.7 release

Changes:

See More

This list of changes was auto generated.

Assets 6
Pre-release
Pre-release

@NikolajBjorner NikolajBjorner released this Jul 5, 2020 · 2747 commits to f380d4cf83af67b0934e6b133982ad28ea1da520 since this release

nightly build

Changes:

See More

This list of changes was auto generated.

Assets 11

@NikolajBjorner NikolajBjorner released this Sep 20, 2019

4.8.6 release

Changes:

See More

This list of changes was auto generated.

Assets 6

@NikolajBjorner NikolajBjorner released this Jun 3, 2019 · 3334 commits to master since this release

The release contains cumulative updates to the previous release

Assets 8

@NikolajBjorner NikolajBjorner released this Nov 19, 2018 · 4090 commits to master since this release

This release covers

  • bug fixes since 4.8.1
  • .NET bindings for dotnet standard 1.4 on windows and 64 bit Linux systems and MacOs
Assets 9
  • z3-4.8.1
  • b301a59
  • Compare
    Choose a tag to compare
    Search for a tag
  • z3-4.8.1
  • b301a59
  • Compare
    Choose a tag to compare
    Search for a tag

@NikolajBjorner NikolajBjorner released this Oct 15, 2018 · 4313 commits to master since this release

new in 4.8.1

  • New requirements:

    • A breaking change to the API is that parsers for SMT-LIB2 formulas return a vector of
      formulas as opposed to a conjunction of formulas. The vector of formulas correspond to
      the set of "assert" instructions in the SMT-LIB input.
  • New features

    • A parallel mode is available for select theories, including QF_BV.
      By setting parallel.enable=true Z3 will spawn a number of worker threads proportional to the
      number of available CPU cores to apply cube and conquer solving on the goal.
    • The SAT solver by default handle cardinality and PB constraints using a custom plugin
      that operates directly on cardinality and PB constraints.
    • A "cube" interface is exposed over the solver API.
    • Model conversion is first class over the textual API, such that subgoals created from running a
      solver can be passed in text files and a model for the original formula can be recreated from the result.
    • This has also led to changes in how models are tracked over tactic subgoals. The API for
      extracting models from apply_result have been replaced.
    • An optional mode handles xor constraints using a custom xor propagator.
      It is off by default and its value not demonstrated.
    • The SAT solver includes new inprocessing techniques that are available during simplification.
      It performs asymmetric tautology elimination by default, and one can turn on more powerful inprocessing techniques
      (known as ACCE, ABCE, CCE). Asymmetric branching also uses features introduced in Lingeling by exploiting binary implication graphs.
      Use sat.acce=true to enable the full repertoire of inprocessing methods. By default, clauses that are "eliminated" by acce are tagged
      as lemmas (redundant) and are garbage collected if their glue level is high.
    • Substantial overhaul of the spacer horn clause engine.
    • Added basic features to support Lambda bindings.
    • Added model compression to eliminate local function definitions in models when
      inlining them does not incur substantial overhead. The old behavior, where models are left
      uncompressed can be replayed by setting the top-level parameter model_compress=false.
    • Integration of a new solver for linear integer arithmetic and mixed linear integer arithmetic by Lev Nachmanson.
      It incorporates several improvements to QF_LIA solving based on
      . using a better LP engine, which is already the foundation for QF_LRA
      . including cuts based on Hermite Normal Form (thanks to approaches described
      in "cuts from proofs" and "cutting the mix").
      . extracting integer solutions from LP solutions by tightening bounds selectively.
      We use a generalization of Bromberger and Weidenbach that allows avoiding selected
      bounds tighthenings (https://easychair.org/publications/paper/qGfG).
      It solves significantly more problems in the QF_LIA category and may at this point also
      be the best solver for your problem as well.
      The new solver is enabled only for select SMT-LIB logics. These include QF_LIA, QF_IDL, and QF_UFLIA.
      Other theories (still) use the legacy solver for arithmetic. You can enable the new solver by setting
      the parameter smt.arith.solver=6 to give it a spin.
  • Removed features:

    • interpolation API
    • duality engine for constrained Horn clauses.
    • pdr engine for constrained Horn clauses. The engine's functionality has been
      folded into spacer as one of optional strategies.
    • long deprecated API functions have been removed from z3_api.h
Assets 9

@NikolajBjorner NikolajBjorner released this May 22, 2018 · 6004 commits to master since this release

Z3 4.7.1. official release

  • cumulative bug fix since 4.6.0
  • minor version incremented as API now uses stdbool and stdint: bool and int64_t, uint64_t
Assets 11
You can’t perform that action at this time.