- Cyclic Specification use in Proofs
- Open Proofs
- Unspecified Methods
- Java modeling unsound Taclet Options
- Taclet Options with additional Information
- Assumptions
- The following proofs forms a cyclic specification use which invalidates all of them:
2 of 18 proofs are still open:
-
/SWTBotVerificationStatusViewTest_testColorPriorization/proofs/cy/MR.java/cy_MR[cy_MR__wrong()]_JML_normal_behavior_operation_contract_0.proof
-
/SWTBotVerificationStatusViewTest_testColorPriorization/proofs/op/OP.java/op_OP[op_OP__wrong()]_JML_normal_behavior_operation_contract_0.proof
2 of 20 methods are unspecified and may call methods in a state not satisfying the precondition:
-
cy.MR
-
us.US
Proofs using a listed taclet options are Java modeling unsound:
-
initialisation:disableStaticInitialisation (Java modeling unsound)
-
intRules:arithmeticSemanticsIgnoringOF (Java modeling unsound)
Proofs using a taclet option with some additional information:
-
assertions:on (Sound if JVM is started with enabled assertions for the whole system.)
-
JavaCard:off (Sound if a Java program is proven.)
Proofs are performed under the following assumptions still need to be proven:
-
Closed world assumption for the dynamic dispatch of the following method calls:
-
cl.CP#()
-
cl.CP#()
-
cl.CP#()
-
java.lang.Object#()
-
java.lang.Object#()
-
cy.MR#()
-
cy.MR#()
-
cy.MR#()
-
op.OP#()
-
op.OP#()
-
op.OP#()
-
ud.UD#()
-
ud.UD#()
-
ud.UD#()
-
us.US#()
-
us.US#()
-
us.US#()
- Methods are called in a state satisfying the precondition, assumed for:
- Unspecified methods
- Methods of used APIs
- System in which the source code will be used
- Source code is compiled using a correct Java compiler.
- Program is run on a correct JVM.