### Abstract

We present an Isabelle/HOL formalization and total correctness proof for the incremental version of the Simplex algorithm which is used in most state-of-the-art SMT solvers. It supports extraction of satisfying assignments, extraction of minimal unsatisfiable cores, incremental assertion of constraints and backtracking. The formalization relies on stepwise program refinement, starting from a simple specification, going through a number of refinement steps, and ending up in a fully executable functional implementation. Symmetries present in the algorithm are handled with special care.

### License

BSD License

### Topics

- Computer science/Algorithms/Optimization

### Session Simplex

- Simplex_Auxiliary
- Rel_Chain
- Simplex_Algebra
- Abstract_Linear_Poly
- Linear_Poly_Maps
- QDelta
- Simplex
- Simplex_Incremental

### Used by

- Farkas' Lemma and Motzkin’s Transposition Theorem

## Cite

×

Simplex-AFP

    @article{Simplex-AFP,
      author  = {Filip Marić and Mirko Spasić and René Thiemann},
      title   = {An Incremental Simplex Algorithm with Unsatisfiable Core Generation},
      journal = {Archive of Formal Proofs},
      month   = {August},
      year    = {2018},
      note    = {\url{https://isa-afp.org/entries/Simplex.html},
                 Formal proof development},
      ISSN    = {2150-914x},
    }

Download

## Download

× Download latest

Older releases:

- Sep 13, 2023 : Isabelle2023
- Oct 27, 2022 : Isabelle2022
- Dec 14, 2021 : Isabelle2021-1
- Feb 23, 2021 : Isabelle2021
- Apr 20, 2020 : Isabelle2020
- Jan 14, 2020 : Isabelle2019
- Jun 11, 2019 : Isabelle2019
- Aug 27, 2018 : Isabelle2018