Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements to TADL language #12

Open
vsimko opened this issue Aug 26, 2014 · 0 comments
Open

Improvements to TADL language #12

vsimko opened this issue Aug 26, 2014 · 0 comments
Assignees

Comments

@vsimko
Copy link
Member

vsimko commented Aug 26, 2014

We identified few cases that require extension to the current TADL langauge.

support for "mode switching" that is automatically verified, e.g. two modes A,B should always switch either A->B or B->A, but not A->A nor B->B
Here is a proposal, how the new TADL language could look like:

# Annotation group: modeA-modeB
## no multi-modeA
CTL AG(modeA -> AX(A[!modeA U modeB]))

## no multi-modeB
CTL AG(modeB -> AX(!E[!modeA U (modeB & !modeA)]))

## if there is "modeB" there must have been a "modeA" before
LTL G(modeB -> O(modeA))

# these are rules for adding new annotations to the specification
modeA -> mark:modeA; unmark:modeB
modeB -> mark:modeB; unmark:modeA

Another example could be the "abort" annotation which should automatically add "mark" annotation.

# Annotation group: abort
abort -> mark:abort

Finally, we could extend the TADL language to automatically add context information, such as use-case ID or step ID.

# Annotation group: create-use
create -> mark:create_$ucId_$stepNumber

... which would allow for guards like this: guard:create_UC1_5a4

@vsimko vsimko added this to the Security-related verification milestone Oct 10, 2014
@vsimko vsimko modified the milestone: Security-related verification Nov 30, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants