masawei
d75e32b83e
Renames the folder formula to properties and the namespace property to properties.
Former-commit-id: 236ed22c7d
11 years ago
masawei
532b0cf3ad
Added function to test if a formula is a probability bounded reachability formula, i.e. conforms to the pattern P[<,<=,>,>=]p ([phi U, E] psi) where phi, psi are propositional formulas (consisting only of And, Or, Not and AP).
- For that implemented function that checks if a formula is a propositional logic formula to all three logics.
- Added tests for the function.
- Added documentation for the function.
Former-commit-id: 3fcb84b990
11 years ago
masawei
27df78c2b0
Finished testing Ltl.
- Regrettably, the LtlFilterTest could not be done, since an Ltl modechecker would be needed for that. Which, we don't have.
|- So that is a TODO until such a modelchecker is implemented.
- This concludes the testing for the refactured formulas.
Next up: Documentation.
Former-commit-id: 2d731edcd9
11 years ago
masawei
0a2a759932
Ltl testng.
Former-commit-id: 57f486db59
11 years ago
masawei
2687809591
Finished testing of Csl.
Former-commit-id: 91172a1b89
11 years ago
masawei
33386f4c5f
Changed the actions in the filters to be shared_ptr instead of raw pointers. This prevents memory leaks when a filter is destructed.
- Also handled nullptr actions.
|- They are checked for in the constructor as well as in the add method and filtered out. No segfaults do to nullptr actions anymore.
Former-commit-id: 84b3b2a978
11 years ago
masawei
b7357c2cf9
Testing, noticed that vectors of pointers are not good. Changing that.
Former-commit-id: 460854c49c
11 years ago
masawei
1c4d7b9ef9
Some more testing.
Former-commit-id: 3105a0bf3b
11 years ago
masawei
2c59dd6f32
Finished unit tests for the actions.
Next up: Update the parser tests.
Former-commit-id: c0db7bd1d4
11 years ago
masawei
ee1ebdf91d
Removed the visitor from LTL and refactured the formulas to use shared pointer in stead of standart pointer.
Next up: Continue testing.
Former-commit-id: 0103895e13
11 years ago
masawei
9fe246a98b
Renamed the folders containing the formulas to lowercase to adhere to the naming conventions and Started with testing.
-Tests for BoundAction done
Former-commit-id: d5698d3d53
11 years ago
masawei
3271e73f01
Fixed the last test. All tests green now (well, except the ones that need gurobi, which I don't have).
Former-commit-id: 7636a2a6ab
11 years ago
masawei
9a28e5b580
Added proper formula string method to filters.
- Lots of debugging
- Changed the way the filter keeps information about the scheduler to use for probability/reward queries.
| This was done by keeping a special action at the first position of the action list.
| Which was not exactly consistent with the idea behind the filter actions.
| Now the filter keeps this information as an enum value in a member variable.
- All but one tests are green. So we almost reestablished full functionality.
|- The last test that still fails is SparseMdpPrctlModelCheckerTest.Dice where the second to last model check returns the wrong result.
Next up: Debug. Then introduce the full range of filter actions.
Former-commit-id: fd311966cc
11 years ago
masawei
4bf0299279
Changed the Prctl/Csl formula parsers to be static classes.
- Also fixed up control flow and some tests for new interfaces.
|-> It now compiles again.
Next up: More functionallity in the filter.
Former-commit-id: 21d43e75c4
11 years ago
dehnert
45486600f7
Made parts of the interface of the DdManager protected (because they shouldn't be accessible from the outside world).
Former-commit-id: bf52a653b8
11 years ago
dehnert
29d8111991
Adapted Gurobi and glpk LP solvers to expression-based interface. Adapted tests and made them work again.
Former-commit-id: 62379ddafd
11 years ago
dehnert
389fddc996
Added some more methods to valuations. Changed visitor invocation slightly. Moves ExpressionReturnType in separate file. Finished linearity checking visitor. Started on visitor that extracts coefficients of linear expressions.
Former-commit-id: 6e3d0ec910
11 years ago
dehnert
57a8381f91
If requested, the DD iterator can now skip meta variables which are 'don't cares' for the function value.
Former-commit-id: 061cb5f0fa
11 years ago
dehnert
db232fe39b
Moved from pair to MatrixEntry as the basic building block of the matrix. Now matrix elements can be accessed in a more readable way.
Former-commit-id: f6514eb0cd
11 years ago
dehnert
92ee6187fa
Added more query methods to expressions. SparseMatrix now keeps track of non zero entries and models show correct number of transitions by referring to nonzero entries rather than all entries in the matrix.
Former-commit-id: 48180be2fe
11 years ago
dehnert
219af9b43b
Removed constants from expressions. Even though PRISM has the concept of constants and variables, it currently makes no sense to distinguish them in our expression classes.
Former-commit-id: 787e921e2c
11 years ago
dehnert
c6976dd8b5
Added some query methods for new expression classes.
Former-commit-id: 0633c7740e
11 years ago
dehnert
c76e0e8d4d
Added class for initial construct of PRISM programs (to capture position information). Added more validity checks for programs and tests for them (not all though).
Former-commit-id: cf4e985684
11 years ago
dehnert
82836f1ad1
Added some checks for validity of identifiers in PRISM programs. Added some illegal tests to test suite.
Former-commit-id: fc44db75a7
11 years ago
dehnert
8d3ed7d2fa
Added min/max functions on DDs. Added tests for them and ite operation.
Former-commit-id: 8e6df90a38
11 years ago
dehnert
39ec9401ef
Fixed the PrismParser so the exact format of PRISMs boolean expressions can now be parsed.
Former-commit-id: bb08ec1646
11 years ago
dehnert
6078e07476
First version of DD iterator; small test included.
Former-commit-id: 2ec2323886
11 years ago
PBerger
1d8ae9fc89
Fixed an issue with templated variadic template arguments (see http://stackoverflow.com/questions/23119273/use-a-templated-variadic-template-parameter-as-specialized-parameter for discussion)
Former-commit-id: e7d2d054b6
11 years ago
dehnert
311247ff0c
Added support for Xor in expression classes and added parsing functionality for Xor, Implies and Iff.
Former-commit-id: 16e023cf26
11 years ago
dehnert
61d4bb956c
Added functionality to compare two ADDs up to a given precision. Added logical operator overloads to DD interface. Added tests for all new features.
Former-commit-id: 738ad49d62
11 years ago
dehnert
5a4730ae22
When exporting DDs to the dot format, edges leading to the zero node are now suppressed. Also, nodes in the dot file are now labeled with variable names (+ the number of the bit).
Former-commit-id: 410d61d333
11 years ago
PBerger
94b25c02ca
Fixed bugs in some files.
Made LTL a little better to compile under WIN32.
Former-commit-id: 71377f0672
11 years ago
dehnert
dc8921037e
Added missing test inputs.
Former-commit-id: 537971f365
11 years ago
dehnert
164c8225fd
Fixed some minor issues.
Former-commit-id: 80f0ae4c9c
11 years ago
dehnert
199b6576a9
Added ternary operator. Parsing standard PRISM models into the PRISM classes now works. Included tests for parsing stuff. ToDo: add remaining semantic checks for parsing/PRISM classes and fix explicit model adapter.
Former-commit-id: cb37c98f1f
11 years ago
dehnert
f6587b424d
Further work on PrismParser and the related PRISM classes...
Former-commit-id: be4ae055dd
11 years ago
dehnert
7610bc8e76
Started reducing the complexity in the PRISM grammar.
Former-commit-id: c17dc6d27b
12 years ago
dehnert
eb2b2fed30
Hotfix for DD abstraction layer: copy and paste mistake in operator !\= is now fixed.
Former-commit-id: b815b7d7e8
12 years ago
dehnert
41b31df0ab
Added small tests for implies/iff in expressions.
Former-commit-id: 3d90be7596
12 years ago
dehnert
6e1241211b
Started moving IR and adjusting it to the new expression classes.
Former-commit-id: 24a182701f
12 years ago
dehnert
8af52c8866
Finished new expression classes and corresponding functional tests.
Former-commit-id: 9268eab3a9
12 years ago
dehnert
c8a8beca2a
Started working on new easy-to-use expression classes.
Former-commit-id: 9ee1be5822
12 years ago
dehnert
88d9f36ef4
Added min/max abstract over DD variables to CUDD (actual code taken from PRISM). Added more tests for DD layer. Fixed some bugs in the DD layer.
Former-commit-id: a4b7810137
12 years ago
dehnert
0fce0444f7
Further bugfixes and tests for DD layer.
Former-commit-id: 32ef63f9b1
12 years ago
dehnert
cf5c04065e
Added streaming functionality to DD. More tests, more bugfixes.
Former-commit-id: 3c3078fbdc
12 years ago
dehnert
6b07643c96
Further tests for DD layer and bugfixing.
Former-commit-id: 752a8c55ac
12 years ago
dehnert
a4fec9f080
Started writing functional tests for DD abstraction layer and fixed some bugs on the way.
Former-commit-id: 8a2fc118be
12 years ago
masawei
2ed6be853b
Fixed two minor bugs.
- First one concerning the MappedFileTest in which I neglected to consider that the number of characters used to signal a new line differs between Linux (\n -> 1) and Windows (\r\n -> 2) which caused the test to fail on all OS using two characters (hence not on Linux, where I ran the tests).
- Second bug concerned the case that a transition reward file contained more states than the corresponding transition file.
In that case the parser tried to acces the entry of the rowGroupIndices vector behind the last actual entry, which caused an exception to be thrown.
Now there is a check whether the highest state index found by the parser does exceed the highest state index of the model.
Former-commit-id: bc83267f3c
12 years ago
masawei
8f171c7dc5
Finished initial remerge.
- Fixed comments.
- It seems to be ASSERT_EQ(expected, actual);
|-> Switched arguments of nearly all ASSERT_EQs to correctly use this macro in the parser tests.
Former-commit-id: e5059709f2
12 years ago
masawei
28910462ec
Necessary changes to the nondeterministic parses to compensate for the change in the way the mapping between states of the model and the rows of the transition matrix are handled.
- All tests are green.
- Some comments are now a bit wrong.
Next up: Correct comments.
Former-commit-id: 610c0282b2
12 years ago