Replies: 3 comments 1 reply
-
|
Hi @anaisac, I think there is some confusion regarding the different variable types and their use. Roughly speaking, considering a system component (
One crucial information missing at this point is the Lustre assignment that you've given to Given this, the requirement that you checked is unrealizable. The reason is that the requirement in its current form expresses an expectation that Given that the above makes sense, what you can further do is create requirements that specifically introduce constraints over inputs. We refer to such requirements as "assumptions". A requirement is an assumption if it contains the string "assumption" in its Requirement ID (e.g. "R6_assumption"). Assumptions will be handled differently during analysis than regular requirements. In your case here, one way to resolve unrealizability (again, assuming that This assumption simply states that for the input Sidenote: assumptions that involve Hopefully this helps. Please let us know if you have further questions. Andreas |
Beta Was this translation helpful? Give feedback.
-
|
Hi @anaisac , The requirement in this example expresses that One trivial way to get what you describe would be to change the requirement's timing value from Obviously, the semantics change drastically in this case. The diagrammatic semantics and the simulator in the requirements editor should help towards identifying what you ultimately intend to capture. Another, perhaps more interesting way to get what you intend is to change the assignment of This Lustre expression sets the value of Again, ultimately it all depends on what you intend to capture as part of the system's behavior. Hopefully these examples can help you a bit more. Best, Andreas |
Beta Was this translation helpful? Give feedback.
-
|
Hello @andreaskatis, The idea here would be more on: I received the "sw_package_size" and I check the size of it. Now that I'm seeing from your perspective, I think my requirement writing is not really translating the idea I want, but those examples definitively help me. I will think about it in another way. The thing is, the set of requirements I'm using doesn't have much on changing in time, they are mostly ubiquitous(prescribe format), process commands and state transitions at first trace point. This one from ROM was the only one that I say is identifiable as being a check bound and I also have 3 set diagnostic flags that need to happen at first trace point. |
Beta Was this translation helpful? Give feedback.


Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone :)
I'm going to post this here, since is not an issue with the tool itself, just me trying to figure out more :)
I've changed a bit my requirement to have a more explicit attribution. And when I did the realizibility checking, I got a conflict that I was not expecting to have, let me show you the printscreen:

"R6" is the requirement name so I see that it shows up to give the "final" answer if the requirement is realizable or not.
"TLS_Keys" is my component so I expect it does not have any weight on the checking.
"valid" is the attribution value that I want to give, and this one I expect to be true or false.
"entity" I was expecting it to be just the receiver of the attribution, so that's why I put it as input in the variable mapping.
I'm not understanding why the "entity" has a start value of false, I was expecting that it always received the value that I was giving to it, and that the "entity" was neutral?! .
Am I confusing concepts here? Can you help me understand what I'm doing wrong?
This is my variable mapping.

If necessary I can provide the analysis files :)
Beta Was this translation helpful? Give feedback.
All reactions