Report

List of Contents

  1. Cyclic Specification use in Proofs
  2. Open Proofs
  3. Unspecified Methods
  4. Java modeling unsound Taclet Options
  5. Taclet Options with additional Information
  6. Assumptions

Cyclic Specification use in Proofs

  1. The following proofs forms a cyclic specification use which invalidates all of them:

Open Proofs

2 of 18 proofs are still open:
  1. /SWTBotVerificationStatusViewTest_testColorPriorization/proofs/cy/MR.java/cy_MR[cy_MR__wrong()]_JML_normal_behavior_operation_contract_0.proof
  2. /SWTBotVerificationStatusViewTest_testColorPriorization/proofs/op/OP.java/op_OP[op_OP__wrong()]_JML_normal_behavior_operation_contract_0.proof

Unspecified Methods

2 of 20 methods are unspecified and may call methods in a state not satisfying the precondition:
  1. cy.MR
  2. us.US

Java modeling unsound Taclet Options

Proofs using a listed taclet options are Java modeling unsound:
  1. initialisation:disableStaticInitialisation (Java modeling unsound)
  2. intRules:arithmeticSemanticsIgnoringOF (Java modeling unsound)

Taclet Options with additional Information

Proofs using a taclet option with some additional information:
  1. assertions:on (Sound if JVM is started with enabled assertions for the whole system.)
  2. JavaCard:off (Sound if a Java program is proven.)

Assumptions

Proofs are performed under the following assumptions still need to be proven:
  1. Closed world assumption for the dynamic dispatch of the following method calls:
    1. cl.CP#()
    2. cl.CP#()
    3. cl.CP#()
    4. java.lang.Object#()
    5. java.lang.Object#()
    6. cy.MR#()
    7. cy.MR#()
    8. cy.MR#()
    9. op.OP#()
    10. op.OP#()
    11. op.OP#()
    12. ud.UD#()
    13. ud.UD#()
    14. ud.UD#()
    15. us.US#()
    16. us.US#()
    17. us.US#()
  2. Methods are called in a state satisfying the precondition, assumed for:
    1. Unspecified methods
    2. Methods of used APIs
    3. System in which the source code will be used
  3. Source code is compiled using a correct Java compiler.
  4. Program is run on a correct JVM.