To focus the search input from anywhere on the page, press the 'S' key.
in-package search v0.1.0
Install
Authors
Maintainers
Sources
sha256=3ee4b4b028b18ab0066cb4648fa14cd4d628a3afd79455f85fb796a9969ac80c
sha512=06d455f0221814dae44d9d8614cab7c1d4fb43a383e603a92ffc9cf4a753d42c5f2a0f3c5ae64aa6cf02da769c4666b130443ae2cf8fa0918c906d46e0caec9a
CHANGES.md.html
v0.8
UI
Add a minimal reporting style accessible via the
--report-style
option. When used, thedolmen
binary will use at most one line
to output the result of processing the input fileAdd an option to the
dolmen
binary to force a specific smtlib2
logic, overriding the one given in the file. This is accessible
via the--force-smtlib2-logic
optionAdd some documentation for setting up the lsp with neovim (PR#114)
Model verification
Added model verification. This currently supports all
builtins, except for String/Regular expressions.
Parsing
Fix long compilation time of tptp parser due to flambda (PR#111)
Replace some
assert false
by proper error messages when
there is not the same number of function signatures as function
definitions in adefine-funs-rec
command in smtlib2Accept all reserved words in s-exprs in smtlib (mainly affects
parsing of attributes)Added a parser for the smtlib model specification language
Fix doc comments mentionning removed parameters
(PR #107, issue #106)Add an option to print syntax error identifiers (mainly to be
used for debug)Register a printer for the
Uncaught_exn
exception (mainly useful
for library users)Add a tag to differentiate predicates from functions in alt-ergo
(PR#104)
Typing
Properly typecheck s-expressions in attributes for smtlib2
(most notably in :patterns attributes for psmt2)Cleaned up handling of definitions: instead of using
the functors inDef
, definitions are now simply declared
using the functions exposed by the typecheckerStop emitting unused warnings for type wildcards
Expose term constants in the
Std.Expr
module (PR#112)
Loop
Changed the state type from a record to an heterogeneous
map. This simplifies interfaces for all Loop modules,
and makes it much more extensible.Added initialization functions for each pipe in order to
correctly init the expecteds keys in the stateAllow users to better control the interactive prompt when
parsing from stdin (PR#113)
v0.7
UI
Added source input snippet printing for errors and warnings
Fix a bug affecting warning options (e.g.
dolmen --warn=+all
triggered an uncaught exception that is
now fixed)
Parsing
Fix bug in SMTLIB syntax (v2.6 and poly), where the
define-funs-rec syntax construction expected an open
paren at the end instead of a closing paren
Typing
Complete the typing of alt-ergo's builtins
PR#89Added exhaustivity and redundant pattern matching analysis
(redundant patterns trigger a warning, whereas inexhaustive
pattern matching trigger a typing error)
part of PR#89Removed the typing of real and extended bitvector literals
from the Float theory. These are not part of the FP
specification, so it's better for Dolmen to be strict.
Additionally, dependengin on the order of theories, they
could shadow the proper typing of such literals and
result in bogus warnings/errors
PR#79 (see also Issue#43 Issue#74)Fixed the handling of the
reset
andreset-assertions
commands of smtlibv2.6. Previsously reset was ignored,
and reset-assertions was treated as reset (meaning that
any set-logic were erased). These two commands should
now be correctly implemented in the typing loop.
PR#80Added a warning for multiple set-logics
PR#82Added a hint to suggest a missing theory when a literal
is unbound.
PR#81
API
Added proper abstractions for names and paths.
Names are used instead of strings for parsed
identifiers (Id.t), while Paths are used instead of
strings for typed identifiers (Expr.id).
This results in a speedup on some smtlib problems
because indexed identifiers no longer need to be
encoded and then split.Added to Dolmen a custom implementation of Radix tries
for a better indexation of strings. This results
in signifcant speedup on large problem.Added some convenience modules for testing and profiling
(Timer and Stats)The pipeline now delegates the task of printing backtraces
for excpetions to the caller/finally argument of the run
functionthe
Dolmen_loop
library now has an added dependency onpp_loc
(used for the source input printing)updated version bounds on
cmdliner
andpp_locs
v0.6
Release
The official github release now provides access to
already built binaries fordolmen
anddolmenls
,
for linux (ubuntu) and macosThe LSP server has been updated to depend on
linol~0.2
Bugfixes
Smtlib2 let-bindings were treated as sequential, but are
now treated as parrallel as specified by the spec;
i.e. the following is now correctly rejected:(let (x 0) (y x) (...))
Features
Added support for higher order, including tptp's THF and Zf
Optimized some corner cases of the typechecker to avoid
exponential blowups
API
The interface of the
Expr
module has changed to support
higher-orderAdditionally, there is now proper support for type aliases
(which are expanded on demand as necessary), inExpr
There is now a new typechecker module exposed as Thf for
typing higher order expressions
v0.5
Additions
Added a functorized typechecker for all language supported by Dolmen
Added a LSP server for all language supported by Dolmen