Releases: LS-Lab/KeYmaeraX-release
Version 5.1.1
Fixed KeYmaera X not displaying that an update is available
Version 5.1.0
Version 5.1.0 provides bug fixes and maintenance.
- Increased minimum supported Java version to 11 (tested up to 22)
- Improved automatic Mathematica path detection
- Fixed bug preventing KeYmaera X from running on Windows
- Fixed axiom derivation issues on startup
- Fixed incorrect syntax errors in webui text editor
- Removed
-security
CLI flag and webui SSL support
Version 5.0.2
Version 5.0.2 provides command line improvements and improved support for interpreted functions in monitoring.
- Command line options: Z3 path, KeYmaera X home directory
- Monitoring: support for interpreted symbols, improved Python exporter
- Definitions: predefined interpreted symbol tan
- UI: animate finished proof (auto-replay)
Version 5.0.1
Version 5.0.1 provides bug fixes and a tactic to prepare quantifier elimination queries.
- [Tactics] tactic
prepareQE
with heuristics for equality rewriting, introducing abbreviations, and forming the universal closure of a sequent - [Tactics] tactic
rcf
to complete a query with an external tool - [Tactics] tactic
qe
combinesprepareQE
andrcf
.
Version 5.0
Version 5.0 provides a definition package for user-defined functions, major parser rewrite, keyboard shortcuts during proofs, tactic performance improvements, and tool improvements.
-
Definitions: adds support for user-defined functions whose graphs can be implicitly characterized by dL formulas, such as the exponential and trigonometric functions, as solutions of differential equations. Properties of those user-defined functions can be proved using dL's differential equation reasoning principles. A high-level interface for defining functions and non-soundness-critical tactics automate low-level reasoning over implicit characterizations in hybrid system proofs. Builtin definitions that can be used out of the box in models include
exp
,sin
,cos
,Pi
, andE
. -
UI: keyboard shortcuts for common proof tasks (customizable through
.keymaerax/hotkeys.js
file in home directory) -
Parser: complete parser re-implementation with support for user-defined functions, full tactic support in web UI parsing
-
Tactics: performance improvement with builtin forward tactics replacing (some) interpreted tactics
-
Tools: command line conversion tools from KeYmaera X format to SMT-Lib format (
-convert kyx2smt
) and Wolfram format (-convert kyx2mat
) -
Tools: improved Z3-based simplifier
Version 4.9.9
Version 4.9.9 provides UI bug fixes and some tactic performance improvements
- UI: get invariant generator (Pegasus) suggestions in dC dialog
- Docker container: Matlab support
- Tactics: bug fixes for definition expansion
- Tactics: faster forward implementation of several frequently used tactics
- Security update: log4j 2.17.1
Version 4.9.8
Version 4.9.8 provides a security patch and tactic implementation updates:
- Security patch: Log4j 2.15.0 (addresses CVE-2021-44228)
- Tactics: forward-style implementation of unification calculus tactics
Version 4.9.7
Version 4.9.7 provides support for switched systems, a fixpoint tactic for hybrid games, as well as UI and robustness improvements:
- Switched systems: hybrid automaton modeler
- Tactics: new stability and attractivity tactics for switched systems
- Tactics: new fixpoint tactic for hybrid games
- UI: tactic and model editor bug fixes
- UI: browse all tactics
- Code generator: export definitions
Version 4.9.6
Version 4.9.6 provides UI and robustness improvements.
- UI: tactic editor improvements, run tactics from editor gutter
- UI: save models while editing
- Code export: ModelPlex to Python
- Tactic: support for uninterpreted function symbols of arity>0 in QE
- Parser: improved error messages for program constants
Version 4.9.5
Version 4.9.5 provides improved interaction between tactics editing and sequent view.
- UI: selected tab gets highlighted in tactic editor, cursor position switches tabs
- UI: proof state displayed below tactic editor according to cursor position
- UI: formula icons ("eye") to configure positive-mention "using" by mouse
- UI: fast manual QE/CEX exploration with temporary formula hiding ("eye")
- Tactics: differential cut for constant quantities, e.g.,
dC("x^2+y^2=const()", 1)
- Docker container with KeYmaera X server