Skip to content

Releases: DEIS-Tools/PDAAAL

All algorithms: {pre*, post*, dual*} x {shortest, longest} trace

19 May 08:27
e5a3397
Compare
Choose a tag to compare

This release implements shortest and longest trace versions for both pre* and post* algorithms and the combination 'dual*'. Using dual* (-e 3) gives overall the best performance in our benchmarks.
Parsing now supports wildcard rules and vector weights.
Various bug-fixes and algorithmic improvements.

What's Changed

Full Changelog: v1.0.0...v1.1.0

Stand-alone tool + longest trace

01 Mar 16:46
32a3fc9
Compare
Choose a tag to compare

This release extends the library with parsers (and printers) and a main binary, so it can be used as a stand alone pushdown verifier tool.
On the algorithm side, we can now compute longest trace and detect loops (infinite trace) using a fixed-point version of pre*. (Returning the looping pattern in case of infinite trace is not yet implemented.)
Finally, there has been a major restructuring of the code.

What's Changed

  • Stand-alone PDAAAL bin + Parsers + Printers + fixed-point-pre* + bug fixes by @MortenSchou in #22
  • Update dependencies by @MortenSchou in #23
  • TraceInfoType + more AutomatonPath + AutomatonTraceBack by @MortenSchou in #24
  • Move find_path[_shortest] to PAutomaton + fix algorithm + make AutomatonPath nullable by @MortenSchou in #25
  • Move internal code to namespace pdaaal::internal by @MortenSchou in #26
  • Renaming that removes 'Typed' prefix from PDA, PAutomaton, and PDAFactory by @MortenSchou in #27
  • All CEGAR things are in specific folder by @MortenSchou in #28
  • Add JSON parser for Solver-Instance by @MortenSchou in #29

Full Changelog: v0.3.0...v1.0.0

General early termination | Dual search | CEGAR

07 May 16:03
e0ee3be
Compare
Choose a tag to compare

This release contains several upgrades:

  • On-the-fly intersection of P-automata allowing early termination in the general case.
  • Dual search algorithm (interleaving pre* and post*).
  • CEGAR (counter-example guided abstraction refinement) of the pushdown reachability analysis.

Also featuring:

  • ptrie_interface, which makes it easier to work with heterogeneous types in the ptrie data structures.

Deprecation:
The Reducer class (implementing top-of-stack reductions of PDA) only works with PDAs with one initial and final state and empty initial/final stack, which the new workflow is no longer restricted to. Since Reducer is no longer compatible with the reachability analysis, it may be removed in a later release, unless it is generalized (which should be possible, but requires some labor).

v0.2.5: Merge pull request #17 from DEIS-Tools/fifo-poststar

25 Jun 20:10
118e1e4
Compare
Choose a tag to compare
Use FIFO-queue for transitions in post*

v0.2.4: Merge pull request #14 from DEIS-Tools/bug-fix-dummy-label

13 Jun 09:57
7d4b166
Compare
Choose a tag to compare

Performance and bugfix

12 Jun 09:38
bacb2af
Compare
Choose a tag to compare

Various updates and fixes

v0.2.2 Journal Release

08 Jun 07:44
Compare
Choose a tag to compare
Pre-release

Release for repeatability of journal.

Performance improvements

25 Apr 09:33
Compare
Choose a tag to compare

Improves the performance of PDAFactory and PAutomaton.

Weighted PDAAAL

26 Mar 10:21
c37e347
Compare
Choose a tag to compare

Implements weighted pushdown systems and shortest trace post* reachability analysis.
Still supports 'any trace' post* and pre* for both weighted and unweighted pushdown systems.

Initial PDAAAL

20 Mar 14:23
Compare
Choose a tag to compare

Initial implementation, taken out from AalWiNes.