[Skip Navigation] [CSUSB] / [CNS] / [CSE] / [R J Botting] / [Samples] / Grunske08
[Index] [Contents] [Source Text] [About] [Notation] [Copyright] [Comment/Contact] [Search ]
Sun Feb 20 10:35:09 PST 2011

Contents


    Table 2: Structured English Grammar - Natural Language

      Source

      [Grunske08]

      Start

    1. probabilisticProperty::= "The system shall have a behavior where" patternStateFormula.

      ProProST Pattern

    2. patternStateFormula::= "with a probability" probabilityBound "it is the case that" occurenceStateFormula| orderStateFormula.
    3. occurenceStateFormula::= transientStateProbability | steadyStateProbability | probabilisticInvariance | probabilisticExistence.
    4. orderStateFormula::= probabilisticUntil | probabilisticPrecedence | probabilisticResponse | probabilisticConstResponse.
    5. transientStateProbability::= stateFormula "holds after exactly" time "time units.".
    6. steadyStateProbability::= stateFormula "holds in the long run.".
    7. probabilisticInvariance::= stateFormula "holds continuously" timeBound ".".
    8. probabilisticExistence::= stateFormula "will eventually hold" timeBound ".".
    9. probabilisticUntil::= stateFormula2 "holds" timeBound "after" stateFormula1 "has held continuously before".
    10. probabilisticPrecedence::= stateFormula2 "holds before" stateFormula1 "can hold" timeBound ".".
    11. probabilisticResponse::= "if" stateFormula1 "holds, then as a response" stateFormula2 "becomes true" timeBound ".".
    12. probabilisticConstResponse::= "if" stateFormula1 "holds, then as a response" stateFormula3 "becomes true" timeBound "without" stateFormula2"holding in between.".

      Time

    13. timeBound::= noTimeBound | upperTimeBound | lowerTimeBound | timeInterval.
    14. noTimeBound::= "".
    15. upperTimeBound::= "within" time "time units".
    16. lowerTimeBound::= "after" time "time units".
    17. timeInterval::= "between" time "and" time "time units".
    18. time::=Positive & Real.

      Probability

    19. probabilityBound::= lowerProbBound | lowerOrEqualProbBound | higherProbBound| higherOrEqualProbBound.
    20. lowerProbBound::= "lower than" probability.
    21. lowerOrEqualProbBound::= "lower or equal than" probability.
    22. higherProbBound::= "greater than" probability.
    23. higherOrEqualProbBound::= "greater or equal than" probability.
    24. probability::=[0..1].

      Final

    25. SimpleStateProperty::=given.
    26. stateFormula::= SimpleStateProperty.
    27. stateFormula1::= SimpleStateProperty.
    28. stateFormula2::= SimpleStateProperty.
    29. stateFormula3::= SimpleStateProperty.

End