You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
208 lines
7.1 KiB
208 lines
7.1 KiB
=======================================================
|
|
Remove for beta distributions:
|
|
=======================================================
|
|
|
|
* NOTES
|
|
|
|
=======================================================
|
|
TODO (before public release of 4.0)
|
|
=======================================================
|
|
|
|
PRIORITY (first beta, w/ CAV paper)
|
|
--------
|
|
|
|
* JAVADOC
|
|
- links on front page?
|
|
|
|
|
|
PRIORITY (next betas)
|
|
--------
|
|
|
|
* Benchmarks
|
|
- Get tar files online
|
|
- Check/tidy
|
|
- Links to e.g CTMCs props from below CTMCs table
|
|
- Links from each prop to corr model table?
|
|
- More labels
|
|
- ctmc steady-state split up?
|
|
- unique prop names across models?
|
|
|
|
* Intervals (e.g. for multiple initial states) plotted in graphs
|
|
|
|
* Stat m/c
|
|
- Tidy up other new sim options (simmanual, simvar, simmaxrwd) ?
|
|
- MDP warning
|
|
- Sort initial state in sim dialog?
|
|
tick box for default initial
|
|
is there a bug in this already?
|
|
ready for mult init states?
|
|
- Result object creation pushed into SimEngine?
|
|
Result objects returned from SimEngine + explanation strings
|
|
|
|
* PTA fix: convex, non-diagonal, etc.
|
|
(see DigitalClocks.java.patch)
|
|
cases to consider:
|
|
- implications in invariants
|
|
- Pmax=? [ F "end" & (x<=5) ]
|
|
- Then: test with formats09 script
|
|
- Then: respond to Nico B (when live)
|
|
|
|
* Doc: Adversary generation (e.g. -exportadv switch)
|
|
* Doc: Sim switches -simmanual, -simvar <n> and -simmaxrwd <x>
|
|
|
|
|
|
THE REST (before 4.0)
|
|
--------
|
|
|
|
Documentation:
|
|
* Fix links from tutorial to manual (and reread/tweak)
|
|
* New -exportprism/-exportprismconst/-nobuild switches
|
|
* New -exporttarget switch
|
|
* Extra reach info switches?
|
|
* Some pointers for where to start with PTAs, e.g. where examples are
|
|
* SimulatorEngine JavaDoc
|
|
|
|
Filters, property semantics, etc.
|
|
* Integer-valued props displayed as doubles when printed as vector
|
|
* Add "single" filter - throws error if filter states > 1?
|
|
* Allow other filter types to be spec with {} notation?
|
|
and then in doc clarify P>=p[...{filter}] means & not print
|
|
(didn't print in 3.3 anyway, despite manual)
|
|
|
|
Action labels:
|
|
* Check status of export/import trans wrt actions (alll models)
|
|
* Finalise tra format with actions (needs to work with MCs too)
|
|
- also fix e.g. importtrans, prism-statra
|
|
* make action storage optional (when required e.g. for export) (especially for MCs)
|
|
|
|
PTAs:
|
|
* Find a way to make PTA and multi-obj report that result
|
|
is just for initial state; need re-think of filters?
|
|
* More tidying of PTA examples
|
|
- README files for other (non-firewire) examples
|
|
- comments in pctl files, missing ones into autos
|
|
* Clarify rewards support (digital clocks)
|
|
* More of PCTL - even just G, bounded (not =?), etc.
|
|
* Enforce well-formedness checks (i.e. guards/resets imply target invariants)
|
|
(as opposed to say supporting strong invariants,
|
|
where targets with false invariants cannot be entered)
|
|
- zone-based: check during reach using valids
|
|
(or just during FW reach?) (nb: need to split dpost to do check)
|
|
(see non-well-formed.nm/pctl for a test case)
|
|
(if can't do that, syntax check using sat)
|
|
- digital clocks: check invariants after transform/reach?
|
|
(might be like non-pta case: doing before reach causes false alarms?)
|
|
* Digital clocks time-bounded
|
|
- will need to make sure cmax is updated accordingly
|
|
(currently just from temporal operator time bound since no clocks in formula)
|
|
- also might need to access property constants (see TODO in DC.java)
|
|
* Allow constraints of the form x-y<=c
|
|
* Bug fix: action alphabet (syntactic) for sync lost in PTA object construction
|
|
|
|
=======================================================
|
|
Post-4.0 fixes/adds (4.0.1 etc.)
|
|
=======================================================
|
|
|
|
Integrate multi-objective?
|
|
|
|
General:
|
|
* Error (at least warning) on Pmax=? [ target ] (i.e. no F) (all models)
|
|
|
|
Documentation:
|
|
* Add DTMC/MDP case to synchronisation section
|
|
* Check for existence of zero-reward loops
|
|
|
|
PTAs:
|
|
* On-the-fly global reachability to allow (for A-R engine):
|
|
- more scalable
|
|
- access to other local and global vars
|
|
- system endsystem?
|
|
(then test on Arnd's BRP model + Marco's + others)
|
|
|
|
Simulator:
|
|
* New display progress meter for simulation?
|
|
* SimMethod deal with possibility of more iters than expected
|
|
- recalc some stats on computeMissingParameterAfterSim?
|
|
- max 100% for getProgress?
|
|
- search TODO
|
|
* make call to setExpression earlier for earlier detection of errors?
|
|
(would need to pass multiple sim methods to Prism)
|
|
(but: consts not def yet, e.g. might not know theta)
|
|
* merge APMC/etc. triple subclasses?
|
|
* store log for likelihood ratio?
|
|
* make percentage from getProgress more accurate, do mod 10 after
|
|
* do we stil need reset() in SimMethod? Don't delete, just check
|
|
|
|
General:
|
|
* finish -explicitbuild (e.g. no labels, rewards), currently in -qar
|
|
* postpone reward struct constr until needed?
|
|
|
|
=======================================================
|
|
=======================================================
|
|
|
|
BUG (some time)
|
|
---------------
|
|
|
|
Simulator:
|
|
* approx mc of a property loses any current simulator path in gui.
|
|
is that ok? (seems to be buggy in 3.3.1 anyway)
|
|
|
|
* prism ~/prism-examples/dice/dice.pm \
|
|
-pctl '(s=0|s=1)=>P>=1 [ (P>=0.9 [ F<=1 s=3 ])=>(P>=0.5 [ F<=2 s=4 ]) ]'
|
|
(time-bounds should be ok in inner pctl but are not)
|
|
|
|
TODO (some time)
|
|
----------------
|
|
|
|
PTAs:
|
|
* Implement structurally non-zeno checks
|
|
* BRP example
|
|
* Translate non-convex guards to DNF and multiple transitions
|
|
* Investigate whether non-convex invariants can be supported (look at zone ops)
|
|
* Games: Optimise number of states in time-bounded PTAs
|
|
(extras added in old target states) using until in forwards reach?
|
|
* Fix: Creation of new names (adding extra _s) doesn't take into account prop file ot consts etc.
|
|
* Digital clocks: urgency?
|
|
* Digital clocks: optimisations?
|
|
* New version of valid2 (inv/g push outside)
|
|
* Combined complement + intersection (terminating early) for when dbm lists get big
|
|
* Are we ok to have non-diagonal c-closure algorithm?
|
|
(or is it ok if only use this on initial reach graph construction?)
|
|
|
|
Simulator:
|
|
* Variable overflow etc.
|
|
- would make sense to check in Update.update() because want to know offending command
|
|
- but need access to VarList, which we don't have
|
|
* Investigate efficiency wrt old simulator
|
|
* Add (back) support for *full* loop detection? (not just *single* self-loops)
|
|
* Add (back) early manual termination of sampling (thru expt stop?)
|
|
* Random initial state
|
|
* Add support for "deadlock" and "init" (new EvaluationContext, model *and* state dependent)
|
|
* Seed issues (currently twice in one second = same seed)
|
|
* explicitbuildtest doesn't handle dupes in mdps (e.g. consensus)
|
|
* Explicit build doesn't handle multiple initial states
|
|
* GUI sim - add context menu to transition list with e.g. "show in model"
|
|
* Traviendo export?
|
|
* Code: Optimise/tidy Choices (ChoiceList/ChoiceSingleton/etc.)
|
|
|
|
Other:
|
|
* Export tr/ss probs from GUI
|
|
* Initial distr for steady-state
|
|
* Finish CTL
|
|
|
|
Adversary generation:
|
|
* Add adversary generation for other engines
|
|
|
|
Abstraction/refinement:
|
|
* Exp reach for games
|
|
* Poss. refine opt: don't add ubsets of player1 choices
|
|
|
|
BSCC stuff:
|
|
* regression testing + perf. on ltl stuff with 3 diff options
|
|
|
|
|
|
DOC (some time)
|
|
---------------
|
|
|
|
Prism-multi:
|
|
* No state rewards
|