├── .git-blame-ignore-revs ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── config.yml │ └── feature_request.md ├── dependabot.yml ├── old_workflows │ ├── deletecache.yml │ ├── labeler.yml │ ├── mega-lint.yml │ ├── test-report.yml │ └── update_symbex_oracles.yml ├── pull_request_template.md ├── qodana.starter.full.xml ├── release.yml └── workflows │ ├── code_quality.yml │ ├── gradle-publish.yml │ ├── javadoc.yml │ ├── nightlydeploy.yml │ ├── opttest.yml │ ├── sonarqube.yml │ ├── tests.yml │ └── tests_winmac.yml ├── .gitignore ├── .gitlab-ci.yml ├── .gitlab ├── issue_templates │ └── Bug.md └── merge_request_templates │ └── Feature.md ├── CITATION.bib ├── CONTRIBUTING.md ├── Jenkinsfile ├── LICENSE.TXT ├── README.md ├── codecov.yml ├── gradle.properties ├── gradle ├── header ├── header-recoder ├── key_checks.xml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── key.core.example ├── META-INF │ └── MANIFEST.MF ├── build.gradle ├── example │ └── IntegerUtil.java └── src │ └── main │ ├── java │ └── org │ │ └── key_project │ │ └── Main.java │ └── resources │ └── logback.xml ├── key.core.proof_references ├── build.gradle └── src │ ├── main │ ├── java │ │ └── de │ │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ └── proof_references │ │ │ ├── ProofReferenceUtil.java │ │ │ ├── analyst │ │ │ ├── ClassAxiomAndInvariantProofReferencesAnalyst.java │ │ │ ├── ContractProofReferencesAnalyst.java │ │ │ ├── IProofReferencesAnalyst.java │ │ │ ├── MethodBodyExpandProofReferencesAnalyst.java │ │ │ ├── MethodCallProofReferencesAnalyst.java │ │ │ └── ProgramVariableReferencesAnalyst.java │ │ │ └── reference │ │ │ ├── DefaultProofReference.java │ │ │ └── IProofReference.java │ └── resources │ │ └── MANIFEST.MF │ └── test │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── proof_references │ │ └── testcase │ │ ├── AbstractProofReferenceTestCase.java │ │ ├── TestKeYTypeUtil.java │ │ ├── TestProofReferenceUtil.java │ │ └── analyst │ │ ├── TestClassAxiomAndInvariantProofReferencesAnalyst.java │ │ ├── TestContractProofReferencesAnalyst.java │ │ ├── TestMethodBodyExpandProofReferencesAnalyst.java │ │ ├── TestMethodCallProofReferencesAnalyst.java │ │ └── TestProgramVariableReferencesAnalyst.java │ └── resources │ ├── logback.xml │ └── testcase │ └── proofReferences │ ├── AccessibleTest │ └── AccessibleTest.java │ ├── ArrayLength │ └── ArrayLength.java │ ├── Assignments │ └── Assignments.java │ ├── ConditionalsAndOther │ └── ConditionalsAndOther.java │ ├── InnerAndAnonymousTypeTest │ ├── InnerAndAnonymousTypeTest.java │ └── model │ │ └── InnerAndAnonymousTypeTest.java │ ├── InvariantInOperationContract │ ├── Child.java │ └── InvariantInOperationContract.java │ ├── InvariantInOperationContractOfArgument │ ├── Child.java │ └── InvariantInOperationContractOfArgument.java │ ├── MethodBodyExpand │ └── MethodBodyExpand.java │ ├── ModelFieldTest │ └── ModelFieldTest.java │ ├── NestedInvariantInOperationContract │ ├── Child.java │ ├── ChildContainer.java │ └── NestedInvariantInOperationContract.java │ ├── UseOperationContractTest │ └── UseOperationContractTest.java │ ├── activeUseStaticFieldReadAccess2 │ ├── ActiveUseStaticFieldReadAccess2.java │ └── Class.java │ ├── activeUseStaticFieldWriteAccess2 │ ├── ActiveUseStaticFieldWriteAccess2.java │ └── Class.java │ ├── assignment │ ├── Assignment.java │ └── Enum.java │ ├── assignment_array2 │ └── Assignment_array2.java │ ├── assignment_read_attribute │ ├── Assignment_read_attribute.java │ └── Class.java │ ├── assignment_read_length │ └── Assignment_read_length.java │ ├── assignment_to_primitive_array_component │ └── Assignment_to_primitive_array_component.java │ ├── assignment_to_reference_array_component │ └── Assignment_to_reference_array_component.java │ ├── assignment_write_attribute │ ├── Assignment_write_attribute.java │ └── Class.java │ ├── assignment_write_static_attribute │ └── Assignment_write_static_attribute.java │ ├── constructorTest │ ├── A.java │ ├── B.java │ └── ConstructorTest.java │ ├── eval_order_access4 │ ├── Class.java │ └── Eval_order_access4.java │ ├── eval_order_array_access5 │ ├── Class.java │ └── Eval_order_array_access5.java │ ├── methodCall │ ├── Class.java │ └── MethodCall.java │ ├── methodCallSuper │ ├── MethodCallSuper.java │ └── Super.java │ ├── methodCallWithAssignment │ ├── Class.java │ └── MethodCall.java │ ├── methodCallWithAssignmentSuper │ ├── MethodCallWithAssignmentSuper.java │ └── Super.java │ ├── methodCallWithAssignmentWithinClass │ └── MethodCallWithAssignmentWithinClass.java │ ├── methodCallWithinClass │ └── MethodCallWithinClass.java │ ├── staticMethodCall │ ├── StaticClass.java │ └── StaticMethodCall.java │ ├── staticMethodCallStaticViaTypereference │ ├── StaticClass.java │ └── StaticMethodCallStaticViaTypereference.java │ ├── staticMethodCallStaticWithAssignmentViaTypereference │ ├── StaticClass.java │ └── StaticMethodCallStaticWithAssignmentViaTypereference.java │ └── variableDeclarationAssign │ └── VariableDeclarationAssign.java ├── key.core.rifl ├── build.gradle └── src │ └── main │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── util │ │ └── rifl │ │ ├── DefaultSpecificationContainer.java │ │ ├── RIFLHandler.java │ │ ├── RIFLTransformer.java │ │ ├── SecurityLattice.java │ │ ├── SimpleRIFLExceptionHandler.java │ │ ├── SpecificationContainer.java │ │ ├── SpecificationEntity.java │ │ ├── SpecificationInjector.java │ │ └── package-info.java │ └── resources │ └── de.uka.ilkd.key.util │ └── rifl │ ├── blueprint_rifl.key │ └── rifl-1.0.dtd ├── key.core.symbolic_execution.example ├── build.gradle ├── example │ └── Number.java └── src │ └── main │ └── java │ └── org │ └── key_project │ └── example │ └── Main.java ├── key.core.symbolic_execution ├── build.gradle └── src │ ├── main │ ├── java │ │ └── de │ │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ ├── proof │ │ │ └── TermProgramVariableCollectorKeepUpdatesForBreakpointconditions.java │ │ │ ├── rule │ │ │ └── label │ │ │ │ ├── BlockContractValidityTermLabelUpdate.java │ │ │ │ ├── FormulaTermLabelMerger.java │ │ │ │ ├── FormulaTermLabelRefactoring.java │ │ │ │ ├── FormulaTermLabelUpdate.java │ │ │ │ ├── LoopBodyTermLabelUpdate.java │ │ │ │ ├── LoopInvariantNormalBehaviorTermLabelUpdate.java │ │ │ │ ├── RemoveInCheckBranchesTermLabelRefactoring.java │ │ │ │ ├── StayOnFormulaTermLabelPolicy.java │ │ │ │ └── SymbolicExecutionTermLabelUpdate.java │ │ │ ├── strategy │ │ │ └── IBreakpointStopCondition.java │ │ │ └── symbolic_execution │ │ │ ├── AbstractUpdateExtractor.java │ │ │ ├── AbstractWriter.java │ │ │ ├── ExecutionNodePreorderIterator.java │ │ │ ├── ExecutionNodeReader.java │ │ │ ├── ExecutionNodeSymbolicLayoutExtractor.java │ │ │ ├── ExecutionNodeWriter.java │ │ │ ├── ExecutionVariableExtractor.java │ │ │ ├── SymbolicExecutionTreeBuilder.java │ │ │ ├── SymbolicLayoutExtractor.java │ │ │ ├── SymbolicLayoutReader.java │ │ │ ├── SymbolicLayoutWriter.java │ │ │ ├── TruthValueTracingUtil.java │ │ │ ├── model │ │ │ ├── IExecutionAuxiliaryContract.java │ │ │ ├── IExecutionBaseMethodReturn.java │ │ │ ├── IExecutionBlockStartNode.java │ │ │ ├── IExecutionBranchCondition.java │ │ │ ├── IExecutionBranchStatement.java │ │ │ ├── IExecutionConstraint.java │ │ │ ├── IExecutionElement.java │ │ │ ├── IExecutionExceptionalMethodReturn.java │ │ │ ├── IExecutionJoin.java │ │ │ ├── IExecutionLink.java │ │ │ ├── IExecutionLoopCondition.java │ │ │ ├── IExecutionLoopInvariant.java │ │ │ ├── IExecutionLoopStatement.java │ │ │ ├── IExecutionMethodCall.java │ │ │ ├── IExecutionMethodReturn.java │ │ │ ├── IExecutionMethodReturnValue.java │ │ │ ├── IExecutionNode.java │ │ │ ├── IExecutionOperationContract.java │ │ │ ├── IExecutionStart.java │ │ │ ├── IExecutionStatement.java │ │ │ ├── IExecutionTermination.java │ │ │ ├── IExecutionValue.java │ │ │ ├── IExecutionVariable.java │ │ │ ├── ITreeSettings.java │ │ │ └── impl │ │ │ │ ├── AbstractExecutionBlockStartNode.java │ │ │ │ ├── AbstractExecutionElement.java │ │ │ │ ├── AbstractExecutionMethodReturn.java │ │ │ │ ├── AbstractExecutionNode.java │ │ │ │ ├── AbstractExecutionValue.java │ │ │ │ ├── AbstractExecutionVariable.java │ │ │ │ ├── ExecutionAllArrayIndicesVariable.java │ │ │ │ ├── ExecutionAuxiliaryContract.java │ │ │ │ ├── ExecutionBranchCondition.java │ │ │ │ ├── ExecutionBranchStatement.java │ │ │ │ ├── ExecutionConstraint.java │ │ │ │ ├── ExecutionExceptionalMethodReturn.java │ │ │ │ ├── ExecutionJoin.java │ │ │ │ ├── ExecutionLink.java │ │ │ │ ├── ExecutionLoopCondition.java │ │ │ │ ├── ExecutionLoopInvariant.java │ │ │ │ ├── ExecutionLoopStatement.java │ │ │ │ ├── ExecutionMethodCall.java │ │ │ │ ├── ExecutionMethodReturn.java │ │ │ │ ├── ExecutionMethodReturnValue.java │ │ │ │ ├── ExecutionOperationContract.java │ │ │ │ ├── ExecutionStart.java │ │ │ │ ├── ExecutionStatement.java │ │ │ │ ├── ExecutionTermination.java │ │ │ │ ├── ExecutionValue.java │ │ │ │ ├── ExecutionVariable.java │ │ │ │ └── TreeSettings.java │ │ │ ├── object_model │ │ │ ├── IModelSettings.java │ │ │ ├── ISymbolicAssociation.java │ │ │ ├── ISymbolicAssociationValueContainer.java │ │ │ ├── ISymbolicElement.java │ │ │ ├── ISymbolicEquivalenceClass.java │ │ │ ├── ISymbolicLayout.java │ │ │ ├── ISymbolicObject.java │ │ │ ├── ISymbolicState.java │ │ │ ├── ISymbolicValue.java │ │ │ └── impl │ │ │ │ ├── AbstractElement.java │ │ │ │ ├── AbstractSymbolicAssociationValueContainer.java │ │ │ │ ├── ModelSettings.java │ │ │ │ ├── SymbolicAssociation.java │ │ │ │ ├── SymbolicEquivalenceClass.java │ │ │ │ ├── SymbolicLayout.java │ │ │ │ ├── SymbolicObject.java │ │ │ │ ├── SymbolicState.java │ │ │ │ └── SymbolicValue.java │ │ │ ├── po │ │ │ ├── ProgramMethodPO.java │ │ │ ├── ProgramMethodPOLoader.java │ │ │ ├── ProgramMethodSubsetPO.java │ │ │ ├── ProgramMethodSubsetPOLoader.java │ │ │ └── TruthValuePOExtension.java │ │ │ ├── profile │ │ │ ├── SimplifyTermProfile.java │ │ │ ├── SymbolicExecutionJavaProfile.java │ │ │ └── SymbolicExecutionJavaProfileDefaultProfileResolver.java │ │ │ ├── rule │ │ │ ├── AbstractSideProofRule.java │ │ │ ├── ModalitySideProofRule.java │ │ │ ├── QuerySideProofRule.java │ │ │ └── ResultsAndCondition.java │ │ │ ├── slicing │ │ │ ├── AbstractBackwardSlicer.java │ │ │ ├── AbstractSlicer.java │ │ │ ├── Access.java │ │ │ ├── Location.java │ │ │ └── ThinBackwardSlicer.java │ │ │ ├── strategy │ │ │ ├── AbstractCallStackBasedStopCondition.java │ │ │ ├── BreakpointStopCondition.java │ │ │ ├── CompoundStopCondition.java │ │ │ ├── CutHeapObjectsFeature.java │ │ │ ├── CutHeapObjectsTermGenerator.java │ │ │ ├── ExecutedSymbolicExecutionTreeNodesStopCondition.java │ │ │ ├── SimplifyTermStrategy.java │ │ │ ├── StepOverSymbolicExecutionTreeNodesStopCondition.java │ │ │ ├── StepReturnSymbolicExecutionTreeNodesStopCondition.java │ │ │ ├── SymbolicExecutionBreakpointStopCondition.java │ │ │ ├── SymbolicExecutionGoalChooser.java │ │ │ ├── SymbolicExecutionGoalChooserFactory.java │ │ │ ├── SymbolicExecutionStrategy.java │ │ │ └── breakpoint │ │ │ │ ├── AbstractBreakpoint.java │ │ │ │ ├── AbstractConditionalBreakpoint.java │ │ │ │ ├── AbstractHitCountBreakpoint.java │ │ │ │ ├── ExceptionBreakpoint.java │ │ │ │ ├── FieldWatchpoint.java │ │ │ │ ├── IBreakpoint.java │ │ │ │ ├── KeYWatchpoint.java │ │ │ │ ├── LineBreakpoint.java │ │ │ │ ├── MethodBreakpoint.java │ │ │ │ └── SymbolicExecutionExceptionBreakpoint.java │ │ │ └── util │ │ │ ├── DefaultEntry.java │ │ │ ├── EqualsHashCodeResetter.java │ │ │ ├── SideProofStore.java │ │ │ ├── SymbolicExecutionEnvironment.java │ │ │ ├── SymbolicExecutionSideProofUtil.java │ │ │ ├── SymbolicExecutionUtil.java │ │ │ └── event │ │ │ ├── ISideProofStoreListener.java │ │ │ └── SideProofStoreEvent.java │ └── resources │ │ └── META-INF │ │ └── services │ │ ├── de.uka.ilkd.key.proof.init.DefaultProfileResolver │ │ ├── de.uka.ilkd.key.proof.init.POExtension │ │ └── de.uka.ilkd.key.proof.init.loader.ProofObligationLoader │ └── test │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── symbolic_execution │ │ └── testcase │ │ ├── AbstractSymbolicExecutionTestCase.java │ │ ├── TestConditionalVariables.java │ │ ├── TestExecutionNodePreorderIterator.java │ │ ├── TestExecutionNodeWriterAndReader.java │ │ ├── TestExecutionVariableExtractor.java │ │ ├── TestParallelSiteProofs.java │ │ ├── TestSymbolicExecutionTreeBuilder.java │ │ ├── TestSymbolicLayoutExtractor.java │ │ ├── TestSymbolicLayoutWriterAndReader.java │ │ ├── TestTruthValueEvaluationUtil.java │ │ ├── TestTruthValueValue.java │ │ ├── po │ │ ├── TestFunctionalOperationContractPO.java │ │ ├── TestProgramMethodPO.java │ │ └── TestProgramMethodSubsetPO.java │ │ ├── slicing │ │ └── TestThinBackwardSlicer.java │ │ ├── strategy │ │ ├── TestExceptionBreakpointStopConditionCaughtOrUncaught.java │ │ ├── TestExceptionBreakpointStopConditionWithHitCount.java │ │ ├── TestExceptionBreakpointStopConditionWithSubclasses.java │ │ ├── TestJavaWatchpointStopConditionWithHitCount.java │ │ ├── TestKeYWatchpointGlobalVariablesOnSatisfiable.java │ │ ├── TestKeYWatchpointGlobalVariablesOnTrueWithHitCount.java │ │ ├── TestKeYWatchpointMethodsOnSatisfiable.java │ │ ├── TestLineBreakpointStopConditionSimpleWithConditions.java │ │ ├── TestLineBreakpointStopConditionSimpleWithHitCount.java │ │ ├── TestLineBreakpointStopConditionSimpleWithLoopInvariant.java │ │ ├── TestMethodBreakpointWithConditions.java │ │ ├── TestMethodBreakpointWithHitCount.java │ │ ├── TestStepOverSymbolicExecutionTreeNodesStopCondition.java │ │ ├── TestStepReturnSymbolicExecutionTreeNodesStopCondition.java │ │ └── TestSymbolicExecutionStrategy.java │ │ └── util │ │ ├── TestDefaultEntry.java │ │ ├── TestEqualsHashCodeResetter.java │ │ ├── TestSideProofStore.java │ │ └── TestSymbolicExecutionUtil.java │ └── resources │ ├── logback.xml │ └── testcase │ ├── readability │ └── InnerAndAnonymousTypeTest │ │ ├── InnerAndAnonymousTypeTest.java │ │ └── model │ │ └── InnerAndAnonymousTypeTest.java │ ├── set │ ├── aliasTest │ │ ├── oracle │ │ │ ├── AliasTest_array_immediately.xml │ │ │ ├── AliasTest_array_never.xml │ │ │ ├── AliasTest_main_immediately.xml │ │ │ └── AliasTest_main_never.xml │ │ └── test │ │ │ └── AliasTest.java │ ├── allNodeTypesTest │ │ ├── oracle │ │ │ ├── AllNodeTypesTest.xml │ │ │ ├── AllNodeTypesTest_VerificationProfile.xml │ │ │ └── AllNodeTypesTest_VerificationProfile_NoOneStepSimplification.xml │ │ └── test │ │ │ ├── AllNodeTypesTest.java │ │ │ ├── AllNodeTypesTest.proof │ │ │ ├── AllNodeTypesTest_VerificationProfile.proof │ │ │ └── AllNodeTypesTest_VerificationProfile_NoOneStepSimplification.proof │ ├── anotherInstanceContractTest │ │ ├── oracle │ │ │ └── AnotherInstanceContractTest.xml │ │ └── test │ │ │ └── AnotherInstanceContractTest.java │ ├── anotherStaticContractTest │ │ ├── oracle │ │ │ └── AnotherStaticContractTest.xml │ │ └── test │ │ │ └── AnotherStaticContractTest.java │ ├── assumesUserInputTest │ │ ├── oracle │ │ │ └── AssumesUserInputTest.xml │ │ └── test │ │ │ ├── AssumesUserInputTest.java │ │ │ └── AssumesUserInputTest.proof │ ├── blockContractModifiableEverything │ │ ├── oracle │ │ │ └── BlockContractModifiableEverything.xml │ │ └── test │ │ │ ├── BlockContractModifiableEverything.java │ │ │ └── BlockContractModifiableEverything.proof │ ├── blockContractModifiableLocationNotRequested │ │ ├── oracle │ │ │ └── BlockContractModifiableLocationNotRequested.xml │ │ └── test │ │ │ ├── BlockContractModifiableLocationNotRequested.java │ │ │ └── BlockContractModifiableLocationNotRequested.proof │ ├── blockContractModifiableRequestedLocation │ │ ├── oracle │ │ │ └── BlockContractModifiableRequestedLocation.xml │ │ └── test │ │ │ ├── BlockContractModifiableRequestedLocation.java │ │ │ └── BlockContractModifiableRequestedLocation.proof │ ├── blockContractParamRemaned │ │ ├── oracle │ │ │ └── BlockContractParamRemaned.xml │ │ └── test │ │ │ ├── BlockContractParamRemaned.java │ │ │ └── BlockContractParamRemaned.proof │ ├── blockContractPreconditionNotVerified │ │ ├── oracle │ │ │ ├── BlockContractPreconditionNotVerified.xml │ │ │ └── BlockContractPreconditionNotVerified_symbolicExecution.xml │ │ └── test │ │ │ ├── BlockContractPreconditionNotVerified.java │ │ │ └── BlockContractPreconditionNotVerified.proof │ ├── blockContractThisTest │ │ ├── oracle │ │ │ └── BlockContractThisTest.xml │ │ └── test │ │ │ ├── BlockContractThisTest.java │ │ │ └── BlockContractThisTest.proof │ ├── blockContractVarRenamedLater │ │ ├── oracle │ │ │ └── BlockContractVarRenamedLater.xml │ │ └── test │ │ │ ├── BlockContractVarRenamedLater.java │ │ │ └── BlockContractVarRenamedLater.proof │ ├── blockContractWithException │ │ ├── oracle │ │ │ ├── BlockContractWithException.xml │ │ │ └── BlockContractWithException_symbolicExecution.xml │ │ └── test │ │ │ ├── BlockContractWithException.java │ │ │ └── BlockContractWithException.proof │ ├── blockContractWithExceptionPostconditionNotVerified │ │ ├── oracle │ │ │ ├── BlockContractWithExceptionPostconditionNotVerified.xml │ │ │ └── BlockContractWithExceptionPostconditionNotVerified_symbolicExecution.xml │ │ └── test │ │ │ ├── BlockContractWithExceptionPostconditionNotVerified.java │ │ │ └── BlockContractWithExceptionPostconditionNotVerified.proof │ ├── blockContractWithReturn │ │ ├── oracle │ │ │ ├── BlockContractWithReturn.xml │ │ │ └── BlockContractWithReturn_symbolicExecution.xml │ │ └── test │ │ │ ├── BlockContractWithReturn.java │ │ │ └── BlockContractWithReturn.proof │ ├── blockContractWithReturnPostconditionNotVerified │ │ ├── oracle │ │ │ ├── BlockContractWithReturnPostconditionNotVerified.xml │ │ │ └── BlockContractWithReturnPostconditionNotVerified_symbolicExecution.xml │ │ └── test │ │ │ ├── BlockContractWithReturnPostconditionNotVerified.java │ │ │ └── BlockContractWithReturnPostconditionNotVerified.proof │ ├── branchStatementBlockTest │ │ ├── oracle │ │ │ ├── BranchStatementBlockTest_ifNoBlock.xml │ │ │ ├── BranchStatementBlockTest_min.xml │ │ │ ├── BranchStatementBlockTest_nestedIf.xml │ │ │ ├── BranchStatementBlockTest_onlyElse.xml │ │ │ ├── BranchStatementBlockTest_onlyEmptyThen.xml │ │ │ ├── BranchStatementBlockTest_onlyThen.xml │ │ │ ├── BranchStatementBlockTest_recursive.xml │ │ │ ├── BranchStatementBlockTest_simpleBlock.xml │ │ │ └── BranchStatementBlockTest_switchTest.xml │ │ └── test │ │ │ └── BranchStatementBlockTest.java │ ├── complexConstructorTest │ │ ├── oracle │ │ │ └── ComplexConstructorTest.xml │ │ └── test │ │ │ └── ComplexConstructorTest.java │ ├── complexFlatSteps │ │ ├── oracle │ │ │ └── ComplexFlatSteps.xml │ │ └── test │ │ │ └── ComplexFlatSteps.java │ ├── complexIf │ │ ├── oracle │ │ │ ├── Branch0InBranchPrunedIf.xml │ │ │ ├── Branch1InBranchPrunedIf.xml │ │ │ ├── BranchPrunedIf.xml │ │ │ ├── ComplexIf.xml │ │ │ └── PrunedIf.xml │ │ └── test │ │ │ └── ComplexIf.java │ ├── conditionalVariables │ │ ├── oracle │ │ │ └── Number.xml │ │ └── test │ │ │ └── Number.java │ ├── configurationExtractorArrayCreationTest │ │ ├── oracle │ │ │ ├── ArrayCreationTest.xml │ │ │ ├── testArrayCreationTest_current0.xml │ │ │ └── testArrayCreationTest_initial0.xml │ │ └── test │ │ │ └── ArrayCreationTest.java │ ├── configurationExtractorArrayIndexReadAccess │ │ ├── oracle │ │ │ ├── ArrayIndexReadAccess.xml │ │ │ ├── testArrayIndexReadAccess_current0.xml │ │ │ └── testArrayIndexReadAccess_initial0.xml │ │ └── test │ │ │ └── ArrayIndexReadAccess.java │ ├── configurationExtractorArrayIndexWriteAccess │ │ ├── oracle │ │ │ ├── ArrayIndexWriteAccess.xml │ │ │ ├── testArrayIndexWriteAccess_current0.xml │ │ │ └── testArrayIndexWriteAccess_initial0.xml │ │ └── test │ │ │ └── ArrayIndexWriteAccess.java │ ├── configurationExtractorArrayInstanceCreationTest │ │ ├── oracle │ │ │ ├── ArrayInstanceCreationTest.xml │ │ │ ├── testArrayInstanceCreationTest_current0.xml │ │ │ ├── testArrayInstanceCreationTest_current1.xml │ │ │ ├── testArrayInstanceCreationTest_initial0.xml │ │ │ └── testArrayInstanceCreationTest_initial1.xml │ │ └── test │ │ │ └── ArrayInstanceCreationTest.java │ ├── configurationExtractorAssociationSourceIsNotRepresentativeTermOfEquivalenceClass │ │ ├── oracle │ │ │ ├── AssociationSourceIsNotRepresentativeTermOfEquivalenceClass.xml │ │ │ ├── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_current0.xml │ │ │ ├── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_current1.xml │ │ │ ├── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_current2.xml │ │ │ ├── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_initial0.xml │ │ │ ├── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_initial1.xml │ │ │ └── testAssociationSourceIsNotRepresentativeTermOfEquivalenceClass_initial2.xml │ │ └── test │ │ │ └── AssociationSourceIsNotRepresentativeTermOfEquivalenceClass.java │ ├── configurationExtractorEmptyArrayCreationTest │ │ ├── oracle │ │ │ ├── EmptyArrayCreationTest.xml │ │ │ ├── testEmptyArrayCreationTest_current0.xml │ │ │ └── testEmptyArrayCreationTest_initial0.xml │ │ └── test │ │ │ └── EmptyArrayCreationTest.java │ ├── configurationExtractorEmptyPathConditionAndNoUpdates │ │ ├── oracle │ │ │ ├── EmptyPathConditionAndNoUpdates.xml │ │ │ ├── testEmptyPathConditionAndNoUpdates_current0.xml │ │ │ ├── testEmptyPathConditionAndNoUpdates_current1.xml │ │ │ ├── testEmptyPathConditionAndNoUpdates_initial0.xml │ │ │ └── testEmptyPathConditionAndNoUpdates_initial1.xml │ │ └── test │ │ │ └── EmptyPathConditionAndNoUpdates.java │ ├── configurationExtractorExistsQuantifierTest │ │ ├── oracle │ │ │ ├── testExistsQuantifierTest_current0.xml │ │ │ ├── testExistsQuantifierTest_current1.xml │ │ │ ├── testExistsQuantifierTest_initial0.xml │ │ │ └── testExistsQuantifierTest_initial1.xml │ │ └── test │ │ │ ├── ExistsQuantifierTest.java │ │ │ └── ExistsQuantifierTest.proof │ ├── configurationExtractorInstanceCreationTest │ │ ├── oracle │ │ │ ├── InstanceCreationTest.xml │ │ │ ├── testInstanceCreationTest_current0.xml │ │ │ ├── testInstanceCreationTest_current1.xml │ │ │ ├── testInstanceCreationTest_initial0.xml │ │ │ ├── testInstanceCreationTest_initial1.xml │ │ │ ├── testInstanceCreationTest_onReturnNode_current0.xml │ │ │ ├── testInstanceCreationTest_onReturnNode_current1.xml │ │ │ ├── testInstanceCreationTest_onReturnNode_initial0.xml │ │ │ └── testInstanceCreationTest_onReturnNode_initial1.xml │ │ └── test │ │ │ └── InstanceCreationTest.java │ ├── configurationExtractorIntegerConditionTest │ │ ├── oracle │ │ │ ├── IsInstanceTest.xml │ │ │ ├── testIntegerConditionTest_current0.xml │ │ │ └── testIntegerConditionTest_initial0.xml │ │ └── test │ │ │ └── IntegerConditionTest.java │ ├── configurationExtractorIsInstanceTest │ │ ├── oracle │ │ │ ├── IsInstanceTest.xml │ │ │ ├── testIsInstanceTest_current0.xml │ │ │ ├── testIsInstanceTest_current1.xml │ │ │ ├── testIsInstanceTest_initial0.xml │ │ │ └── testIsInstanceTest_initial1.xml │ │ └── test │ │ │ └── IsInstanceTest.java │ ├── configurationExtractorIsNullTest │ │ ├── oracle │ │ │ ├── NullInEquivalenceClass.xml │ │ │ ├── testIsNullTest_current0.xml │ │ │ └── testIsNullTest_initial0.xml │ │ └── test │ │ │ └── IsNullTest.java │ ├── configurationExtractorMultiArrayIndexReadWriteAccess │ │ ├── oracle │ │ │ ├── MultiArrayIndexReadWriteAccess.xml │ │ │ ├── testMultiArrayIndexReadWriteAccess_current0.xml │ │ │ └── testMultiArrayIndexReadWriteAccess_initial0.xml │ │ └── test │ │ │ └── MultiArrayIndexReadWriteAccess.java │ ├── configurationExtractorMyInteger │ │ ├── oracle │ │ │ ├── StaticMember.xml │ │ │ ├── testMyInteger_current0.xml │ │ │ ├── testMyInteger_current1.xml │ │ │ ├── testMyInteger_initial0.xml │ │ │ └── testMyInteger_initial1.xml │ │ └── test │ │ │ └── MyInteger.java │ ├── configurationExtractorObjectArrayIndexReadAccess │ │ ├── oracle │ │ │ ├── ObjectArrayIndexReadAccess.xml │ │ │ ├── testObjectArrayIndexReadAccess_current0.xml │ │ │ └── testObjectArrayIndexReadAccess_initial0.xml │ │ └── test │ │ │ └── ObjectArrayIndexReadAccess.java │ ├── configurationExtractorObjectArrayIndexWriteAccess │ │ ├── oracle │ │ │ ├── ObjectArrayIndexWriteAccess.xml │ │ │ ├── testObjectArrayIndexWriteAccess_current0.xml │ │ │ └── testObjectArrayIndexWriteAccess_initial0.xml │ │ └── test │ │ │ └── ObjectArrayIndexWriteAccess.java │ ├── configurationExtractorObjectConditionTest │ │ ├── oracle │ │ │ ├── ObjectConditionTest.xml │ │ │ ├── testObjectConditionTest_current0.xml │ │ │ └── testObjectConditionTestt_initial0.xml │ │ └── test │ │ │ └── ObjectConditionTest.java │ ├── configurationExtractorOneAssignmentTest │ │ ├── oracle │ │ │ ├── OneAssignmentTest.xml │ │ │ ├── testOneAssignmentTest_current0.xml │ │ │ ├── testOneAssignmentTest_current1.xml │ │ │ ├── testOneAssignmentTest_current2.xml │ │ │ ├── testOneAssignmentTest_current3.xml │ │ │ ├── testOneAssignmentTest_current4.xml │ │ │ ├── testOneAssignmentTest_initial0.xml │ │ │ ├── testOneAssignmentTest_initial1.xml │ │ │ ├── testOneAssignmentTest_initial2.xml │ │ │ ├── testOneAssignmentTest_initial3.xml │ │ │ └── testOneAssignmentTest_initial4.xml │ │ └── test │ │ │ └── OneAssignmentTest.java │ ├── configurationExtractorSimpleArrayCreation │ │ ├── oracle │ │ │ ├── SimpleArrayCreation.xml │ │ │ ├── testSimpleArrayCreation_current0.xml │ │ │ └── testSimpleArrayCreation_initial0.xml │ │ └── test │ │ │ └── SimpleArrayCreation.java │ ├── configurationExtractorSimpleArrayLength │ │ ├── oracle │ │ │ ├── SimpleArrayLength.xml │ │ │ ├── testSimpleArrayLength_current0.xml │ │ │ └── testSimpleArrayLength_initial0.xml │ │ └── test │ │ │ └── SimpleArrayLength.java │ ├── configurationExtractorSimpleLinkedArrays │ │ ├── oracle │ │ │ ├── SimpleLinkedArrays.xml │ │ │ ├── testSimpleLinkedArrays_current0.xml │ │ │ ├── testSimpleLinkedArrays_current1.xml │ │ │ ├── testSimpleLinkedArrays_current2.xml │ │ │ ├── testSimpleLinkedArrays_current3.xml │ │ │ ├── testSimpleLinkedArrays_current4.xml │ │ │ ├── testSimpleLinkedArrays_initial0.xml │ │ │ ├── testSimpleLinkedArrays_initial1.xml │ │ │ ├── testSimpleLinkedArrays_initial2.xml │ │ │ ├── testSimpleLinkedArrays_initial3.xml │ │ │ └── testSimpleLinkedArrays_initial4.xml │ │ └── test │ │ │ └── SimpleLinkedArrays.java │ ├── configurationExtractorSimpleLinkedOjbects │ │ ├── oracle │ │ │ ├── SimpleLinkedOjbects.xml │ │ │ ├── SimpleLinkedOjbectsPreCondition.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_current0.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_current1.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_current2.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_current3.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_initial0.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_initial1.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_initial2.xml │ │ │ ├── testSimpleLinkedOjbectsPreCondition_initial3.xml │ │ │ ├── testSimpleLinkedOjbects_current0.xml │ │ │ ├── testSimpleLinkedOjbects_current1.xml │ │ │ ├── testSimpleLinkedOjbects_current2.xml │ │ │ ├── testSimpleLinkedOjbects_current3.xml │ │ │ ├── testSimpleLinkedOjbects_initial0.xml │ │ │ ├── testSimpleLinkedOjbects_initial1.xml │ │ │ ├── testSimpleLinkedOjbects_initial2.xml │ │ │ └── testSimpleLinkedOjbects_initial3.xml │ │ └── test │ │ │ └── SimpleLinkedOjbects.java │ ├── configurationExtractorSimpleLinkedOjbectsDeletion │ │ ├── oracle │ │ │ ├── SimpleLinkedOjbectsDeletion.xml │ │ │ ├── SimpleLinkedOjbectsDeletionPreCondition.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_current0.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_current1.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_current2.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_current3.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_initial0.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_initial1.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_initial2.xml │ │ │ ├── testSimpleLinkedOjbectsDeletionPreCondition_initial3.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_current0.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_current1.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_current2.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_current3.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_initial0.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_initial1.xml │ │ │ ├── testSimpleLinkedOjbectsDeletion_initial2.xml │ │ │ └── testSimpleLinkedOjbectsDeletion_initial3.xml │ │ └── test │ │ │ └── SimpleLinkedOjbectsDeletion.java │ ├── configurationExtractorSimpleLinkedOjbectsInsertion │ │ ├── oracle │ │ │ ├── SimpleLinkedOjbectsInsertion.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_current0.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_current1.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_current2.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_current3.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_initial0.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_initial1.xml │ │ │ ├── testSimpleLinkedOjbectsInsertion_initial2.xml │ │ │ └── testSimpleLinkedOjbectsInsertion_initial3.xml │ │ └── test │ │ │ └── SimpleLinkedOjbectsInsertion.java │ ├── configurationExtractorSimpleLinkedOjbectsInstanceVariable │ │ ├── oracle │ │ │ ├── SimpleLinkedOjbectsInstanceVariable.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_current0.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_current1.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_current2.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_current3.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_initial0.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_initial1.xml │ │ │ ├── testSimpleLinkedOjbectsInstanceVariable_initial2.xml │ │ │ └── testSimpleLinkedOjbectsInstanceVariable_initial3.xml │ │ └── test │ │ │ └── SimpleLinkedOjbectsInstanceVariable.java │ ├── configurationExtractorSimpleLinkedOjbectsWithAdditionalInstances │ │ └── test │ │ │ └── SimpleLinkedOjbectsWithAdditionalInstances.java │ ├── configurationExtractorSimpleStaticAttributes │ │ ├── oracle │ │ │ ├── SimpleStaticAttributes.xml │ │ │ ├── testSimpleStaticAttributes_current0.xml │ │ │ ├── testSimpleStaticAttributes_current1.xml │ │ │ ├── testSimpleStaticAttributes_initial0.xml │ │ │ └── testSimpleStaticAttributes_initial1.xml │ │ └── test │ │ │ └── SimpleStaticAttributes.java │ ├── configurationExtractorStaticMember │ │ ├── oracle │ │ │ ├── StaticMember.xml │ │ │ ├── testInstanceCreationTest_staticMember_current0.xml │ │ │ ├── testInstanceCreationTest_staticMember_current1.xml │ │ │ ├── testInstanceCreationTest_staticMember_initial0.xml │ │ │ └── testInstanceCreationTest_staticMember_initial1.xml │ │ └── test │ │ │ ├── NextLevel.java │ │ │ ├── Refer.java │ │ │ └── StaticMember.java │ ├── configurationExtractorVariableArrayIndex │ │ ├── oracle │ │ │ ├── StaticMember.xml │ │ │ ├── testVariableArrayIndex_current0.xml │ │ │ └── testVariableArrayIndex_initial0.xml │ │ └── test │ │ │ └── VariableArrayIndex.java │ ├── configurationExtractorWithOperationContractsTest │ │ ├── oracle │ │ │ ├── ConfigurationExtractorWithOperationContractsTest.xml │ │ │ ├── testWithOperationContracts_current0.xml │ │ │ ├── testWithOperationContracts_current1.xml │ │ │ ├── testWithOperationContracts_initial0.xml │ │ │ └── testWithOperationContracts_initial1.xml │ │ └── test │ │ │ └── ConfigurationExtractorWithOperationContractsTest.java │ ├── constraintsAfterUsedLoopInvariant │ │ ├── oracle │ │ │ └── E_Loop.xml │ │ └── test │ │ │ └── E_Loop.java │ ├── constraintsOfAppliedMethodContract │ │ ├── oracle │ │ │ └── MethodContract.xml │ │ └── test │ │ │ └── MethodContract.java │ ├── doWhileFalseTest │ │ ├── oracle │ │ │ └── DoWhileFalseTest.xml │ │ └── test │ │ │ └── DoWhileFalseTest.java │ ├── doWhileTest │ │ ├── oracle │ │ │ └── DoWhileTest.xml │ │ └── test │ │ │ └── DoWhileTest.java │ ├── elseIfDifferentVariables │ │ ├── oracle │ │ │ └── ElseIfDifferentVariables.xml │ │ └── test │ │ │ └── ElseIfDifferentVariables.java │ ├── elseIfTest │ │ ├── oracle │ │ │ ├── ElseIfTest.xml │ │ │ └── ElseIfTestMergedBranchConditions.xml │ │ └── test │ │ │ └── ElseIfTest.java │ ├── emptyBlockTest │ │ ├── oracle │ │ │ └── EmptyBlockTest.xml │ │ └── test │ │ │ └── EmptyBlockTest.java │ ├── exceptionBreakpointsCaughtOrUncaught │ │ ├── oracle │ │ │ ├── ClassCastAndNullpointerExceptions_1.xml │ │ │ ├── ClassCastAndNullpointerExceptions_2.xml │ │ │ ├── ClassCastAndNullpointerExceptions_3.xml │ │ │ └── ClassCastAndNullpointerExceptions_4.xml │ │ └── test │ │ │ ├── ClassCastAndNullpointerExceptions.java │ │ │ └── ClassCastInherit.java │ ├── exceptionBreakpointsWithHitCountTest │ │ ├── oracle │ │ │ ├── ClassCastAndNullpointerExceptions_1.xml │ │ │ ├── ClassCastAndNullpointerExceptions_2.xml │ │ │ ├── ClassCastAndNullpointerExceptions_3.xml │ │ │ └── ClassCastAndNullpointerExceptions_4.xml │ │ └── test │ │ │ ├── ClassCastAndNullpointerExceptions.java │ │ │ └── ClassCastInherit.java │ ├── exceptionBreakpointsWithSubclassesTest │ │ ├── oracle │ │ │ ├── ClassCastAndNullpointerExceptions_1.xml │ │ │ ├── ClassCastAndNullpointerExceptions_2.xml │ │ │ ├── ClassCastAndNullpointerExceptions_3.xml │ │ │ ├── ClassCastAndNullpointerExceptions_4.xml │ │ │ ├── ClassCastAndNullpointerExceptions_5.xml │ │ │ ├── ClassCastAndNullpointerExceptions_6.xml │ │ │ └── ClassCastAndNullpointerExceptions_7.xml │ │ └── test │ │ │ ├── ClassCastAndNullpointerExceptions.java │ │ │ └── ClassCastInherit.java │ ├── exceptionalMethodReturnTest │ │ ├── oracle │ │ │ └── ExceptionalMethodReturnTest.xml │ │ └── test │ │ │ └── ExceptionalMethodReturnTest.java │ ├── exceptionalMethodReturnTestWithLoop │ │ ├── oracle │ │ │ └── Loop.xml │ │ └── test │ │ │ └── Loop.java │ ├── existingContractTest │ │ ├── oracle │ │ │ └── ExistingContractTest.xml │ │ └── test │ │ │ └── ExistingContractTest.java │ ├── fixedRecursiveMethodCallTest │ │ ├── oracle │ │ │ └── FixedRecursiveMethodCallTest.xml │ │ └── test │ │ │ └── FixedRecursiveMethodCallTest.java │ ├── forEachTest │ │ ├── oracle │ │ │ └── ForEachTest.xml │ │ └── test │ │ │ └── ForEachTest.java │ ├── forFalseTest │ │ ├── oracle │ │ │ └── ForFalseTest.xml │ │ └── test │ │ │ └── ForFalseTest.java │ ├── forTest │ │ ├── oracle │ │ │ └── ForTest.xml │ │ └── test │ │ │ └── ForTest.java │ ├── fullqualifiedTypeNamesTest │ │ ├── oracle │ │ │ ├── TheClass_complicatedMethod.xml │ │ │ └── TheInnerClass_complicatedInnerMethod.xml │ │ └── test │ │ │ └── my │ │ │ └── packageName │ │ │ ├── TestProgramMethodSubsetPO9033468379300181045.proof │ │ │ ├── TheClass.java │ │ │ └── sub │ │ │ └── AnotherClass.java │ ├── functionalDoWhileTest │ │ ├── oracle │ │ │ └── FunctionalDoWhileTest.xml │ │ └── test │ │ │ └── FunctionalDoWhileTest.java │ ├── functionalForTest │ │ ├── oracle │ │ │ └── FunctionalForTest.xml │ │ └── test │ │ │ └── FunctionalForTest.java │ ├── functionalIf │ │ ├── oracle │ │ │ └── FunctionalIf.xml │ │ └── test │ │ │ └── FunctionalIf.java │ ├── functionalWhileTest │ │ ├── oracle │ │ │ └── FunctionalWhileTest.xml │ │ └── test │ │ │ └── FunctionalWhileTest.java │ ├── identicalTermsDuringProof │ │ ├── oracle │ │ │ └── IdenticalTermsDuringProof.xml │ │ └── test │ │ │ └── IdenticalTermsDuringProof.java │ ├── instanceContractTest │ │ ├── oracle │ │ │ ├── InstanceContractTest_mainBooleanResultUnspecifiedUnused.xml │ │ │ ├── InstanceContractTest_mainBooleanResultUnused.xml │ │ │ ├── InstanceContractTest_mainConstructor.xml │ │ │ ├── InstanceContractTest_mainExceptional.xml │ │ │ ├── InstanceContractTest_mainExceptionalConstructor.xml │ │ │ ├── InstanceContractTest_mainExceptionalUnused.xml │ │ │ ├── InstanceContractTest_mainExceptionalVoid.xml │ │ │ ├── InstanceContractTest_mainNoArgs.xml │ │ │ ├── InstanceContractTest_mainOnObject.xml │ │ │ ├── InstanceContractTest_mainResult.xml │ │ │ ├── InstanceContractTest_mainResultNotSpecified.xml │ │ │ └── InstanceContractTest_mainVoidMethod.xml │ │ └── test │ │ │ └── InstanceContractTest.java │ ├── instanceOfNotInEndlessLoop │ │ ├── oracle │ │ │ └── Number.xml │ │ └── test │ │ │ └── Number.java │ ├── javaWatchpointsWithHitCountTest │ │ ├── oracle │ │ │ ├── GlobalAccessesAndModifications_1.xml │ │ │ ├── GlobalAccessesAndModifications_10.xml │ │ │ ├── GlobalAccessesAndModifications_11.xml │ │ │ ├── GlobalAccessesAndModifications_12.xml │ │ │ ├── GlobalAccessesAndModifications_2.xml │ │ │ ├── GlobalAccessesAndModifications_3.xml │ │ │ ├── GlobalAccessesAndModifications_4.xml │ │ │ ├── GlobalAccessesAndModifications_5.xml │ │ │ ├── GlobalAccessesAndModifications_6.xml │ │ │ ├── GlobalAccessesAndModifications_7.xml │ │ │ ├── GlobalAccessesAndModifications_8.xml │ │ │ └── GlobalAccessesAndModifications_9.xml │ │ └── test │ │ │ └── GlobalAccessesAndModifications.java │ ├── joinTest │ │ ├── oracle │ │ │ ├── JoinTestAfterAssignment.xml │ │ │ ├── JoinTestAfterBranchCondition.xml │ │ │ └── JoinTestAfterBranchConditionWithWeakeningGoalNotVerified.xml │ │ └── test │ │ │ ├── JoinTest.java │ │ │ ├── JoinTestAfterAssignment.proof │ │ │ ├── JoinTestAfterBranchCondition.proof │ │ │ ├── JoinTestAfterBranchConditionWithWeakeningGoal.proof │ │ │ ├── JoinTestAfterBranchConditionWithWeakeningGoalAndSubgoals.proof │ │ │ └── JoinTestAfterBranchConditionWithWeakeningGoalNotVerified.proof │ ├── keyWatchpointGlobalVariablesOnSatisfiable │ │ ├── oracle │ │ │ ├── GlobalVariablesOnSatisfiable_1.xml │ │ │ ├── GlobalVariablesOnSatisfiable_2.xml │ │ │ ├── GlobalVariablesOnSatisfiable_3.xml │ │ │ ├── GlobalVariablesOnSatisfiable_4.xml │ │ │ ├── GlobalVariablesOnSatisfiable_5.xml │ │ │ ├── GlobalVariablesOnSatisfiable_6.xml │ │ │ └── GlobalVariablesOnSatisfiable_7.xml │ │ └── test │ │ │ └── GlobalVariablesOnSatisfiable.java │ ├── keyWatchpointGlobalVariablesOnTrueWithHitCount │ │ ├── oracle │ │ │ ├── GlobalVariablesOnTrue_1.xml │ │ │ ├── GlobalVariablesOnTrue_2.xml │ │ │ ├── GlobalVariablesOnTrue_3.xml │ │ │ └── GlobalVariablesOnTrue_4.xml │ │ └── test │ │ │ └── GlobalVariablesOnTrue.java │ ├── keyWatchpointMethodsOnSatisfiable │ │ ├── oracle │ │ │ ├── MethodsOnSatisfiable_1.xml │ │ │ ├── MethodsOnSatisfiable_2.xml │ │ │ ├── MethodsOnSatisfiable_3.xml │ │ │ ├── MethodsOnSatisfiable_4.xml │ │ │ ├── MethodsOnSatisfiable_5.xml │ │ │ ├── MethodsOnSatisfiable_6.xml │ │ │ └── MethodsOnSatisfiable_7.xml │ │ └── test │ │ │ └── MethodsOnSatisfiable.java │ ├── labelTest │ │ ├── oracle │ │ │ ├── LabelTest_doubled.xml │ │ │ └── LabelTest_lost.xml │ │ └── test │ │ │ └── LabelTest.java │ ├── lineBreakpointsWithConditionsTest │ │ ├── oracle │ │ │ ├── BreakpointStopConditionWithCondition_1.xml │ │ │ ├── BreakpointStopConditionWithCondition_10.xml │ │ │ ├── BreakpointStopConditionWithCondition_11.xml │ │ │ ├── BreakpointStopConditionWithCondition_12.xml │ │ │ ├── BreakpointStopConditionWithCondition_2.xml │ │ │ ├── BreakpointStopConditionWithCondition_3.xml │ │ │ ├── BreakpointStopConditionWithCondition_4.xml │ │ │ ├── BreakpointStopConditionWithCondition_5.xml │ │ │ ├── BreakpointStopConditionWithCondition_6.xml │ │ │ ├── BreakpointStopConditionWithCondition_7.xml │ │ │ ├── BreakpointStopConditionWithCondition_8.xml │ │ │ └── BreakpointStopConditionWithCondition_9.xml │ │ └── test │ │ │ └── SimpleConditionExample.java │ ├── lineBreakpointsWithHitcountTest │ │ ├── oracle │ │ │ ├── BreakpointStop_1.xml │ │ │ ├── BreakpointStop_2.xml │ │ │ ├── BreakpointStop_3.xml │ │ │ ├── BreakpointStop_4.xml │ │ │ ├── BreakpointStop_5.xml │ │ │ ├── BreakpointStop_6.xml │ │ │ ├── BreakpointStop_7.xml │ │ │ └── BreakpointStop_8.xml │ │ └── test │ │ │ ├── BreakpointStopCallee.java │ │ │ └── BreakpointStopCallerAndLoop.java │ ├── lineBreakpointsWithLoopInvariantTest │ │ ├── oracle │ │ │ ├── ArrayUtil_1.xml │ │ │ ├── ArrayUtil_2.xml │ │ │ └── ArrayUtil_3.xml │ │ └── test │ │ │ └── ArrayUtil.java │ ├── loopIterationTest │ │ ├── oracle │ │ │ ├── LoopIterationTest_loopMultipleTimes.xml │ │ │ ├── LoopIterationTest_main.xml │ │ │ └── LoopIterationTest_mainWorks.xml │ │ └── test │ │ │ └── LoopIterationTest.java │ ├── loopStatementBlockTest │ │ ├── oracle │ │ │ ├── LoopStatementBlockTest_nestedLoop.xml │ │ │ └── LoopStatementBlockTest_simpleLoop.xml │ │ └── test │ │ │ └── LoopStatementBlockTest.java │ ├── magic42 │ │ ├── oracle │ │ │ └── Magic42.xml │ │ └── test │ │ │ ├── Magic42.java │ │ │ └── Magic42.proof │ ├── methodBreakpointsWithConditionsTest │ │ ├── oracle │ │ │ ├── BreakpointStopConditionWithCondition_1.xml │ │ │ ├── BreakpointStopConditionWithCondition_10.xml │ │ │ ├── BreakpointStopConditionWithCondition_11.xml │ │ │ ├── BreakpointStopConditionWithCondition_12.xml │ │ │ ├── BreakpointStopConditionWithCondition_13.xml │ │ │ ├── BreakpointStopConditionWithCondition_14.xml │ │ │ ├── BreakpointStopConditionWithCondition_2.xml │ │ │ ├── BreakpointStopConditionWithCondition_3.xml │ │ │ ├── BreakpointStopConditionWithCondition_4.xml │ │ │ ├── BreakpointStopConditionWithCondition_5.xml │ │ │ ├── BreakpointStopConditionWithCondition_6.xml │ │ │ ├── BreakpointStopConditionWithCondition_7.xml │ │ │ ├── BreakpointStopConditionWithCondition_8.xml │ │ │ └── BreakpointStopConditionWithCondition_9.xml │ │ └── test │ │ │ └── SimpleConditionExample.java │ ├── methodBreakpointsWithHitcountTest │ │ ├── oracle │ │ │ ├── MethodBreakpointStop_1.xml │ │ │ ├── MethodBreakpointStop_2.xml │ │ │ ├── MethodBreakpointStop_3.xml │ │ │ ├── MethodBreakpointStop_4.xml │ │ │ ├── MethodBreakpointStop_5.xml │ │ │ ├── MethodBreakpointStop_6.xml │ │ │ └── MethodBreakpointStop_7.xml │ │ └── test │ │ │ ├── BreakpointStopCallee.java │ │ │ └── BreakpointStopCallerAndLoop.java │ ├── methodCallOnObject │ │ ├── oracle │ │ │ └── MethodCallOnObject.xml │ │ └── test │ │ │ └── MethodCallOnObject.java │ ├── methodCallOnObjectWithException │ │ ├── oracle │ │ │ └── MethodCallOnObjectWithException.xml │ │ └── test │ │ │ └── MethodCallOnObjectWithException.java │ ├── methodCallParallelTest │ │ ├── oracle │ │ │ └── MethodCallParallelTest.xml │ │ └── test │ │ │ └── MethodCallParallelTest.java │ ├── methodCallReturnTests │ │ ├── oracle │ │ │ └── MethodCallReturnTests.xml │ │ └── test │ │ │ └── MethodCallReturnTests.java │ ├── methodCallStackTest │ │ ├── oracle │ │ │ └── MethodCallStackTest.xml │ │ └── test │ │ │ └── MethodCallStackTest.java │ ├── methodFormatTest │ │ ├── oracle │ │ │ └── MethodFormatTest.xml │ │ └── test │ │ │ └── MethodFormatTest.java │ ├── methodHierarchyCallTest │ │ ├── oracle │ │ │ └── MethodHierarchyCallTest.xml │ │ └── test │ │ │ └── MethodHierarchyCallTest.java │ ├── methodHierarchyCallWithExceptionTest │ │ ├── oracle │ │ │ └── MethodHierarchyCallWithExceptionTest.xml │ │ └── test │ │ │ └── MethodHierarchyCallWithExceptionTest.java │ ├── methodPOTest │ │ ├── oracle │ │ │ ├── MethodPOTest_returnMethod.xml │ │ │ ├── MethodPOTest_returnMethod_ParamNotNull.xml │ │ │ ├── MethodPOTest_voidMethod.xml │ │ │ └── MethodPOTest_voidMethod_ParamNotNull.xml │ │ └── test │ │ │ └── MethodPOTest.java │ ├── methodPartPOTest │ │ ├── oracle │ │ │ ├── MethodPartPOTest_doSomething_elsebranch.xml │ │ │ ├── MethodPartPOTest_doSomething_if.xml │ │ │ ├── MethodPartPOTest_doSomething_if_surroundingStatements.xml │ │ │ ├── MethodPartPOTest_doSomething_ifbranch.xml │ │ │ ├── MethodPartPOTest_doSomething_noReturn.xml │ │ │ ├── MethodPartPOTest_doSomething_noReturn_precondition.xml │ │ │ ├── MethodPartPOTest_doSomething_withReturn.xml │ │ │ ├── MethodPartPOTest_doSomething_withReturn_precondition.xml │ │ │ ├── MethodPartPOTest_voidMethod_noReturn.xml │ │ │ ├── MethodPartPOTest_voidMethod_noReturn_precondition.xml │ │ │ ├── MethodPartPOTest_voidMethod_withReturn.xml │ │ │ └── MethodPartPOTest_voidMethod_withReturn_precondition.xml │ │ └── test │ │ │ └── MethodPartPOTest.java │ ├── nestedDoWhileTest │ │ ├── oracle │ │ │ └── NestedDoWhileTest.xml │ │ └── test │ │ │ └── NestedDoWhileTest.java │ ├── nestedForTest │ │ ├── oracle │ │ │ └── NestedForTest.xml │ │ └── test │ │ │ └── NestedForTest.java │ ├── nestedLoopsWithContinue │ │ ├── oracle │ │ │ └── NestedLoopsWithContinue.xml │ │ └── test │ │ │ └── NestedLoopsWithContinue.java │ ├── nestedWhileTest │ │ ├── oracle │ │ │ └── NestedWhileTest.xml │ │ └── test │ │ │ └── NestedWhileTest.java │ ├── nonExecutionBranchHidingArraysIndexOf │ │ ├── oracle │ │ │ ├── Arrays_hiding_off.xml │ │ │ └── Arrays_hiding_side_proof.xml │ │ └── test │ │ │ └── Arrays.java │ ├── nonExecutionBranchHidingComplexPrecondition │ │ ├── oracle │ │ │ ├── ComplexPrecondition_hiding_off.xml │ │ │ └── ComplexPrecondition_hiding_side_proof.xml │ │ └── test │ │ │ └── ComplexPrecondition.java │ ├── nonExecutionBranchHidingLoopInvariantWithSplittingQuery │ │ ├── oracle │ │ │ ├── LoopInvariantWithSplittingQuery_hiding_off.xml │ │ │ └── LoopInvariantWithSplittingQuery_hiding_side_proof.xml │ │ └── test │ │ │ └── LoopInvariantWithSplittingQuery.java │ ├── nonExecutionBranchHidingQueryInPrecondition │ │ ├── oracle │ │ │ ├── QueryInPrecondition_hiding_off.xml │ │ │ └── QueryInPrecondition_hiding_side_proof.xml │ │ └── test │ │ │ └── QueryInPrecondition.java │ ├── nonExecutionBranchHidingQueryWithFields │ │ ├── oracle │ │ │ ├── QueryWithFields_hiding_off.xml │ │ │ └── QueryWithFields_hiding_side_proof.xml │ │ └── test │ │ │ └── QueryWithFields.java │ ├── nonExecutionBranchHidingQueryWithSideEffects │ │ ├── oracle │ │ │ ├── QueryWithSideEffects_hiding_off.xml │ │ │ └── QueryWithSideEffects_hiding_side_proof.xml │ │ └── test │ │ │ └── QueryWithSideEffects.java │ ├── nonExecutionBranchHidingSimpleBooleanQuery │ │ ├── oracle │ │ │ ├── SimpleBooleanQuery_hiding_off.xml │ │ │ └── SimpleBooleanQuery_hiding_side_proof.xml │ │ └── test │ │ │ └── SimpleBooleanQuery.java │ ├── nonExecutionBranchHidingSimpleIntQuery │ │ ├── oracle │ │ │ ├── SimpleIntQuery_mainWithSymbolicUpdates_hiding_side_proof.xml │ │ │ ├── SimpleIntQuery_mainWithUpdates_hiding_side_proof.xml │ │ │ ├── SimpleIntQuery_main_hiding_off.xml │ │ │ └── SimpleIntQuery_main_hiding_side_proof.xml │ │ └── test │ │ │ └── SimpleIntQuery.java │ ├── nonExecutionBranchHidingSimpleObjectQuery │ │ ├── oracle │ │ │ ├── SimpleObjectQuery_hiding_off.xml │ │ │ └── SimpleObjectQuery_hiding_side_proof.xml │ │ └── test │ │ │ └── SimpleObjectQuery.java │ ├── prettyPrint │ │ ├── oracle │ │ │ ├── PrettyPrintTest_Disabled.xml │ │ │ └── PrettyPrintTest_Enabled.xml │ │ └── test │ │ │ └── PrettyPrintTest.java │ ├── recursiveFibonacci │ │ ├── oracle │ │ │ └── RecursiveFibonacci.xml │ │ └── test │ │ │ └── RecursiveFibonacci.java │ ├── simpleConstructorTest │ │ ├── oracle │ │ │ └── SimpleConstructorTest.xml │ │ └── test │ │ │ └── SimpleConstructorTest.java │ ├── simpleIf │ │ ├── oracle │ │ │ ├── SimpleIf.xml │ │ │ └── SimpleIf_NoConditionSimplification.xml │ │ └── test │ │ │ └── SimpleIf.java │ ├── simpleMethodCallStackTest │ │ ├── oracle │ │ │ └── SimpleMethodCallStackTest.xml │ │ └── test │ │ │ └── SimpleMethodCallStackTest.java │ ├── simpleNullPointerSplitTest │ │ ├── oracle │ │ │ └── SimpleNullPointerSplitTest.xml │ │ └── test │ │ │ └── SimpleNullPointerSplitTest.java │ ├── simpleStaticContractTest │ │ ├── oracle │ │ │ └── SimpleStaticContractTest.xml │ │ └── test │ │ │ └── SimpleStaticContractTest.java │ ├── statementKindTest │ │ ├── oracle │ │ │ └── StatementKindTest.xml │ │ └── test │ │ │ └── StatementKindTest.java │ ├── statements │ │ ├── oracle │ │ │ └── FlatSteps.xml │ │ └── test │ │ │ └── FlatSteps.java │ ├── staticContractTest │ │ ├── oracle │ │ │ ├── StaticContractTest_mainBooleanResultUnspecifiedUnused.xml │ │ │ ├── StaticContractTest_mainBooleanResultUnused.xml │ │ │ ├── StaticContractTest_mainConstructor.xml │ │ │ ├── StaticContractTest_mainExceptional.xml │ │ │ ├── StaticContractTest_mainExceptionalConstructor.xml │ │ │ ├── StaticContractTest_mainExceptionalUnused.xml │ │ │ ├── StaticContractTest_mainExceptionalVoid.xml │ │ │ ├── StaticContractTest_mainNoArgs.xml │ │ │ ├── StaticContractTest_mainOnObject.xml │ │ │ ├── StaticContractTest_mainResult.xml │ │ │ ├── StaticContractTest_mainResultNotSpecified.xml │ │ │ └── StaticContractTest_mainVoidMethod.xml │ │ └── test │ │ │ └── StaticContractTest.java │ ├── staticDefaultContractTest │ │ ├── oracle │ │ │ └── StaticDefaultContractTest.xml │ │ └── test │ │ │ └── StaticDefaultContractTest.java │ ├── staticInstanceFieldChanged │ │ ├── oracle │ │ │ └── StaticInstanceFieldChanged.xml │ │ └── test │ │ │ └── StaticInstanceFieldChanged.java │ ├── staticMethodCall │ │ ├── oracle │ │ │ └── StaticMethodCall.xml │ │ └── test │ │ │ └── StaticMethodCall.java │ ├── stepOverOnTwoBranches │ │ ├── oracle │ │ │ ├── StepOverOnTwoBranches_1.xml │ │ │ ├── StepOverOnTwoBranches_10.xml │ │ │ ├── StepOverOnTwoBranches_11.xml │ │ │ ├── StepOverOnTwoBranches_12.xml │ │ │ ├── StepOverOnTwoBranches_2.xml │ │ │ ├── StepOverOnTwoBranches_3.xml │ │ │ ├── StepOverOnTwoBranches_4.xml │ │ │ ├── StepOverOnTwoBranches_5.xml │ │ │ ├── StepOverOnTwoBranches_6.xml │ │ │ ├── StepOverOnTwoBranches_7.xml │ │ │ ├── StepOverOnTwoBranches_8.xml │ │ │ └── StepOverOnTwoBranches_9.xml │ │ └── test │ │ │ └── StepOverOnTwoBranches.java │ ├── stepReturnTest │ │ ├── oracle │ │ │ ├── StepReturnTest_1.xml │ │ │ ├── StepReturnTest_10.xml │ │ │ ├── StepReturnTest_11.xml │ │ │ ├── StepReturnTest_12.xml │ │ │ ├── StepReturnTest_13.xml │ │ │ ├── StepReturnTest_14.xml │ │ │ ├── StepReturnTest_2.xml │ │ │ ├── StepReturnTest_3.xml │ │ │ ├── StepReturnTest_4.xml │ │ │ ├── StepReturnTest_5.xml │ │ │ ├── StepReturnTest_6.xml │ │ │ ├── StepReturnTest_7.xml │ │ │ ├── StepReturnTest_8.xml │ │ │ └── StepReturnTest_9.xml │ │ └── test │ │ │ └── StepReturnTest.java │ ├── switchCaseTest │ │ ├── oracle │ │ │ ├── SwitchCaseTest.xml │ │ │ └── SwitchCaseTestMergedBranchConditions.xml │ │ └── test │ │ │ └── SwitchCaseTest.java │ ├── symbolicExecutionCompletionsTest │ │ ├── oracle │ │ │ ├── SymbolicExecutionCompletionsTest_1.xml │ │ │ ├── SymbolicExecutionCompletionsTest_2.xml │ │ │ ├── SymbolicExecutionCompletionsTest_3.xml │ │ │ ├── SymbolicExecutionCompletionsTest_4.xml │ │ │ ├── SymbolicExecutionCompletionsTest_5.xml │ │ │ └── SymbolicExecutionCompletionsTest_6.xml │ │ └── test │ │ │ └── SymbolicExecutionCompletionsTest.java │ ├── throwTest │ │ ├── oracle │ │ │ └── ThrowTest.xml │ │ └── test │ │ │ └── ThrowTest.java │ ├── throwVariableTest │ │ ├── oracle │ │ │ └── ThrowVariableTest.xml │ │ └── test │ │ │ └── ThrowVariableTest.java │ ├── truthValueAddingOfLabeledSubtree │ │ ├── oracle │ │ │ └── ImmutableList.xml │ │ └── test │ │ │ ├── ImmutableList.java │ │ │ └── ImmutableList.proof │ ├── truthValueAnd │ │ ├── oracle │ │ │ └── And3_replaceKnown.xml │ │ └── test │ │ │ ├── And.java │ │ │ └── And3_replaceKnown.proof │ ├── truthValueArraySumWhile │ │ ├── oracle │ │ │ └── ArraySumWhile.xml │ │ └── test │ │ │ ├── ArraySumWhile.java │ │ │ ├── ArraySumWhile.proof │ │ │ └── ArraySumWhileNoOneStepSimplification.proof │ ├── truthValueArrayUtil │ │ ├── oracle │ │ │ └── ArrayUtil.xml │ │ └── test │ │ │ ├── ArrayUtil.java │ │ │ ├── ArrayUtil.proof │ │ │ └── ArrayUtilNoOneStepSimplification.proof │ ├── truthValueBlockContractMagic42 │ │ ├── oracle │ │ │ └── BlockContractMagic42.xml │ │ └── test │ │ │ ├── BlockContractMagic42.java │ │ │ └── BlockContractMagic42.proof │ ├── truthValueDifferentBranchesTest │ │ ├── oracle │ │ │ └── DifferentBranchesTest.xml │ │ └── test │ │ │ ├── DifferentBranchesTest.java │ │ │ └── DifferentBranchesTest.proof │ ├── truthValueEquivExample │ │ ├── oracle │ │ │ └── EquivExample.xml │ │ └── test │ │ │ ├── EquivExample.java │ │ │ ├── EquivExample.proof │ │ │ └── EquivExampleNoOneStepSimplification.proof │ ├── truthValueExceptionalModifiableNothingTest │ │ ├── oracle │ │ │ └── ExceptionalModifiableNothingTest.xml │ │ └── test │ │ │ ├── ExceptionalModifiableNothingTest.java │ │ │ ├── ExceptionalModifiableNothingTest.proof │ │ │ └── ExceptionalModifiableNothingTest_OSS.proof │ ├── truthValueIfThenElseFormulaTest │ │ ├── oracle │ │ │ └── IfThenElseFormulaTest.xml │ │ └── test │ │ │ └── IfThenElseFormulaTest.java │ ├── truthValueIfThenElseIntegerTest │ │ ├── oracle │ │ │ └── IfThenElseIntegerTest.xml │ │ └── test │ │ │ └── IfThenElseIntegerTest.java │ ├── truthValueIfThenElseNotFormulaTest │ │ ├── oracle │ │ │ └── IfThenElseNotFormulaTest.xml │ │ └── test │ │ │ └── IfThenElseNotFormulaTest.java │ ├── truthValueLabelBelowUpdatesDifferentToApplicationTerm │ │ ├── oracle │ │ │ └── TwoBranch.xml │ │ └── test │ │ │ ├── OneBranch.java │ │ │ └── TwoBranch.proof │ ├── truthValueModifiableAndLoop │ │ ├── oracle │ │ │ └── MagicProofNoOSS.xml │ │ └── test │ │ │ ├── ExampleInstance.java │ │ │ └── MagicProofNoOSS.proof │ ├── truthValueMultiplePredicateResults │ │ ├── oracle │ │ │ └── MultiplePredicateResultsTest.xml │ │ └── test │ │ │ └── MultiplePredicateResultsTest.java │ ├── truthValueMyInteger │ │ ├── oracle │ │ │ └── MyInteger.xml │ │ └── test │ │ │ ├── MyInteger.java │ │ │ └── MyInteger.proof │ ├── truthValueNotLastEvaluationGivesTruthValue │ │ ├── oracle │ │ │ └── NotLastEvaluationGivesTruthValue.xml │ │ └── test │ │ │ ├── NotLastEvaluationGivesTruthValue.proof │ │ │ └── PredicateEvaluationComposedTerms.java │ ├── truthValueRejectedFormula │ │ ├── oracle │ │ │ └── LabelLostVerification.xml │ │ └── test │ │ │ ├── LabelLost.java │ │ │ └── LabelLostVerification.proof │ ├── truthValueSimpleInstanceMethodContractApplication │ │ ├── oracle │ │ │ └── SimpleInstanceMethodContractApplication.xml │ │ └── test │ │ │ ├── SimpleInstanceMethodContractApplication.java │ │ │ ├── SimpleInstanceMethodContractApplication.proof │ │ │ └── SimpleInstanceMethodContractApplication_NoOneStepSimplification.proof │ ├── truthValueSimpleMethodContractApplication │ │ ├── oracle │ │ │ └── SimpleMethodContractApplication.xml │ │ └── test │ │ │ ├── SimpleMethodContractApplication.java │ │ │ ├── SimpleMethodContractApplication.proof │ │ │ └── SimpleMethodContractApplication_NoOneStepSimplification.proof │ ├── truthValueUnderstandingProofsAccount │ │ ├── oracle │ │ │ └── Account.xml │ │ └── test │ │ │ ├── Account.java │ │ │ └── Account.proof │ ├── truthValueUnderstandingProofsArrayUtil │ │ ├── oracle │ │ │ └── ArrayUtil.xml │ │ └── test │ │ │ ├── ArrayUtil.java │ │ │ └── ArrayUtil.proof │ ├── truthValueUnderstandingProofsCalendar │ │ ├── oracle │ │ │ └── Calendar.xml │ │ └── test │ │ │ ├── Calendar.java │ │ │ └── Calendar.proof │ ├── truthValueUnderstandingProofsMyInteger │ │ ├── oracle │ │ │ └── MyInteger.xml │ │ └── test │ │ │ ├── MyInteger.java │ │ │ └── MyInteger.proof │ ├── truthValueWeakeningTest │ │ ├── oracle │ │ │ └── JoinTestAfterBranchCondition.xml │ │ └── test │ │ │ ├── JoinTest.java │ │ │ └── JoinTestAfterBranchConditionWithWeakeningGoal.proof │ ├── tryCatchFinally │ │ ├── oracle │ │ │ └── TryCatchFinally.xml │ │ └── test │ │ │ └── TryCatchFinally.java │ ├── unicodeTest │ │ ├── oracle │ │ │ ├── UnicodeTest_Disabled.xml │ │ │ └── UnicodeTest_Enabled.xml │ │ └── test │ │ │ └── UnicodeTest.java │ ├── useLoopInvariantAndOperationContractStrictlyPure │ │ ├── oracle │ │ │ └── IndexOf.xml │ │ └── test │ │ │ └── IndexOf.java │ ├── useLoopInvariantArrayAverage │ │ ├── oracle │ │ │ └── ArrayAverage.xml │ │ └── test │ │ │ └── ArrayAverage.java │ ├── useLoopInvariantArraySizeDoWhile │ │ ├── oracle │ │ │ └── ArraySizeDoWhile.xml │ │ └── test │ │ │ └── ArraySizeDoWhile.java │ ├── useLoopInvariantArraySizeWhile │ │ ├── oracle │ │ │ └── ArraySizeWhile.xml │ │ └── test │ │ │ └── ArraySizeWhile.java │ ├── useLoopInvariantArraySumFor │ │ ├── oracle │ │ │ └── ArraySumFor.xml │ │ └── test │ │ │ └── ArraySumFor.java │ ├── useLoopInvariantArraySumForEach │ │ ├── oracle │ │ │ └── ArraySumForEach.xml │ │ └── test │ │ │ └── ArraySumForEach.java │ ├── useLoopInvariantArraySumWhile │ │ ├── oracle │ │ │ └── ArraySumWhile.xml │ │ └── test │ │ │ └── ArraySumWhile.java │ ├── useLoopInvariantArraySumWhileInitiallyInvalid │ │ ├── oracle │ │ │ └── ArraySumWhileInitiallyInvalid.xml │ │ └── test │ │ │ └── ArraySumWhileInitiallyInvalid.java │ ├── useLoopInvariantArraySumWhileWithBreak │ │ ├── oracle │ │ │ └── ArraySumWhileWithBreak.xml │ │ └── test │ │ │ └── ArraySumWhileWithBreak.java │ ├── useLoopInvariantArraySumWhileWithContinue │ │ ├── oracle │ │ │ └── ArraySumWhileWithContinue.xml │ │ └── test │ │ │ └── ArraySumWhileWithContinue.java │ ├── useLoopInvariantArraySumWhileWithException │ │ ├── oracle │ │ │ └── ArraySumWhileWithException.xml │ │ └── test │ │ │ └── ArraySumWhileWithException.java │ ├── useLoopInvariantArraySumWhileWithReturn │ │ ├── oracle │ │ │ └── ArraySumWhileWithReturn.xml │ │ └── test │ │ │ └── ArraySumWhileWithReturn.java │ ├── useLoopInvariantLoopBodyBranchClosed │ │ ├── oracle │ │ │ └── LoopBodyBranchClosed.xml │ │ └── test │ │ │ └── LoopBodyBranchClosed.java │ ├── useLoopInvariantLoopSplittingCondition │ │ ├── oracle │ │ │ └── LoopSplittingCondition.xml │ │ └── test │ │ │ └── LoopSplittingCondition.java │ ├── useLoopInvariantLoopUsageBranchClosed │ │ ├── oracle │ │ │ └── LoopUsageBranchClosed.xml │ │ └── test │ │ │ └── LoopUsageBranchClosed.java │ ├── useLoopInvariantTwoLoops │ │ ├── oracle │ │ │ └── TwoLoops.xml │ │ └── test │ │ │ └── TwoLoops.java │ ├── useLoopInvariantVoidWhileWithReturn │ │ ├── oracle │ │ │ └── VoidWhileWithReturn.xml │ │ └── test │ │ │ └── VoidWhileWithReturn.java │ ├── useLoopInvariantWhileWithLoopInvariantInCondition │ │ ├── oracle │ │ │ └── WhileWithLoopInvariantInCondition.xml │ │ └── test │ │ │ └── WhileWithLoopInvariantInCondition.java │ ├── useLoopInvariantWhileWithMethodCallAsCondition │ │ ├── oracle │ │ │ ├── WhileWithMethodCallAsCondition_NoPreExpandMethods.xml │ │ │ ├── WhileWithMethodCallAsCondition_NoPreMethodContract.xml │ │ │ ├── WhileWithMethodCallAsCondition_preExpandMethods.xml │ │ │ └── WhileWithMethodCallAsCondition_preMethodContract.xml │ │ └── test │ │ │ └── WhileWithMethodCallAsCondition.java │ ├── useLoopInvariantWhileWithMethodCallAsConditionFullImplemented │ │ ├── oracle │ │ │ └── WhileWithMethodCallAsConditionFullImplemented.xml │ │ └── test │ │ │ └── WhileWithMethodCallAsConditionFullImplemented.java │ ├── useLoopInvariantWhileWithMethodCallAsConditionOnObject │ │ ├── oracle │ │ │ └── WhileWithMethodCallAsConditionOnObject.xml │ │ └── test │ │ │ └── WhileWithMethodCallAsConditionOnObject.java │ ├── useLoopInvariantWithoutDecreasing │ │ ├── oracle │ │ │ └── LoopInvArrayExample.xml │ │ └── test │ │ │ ├── LoopInvArrayExample.java │ │ │ └── LoopInvArrayExample.proof │ ├── useOperationContractAllBranchesOpenTest │ │ ├── oracle │ │ │ └── UseOperationContractAllBranchesOpenTest.xml │ │ └── test │ │ │ └── UseOperationContractAllBranchesOpenTest.java │ ├── useOperationContractApplyContractTwice │ │ ├── oracle │ │ │ └── OperationContractAppliedTwiceTest.xml │ │ └── test │ │ │ └── OperationContractAppliedTwiceTest.java │ ├── useOperationContractExceptionalNoPreconditionWithNullCheckTest │ │ ├── oracle │ │ │ └── UseOperationContractExceptionalNoPreconditionWithNullCheckTest.xml │ │ └── test │ │ │ └── UseOperationContractExceptionalNoPreconditionWithNullCheckTest.java │ ├── useOperationContractFalsePreconditionTest │ │ ├── oracle │ │ │ └── UseOperationContractFalsePreconditionTest.xml │ │ └── test │ │ │ └── UseOperationContractFalsePreconditionTest.java │ ├── useOperationContractFixedNormalPostTest │ │ ├── oracle │ │ │ └── UseOperationContractFixedNormalPostTest.xml │ │ └── test │ │ │ └── UseOperationContractFixedNormalPostTest.java │ ├── useOperationContractInvalidPreconditionOnObjectTest │ │ ├── oracle │ │ │ └── UseOperationContractInvalidPreconditionOnObjectTest.xml │ │ └── test │ │ │ └── UseOperationContractInvalidPreconditionOnObjectTest.java │ ├── useOperationContractInvalidPreconditionTest │ │ ├── oracle │ │ │ └── UseOperationContractInvalidPreconditionTest.xml │ │ └── test │ │ │ └── UseOperationContractInvalidPreconditionTest.java │ ├── useOperationContractLightweightOperationContractTest │ │ ├── oracle │ │ │ └── LightweightOperationContractTest.xml │ │ └── test │ │ │ └── LightweightOperationContractTest.java │ ├── useOperationContractNoExceptionTest │ │ ├── oracle │ │ │ └── UseOperationContractNoExceptionTest.xml │ │ └── test │ │ │ └── UseOperationContractNoExceptionTest.java │ ├── useOperationContractNoPreconditionTest │ │ ├── oracle │ │ │ └── UseOperationContractNoPreconditionTest.xml │ │ └── test │ │ │ └── UseOperationContractNoPreconditionTest.java │ ├── useOperationContractNoPreconditionWithNullCheckTest │ │ ├── oracle │ │ │ └── UseOperationContractNoPreconditionWithNullCheckTest.xml │ │ └── test │ │ │ └── UseOperationContractNoPreconditionWithNullCheckTest.java │ ├── useOperationContractNormalAndExceptionalBranchTest │ │ ├── oracle │ │ │ └── UseOperationContractNormalAndExceptionalBranchTest.xml │ │ └── test │ │ │ └── UseOperationContractNormalAndExceptionalBranchTest.java │ ├── useOperationContractNormalAndExceptionalTogetherTest │ │ ├── oracle │ │ │ └── UseOperationContractNormalAndExceptionalTogetherTest.xml │ │ └── test │ │ │ └── UseOperationContractNormalAndExceptionalTogetherTest.java │ ├── useOperationContractQueryTest │ │ ├── oracle │ │ │ └── UseOperationContractQueryTest.xml │ │ └── test │ │ │ └── UseOperationContractQueryTest.java │ ├── useOperationContractStatementsInImpliciteConstructor │ │ ├── oracle │ │ │ └── UseOperationContractStatementsInImpliciteConstructor.xml │ │ └── test │ │ │ └── UseOperationContractStatementsInImpliciteConstructor.java │ ├── useOperationContractVariableNestedOperationContractUse │ │ ├── oracle │ │ │ └── VariableNestedOperationContractUse.xml │ │ └── test │ │ │ └── VariableNestedOperationContractUse.java │ ├── variableVariableMethodContractTest │ │ ├── oracle │ │ │ └── VariableMethodContractTest.xml │ │ └── test │ │ │ └── VariableMethodContractTest.java │ ├── variableVariablesArrayTest │ │ ├── oracle │ │ │ └── VariablesArrayTest.xml │ │ └── test │ │ │ └── VariablesArrayTest.java │ ├── variablesArrayAssignmentTest │ │ ├── oracle │ │ │ ├── ArrayAssignmentTest.xml │ │ │ └── ArrayAssignmentTest_Sequent.xml │ │ └── test │ │ │ └── ArrayAssignmentTest.java │ ├── variablesArrayCreationInstanceTest │ │ ├── oracle │ │ │ ├── ArrayCreationInstanceTest.xml │ │ │ └── ArrayCreationInstanceTest_Sequent.xml │ │ └── test │ │ │ └── ArrayCreationInstanceTest.java │ ├── variablesArrayCreationTest │ │ ├── oracle │ │ │ ├── ArrayCreationTest.xml │ │ │ └── ArrayCreationTest_Sequent.xml │ │ └── test │ │ │ └── ArrayCreationTest.java │ ├── variablesArrayTest │ │ ├── oracle │ │ │ └── VariablesArrayTest.xml │ │ └── test │ │ │ └── VariablesArrayTest.java │ ├── variablesConditionalCycle │ │ ├── oracle │ │ │ └── VariablesConditionalCycle.xml │ │ └── test │ │ │ └── VariablesConditionalCycle.java │ ├── variablesConditionalValuesTest │ │ ├── oracle │ │ │ ├── ConditionalValuesTest.xml │ │ │ └── ConditionalValuesTest_next.xml │ │ └── test │ │ │ └── ConditionalValuesTest.java │ ├── variablesEmptyArrayCreationTest │ │ ├── oracle │ │ │ ├── EmptyArrayCreationTest.xml │ │ │ └── EmptyArrayCreationTest_Sequent.xml │ │ └── test │ │ │ └── EmptyArrayCreationTest.java │ ├── variablesInstanceVariableTest │ │ ├── oracle │ │ │ └── VariablesInstanceVariableTest.xml │ │ └── test │ │ │ └── VariablesInstanceVariableTest.java │ ├── variablesLocalTest │ │ ├── oracle │ │ │ └── VariablesLocalTest.xml │ │ └── test │ │ │ └── VariablesLocalTest.java │ ├── variablesLocalVariablesTest │ │ ├── oracle │ │ │ └── LocalVariablesTest.xml │ │ └── test │ │ │ └── LocalVariablesTest.java │ ├── variablesNonSimpleArrayAssignmentTest │ │ ├── oracle │ │ │ ├── NonSimpleArrayAssignmentTest.xml │ │ │ └── NonSimpleArrayAssignmentTest_Sequent.xml │ │ └── test │ │ │ └── NonSimpleArrayAssignmentTest.java │ ├── variablesNonSimpleArrayCreationTest │ │ ├── oracle │ │ │ ├── NonSimpleArrayCreationTest.xml │ │ │ └── NonSimpleArrayCreationTest_Sequent.xml │ │ └── test │ │ │ └── NonSimpleArrayCreationTest.java │ ├── variablesParameterAttributesChange │ │ ├── oracle │ │ │ └── VariablesParameterAttributesChange.xml │ │ └── test │ │ │ └── VariablesParameterAttributesChange.java │ ├── variablesSimpleCycle │ │ ├── oracle │ │ │ └── VariablesSimpleCycle.xml │ │ └── test │ │ │ └── VariablesSimpleCycle.java │ ├── variablesStaticTest │ │ ├── oracle │ │ │ └── VariablesStaticTest.xml │ │ └── test │ │ │ └── VariablesStaticTest.java │ ├── variablesUnknownTest │ │ ├── oracle │ │ │ └── UnknownTest.xml │ │ └── test │ │ │ └── UnknownTest.java │ ├── variablesUpdateVariablesTest │ │ ├── oracle │ │ │ └── UpdateVariablesTest.xml │ │ └── test │ │ │ └── UpdateVariablesTest.java │ ├── variablesVariableArrayIndex │ │ ├── oracle │ │ │ └── VariableArrayIndex.xml │ │ └── test │ │ │ └── VariableArrayIndex.java │ ├── variablesWithQuantifier │ │ ├── oracle │ │ │ └── EnoughInfoReturn.xml │ │ └── test │ │ │ └── EnoughInfoReturn.java │ ├── verificationProofFile_VerifyMin │ │ ├── oracle │ │ │ ├── VerifyMin.xml │ │ │ └── VerifyMinTrueBranch.xml │ │ └── test │ │ │ ├── VerifyMin.java │ │ │ ├── VerifyMin.proof │ │ │ └── VerifyMinTrueBranch.proof │ ├── verificationProofFile_VerifyNumber │ │ ├── oracle │ │ │ └── VerifyNumberNormal.xml │ │ └── test │ │ │ ├── VerifyNumber.java │ │ │ └── VerifyNumberNormal.proof │ ├── verifiedTest │ │ ├── oracle │ │ │ ├── VerifiedTest_loop.xml │ │ │ ├── VerifiedTest_magic.xml │ │ │ ├── VerifiedTest_magicException.xml │ │ │ ├── VerifiedTest_notLoop.xml │ │ │ ├── VerifiedTest_notMagic.xml │ │ │ └── VerifiedTest_notMagicException.xml │ │ └── test │ │ │ └── VerifiedTest.java │ ├── whileFalseTest │ │ ├── oracle │ │ │ └── WhileFalseTest.xml │ │ └── test │ │ │ └── WhileFalseTest.java │ └── whileTest │ │ ├── oracle │ │ └── WhileTest.xml │ │ └── test │ │ └── WhileTest.java │ ├── simplelogger.properties │ └── slicing │ ├── aliasChanged │ ├── AliasChanged.java │ └── AliasChanged.proof │ ├── aliasNotAvailable │ ├── AliasNotAvailable.java │ └── AliasNotAvailable.proof │ ├── aliasedByExecutionTest │ ├── AliasedByExecution.java │ └── AliasedByExecution.proof │ ├── aliasing │ ├── Aliasing.java │ └── Aliasing.proof │ ├── arrayIndexAsVariableFieldTest │ ├── ArrayIndexAsVariableFieldTest.java │ └── ArrayIndexAsVariableFieldTest.proof │ ├── arrayIndexSideeffectsAfter │ ├── ArrayIndexSideeffectsAfter.java │ └── ArrayIndexSideeffectsAfter.proof │ ├── arrayIndexSideeffectsBevore │ ├── ArrayIndexSideeffectsBevore.java │ └── ArrayIndexSideeffectsBevore.proof │ ├── arrayIndexVariableTest │ ├── ArrayIndexVariableTest.java │ └── ArrayIndexVariableTest.proof │ ├── blockContractModifiableEverything │ ├── BlockContractModifiableEverything.java │ └── BlockContractModifiableEverything.proof │ ├── blockContractModifiableLocationNotRequested │ ├── BlockContractModifiableLocationNotRequested.java │ └── BlockContractModifiableLocationNotRequested.proof │ ├── blockContractModifiableRequestedLocation │ ├── BlockContractModifiableRequestedLocation.java │ └── BlockContractModifiableRequestedLocation.proof │ ├── equivalenceClassesTest │ ├── Example.java │ ├── Example.proof │ └── Example_NoOSS.proof │ ├── figure2 │ ├── Figure2.java │ └── Figure2.proof │ ├── figure2Instance │ ├── Figure2Instance.java │ └── Figure2Instance.proof │ ├── figure2Local │ ├── Figure2Local.java │ └── Figure2Local.proof │ ├── figure2Param │ ├── Figure2Param.java │ └── Figure2Param.proof │ ├── instanceFieldsAliased │ ├── InstanceFieldsAliased.java │ └── InstanceFieldsAliased.proof │ ├── intEndTest │ ├── IntEndTest.java │ └── IntEndTest.proof │ ├── loopInvariantInListFieldsTest │ ├── LoopInvariantInListFieldsTest.java │ └── LoopInvariantInListFieldsTest.proof │ ├── loopInvariantNestedListFieldsTest │ ├── LoopInvariantNestedListFieldsTest.java │ └── LoopInvariantNestedListFieldsTest.proof │ ├── loopInvariantNotInListFieldsTest │ ├── LoopInvariantNotInListFieldsTest.java │ └── LoopInvariantNotInListFieldsTest.proof │ ├── loopInvariantStarFieldsTest │ ├── LoopInvariantStarFieldsTest.java │ └── LoopInvariantStarFieldsTest.proof │ ├── methodCallTest │ ├── MethodCallTest.java │ └── MethodCallTest.proof │ ├── methodContractModifiableEverything │ ├── MethodContractModifiableExample.java │ └── MethodContractModifiableExample.proof │ ├── methodContractModifiableLocationNotRequested │ ├── MethodContractModifiableLocationNotRequested.java │ └── MethodContractModifiableLocationNotRequested.proof │ ├── methodContractModifiableRequestedLocation │ ├── MethodContractModifiableRequestedLocation.java │ └── MethodContractModifiableRequestedLocation.proof │ ├── nestedInstanceAccess │ ├── NestedInstanceAccess.java │ └── NestedInstanceAccess.proof │ ├── nestedInstanceFields │ ├── NestedInstanceFields.java │ └── NestedInstanceFields.proof │ ├── readWriteTest │ ├── ReadWriteTest.java │ └── ReadWriteTest.proof │ ├── simpleAliasChanged │ ├── SimpleAliasChanged.java │ └── SimpleAliasChanged.proof │ ├── simpleArrayTest │ ├── SimpleArrayTest.java │ └── SimpleArrayTest.proof │ ├── simpleInstanceFields │ ├── SimpleInstanceFields.java │ └── SimpleInstanceFields.proof │ ├── simpleLocalVariables │ ├── SimpleLocalVariables.java │ └── SimpleLocalVariables.proof │ ├── simpleLoopInvariantTest │ ├── SimpleLoopInvariantTest.java │ └── SimpleLoopInvariantTest.proof │ ├── simpleMultidimensionArrayTest │ ├── SimpleMultidimensionArrayTest.java │ └── SimpleMultidimensionArrayTest.proof │ ├── simpleStaticFields │ ├── SimpleStaticFields.java │ └── SimpleStaticFields.proof │ ├── simpleStaticLoopInvariantTest │ ├── SimpleStatiLoopInvariantTest.java │ └── SimpleStatiLoopInvariantTest.proof │ ├── simpleThisInstanceFields │ ├── SimpleThisInstanceFields.java │ └── SimpleThisInstanceFields.proof │ └── valueChange │ ├── ValueChange.java │ └── ValueChange.proof ├── key.core.testgen ├── build.gradle ├── src │ ├── main │ │ ├── java │ │ │ └── de │ │ │ │ └── uka │ │ │ │ └── ilkd │ │ │ │ └── key │ │ │ │ └── testgen │ │ │ │ ├── Constants.java │ │ │ │ ├── OutputEnvironment.java │ │ │ │ ├── ProofInfo.java │ │ │ │ ├── ReflectionClassCreator.java │ │ │ │ ├── TGMain.java │ │ │ │ ├── TGReporter.java │ │ │ │ ├── TestCaseGenerator.java │ │ │ │ ├── TestGenerationSettings.java │ │ │ │ ├── TestgenFacade.java │ │ │ │ ├── TestgenUtils.java │ │ │ │ ├── macros │ │ │ │ ├── SemanticsBlastingMacro.java │ │ │ │ ├── TestGenMacro.java │ │ │ │ └── package-info.java │ │ │ │ ├── oracle │ │ │ │ ├── AllLocsLocationSet.java │ │ │ │ ├── EmptyOracleLocationSet.java │ │ │ │ ├── ModifiesSetTranslator.java │ │ │ │ ├── OracleBinTerm.java │ │ │ │ ├── OracleConstant.java │ │ │ │ ├── OracleDefaultLocationSet.java │ │ │ │ ├── OracleGenerator.java │ │ │ │ ├── OracleInvariantTranslator.java │ │ │ │ ├── OracleLocation.java │ │ │ │ ├── OracleLocationSet.java │ │ │ │ ├── OracleLocationSets.java │ │ │ │ ├── OracleMethod.java │ │ │ │ ├── OracleMethodCall.java │ │ │ │ ├── OracleTerm.java │ │ │ │ ├── OracleType.java │ │ │ │ ├── OracleUnaryTerm.java │ │ │ │ ├── OracleVariable.java │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ └── smt │ │ │ │ ├── counterexample │ │ │ │ ├── AbstractCounterExampleGenerator.java │ │ │ │ ├── AbstractSideProofCounterExampleGenerator.java │ │ │ │ └── package-info.java │ │ │ │ └── testgen │ │ │ │ ├── AbstractTestGenerator.java │ │ │ │ ├── MemoryTestGenerationLifecycleListener.java │ │ │ │ ├── StopRequest.java │ │ │ │ ├── TGPhase.java │ │ │ │ ├── TestGenerationLifecycleListener.java │ │ │ │ └── package-info.java │ │ └── resources │ │ │ ├── de │ │ │ └── uka │ │ │ │ └── ilkd │ │ │ │ └── key │ │ │ │ └── tcg │ │ │ │ ├── build.gradle.kts │ │ │ │ ├── build.xml │ │ │ │ ├── pom.xml │ │ │ │ └── settings.gradle.kts │ │ │ └── services │ │ │ └── de.uka.ilkd.key.macros.ProofMacro │ └── test │ │ ├── java │ │ └── de │ │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ └── testcase │ │ │ ├── HelperClassForTestgenTests.java │ │ │ ├── TestcaseGenerationE2ETest.java │ │ │ └── smt │ │ │ ├── ce │ │ │ ├── SMTTestSettings.java │ │ │ ├── TestCE.java │ │ │ └── TestCommons.java │ │ │ └── testgen │ │ │ └── TestTestgen.java │ │ └── resources │ │ ├── logback.xml │ │ └── testcase │ │ └── smt │ │ ├── ce │ │ ├── middle.key │ │ ├── overflow1.key │ │ ├── overflow2.key │ │ ├── src │ │ │ ├── Middle.java │ │ │ └── Test.java │ │ ├── types1.key │ │ ├── types2.key │ │ ├── types3.key │ │ ├── types4.key │ │ ├── types5.key │ │ ├── types6.key │ │ ├── types7.key │ │ ├── types8.key │ │ └── types9.key │ │ ├── simplelogger.properties │ │ └── tg │ │ ├── middle.key │ │ └── src │ │ └── Middle.java └── testcases │ ├── arrayutil │ ├── expected │ │ ├── build.gradle.kts │ │ ├── build.xml │ │ ├── pom.xml │ │ ├── settings.gradle.kts │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── ArrayUtils.java │ │ │ └── test │ │ │ └── java │ │ │ └── TestGeneric0.java │ └── src │ │ └── ArrayUtils.java │ └── binarysearch │ ├── actual │ └── .gitignore │ ├── attempt.proof │ ├── expected │ ├── build.xml │ ├── src │ │ └── BinarySearch.java │ └── test │ │ └── TestGeneric0.java │ └── src │ └── BinarySearch.java ├── key.core ├── build.gradle ├── src │ ├── main │ │ ├── antlr4 │ │ │ ├── JmlLexer.g4 │ │ │ ├── JmlParser.g4 │ │ │ ├── KeYLexer.g4 │ │ │ └── KeYParser.g4 │ │ ├── java │ │ │ ├── de │ │ │ │ └── uka │ │ │ │ │ └── ilkd │ │ │ │ │ └── key │ │ │ │ │ ├── axiom_abstraction │ │ │ │ │ ├── AbstractDomainElement.java │ │ │ │ │ ├── AbstractDomainLattice.java │ │ │ │ │ ├── PartialComparator.java │ │ │ │ │ ├── boollattice │ │ │ │ │ │ ├── BooleanDomainElem.java │ │ │ │ │ │ ├── BooleanLattice.java │ │ │ │ │ │ ├── Bottom.java │ │ │ │ │ │ ├── False.java │ │ │ │ │ │ ├── Top.java │ │ │ │ │ │ └── True.java │ │ │ │ │ ├── predicateabstraction │ │ │ │ │ │ ├── AbstractPredicateAbstractionDomainElement.java │ │ │ │ │ │ ├── AbstractPredicateAbstractionLattice.java │ │ │ │ │ │ ├── AbstractionPredicate.java │ │ │ │ │ │ ├── ConjunctivePredicateAbstractionDomainElement.java │ │ │ │ │ │ ├── ConjunctivePredicateAbstractionLattice.java │ │ │ │ │ │ ├── DisjunctivePredicateAbstractionDomainElement.java │ │ │ │ │ │ ├── DisjunctivePredicateAbstractionLattice.java │ │ │ │ │ │ ├── SimplePredicateAbstractionDomainElement.java │ │ │ │ │ │ └── SimplePredicateAbstractionLattice.java │ │ │ │ │ └── signanalysis │ │ │ │ │ │ ├── Bottom.java │ │ │ │ │ │ ├── Geq.java │ │ │ │ │ │ ├── Leq.java │ │ │ │ │ │ ├── Neg.java │ │ │ │ │ │ ├── Pos.java │ │ │ │ │ │ ├── SignAnalysisDomainElem.java │ │ │ │ │ │ ├── SignAnalysisLattice.java │ │ │ │ │ │ ├── Top.java │ │ │ │ │ │ └── Zero.java │ │ │ │ │ ├── control │ │ │ │ │ ├── AbstractProofControl.java │ │ │ │ │ ├── AbstractUserInterfaceControl.java │ │ │ │ │ ├── AutoModeListener.java │ │ │ │ │ ├── CompositePTListener.java │ │ │ │ │ ├── DefaultProofControl.java │ │ │ │ │ ├── DefaultUserInterfaceControl.java │ │ │ │ │ ├── InstantiationFileHandler.java │ │ │ │ │ ├── InteractionListener.java │ │ │ │ │ ├── KeYEnvironment.java │ │ │ │ │ ├── ProofControl.java │ │ │ │ │ ├── RuleCompletionHandler.java │ │ │ │ │ ├── TermLabelVisibilityManager.java │ │ │ │ │ ├── UserInterfaceControl.java │ │ │ │ │ ├── event │ │ │ │ │ │ ├── TermLabelVisibilityManagerEvent.java │ │ │ │ │ │ └── TermLabelVisibilityManagerListener.java │ │ │ │ │ └── instantiation_model │ │ │ │ │ │ ├── TacletAssumesModel.java │ │ │ │ │ │ ├── TacletFindModel.java │ │ │ │ │ │ └── TacletInstantiationModel.java │ │ │ │ │ ├── informationflow │ │ │ │ │ ├── macros │ │ │ │ │ │ ├── AbstractFinishAuxiliaryComputationMacro.java │ │ │ │ │ │ ├── AuxiliaryComputationAutoPilotMacro.java │ │ │ │ │ │ ├── ExhaustiveProofMacro.java │ │ │ │ │ │ ├── FinishAuxiliaryBlockComputationMacro.java │ │ │ │ │ │ ├── FinishAuxiliaryComputationMacro.java │ │ │ │ │ │ ├── FinishAuxiliaryLoopComputationMacro.java │ │ │ │ │ │ ├── FinishAuxiliaryMethodComputationMacro.java │ │ │ │ │ │ ├── FullInformationFlowAutoPilotMacro.java │ │ │ │ │ │ ├── FullUseInformationFlowContractMacro.java │ │ │ │ │ │ ├── SelfcompositionStateExpansionMacro.java │ │ │ │ │ │ ├── StartAuxiliaryBlockComputationMacro.java │ │ │ │ │ │ ├── StartAuxiliaryComputationMacro.java │ │ │ │ │ │ ├── StartAuxiliaryLoopComputationMacro.java │ │ │ │ │ │ ├── StartAuxiliaryMethodComputationMacro.java │ │ │ │ │ │ ├── StartSideProofMacro.java │ │ │ │ │ │ ├── StateExpansionAndInfFlowContractApplicationMacro.java │ │ │ │ │ │ └── UseInformationFlowContractMacro.java │ │ │ │ │ ├── po │ │ │ │ │ │ ├── AbstractInfFlowPO.java │ │ │ │ │ │ ├── BlockExecutionPO.java │ │ │ │ │ │ ├── IFProofObligationVars.java │ │ │ │ │ │ ├── InfFlowCompositePO.java │ │ │ │ │ │ ├── InfFlowContractPO.java │ │ │ │ │ │ ├── InfFlowContractPOLoader.java │ │ │ │ │ │ ├── InfFlowLeafPO.java │ │ │ │ │ │ ├── InfFlowPO.java │ │ │ │ │ │ ├── InfFlowProofSymbols.java │ │ │ │ │ │ ├── LoopInvExecutionPO.java │ │ │ │ │ │ ├── SymbolicExecutionPO.java │ │ │ │ │ │ └── snippet │ │ │ │ │ │ │ ├── BasicBlockExecutionSnippet.java │ │ │ │ │ │ │ ├── BasicBlockExecutionWithPreconditionSnippet.java │ │ │ │ │ │ │ ├── BasicDependsSnippet.java │ │ │ │ │ │ │ ├── BasicFreeInvSnippet.java │ │ │ │ │ │ │ ├── BasicFreePreSnippet.java │ │ │ │ │ │ │ ├── BasicLoopExecutionSnippet.java │ │ │ │ │ │ │ ├── BasicLoopExecutionWithInvariantSnippet.java │ │ │ │ │ │ │ ├── BasicLoopInvariantSnippet.java │ │ │ │ │ │ │ ├── BasicMbyAtPreDefSnippet.java │ │ │ │ │ │ │ ├── BasicModifiableSnippet.java │ │ │ │ │ │ │ ├── BasicPOSnippetFactory.java │ │ │ │ │ │ │ ├── BasicPOSnippetFactoryImpl.java │ │ │ │ │ │ │ ├── BasicParamsOkSnippet.java │ │ │ │ │ │ │ ├── BasicPostconditionSnippet.java │ │ │ │ │ │ │ ├── BasicPreconditionSnippet.java │ │ │ │ │ │ │ ├── BasicSelfCreatedSnippet.java │ │ │ │ │ │ │ ├── BasicSelfExactTypeSnippet.java │ │ │ │ │ │ │ ├── BasicSelfNotNullSnippet.java │ │ │ │ │ │ │ ├── BasicSnippetData.java │ │ │ │ │ │ │ ├── BasicSymbolicExecutionSnippet.java │ │ │ │ │ │ │ ├── BasicSymbolicExecutionWithPreconditionSnippet.java │ │ │ │ │ │ │ ├── BlockCallPredicateSnippet.java │ │ │ │ │ │ │ ├── BlockCallWithPreconditionPredicateSnippet.java │ │ │ │ │ │ │ ├── FactoryMethod.java │ │ │ │ │ │ │ ├── InfFlowContractAppInOutRelationSnippet.java │ │ │ │ │ │ │ ├── InfFlowContractAppSnippet.java │ │ │ │ │ │ │ ├── InfFlowFactoryMethod.java │ │ │ │ │ │ │ ├── InfFlowInputOutputRelationSnippet.java │ │ │ │ │ │ │ ├── InfFlowLoopInvAppSnippet.java │ │ │ │ │ │ │ ├── InfFlowPOSnippetFactory.java │ │ │ │ │ │ │ ├── InfFlowPOSnippetFactoryImpl.java │ │ │ │ │ │ │ ├── LoopCallPredicateSnippet.java │ │ │ │ │ │ │ ├── LoopCallWithInvariantPredicateSnippet.java │ │ │ │ │ │ │ ├── MethodCallPredicateSnippet.java │ │ │ │ │ │ │ ├── POSnippetFactory.java │ │ │ │ │ │ │ ├── ReplaceAndRegisterMethod.java │ │ │ │ │ │ │ ├── SelfcomposedBlockSnippet.java │ │ │ │ │ │ │ ├── SelfcomposedExecutionSnippet.java │ │ │ │ │ │ │ ├── SelfcomposedLoopSnippet.java │ │ │ │ │ │ │ └── TwoStateMethodPredicateSnippet.java │ │ │ │ │ ├── proof │ │ │ │ │ │ ├── InfFlowCheckInfo.java │ │ │ │ │ │ ├── InfFlowProof.java │ │ │ │ │ │ ├── SideProofStatistics.java │ │ │ │ │ │ └── init │ │ │ │ │ │ │ └── StateVars.java │ │ │ │ │ └── rule │ │ │ │ │ │ ├── InfFlowContractAppTaclet.java │ │ │ │ │ │ ├── executor │ │ │ │ │ │ └── InfFlowContractAppTacletExecutor.java │ │ │ │ │ │ └── tacletbuilder │ │ │ │ │ │ ├── AbstractInfFlowContractAppTacletBuilder.java │ │ │ │ │ │ ├── AbstractInfFlowTacletBuilder.java │ │ │ │ │ │ ├── AbstractInfFlowUnfoldTacletBuilder.java │ │ │ │ │ │ ├── BlockInfFlowUnfoldTacletBuilder.java │ │ │ │ │ │ ├── InfFlowBlockContractTacletBuilder.java │ │ │ │ │ │ ├── InfFlowLoopInvariantTacletBuilder.java │ │ │ │ │ │ ├── InfFlowMethodContractTacletBuilder.java │ │ │ │ │ │ ├── LoopInfFlowUnfoldTacletBuilder.java │ │ │ │ │ │ └── MethodInfFlowUnfoldTacletBuilder.java │ │ │ │ │ ├── java │ │ │ │ │ ├── CcatchBreakLabelParameterDeclaration.java │ │ │ │ │ ├── CcatchBreakParameterDeclaration.java │ │ │ │ │ ├── CcatchBreakWildcardParameterDeclaration.java │ │ │ │ │ ├── CcatchContinueLabelParameterDeclaration.java │ │ │ │ │ ├── CcatchContinueParameterDeclaration.java │ │ │ │ │ ├── CcatchContinueWildcardParameterDeclaration.java │ │ │ │ │ ├── CcatchNonstandardParameterDeclaration.java │ │ │ │ │ ├── CcatchReturnParameterDeclaration.java │ │ │ │ │ ├── CcatchReturnValParameterDeclaration.java │ │ │ │ │ ├── Comment.java │ │ │ │ │ ├── CompilationUnit.java │ │ │ │ │ ├── ConstantExpressionEvaluator.java │ │ │ │ │ ├── Context.java │ │ │ │ │ ├── ContextStatementBlock.java │ │ │ │ │ ├── ConvertException.java │ │ │ │ │ ├── CreateArrayMethodBuilder.java │ │ │ │ │ ├── Declaration.java │ │ │ │ │ ├── Dimension.java │ │ │ │ │ ├── Expression.java │ │ │ │ │ ├── ExpressionContainer.java │ │ │ │ │ ├── Import.java │ │ │ │ │ ├── JavaInfo.java │ │ │ │ │ ├── JavaNonTerminalProgramElement.java │ │ │ │ │ ├── JavaProgramElement.java │ │ │ │ │ ├── JavaReader.java │ │ │ │ │ ├── JavaReduxFileCollection.java │ │ │ │ │ ├── JavaSourceElement.java │ │ │ │ │ ├── JavaTools.java │ │ │ │ │ ├── KeYJavaASTFactory.java │ │ │ │ │ ├── KeYProgModelInfo.java │ │ │ │ │ ├── KeYRecoderMapping.java │ │ │ │ │ ├── Label.java │ │ │ │ │ ├── LoopInitializer.java │ │ │ │ │ ├── ModelElement.java │ │ │ │ │ ├── NameAbstractionTable.java │ │ │ │ │ ├── NamedModelElement.java │ │ │ │ │ ├── NamedProgramElement.java │ │ │ │ │ ├── NonTerminalProgramElement.java │ │ │ │ │ ├── PackageSpecification.java │ │ │ │ │ ├── ParameterContainer.java │ │ │ │ │ ├── ParentIsInterfaceDeclaration.java │ │ │ │ │ ├── ParseExceptionInFile.java │ │ │ │ │ ├── PosConvertException.java │ │ │ │ │ ├── Position.java │ │ │ │ │ ├── PositionInfo.java │ │ │ │ │ ├── ProgramElement.java │ │ │ │ │ ├── ProgramPrefixUtil.java │ │ │ │ │ ├── Recoder2KeY.java │ │ │ │ │ ├── Recoder2KeYConverter.java │ │ │ │ │ ├── Recoder2KeYTypeConverter.java │ │ │ │ │ ├── Reference.java │ │ │ │ │ ├── SchemaJavaReader.java │ │ │ │ │ ├── SchemaRecoder2KeY.java │ │ │ │ │ ├── SchemaRecoder2KeYConverter.java │ │ │ │ │ ├── ScopeDefiningElement.java │ │ │ │ │ ├── ServiceCaches.java │ │ │ │ │ ├── Services.java │ │ │ │ │ ├── SingleLineComment.java │ │ │ │ │ ├── SourceData.java │ │ │ │ │ ├── SourceElement.java │ │ │ │ │ ├── Statement.java │ │ │ │ │ ├── StatementBlock.java │ │ │ │ │ ├── StatementContainer.java │ │ │ │ │ ├── TerminalProgramElement.java │ │ │ │ │ ├── TypeConverter.java │ │ │ │ │ ├── TypeNameTranslator.java │ │ │ │ │ ├── TypeScope.java │ │ │ │ │ ├── UnknownJavaTypeException.java │ │ │ │ │ ├── VariableScope.java │ │ │ │ │ ├── abstraction │ │ │ │ │ │ ├── ArrayType.java │ │ │ │ │ │ ├── ClassType.java │ │ │ │ │ │ ├── ClassTypeContainer.java │ │ │ │ │ │ ├── Constructor.java │ │ │ │ │ │ ├── DefaultConstructor.java │ │ │ │ │ │ ├── Field.java │ │ │ │ │ │ ├── KeYJavaType.java │ │ │ │ │ │ ├── Member.java │ │ │ │ │ │ ├── Method.java │ │ │ │ │ │ ├── NullType.java │ │ │ │ │ │ ├── Package.java │ │ │ │ │ │ ├── PrimitiveType.java │ │ │ │ │ │ ├── ProgramModelElement.java │ │ │ │ │ │ ├── Type.java │ │ │ │ │ │ ├── Variable.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── declaration │ │ │ │ │ │ ├── ArrayDeclaration.java │ │ │ │ │ │ ├── ClassDeclaration.java │ │ │ │ │ │ ├── ClassInitializer.java │ │ │ │ │ │ ├── ConstructorDeclaration.java │ │ │ │ │ │ ├── EnumClassDeclaration.java │ │ │ │ │ │ ├── Extends.java │ │ │ │ │ │ ├── FieldDeclaration.java │ │ │ │ │ │ ├── FieldSpecification.java │ │ │ │ │ │ ├── Implements.java │ │ │ │ │ │ ├── ImplicitFieldSpecification.java │ │ │ │ │ │ ├── InheritanceSpecification.java │ │ │ │ │ │ ├── InterfaceDeclaration.java │ │ │ │ │ │ ├── JavaDeclaration.java │ │ │ │ │ │ ├── LocalVariableDeclaration.java │ │ │ │ │ │ ├── MemberDeclaration.java │ │ │ │ │ │ ├── MethodDeclaration.java │ │ │ │ │ │ ├── Modifier.java │ │ │ │ │ │ ├── ParameterDeclaration.java │ │ │ │ │ │ ├── SuperArrayDeclaration.java │ │ │ │ │ │ ├── Throws.java │ │ │ │ │ │ ├── TypeDeclaration.java │ │ │ │ │ │ ├── TypeDeclarationContainer.java │ │ │ │ │ │ ├── VariableDeclaration.java │ │ │ │ │ │ ├── VariableSpecification.java │ │ │ │ │ │ ├── modifier │ │ │ │ │ │ │ ├── Abstract.java │ │ │ │ │ │ │ ├── AnnotationUseSpecification.java │ │ │ │ │ │ │ ├── Final.java │ │ │ │ │ │ │ ├── Ghost.java │ │ │ │ │ │ │ ├── Model.java │ │ │ │ │ │ │ ├── Native.java │ │ │ │ │ │ │ ├── NoState.java │ │ │ │ │ │ │ ├── Private.java │ │ │ │ │ │ │ ├── Protected.java │ │ │ │ │ │ │ ├── Public.java │ │ │ │ │ │ │ ├── Static.java │ │ │ │ │ │ │ ├── StrictFp.java │ │ │ │ │ │ │ ├── Synchronized.java │ │ │ │ │ │ │ ├── Transient.java │ │ │ │ │ │ │ ├── TwoState.java │ │ │ │ │ │ │ ├── VisibilityModifier.java │ │ │ │ │ │ │ ├── Volatile.java │ │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── expression │ │ │ │ │ │ ├── ArrayInitializer.java │ │ │ │ │ │ ├── Assignment.java │ │ │ │ │ │ ├── ExpressionStatement.java │ │ │ │ │ │ ├── Literal.java │ │ │ │ │ │ ├── Operator.java │ │ │ │ │ │ ├── ParenthesizedExpression.java │ │ │ │ │ │ ├── PassiveExpression.java │ │ │ │ │ │ ├── literal │ │ │ │ │ │ │ ├── AbstractIntegerLiteral.java │ │ │ │ │ │ │ ├── BooleanLiteral.java │ │ │ │ │ │ │ ├── CharLiteral.java │ │ │ │ │ │ │ ├── DoubleLiteral.java │ │ │ │ │ │ │ ├── EmptyMapLiteral.java │ │ │ │ │ │ │ ├── EmptySeqLiteral.java │ │ │ │ │ │ │ ├── EmptySetLiteral.java │ │ │ │ │ │ │ ├── FloatLiteral.java │ │ │ │ │ │ │ ├── FreeLiteral.java │ │ │ │ │ │ │ ├── IntLiteral.java │ │ │ │ │ │ │ ├── LongLiteral.java │ │ │ │ │ │ │ ├── NullLiteral.java │ │ │ │ │ │ │ ├── RealLiteral.java │ │ │ │ │ │ │ ├── StringLiteral.java │ │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ ├── operator │ │ │ │ │ │ │ ├── BinaryAnd.java │ │ │ │ │ │ │ ├── BinaryAndAssignment.java │ │ │ │ │ │ │ ├── BinaryNot.java │ │ │ │ │ │ │ ├── BinaryOperator.java │ │ │ │ │ │ │ ├── BinaryOr.java │ │ │ │ │ │ │ ├── BinaryOrAssignment.java │ │ │ │ │ │ │ ├── BinaryXOr.java │ │ │ │ │ │ │ ├── BinaryXOrAssignment.java │ │ │ │ │ │ │ ├── ComparativeOperator.java │ │ │ │ │ │ │ ├── Conditional.java │ │ │ │ │ │ │ ├── CopyAssignment.java │ │ │ │ │ │ │ ├── DLEmbeddedExpression.java │ │ │ │ │ │ │ ├── Divide.java │ │ │ │ │ │ │ ├── DivideAssignment.java │ │ │ │ │ │ │ ├── Equals.java │ │ │ │ │ │ │ ├── ExactInstanceof.java │ │ │ │ │ │ │ ├── GreaterOrEquals.java │ │ │ │ │ │ │ ├── GreaterThan.java │ │ │ │ │ │ │ ├── Instanceof.java │ │ │ │ │ │ │ ├── Intersect.java │ │ │ │ │ │ │ ├── LessOrEquals.java │ │ │ │ │ │ │ ├── LessThan.java │ │ │ │ │ │ │ ├── LogicalAnd.java │ │ │ │ │ │ │ ├── LogicalNot.java │ │ │ │ │ │ │ ├── LogicalOr.java │ │ │ │ │ │ │ ├── Minus.java │ │ │ │ │ │ │ ├── MinusAssignment.java │ │ │ │ │ │ │ ├── Modulo.java │ │ │ │ │ │ │ ├── ModuloAssignment.java │ │ │ │ │ │ │ ├── Negative.java │ │ │ │ │ │ │ ├── New.java │ │ │ │ │ │ │ ├── NewArray.java │ │ │ │ │ │ │ ├── NotEquals.java │ │ │ │ │ │ │ ├── Plus.java │ │ │ │ │ │ │ ├── PlusAssignment.java │ │ │ │ │ │ │ ├── Positive.java │ │ │ │ │ │ │ ├── PostDecrement.java │ │ │ │ │ │ │ ├── PostIncrement.java │ │ │ │ │ │ │ ├── PreDecrement.java │ │ │ │ │ │ │ ├── PreIncrement.java │ │ │ │ │ │ │ ├── ShiftLeft.java │ │ │ │ │ │ │ ├── ShiftLeftAssignment.java │ │ │ │ │ │ │ ├── ShiftRight.java │ │ │ │ │ │ │ ├── ShiftRightAssignment.java │ │ │ │ │ │ │ ├── Subtype.java │ │ │ │ │ │ │ ├── Times.java │ │ │ │ │ │ │ ├── TimesAssignment.java │ │ │ │ │ │ │ ├── TypeCast.java │ │ │ │ │ │ │ ├── TypeOperator.java │ │ │ │ │ │ │ ├── UnsignedShiftRight.java │ │ │ │ │ │ │ ├── UnsignedShiftRightAssignment.java │ │ │ │ │ │ │ ├── adt │ │ │ │ │ │ │ │ ├── AllFields.java │ │ │ │ │ │ │ │ ├── AllObjects.java │ │ │ │ │ │ │ │ ├── SeqConcat.java │ │ │ │ │ │ │ │ ├── SeqGet.java │ │ │ │ │ │ │ │ ├── SeqIndexOf.java │ │ │ │ │ │ │ │ ├── SeqLength.java │ │ │ │ │ │ │ │ ├── SeqPut.java │ │ │ │ │ │ │ │ ├── SeqReverse.java │ │ │ │ │ │ │ │ ├── SeqSingleton.java │ │ │ │ │ │ │ │ ├── SeqSub.java │ │ │ │ │ │ │ │ ├── SetMinus.java │ │ │ │ │ │ │ │ ├── SetUnion.java │ │ │ │ │ │ │ │ └── Singleton.java │ │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── recoderext │ │ │ │ │ │ ├── Bigint.java │ │ │ │ │ │ ├── CatchAllStatement.java │ │ │ │ │ │ ├── CatchSVWrapper.java │ │ │ │ │ │ ├── Ccatch.java │ │ │ │ │ │ ├── CcatchBreakLabelParameterDeclaration.java │ │ │ │ │ │ ├── CcatchBreakParameterDeclaration.java │ │ │ │ │ │ ├── CcatchBreakWildcardParameterDeclaration.java │ │ │ │ │ │ ├── CcatchContinueLabelParameterDeclaration.java │ │ │ │ │ │ ├── CcatchContinueParameterDeclaration.java │ │ │ │ │ │ ├── CcatchContinueWildcardParameterDeclaration.java │ │ │ │ │ │ ├── CcatchNonstandardParameterDeclaration.java │ │ │ │ │ │ ├── CcatchReturnParameterDeclaration.java │ │ │ │ │ │ ├── CcatchReturnValParameterDeclaration.java │ │ │ │ │ │ ├── CcatchSVWrapper.java │ │ │ │ │ │ ├── ClassFileDeclarationBuilder.java │ │ │ │ │ │ ├── ClassFileDeclarationManager.java │ │ │ │ │ │ ├── ClassInitializeMethodBuilder.java │ │ │ │ │ │ ├── ClassPreparationMethodBuilder.java │ │ │ │ │ │ ├── ConstantStringExpressionEvaluator.java │ │ │ │ │ │ ├── ConstructorNormalformBuilder.java │ │ │ │ │ │ ├── ContextStatementBlock.java │ │ │ │ │ │ ├── CreateBuilder.java │ │ │ │ │ │ ├── CreateObjectBuilder.java │ │ │ │ │ │ ├── DLEmbeddedExpression.java │ │ │ │ │ │ ├── EnumClassBuilder.java │ │ │ │ │ │ ├── EnumClassDeclaration.java │ │ │ │ │ │ ├── EscapeExpression.java │ │ │ │ │ │ ├── Exec.java │ │ │ │ │ │ ├── ExecCtxtSVWrapper.java │ │ │ │ │ │ ├── ExecutionContext.java │ │ │ │ │ │ ├── ExpressionSVWrapper.java │ │ │ │ │ │ ├── ExtendedIdentifier.java │ │ │ │ │ │ ├── Ghost.java │ │ │ │ │ │ ├── ImplicitFieldAdder.java │ │ │ │ │ │ ├── ImplicitIdentifier.java │ │ │ │ │ │ ├── InstanceAllocationMethodBuilder.java │ │ │ │ │ │ ├── JMLTransformer.java │ │ │ │ │ │ ├── JmlAssert.java │ │ │ │ │ │ ├── JumpLabelSVWrapper.java │ │ │ │ │ │ ├── KeYAnnotationUseSpecification.java │ │ │ │ │ │ ├── KeYCrossReferenceNameInfo.java │ │ │ │ │ │ ├── KeYCrossReferenceServiceConfiguration.java │ │ │ │ │ │ ├── KeYCrossReferenceSourceFileRepository.java │ │ │ │ │ │ ├── KeYRecoderExtension.java │ │ │ │ │ │ ├── LabelSVWrapper.java │ │ │ │ │ │ ├── LocalClassTransformation.java │ │ │ │ │ │ ├── LoopScopeBlock.java │ │ │ │ │ │ ├── MergePointStatement.java │ │ │ │ │ │ ├── MethodBodyStatement.java │ │ │ │ │ │ ├── MethodCallStatement.java │ │ │ │ │ │ ├── MethodSignatureSVWrapper.java │ │ │ │ │ │ ├── Model.java │ │ │ │ │ │ ├── NewArrayWrapper.java │ │ │ │ │ │ ├── NewWrapper.java │ │ │ │ │ │ ├── NoState.java │ │ │ │ │ │ ├── ObjectTypeIdentifier.java │ │ │ │ │ │ ├── PassiveExpression.java │ │ │ │ │ │ ├── PrepareObjectBuilder.java │ │ │ │ │ │ ├── ProgramVariableSVWrapper.java │ │ │ │ │ │ ├── ProofCrossReferenceServiceConfiguration.java │ │ │ │ │ │ ├── ProofJavaProgramFactory.java │ │ │ │ │ │ ├── RKeYMetaConstruct.java │ │ │ │ │ │ ├── RKeYMetaConstructExpression.java │ │ │ │ │ │ ├── RKeYMetaConstructType.java │ │ │ │ │ │ ├── RMethodBodyStatement.java │ │ │ │ │ │ ├── RMethodCallStatement.java │ │ │ │ │ │ ├── Real.java │ │ │ │ │ │ ├── RecoderModelTransformer.java │ │ │ │ │ │ ├── RegisteredEscapeExpression.java │ │ │ │ │ │ ├── SVWrapper.java │ │ │ │ │ │ ├── SchemaCrossReferenceServiceConfiguration.java │ │ │ │ │ │ ├── SchemaCrossReferenceSourceInfo.java │ │ │ │ │ │ ├── SchemaJavaProgramFactory.java │ │ │ │ │ │ ├── SetStatement.java │ │ │ │ │ │ ├── SourceVisitorExtended.java │ │ │ │ │ │ ├── SpecialReferenceWrapper.java │ │ │ │ │ │ ├── StatementSVWrapper.java │ │ │ │ │ │ ├── TransactionStatement.java │ │ │ │ │ │ ├── TwoState.java │ │ │ │ │ │ ├── TypeSVWrapper.java │ │ │ │ │ │ ├── URLDataLocation.java │ │ │ │ │ │ ├── adt │ │ │ │ │ │ │ ├── ADTPrefixConstruct.java │ │ │ │ │ │ │ ├── AllFields.java │ │ │ │ │ │ │ ├── AllObjects.java │ │ │ │ │ │ │ ├── EmptyMapLiteral.java │ │ │ │ │ │ │ ├── EmptySeqLiteral.java │ │ │ │ │ │ │ ├── EmptySetLiteral.java │ │ │ │ │ │ │ ├── Intersect.java │ │ │ │ │ │ │ ├── MethodSignature.java │ │ │ │ │ │ │ ├── RangeExpression.java │ │ │ │ │ │ │ ├── SeqConcat.java │ │ │ │ │ │ │ ├── SeqGet.java │ │ │ │ │ │ │ ├── SeqIndexOf.java │ │ │ │ │ │ │ ├── SeqLength.java │ │ │ │ │ │ │ ├── SeqPut.java │ │ │ │ │ │ │ ├── SeqReverse.java │ │ │ │ │ │ │ ├── SeqSingleton.java │ │ │ │ │ │ │ ├── SeqSub.java │ │ │ │ │ │ │ ├── SetMinus.java │ │ │ │ │ │ │ ├── SetUnion.java │ │ │ │ │ │ │ ├── Singleton.java │ │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ └── expression │ │ │ │ │ │ │ └── literal │ │ │ │ │ │ │ └── RealLiteral.java │ │ │ │ │ ├── reference │ │ │ │ │ │ ├── ArrayLengthReference.java │ │ │ │ │ │ ├── ArrayReference.java │ │ │ │ │ │ ├── ConstructorReference.java │ │ │ │ │ │ ├── ExecutionContext.java │ │ │ │ │ │ ├── FieldReference.java │ │ │ │ │ │ ├── IExecutionContext.java │ │ │ │ │ │ ├── MemberReference.java │ │ │ │ │ │ ├── MetaClassReference.java │ │ │ │ │ │ ├── MethodName.java │ │ │ │ │ │ ├── MethodOrConstructorReference.java │ │ │ │ │ │ ├── MethodReference.java │ │ │ │ │ │ ├── NameReference.java │ │ │ │ │ │ ├── PackageReference.java │ │ │ │ │ │ ├── PackageReferenceContainer.java │ │ │ │ │ │ ├── ReferencePrefix.java │ │ │ │ │ │ ├── ReferenceSuffix.java │ │ │ │ │ │ ├── SchemaTypeReference.java │ │ │ │ │ │ ├── SchematicFieldReference.java │ │ │ │ │ │ ├── SpecialConstructorReference.java │ │ │ │ │ │ ├── SuperConstructorReference.java │ │ │ │ │ │ ├── SuperReference.java │ │ │ │ │ │ ├── ThisConstructorReference.java │ │ │ │ │ │ ├── ThisReference.java │ │ │ │ │ │ ├── TypeRef.java │ │ │ │ │ │ ├── TypeReference.java │ │ │ │ │ │ ├── TypeReferenceContainer.java │ │ │ │ │ │ ├── TypeReferenceImp.java │ │ │ │ │ │ ├── TypeReferenceInfix.java │ │ │ │ │ │ ├── VariableReference.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── statement │ │ │ │ │ │ ├── Assert.java │ │ │ │ │ │ ├── Branch.java │ │ │ │ │ │ ├── BranchImp.java │ │ │ │ │ │ ├── BranchStatement.java │ │ │ │ │ │ ├── Break.java │ │ │ │ │ │ ├── Case.java │ │ │ │ │ │ ├── Catch.java │ │ │ │ │ │ ├── CatchAllStatement.java │ │ │ │ │ │ ├── Ccatch.java │ │ │ │ │ │ ├── Continue.java │ │ │ │ │ │ ├── Default.java │ │ │ │ │ │ ├── Do.java │ │ │ │ │ │ ├── Else.java │ │ │ │ │ │ ├── EmptyStatement.java │ │ │ │ │ │ ├── EnhancedFor.java │ │ │ │ │ │ ├── Exec.java │ │ │ │ │ │ ├── ExpressionJumpStatement.java │ │ │ │ │ │ ├── Finally.java │ │ │ │ │ │ ├── For.java │ │ │ │ │ │ ├── ForUpdates.java │ │ │ │ │ │ ├── Guard.java │ │ │ │ │ │ ├── IForUpdates.java │ │ │ │ │ │ ├── IGuard.java │ │ │ │ │ │ ├── ILoopInit.java │ │ │ │ │ │ ├── If.java │ │ │ │ │ │ ├── JavaStatement.java │ │ │ │ │ │ ├── JmlAssert.java │ │ │ │ │ │ ├── JumpStatement.java │ │ │ │ │ │ ├── LabelJumpStatement.java │ │ │ │ │ │ ├── LabeledStatement.java │ │ │ │ │ │ ├── LoopInit.java │ │ │ │ │ │ ├── LoopScopeBlock.java │ │ │ │ │ │ ├── LoopStatement.java │ │ │ │ │ │ ├── MergePointStatement.java │ │ │ │ │ │ ├── MethodBodyStatement.java │ │ │ │ │ │ ├── MethodFrame.java │ │ │ │ │ │ ├── Return.java │ │ │ │ │ │ ├── SetStatement.java │ │ │ │ │ │ ├── Switch.java │ │ │ │ │ │ ├── SynchronizedBlock.java │ │ │ │ │ │ ├── Then.java │ │ │ │ │ │ ├── Throw.java │ │ │ │ │ │ ├── TransactionStatement.java │ │ │ │ │ │ ├── Try.java │ │ │ │ │ │ ├── While.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── visitor │ │ │ │ │ │ ├── ContainsStatementVisitor.java │ │ │ │ │ │ ├── CreatingASTVisitor.java │ │ │ │ │ │ ├── DeclarationProgramVariableCollector.java │ │ │ │ │ │ ├── FieldReplaceVisitor.java │ │ │ │ │ │ ├── FreeLabelFinder.java │ │ │ │ │ │ ├── InnerBreakAndContinueReplacer.java │ │ │ │ │ │ ├── JavaASTCollector.java │ │ │ │ │ │ ├── JavaASTVisitor.java │ │ │ │ │ │ ├── JavaASTWalker.java │ │ │ │ │ │ ├── LabelCollector.java │ │ │ │ │ │ ├── OuterBreakContinueAndReturnCollector.java │ │ │ │ │ │ ├── OuterBreakContinueAndReturnReplacer.java │ │ │ │ │ │ ├── ProgVarReplaceVisitor.java │ │ │ │ │ │ ├── ProgramContextAdder.java │ │ │ │ │ │ ├── ProgramElementReplacer.java │ │ │ │ │ │ ├── ProgramReplaceVisitor.java │ │ │ │ │ │ ├── ProgramSVCollector.java │ │ │ │ │ │ ├── ProgramVariableCollector.java │ │ │ │ │ │ ├── UndeclaredProgramVariableCollector.java │ │ │ │ │ │ ├── Visitor.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── ldt │ │ │ │ │ ├── BooleanLDT.java │ │ │ │ │ ├── CharListLDT.java │ │ │ │ │ ├── DoubleLDT.java │ │ │ │ │ ├── FinalHeapResolution.java │ │ │ │ │ ├── FloatLDT.java │ │ │ │ │ ├── FloatingPointLDT.java │ │ │ │ │ ├── FreeLDT.java │ │ │ │ │ ├── HeapLDT.java │ │ │ │ │ ├── IntegerLDT.java │ │ │ │ │ ├── JavaDLTheory.java │ │ │ │ │ ├── LDT.java │ │ │ │ │ ├── LocSetLDT.java │ │ │ │ │ ├── MapLDT.java │ │ │ │ │ ├── PermissionLDT.java │ │ │ │ │ ├── RealLDT.java │ │ │ │ │ ├── SeqLDT.java │ │ │ │ │ ├── SortLDT.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── logic │ │ │ │ │ ├── BooleanContainer.java │ │ │ │ │ ├── BoundVariableTools.java │ │ │ │ │ ├── BoundVarsVisitor.java │ │ │ │ │ ├── ClashFreeSubst.java │ │ │ │ │ ├── DefaultVisitor.java │ │ │ │ │ ├── GenericTermReplacer.java │ │ │ │ │ ├── InnerVariableNamer.java │ │ │ │ │ ├── JTerm.java │ │ │ │ │ ├── JavaBlock.java │ │ │ │ │ ├── LabeledTermImpl.java │ │ │ │ │ ├── LexPathOrdering.java │ │ │ │ │ ├── MethodStackInfo.java │ │ │ │ │ ├── MultiRenamingTable.java │ │ │ │ │ ├── NameCreationInfo.java │ │ │ │ │ ├── NamespaceSet.java │ │ │ │ │ ├── OpCollector.java │ │ │ │ │ ├── OpCollectorJavaBlock.java │ │ │ │ │ ├── PosInProgram.java │ │ │ │ │ ├── ProgramConstruct.java │ │ │ │ │ ├── ProgramElementName.java │ │ │ │ │ ├── ProgramInLogic.java │ │ │ │ │ ├── ProgramPrefix.java │ │ │ │ │ ├── RenameTable.java │ │ │ │ │ ├── RenamingTable.java │ │ │ │ │ ├── SingleRenamingTable.java │ │ │ │ │ ├── SortCollector.java │ │ │ │ │ ├── Sorted.java │ │ │ │ │ ├── TermBuilder.java │ │ │ │ │ ├── TermFactory.java │ │ │ │ │ ├── TermImpl.java │ │ │ │ │ ├── TermOrdering.java │ │ │ │ │ ├── TermServices.java │ │ │ │ │ ├── VariableNamer.java │ │ │ │ │ ├── WaryClashFreeSubst.java │ │ │ │ │ ├── equality │ │ │ │ │ │ ├── EqualsModProperty.java │ │ │ │ │ │ ├── IrrelevantTermLabelsProperty.java │ │ │ │ │ │ ├── ProofIrrelevancyProperty.java │ │ │ │ │ │ ├── RenamingSourceElementProperty.java │ │ │ │ │ │ ├── RenamingTermProperty.java │ │ │ │ │ │ └── TermLabelsProperty.java │ │ │ │ │ ├── label │ │ │ │ │ │ ├── BlockContractValidityTermLabel.java │ │ │ │ │ │ ├── BlockContractValidityTermLabelFactory.java │ │ │ │ │ │ ├── FormulaTermLabel.java │ │ │ │ │ │ ├── FormulaTermLabelFactory.java │ │ │ │ │ │ ├── LabelCollection.java │ │ │ │ │ │ ├── OriginTermLabel.java │ │ │ │ │ │ ├── OriginTermLabelFactory.java │ │ │ │ │ │ ├── ParameterlessTermLabel.java │ │ │ │ │ │ ├── SingletonLabelFactory.java │ │ │ │ │ │ ├── SymbolicExecutionTermLabel.java │ │ │ │ │ │ ├── SymbolicExecutionTermLabelFactory.java │ │ │ │ │ │ ├── TermLabel.java │ │ │ │ │ │ ├── TermLabelException.java │ │ │ │ │ │ ├── TermLabelFactory.java │ │ │ │ │ │ ├── TermLabelManager.java │ │ │ │ │ │ └── TermLabelState.java │ │ │ │ │ ├── op │ │ │ │ │ │ ├── AbstractTermTransformer.java │ │ │ │ │ │ ├── ElementaryUpdate.java │ │ │ │ │ │ ├── Equality.java │ │ │ │ │ │ ├── FormulaSV.java │ │ │ │ │ │ ├── IObserverFunction.java │ │ │ │ │ │ ├── IProgramMethod.java │ │ │ │ │ │ ├── IProgramVariable.java │ │ │ │ │ │ ├── IfExThenElse.java │ │ │ │ │ │ ├── IfThenElse.java │ │ │ │ │ │ ├── JAbstractSortedOperator.java │ │ │ │ │ │ ├── JFunction.java │ │ │ │ │ │ ├── JModality.java │ │ │ │ │ │ ├── JOperatorSV.java │ │ │ │ │ │ ├── JavaDLOperatorUtil.java │ │ │ │ │ │ ├── Junctor.java │ │ │ │ │ │ ├── LocationVariable.java │ │ │ │ │ │ ├── LogicVariable.java │ │ │ │ │ │ ├── ModalOperatorSV.java │ │ │ │ │ │ ├── ObserverFunction.java │ │ │ │ │ │ ├── ProgramConstant.java │ │ │ │ │ │ ├── ProgramMethod.java │ │ │ │ │ │ ├── ProgramSV.java │ │ │ │ │ │ ├── ProgramVariable.java │ │ │ │ │ │ ├── QualifierWrapper.java │ │ │ │ │ │ ├── Quantifier.java │ │ │ │ │ │ ├── SchemaVariableFactory.java │ │ │ │ │ │ ├── SkolemTermSV.java │ │ │ │ │ │ ├── SortDependingFunction.java │ │ │ │ │ │ ├── SubstOp.java │ │ │ │ │ │ ├── TermLabelSV.java │ │ │ │ │ │ ├── TermSV.java │ │ │ │ │ │ ├── TermTransformer.java │ │ │ │ │ │ ├── Transformer.java │ │ │ │ │ │ ├── UpdateApplication.java │ │ │ │ │ │ ├── UpdateJunctor.java │ │ │ │ │ │ ├── UpdateSV.java │ │ │ │ │ │ ├── VariableSV.java │ │ │ │ │ │ ├── WarySubstOp.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── sort │ │ │ │ │ │ ├── ArraySort.java │ │ │ │ │ │ ├── GenericSort.java │ │ │ │ │ │ ├── GenericSupersortException.java │ │ │ │ │ │ ├── NullSort.java │ │ │ │ │ │ ├── ProgramSVSort.java │ │ │ │ │ │ ├── ProxySort.java │ │ │ │ │ │ ├── SortImpl.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── util │ │ │ │ │ │ ├── EqualityUtils.java │ │ │ │ │ │ └── TermHelper.java │ │ │ │ │ ├── macros │ │ │ │ │ ├── AbstractBlastingMacro.java │ │ │ │ │ ├── AbstractProofMacro.java │ │ │ │ │ ├── AbstractPropositionalExpansionMacro.java │ │ │ │ │ ├── AlternativeMacro.java │ │ │ │ │ ├── AutoMacro.java │ │ │ │ │ ├── AutoPilotPrepareProofMacro.java │ │ │ │ │ ├── DoWhileFinallyMacro.java │ │ │ │ │ ├── FilterStrategy.java │ │ │ │ │ ├── FinishSymbolicExecutionMacro.java │ │ │ │ │ ├── FinishSymbolicExecutionUntilMergePointMacro.java │ │ │ │ │ ├── FullAutoPilotProofMacro.java │ │ │ │ │ ├── FullPropositionalExpansionMacro.java │ │ │ │ │ ├── HeapSimplificationMacro.java │ │ │ │ │ ├── IntegerSimplificationMacro.java │ │ │ │ │ ├── ModalityCache.java │ │ │ │ │ ├── OneStepProofMacro.java │ │ │ │ │ ├── PrepareInfFlowContractPreBranchesMacro.java │ │ │ │ │ ├── ProofMacro.java │ │ │ │ │ ├── ProofMacroFinishedInfo.java │ │ │ │ │ ├── ProofMacroListener.java │ │ │ │ │ ├── PropositionalExpansionMacro.java │ │ │ │ │ ├── PropositionalExpansionWithSimplificationMacro.java │ │ │ │ │ ├── SMTPreparationMacro.java │ │ │ │ │ ├── SequentialOnLastGoalProofMacro.java │ │ │ │ │ ├── SequentialProofMacro.java │ │ │ │ │ ├── SkipMacro.java │ │ │ │ │ ├── StrategyProofMacro.java │ │ │ │ │ ├── TranscendentalFloatSMTMacro.java │ │ │ │ │ ├── TryCloseMacro.java │ │ │ │ │ ├── UpdateSimplificationMacro.java │ │ │ │ │ └── WellDefinednessMacro.java │ │ │ │ │ ├── nparser │ │ │ │ │ ├── ChoiceInformation.java │ │ │ │ │ ├── ConfigurationBuilder.java │ │ │ │ │ ├── DebugKeyLexer.java │ │ │ │ │ ├── KeyAst.java │ │ │ │ │ ├── KeyIO.java │ │ │ │ │ ├── ParsingFacade.java │ │ │ │ │ ├── ProblemInformation.java │ │ │ │ │ ├── ProofReplayer.java │ │ │ │ │ ├── ProofScriptEntry.java │ │ │ │ │ ├── builder │ │ │ │ │ │ ├── AbstractBuilder.java │ │ │ │ │ │ ├── BuilderHelpers.java │ │ │ │ │ │ ├── ChoiceFinder.java │ │ │ │ │ │ ├── ContractsAndInvariantsFinder.java │ │ │ │ │ │ ├── DeclarationBuilder.java │ │ │ │ │ │ ├── DefaultBuilder.java │ │ │ │ │ │ ├── ExpressionBuilder.java │ │ │ │ │ │ ├── FindProblemInformation.java │ │ │ │ │ │ ├── FunctionPredicateBuilder.java │ │ │ │ │ │ ├── IncludeFinder.java │ │ │ │ │ │ ├── ProblemFinder.java │ │ │ │ │ │ └── TacletPBuilder.java │ │ │ │ │ └── varexp │ │ │ │ │ │ ├── AbstractConditionBuilder.java │ │ │ │ │ │ ├── AbstractTacletBuilderCommand.java │ │ │ │ │ │ ├── ArgumentType.java │ │ │ │ │ │ ├── ConditionBuilder.java │ │ │ │ │ │ ├── ConstructorBasedBuilder.java │ │ │ │ │ │ ├── TacletBuilderCommand.java │ │ │ │ │ │ └── TacletBuilderManipulators.java │ │ │ │ │ ├── parser │ │ │ │ │ ├── DefaultTermParser.java │ │ │ │ │ ├── IdDeclaration.java │ │ │ │ │ ├── Location.java │ │ │ │ │ ├── NotDeclException.java │ │ │ │ │ ├── ParserConfig.java │ │ │ │ │ ├── ParserException.java │ │ │ │ │ ├── ParserUtil.java │ │ │ │ │ ├── SchemaVariableModifierSet.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── pp │ │ │ │ │ ├── AbbrevException.java │ │ │ │ │ ├── AbbrevMap.java │ │ │ │ │ ├── CharListNotation.java │ │ │ │ │ ├── FieldPrinter.java │ │ │ │ │ ├── FinalPrinter.java │ │ │ │ │ ├── HideSequentPrintFilter.java │ │ │ │ │ ├── IdentitySequentPrintFilter.java │ │ │ │ │ ├── IllegalRegexException.java │ │ │ │ │ ├── InitialPositionTable.java │ │ │ │ │ ├── LogicPrinter.java │ │ │ │ │ ├── ModalityPositionTable.java │ │ │ │ │ ├── Notation.java │ │ │ │ │ ├── NotationInfo.java │ │ │ │ │ ├── PosInSequent.java │ │ │ │ │ ├── PosTableLayouter.java │ │ │ │ │ ├── PositionTable.java │ │ │ │ │ ├── PrettyPrinter.java │ │ │ │ │ ├── Range.java │ │ │ │ │ ├── RegroupSequentPrintFilter.java │ │ │ │ │ ├── SearchSequentPrintFilter.java │ │ │ │ │ ├── SelectPrinter.java │ │ │ │ │ ├── SequentPrintFilter.java │ │ │ │ │ ├── SequentPrintFilterEntry.java │ │ │ │ │ ├── SequentViewLogicPrinter.java │ │ │ │ │ ├── ShowSelectedSequentPrintFilter.java │ │ │ │ │ ├── StorePrinter.java │ │ │ │ │ ├── VisibleTermLabels.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── proof │ │ │ │ │ ├── BranchLocation.java │ │ │ │ │ ├── BuiltInRuleAppIndex.java │ │ │ │ │ ├── BuiltInRuleIndex.java │ │ │ │ │ ├── CompoundProof.java │ │ │ │ │ ├── Counter.java │ │ │ │ │ ├── Goal.java │ │ │ │ │ ├── GoalListener.java │ │ │ │ │ ├── ITacletIndex.java │ │ │ │ │ ├── ITermTacletAppIndexCache.java │ │ │ │ │ ├── IfMismatchException.java │ │ │ │ │ ├── InstantiationProposer.java │ │ │ │ │ ├── InstantiationProposerCollection.java │ │ │ │ │ ├── JavaModel.java │ │ │ │ │ ├── MissingInstantiationException.java │ │ │ │ │ ├── MissingSortException.java │ │ │ │ │ ├── ModelChangeListener.java │ │ │ │ │ ├── ModelEvent.java │ │ │ │ │ ├── MultiThreadedTacletIndex.java │ │ │ │ │ ├── NameRecorder.java │ │ │ │ │ ├── Node.java │ │ │ │ │ ├── NodeInfo.java │ │ │ │ │ ├── NodeIterator.java │ │ │ │ │ ├── NullNewRuleListener.java │ │ │ │ │ ├── OpReplacer.java │ │ │ │ │ ├── PrefixTermTacletAppIndexCache.java │ │ │ │ │ ├── PrefixTermTacletAppIndexCacheImpl.java │ │ │ │ │ ├── ProgVarReplacer.java │ │ │ │ │ ├── Proof.java │ │ │ │ │ ├── ProofAggregate.java │ │ │ │ │ ├── ProofEvent.java │ │ │ │ │ ├── ProofJavaSourceCollection.java │ │ │ │ │ ├── ProofPruner.java │ │ │ │ │ ├── ProofTreeAdapter.java │ │ │ │ │ ├── ProofTreeEvent.java │ │ │ │ │ ├── ProofTreeListener.java │ │ │ │ │ ├── ProofVisitor.java │ │ │ │ │ ├── ReplacementMap.java │ │ │ │ │ ├── RuleAppIndex.java │ │ │ │ │ ├── RuleAppListener.java │ │ │ │ │ ├── SVInstantiationException.java │ │ │ │ │ ├── SVInstantiationExceptionWithPosition.java │ │ │ │ │ ├── SVInstantiationParserException.java │ │ │ │ │ ├── SVRigidnessException.java │ │ │ │ │ ├── SemisequentTacletAppIndex.java │ │ │ │ │ ├── SingleProof.java │ │ │ │ │ ├── SingleThreadedTacletIndex.java │ │ │ │ │ ├── SortMismatchException.java │ │ │ │ │ ├── Statistics.java │ │ │ │ │ ├── StrategyInfoUndoMethod.java │ │ │ │ │ ├── SubtreeIterator.java │ │ │ │ │ ├── TacletAppIndex.java │ │ │ │ │ ├── TacletIndex.java │ │ │ │ │ ├── TacletIndexKit.java │ │ │ │ │ ├── TermProgramVariableCollector.java │ │ │ │ │ ├── TermTacletAppIndex.java │ │ │ │ │ ├── TermTacletAppIndexCacheSet.java │ │ │ │ │ ├── VariableNameProposer.java │ │ │ │ │ ├── calculus │ │ │ │ │ │ ├── JavaDLSequentKit.java │ │ │ │ │ │ ├── Semisequent.java │ │ │ │ │ │ ├── Sequent.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── delayedcut │ │ │ │ │ │ ├── ApplicationCheck.java │ │ │ │ │ │ ├── DelayedCut.java │ │ │ │ │ │ ├── DelayedCutListener.java │ │ │ │ │ │ ├── DelayedCutProcessor.java │ │ │ │ │ │ └── NodeGoalPair.java │ │ │ │ │ ├── event │ │ │ │ │ │ ├── ProofDisposedEvent.java │ │ │ │ │ │ └── ProofDisposedListener.java │ │ │ │ │ ├── init │ │ │ │ │ │ ├── AbstractOperationPO.java │ │ │ │ │ │ ├── AbstractPO.java │ │ │ │ │ │ ├── AbstractProfile.java │ │ │ │ │ │ ├── ContractPO.java │ │ │ │ │ │ ├── DefaultProfileResolver.java │ │ │ │ │ │ ├── DependencyContractPO.java │ │ │ │ │ │ ├── FinalFieldCodeValidator.java │ │ │ │ │ │ ├── FinalFieldsPOExtension.java │ │ │ │ │ │ ├── FunctionalBlockContractPO.java │ │ │ │ │ │ ├── FunctionalLoopContractPO.java │ │ │ │ │ │ ├── FunctionalOperationContractPO.java │ │ │ │ │ │ ├── IPersistablePO.java │ │ │ │ │ │ ├── Includes.java │ │ │ │ │ │ ├── InitConfig.java │ │ │ │ │ │ ├── JavaProfile.java │ │ │ │ │ │ ├── JavaProfileDefaultProfileResolver.java │ │ │ │ │ │ ├── JavaProfileWithPermissionsDefaultProfileResolver.java │ │ │ │ │ │ ├── KeYUserProblemFile.java │ │ │ │ │ │ ├── POExtension.java │ │ │ │ │ │ ├── ProblemInitializer.java │ │ │ │ │ │ ├── Profile.java │ │ │ │ │ │ ├── ProofInitServiceUtil.java │ │ │ │ │ │ ├── ProofInputException.java │ │ │ │ │ │ ├── ProofOblInput.java │ │ │ │ │ │ ├── ProofObligationVars.java │ │ │ │ │ │ ├── RuleCollection.java │ │ │ │ │ │ ├── WellDefinednessPO.java │ │ │ │ │ │ ├── WellDefinednessPOLoader.java │ │ │ │ │ │ ├── loader │ │ │ │ │ │ │ ├── DependencyContractPOLoader.java │ │ │ │ │ │ │ ├── FunctionOperationContractPOLoader.java │ │ │ │ │ │ │ ├── FunctionalBlockContractPOLoader.java │ │ │ │ │ │ │ ├── FunctionalLoopContractPOLoader.java │ │ │ │ │ │ │ └── ProofObligationLoader.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── io │ │ │ │ │ │ ├── AbstractEnvInput.java │ │ │ │ │ │ ├── AbstractProblemLoader.java │ │ │ │ │ │ ├── AutoSaver.java │ │ │ │ │ │ ├── CountingBufferedReader.java │ │ │ │ │ │ ├── EnvInput.java │ │ │ │ │ │ ├── FileRuleSource.java │ │ │ │ │ │ ├── GZipFileRuleSource.java │ │ │ │ │ │ ├── GZipProofSaver.java │ │ │ │ │ │ ├── IProofFileParser.java │ │ │ │ │ │ ├── IntermediatePresentationProofFileParser.java │ │ │ │ │ │ ├── IntermediateProofReplayer.java │ │ │ │ │ │ ├── KeYFile.java │ │ │ │ │ │ ├── LDTInput.java │ │ │ │ │ │ ├── OutputStreamProofSaver.java │ │ │ │ │ │ ├── ProblemLoaderControl.java │ │ │ │ │ │ ├── ProblemLoaderException.java │ │ │ │ │ │ ├── ProofBundleSaver.java │ │ │ │ │ │ ├── ProofSaver.java │ │ │ │ │ │ ├── RuleSource.java │ │ │ │ │ │ ├── RuleSourceFactory.java │ │ │ │ │ │ ├── SingleThreadProblemLoader.java │ │ │ │ │ │ ├── UrlRuleSource.java │ │ │ │ │ │ ├── consistency │ │ │ │ │ │ │ ├── AbstractFileRepo.java │ │ │ │ │ │ │ ├── DiskFileRepo.java │ │ │ │ │ │ │ ├── FileRepo.java │ │ │ │ │ │ │ ├── MemoryFileRepo.java │ │ │ │ │ │ │ ├── SimpleFileRepo.java │ │ │ │ │ │ │ └── TrivialFileRepo.java │ │ │ │ │ │ ├── event │ │ │ │ │ │ │ ├── ProofSaverEvent.java │ │ │ │ │ │ │ └── ProofSaverListener.java │ │ │ │ │ │ ├── intermediate │ │ │ │ │ │ │ ├── AppIntermediate.java │ │ │ │ │ │ │ ├── AppNodeIntermediate.java │ │ │ │ │ │ │ ├── BranchNodeIntermediate.java │ │ │ │ │ │ │ ├── BuiltInAppIntermediate.java │ │ │ │ │ │ │ ├── MergeAppIntermediate.java │ │ │ │ │ │ │ ├── MergePartnerAppIntermediate.java │ │ │ │ │ │ │ ├── NodeIntermediate.java │ │ │ │ │ │ │ ├── SMTAppIntermediate.java │ │ │ │ │ │ │ └── TacletAppIntermediate.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── join │ │ │ │ │ │ ├── JoinIsApplicable.java │ │ │ │ │ │ ├── JoinProcessor.java │ │ │ │ │ │ ├── LateApplicationCheck.java │ │ │ │ │ │ ├── PredicateEstimator.java │ │ │ │ │ │ └── ProspectivePartner.java │ │ │ │ │ ├── mgt │ │ │ │ │ │ ├── AxiomJustification.java │ │ │ │ │ │ ├── ComplexRuleJustification.java │ │ │ │ │ │ ├── ComplexRuleJustificationBySpec.java │ │ │ │ │ │ ├── LemmaJustification.java │ │ │ │ │ │ ├── ProofCorrectnessMgt.java │ │ │ │ │ │ ├── ProofEnvironment.java │ │ │ │ │ │ ├── ProofEnvironmentEvent.java │ │ │ │ │ │ ├── ProofEnvironmentListener.java │ │ │ │ │ │ ├── ProofStatus.java │ │ │ │ │ │ ├── RuleJustification.java │ │ │ │ │ │ ├── RuleJustificationByAddRules.java │ │ │ │ │ │ ├── RuleJustificationBySpec.java │ │ │ │ │ │ ├── RuleJustificationInfo.java │ │ │ │ │ │ ├── SpecificationRepository.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── proofevent │ │ │ │ │ │ ├── NodeChange.java │ │ │ │ │ │ ├── NodeChangeARFormula.java │ │ │ │ │ │ ├── NodeChangeAddFormula.java │ │ │ │ │ │ ├── NodeChangeJournal.java │ │ │ │ │ │ ├── NodeChangeRemoveFormula.java │ │ │ │ │ │ ├── NodeChangesHolder.java │ │ │ │ │ │ ├── NodeRedundantAddChange.java │ │ │ │ │ │ ├── NodeReplacement.java │ │ │ │ │ │ └── RuleAppInfo.java │ │ │ │ │ ├── reference │ │ │ │ │ │ ├── ClosedBy.java │ │ │ │ │ │ └── CopyReferenceResolver.java │ │ │ │ │ └── replay │ │ │ │ │ │ ├── AbstractProofReplayer.java │ │ │ │ │ │ └── CopyingProofReplayer.java │ │ │ │ │ ├── prover │ │ │ │ │ └── impl │ │ │ │ │ │ ├── ApplyStrategy.java │ │ │ │ │ │ ├── DefaultGoalChooser.java │ │ │ │ │ │ ├── DefaultGoalChooserFactory.java │ │ │ │ │ │ ├── DefaultTaskFinishedInfo.java │ │ │ │ │ │ ├── DefaultTaskStartedInfo.java │ │ │ │ │ │ ├── DepthFirstGoalChooser.java │ │ │ │ │ │ ├── DepthFirstGoalChooserFactory.java │ │ │ │ │ │ └── PerfScope.java │ │ │ │ │ ├── rule │ │ │ │ │ ├── AbstractAuxiliaryContractBuiltInRuleApp.java │ │ │ │ │ ├── AbstractAuxiliaryContractRule.java │ │ │ │ │ ├── AbstractBlockContractBuiltInRuleApp.java │ │ │ │ │ ├── AbstractBlockContractRule.java │ │ │ │ │ ├── AbstractBuiltInRuleApp.java │ │ │ │ │ ├── AbstractContractRuleApp.java │ │ │ │ │ ├── AbstractExternalSolverRuleApp.java │ │ │ │ │ ├── AbstractLoopContractBuiltInRuleApp.java │ │ │ │ │ ├── AbstractLoopContractRule.java │ │ │ │ │ ├── AbstractLoopInvariantRule.java │ │ │ │ │ ├── AbstractProgramElement.java │ │ │ │ │ ├── AntecTaclet.java │ │ │ │ │ ├── AuxiliaryContractBuilders.java │ │ │ │ │ ├── BlockContractExternalBuiltInRuleApp.java │ │ │ │ │ ├── BlockContractExternalRule.java │ │ │ │ │ ├── BlockContractInternalBuiltInRuleApp.java │ │ │ │ │ ├── BlockContractInternalRule.java │ │ │ │ │ ├── BoundUniquenessChecker.java │ │ │ │ │ ├── BuiltInRule.java │ │ │ │ │ ├── ContractRuleApp.java │ │ │ │ │ ├── DefaultBuiltInRuleApp.java │ │ │ │ │ ├── EqualityModuloProofIrrelevancy.java │ │ │ │ │ ├── FindTaclet.java │ │ │ │ │ ├── IBuiltInRuleApp.java │ │ │ │ │ ├── IfMatchResult.java │ │ │ │ │ ├── JmlAssertBuiltInRuleApp.java │ │ │ │ │ ├── JmlAssertRule.java │ │ │ │ │ ├── LightweightSyntacticalReplaceVisitor.java │ │ │ │ │ ├── LoopApplyHeadBuiltInRuleApp.java │ │ │ │ │ ├── LoopApplyHeadRule.java │ │ │ │ │ ├── LoopContractExternalBuiltInRuleApp.java │ │ │ │ │ ├── LoopContractExternalRule.java │ │ │ │ │ ├── LoopContractInternalBuiltInRuleApp.java │ │ │ │ │ ├── LoopContractInternalRule.java │ │ │ │ │ ├── LoopInvariantBuiltInRuleApp.java │ │ │ │ │ ├── LoopScopeInvariantRule.java │ │ │ │ │ ├── MatchConditions.java │ │ │ │ │ ├── NewVarcond.java │ │ │ │ │ ├── NoFindTaclet.java │ │ │ │ │ ├── NoPosTacletApp.java │ │ │ │ │ ├── ObserverToUpdateRule.java │ │ │ │ │ ├── OneStepSimplifier.java │ │ │ │ │ ├── OneStepSimplifierRuleApp.java │ │ │ │ │ ├── PosTacletApp.java │ │ │ │ │ ├── QueryExpand.java │ │ │ │ │ ├── RewriteTaclet.java │ │ │ │ │ ├── Rule.java │ │ │ │ │ ├── RuleAppUtil.java │ │ │ │ │ ├── RuleKey.java │ │ │ │ │ ├── SVNameCorrespondenceCollector.java │ │ │ │ │ ├── SetStatementBuiltInRuleApp.java │ │ │ │ │ ├── SetStatementRule.java │ │ │ │ │ ├── SuccTaclet.java │ │ │ │ │ ├── SyntacticalReplaceVisitor.java │ │ │ │ │ ├── Taclet.java │ │ │ │ │ ├── TacletApp.java │ │ │ │ │ ├── TacletPrefix.java │ │ │ │ │ ├── TacletSchemaVariableCollector.java │ │ │ │ │ ├── TacletVariableSVCollector.java │ │ │ │ │ ├── UninstantiatedNoPosTacletApp.java │ │ │ │ │ ├── UseDependencyContractApp.java │ │ │ │ │ ├── UseDependencyContractRule.java │ │ │ │ │ ├── UseOperationContractRule.java │ │ │ │ │ ├── VariableConditionAdapter.java │ │ │ │ │ ├── WhileInvariantRule.java │ │ │ │ │ ├── conditions │ │ │ │ │ │ ├── AbstractOrInterfaceType.java │ │ │ │ │ │ ├── AlternativeVariableCondition.java │ │ │ │ │ │ ├── ApplyUpdateOnRigidCondition.java │ │ │ │ │ │ ├── ArrayComponentTypeCondition.java │ │ │ │ │ │ ├── ArrayLengthCondition.java │ │ │ │ │ │ ├── ArrayTypeCondition.java │ │ │ │ │ │ ├── ConstantCondition.java │ │ │ │ │ │ ├── ContainsAssignmentCondition.java │ │ │ │ │ │ ├── DifferentFields.java │ │ │ │ │ │ ├── DifferentInstantiationCondition.java │ │ │ │ │ │ ├── DropEffectlessElementariesCondition.java │ │ │ │ │ │ ├── DropEffectlessStoresCondition.java │ │ │ │ │ │ ├── EnumConstantCondition.java │ │ │ │ │ │ ├── EnumTypeCondition.java │ │ │ │ │ │ ├── EqualUniqueCondition.java │ │ │ │ │ │ ├── FieldTypeToSortCondition.java │ │ │ │ │ │ ├── FinalReferenceCondition.java │ │ │ │ │ │ ├── FinalTypeVarCond.java │ │ │ │ │ │ ├── FreeLabelInVariableCondition.java │ │ │ │ │ │ ├── HasLoopInvariantCondition.java │ │ │ │ │ │ ├── InStrictFp.java │ │ │ │ │ │ ├── IsLabeledCondition.java │ │ │ │ │ │ ├── IsThisReference.java │ │ │ │ │ │ ├── JavaTypeToSortCondition.java │ │ │ │ │ │ ├── LocalVariableCondition.java │ │ │ │ │ │ ├── LoopFreeInvariantCondition.java │ │ │ │ │ │ ├── LoopInvariantCondition.java │ │ │ │ │ │ ├── LoopVariantCondition.java │ │ │ │ │ │ ├── MayExpandMethodCondition.java │ │ │ │ │ │ ├── MetaDisjointCondition.java │ │ │ │ │ │ ├── ModelFieldCondition.java │ │ │ │ │ │ ├── NewJumpLabelCondition.java │ │ │ │ │ │ ├── NewLocalVarsCondition.java │ │ │ │ │ │ ├── ObserverCondition.java │ │ │ │ │ │ ├── SameObserverCondition.java │ │ │ │ │ │ ├── SimplifyIfThenElseUpdateCondition.java │ │ │ │ │ │ ├── StaticFieldCondition.java │ │ │ │ │ │ ├── StaticMethodCondition.java │ │ │ │ │ │ ├── StaticReferenceCondition.java │ │ │ │ │ │ ├── StoreStmtInCondition.java │ │ │ │ │ │ ├── StoreTermInCondition.java │ │ │ │ │ │ ├── SubFormulaCondition.java │ │ │ │ │ │ ├── TermLabelCondition.java │ │ │ │ │ │ ├── TypeComparisonCondition.java │ │ │ │ │ │ ├── TypeCondition.java │ │ │ │ │ │ └── TypeResolver.java │ │ │ │ │ ├── executor │ │ │ │ │ │ ├── RuleExecutor.java │ │ │ │ │ │ └── javadl │ │ │ │ │ │ │ ├── AntecTacletExecutor.java │ │ │ │ │ │ │ ├── FindTacletExecutor.java │ │ │ │ │ │ │ ├── NoFindTacletExecutor.java │ │ │ │ │ │ │ ├── RewriteTacletExecutor.java │ │ │ │ │ │ │ ├── SuccTacletExecutor.java │ │ │ │ │ │ │ └── TacletExecutor.java │ │ │ │ │ ├── inst │ │ │ │ │ │ ├── ContextStatementBlockInstantiation.java │ │ │ │ │ │ ├── GenericSortCondition.java │ │ │ │ │ │ ├── GenericSortException.java │ │ │ │ │ │ ├── GenericSortInstantiations.java │ │ │ │ │ │ ├── RigidnessException.java │ │ │ │ │ │ ├── SVInstantiations.java │ │ │ │ │ │ ├── SortException.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── label │ │ │ │ │ │ ├── ChildTermLabelPolicy.java │ │ │ │ │ │ ├── OriginTermLabelPolicy.java │ │ │ │ │ │ ├── OriginTermLabelRefactoring.java │ │ │ │ │ │ ├── PerpetualTermLabelPolicy.java │ │ │ │ │ │ ├── RuleSpecificTask.java │ │ │ │ │ │ ├── StayOnOperatorTermLabelPolicy.java │ │ │ │ │ │ ├── TermLabelMerger.java │ │ │ │ │ │ ├── TermLabelPolicy.java │ │ │ │ │ │ ├── TermLabelRefactoring.java │ │ │ │ │ │ └── TermLabelUpdate.java │ │ │ │ │ ├── match │ │ │ │ │ │ ├── TacletMatcherKit.java │ │ │ │ │ │ └── vm │ │ │ │ │ │ │ ├── SyntaxElementMatchProgramGenerator.java │ │ │ │ │ │ │ ├── VMTacletMatcher.java │ │ │ │ │ │ │ └── instructions │ │ │ │ │ │ │ ├── BindVariablesInstruction.java │ │ │ │ │ │ │ ├── JavaDLMatchVMInstructionSet.java │ │ │ │ │ │ │ ├── MatchGenericSortInstruction.java │ │ │ │ │ │ │ ├── MatchModalOperatorSVInstruction.java │ │ │ │ │ │ │ ├── MatchNonVariableSVInstruction.java │ │ │ │ │ │ │ ├── MatchProgramInstruction.java │ │ │ │ │ │ │ ├── MatchProgramSVInstruction.java │ │ │ │ │ │ │ ├── MatchSchemaVariableInstruction.java │ │ │ │ │ │ │ ├── MatchTermLabelInstruction.java │ │ │ │ │ │ │ ├── MatchVariableSVInstruction.java │ │ │ │ │ │ │ ├── SimilarSortDependingFunctionInstruction.java │ │ │ │ │ │ │ └── UnbindVariablesInstruction.java │ │ │ │ │ ├── merge │ │ │ │ │ │ ├── CloseAfterMerge.java │ │ │ │ │ │ ├── CloseAfterMergeRuleBuiltInRuleApp.java │ │ │ │ │ │ ├── MergePartner.java │ │ │ │ │ │ ├── MergeProcedure.java │ │ │ │ │ │ ├── MergeRule.java │ │ │ │ │ │ ├── MergeRuleBuiltInRuleApp.java │ │ │ │ │ │ └── procedures │ │ │ │ │ │ │ ├── MergeByIfThenElse.java │ │ │ │ │ │ │ ├── MergeIfThenElseAntecedent.java │ │ │ │ │ │ │ ├── MergeTotalWeakening.java │ │ │ │ │ │ │ ├── MergeWithLatticeAbstraction.java │ │ │ │ │ │ │ ├── MergeWithPredicateAbstraction.java │ │ │ │ │ │ │ ├── MergeWithPredicateAbstractionFactory.java │ │ │ │ │ │ │ ├── ParametricMergeProcedure.java │ │ │ │ │ │ │ └── UnparametricMergeProcedure.java │ │ │ │ │ ├── metaconstruct │ │ │ │ │ │ ├── AddCast.java │ │ │ │ │ │ ├── ArrayBaseInstanceOf.java │ │ │ │ │ │ ├── ArrayLength.java │ │ │ │ │ │ ├── ArrayPostDecl.java │ │ │ │ │ │ ├── BreakToBeReplaced.java │ │ │ │ │ │ ├── ConstantValue.java │ │ │ │ │ │ ├── ConstructorCall.java │ │ │ │ │ │ ├── CreateBeforeLoopUpdate.java │ │ │ │ │ │ ├── CreateFrameCond.java │ │ │ │ │ │ ├── CreateHeapAnonUpdate.java │ │ │ │ │ │ ├── CreateLocalAnonUpdate.java │ │ │ │ │ │ ├── CreateObject.java │ │ │ │ │ │ ├── CreateWellformedCond.java │ │ │ │ │ │ ├── DoBreak.java │ │ │ │ │ │ ├── EnhancedForElimination.java │ │ │ │ │ │ ├── EnumConstantValue.java │ │ │ │ │ │ ├── EvaluateArgs.java │ │ │ │ │ │ ├── ExpandMethodBody.java │ │ │ │ │ │ ├── ExpandQueriesMetaConstruct.java │ │ │ │ │ │ ├── ForInitUnfoldTransformer.java │ │ │ │ │ │ ├── ForToWhile.java │ │ │ │ │ │ ├── ForToWhileTransformation.java │ │ │ │ │ │ ├── InitArray.java │ │ │ │ │ │ ├── InitArrayCreation.java │ │ │ │ │ │ ├── IntroAtPreDefsOp.java │ │ │ │ │ │ ├── IsStatic.java │ │ │ │ │ │ ├── MemberPVToField.java │ │ │ │ │ │ ├── MethodCall.java │ │ │ │ │ │ ├── MultipleVarDecl.java │ │ │ │ │ │ ├── ObserverEqualityMetaConstruct.java │ │ │ │ │ │ ├── PostWork.java │ │ │ │ │ │ ├── ProgramTransformer.java │ │ │ │ │ │ ├── ReattachLoopInvariant.java │ │ │ │ │ │ ├── ReplaceWhileLoop.java │ │ │ │ │ │ ├── SpecialConstructorCall.java │ │ │ │ │ │ ├── StaticInitialisation.java │ │ │ │ │ │ ├── SwitchToIf.java │ │ │ │ │ │ ├── TypeOf.java │ │ │ │ │ │ ├── Unpack.java │ │ │ │ │ │ ├── UnwindLoop.java │ │ │ │ │ │ ├── WhileInvariantTransformation.java │ │ │ │ │ │ ├── WhileInvariantTransformer.java │ │ │ │ │ │ ├── WhileLoopTransformation.java │ │ │ │ │ │ ├── arith │ │ │ │ │ │ │ ├── DivideLCRMonomials.java │ │ │ │ │ │ │ ├── DivideMonomials.java │ │ │ │ │ │ │ ├── MetaAdd.java │ │ │ │ │ │ │ ├── MetaArithBitMaskOp.java │ │ │ │ │ │ │ ├── MetaBinaryAnd.java │ │ │ │ │ │ │ ├── MetaBinaryOr.java │ │ │ │ │ │ │ ├── MetaBinaryXOr.java │ │ │ │ │ │ │ ├── MetaDiv.java │ │ │ │ │ │ │ ├── MetaEqual.java │ │ │ │ │ │ │ ├── MetaGeq.java │ │ │ │ │ │ │ ├── MetaGreater.java │ │ │ │ │ │ │ ├── MetaLeq.java │ │ │ │ │ │ │ ├── MetaLess.java │ │ │ │ │ │ │ ├── MetaMul.java │ │ │ │ │ │ │ ├── MetaPow.java │ │ │ │ │ │ │ ├── MetaShift.java │ │ │ │ │ │ │ ├── MetaShiftLeft.java │ │ │ │ │ │ │ ├── MetaShiftRight.java │ │ │ │ │ │ │ ├── MetaSub.java │ │ │ │ │ │ │ ├── Monomial.java │ │ │ │ │ │ │ ├── Polynomial.java │ │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── tacletbuilder │ │ │ │ │ │ ├── AntecSuccTacletGoalTemplate.java │ │ │ │ │ │ ├── AntecTacletBuilder.java │ │ │ │ │ │ ├── FindTacletBuilder.java │ │ │ │ │ │ ├── NoFindTacletBuilder.java │ │ │ │ │ │ ├── RewriteTacletBuilder.java │ │ │ │ │ │ ├── RewriteTacletBuilderSchemaVarCollector.java │ │ │ │ │ │ ├── RewriteTacletGoalTemplate.java │ │ │ │ │ │ ├── SuccTacletBuilder.java │ │ │ │ │ │ ├── TacletBuilder.java │ │ │ │ │ │ ├── TacletGenerator.java │ │ │ │ │ │ ├── TacletGoalTemplate.java │ │ │ │ │ │ └── TacletPrefixBuilder.java │ │ │ │ │ ├── scripts │ │ │ │ │ ├── AbstractCommand.java │ │ │ │ │ ├── ActivateCommand.java │ │ │ │ │ ├── AllCommand.java │ │ │ │ │ ├── AssertCommand.java │ │ │ │ │ ├── AssumeCommand.java │ │ │ │ │ ├── AutoCommand.java │ │ │ │ │ ├── AxiomCommand.java │ │ │ │ │ ├── CutCommand.java │ │ │ │ │ ├── EchoCommand.java │ │ │ │ │ ├── EngineState.java │ │ │ │ │ ├── ExitCommand.java │ │ │ │ │ ├── ExprEvaluator.java │ │ │ │ │ ├── FocusCommand.java │ │ │ │ │ ├── HideCommand.java │ │ │ │ │ ├── InstantiateCommand.java │ │ │ │ │ ├── JavascriptCommand.java │ │ │ │ │ ├── LeaveCommand.java │ │ │ │ │ ├── LetCommand.java │ │ │ │ │ ├── MacroCommand.java │ │ │ │ │ ├── NoArgumentCommand.java │ │ │ │ │ ├── ProofAlreadyClosedException.java │ │ │ │ │ ├── ProofScriptCommand.java │ │ │ │ │ ├── ProofScriptEngine.java │ │ │ │ │ ├── RewriteCommand.java │ │ │ │ │ ├── RuleCommand.java │ │ │ │ │ ├── SMTCommand.java │ │ │ │ │ ├── SaveInstCommand.java │ │ │ │ │ ├── SaveNewNameCommand.java │ │ │ │ │ ├── SchemaVarCommand.java │ │ │ │ │ ├── ScriptBlock.java │ │ │ │ │ ├── ScriptCommand.java │ │ │ │ │ ├── ScriptCommandAst.java │ │ │ │ │ ├── ScriptException.java │ │ │ │ │ ├── ScriptLineParser.java │ │ │ │ │ ├── ScriptNode.java │ │ │ │ │ ├── ScriptTreeParser.java │ │ │ │ │ ├── SelectCommand.java │ │ │ │ │ ├── SetCommand.java │ │ │ │ │ ├── SetEchoCommand.java │ │ │ │ │ ├── SetFailOnClosedCommand.java │ │ │ │ │ ├── SkipCommand.java │ │ │ │ │ ├── TryCloseCommand.java │ │ │ │ │ ├── UnhideCommand.java │ │ │ │ │ ├── meta │ │ │ │ │ │ ├── Argument.java │ │ │ │ │ │ ├── ArgumentRequiredException.java │ │ │ │ │ │ ├── ArgumentsLifter.java │ │ │ │ │ │ ├── ConversionException.java │ │ │ │ │ │ ├── Converter.java │ │ │ │ │ │ ├── Documentation.java │ │ │ │ │ │ ├── Flag.java │ │ │ │ │ │ ├── InjectionException.java │ │ │ │ │ │ ├── InjectionReflectionException.java │ │ │ │ │ │ ├── NoSpecifiedConverterException.java │ │ │ │ │ │ ├── Option.java │ │ │ │ │ │ ├── OptionalVarargs.java │ │ │ │ │ │ ├── PositionalVarargs.java │ │ │ │ │ │ ├── ProofScriptArgument.java │ │ │ │ │ │ ├── ValueInjector.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── settings │ │ │ │ │ ├── AbstractPropertiesSettings.java │ │ │ │ │ ├── AbstractSettings.java │ │ │ │ │ ├── ChoiceSettings.java │ │ │ │ │ ├── Configuration.java │ │ │ │ │ ├── DefaultSMTSettings.java │ │ │ │ │ ├── FeatureSettings.java │ │ │ │ │ ├── GeneralSettings.java │ │ │ │ │ ├── LemmaGeneratorSettings.java │ │ │ │ │ ├── NewSMTTranslationSettings.java │ │ │ │ │ ├── PathConfig.java │ │ │ │ │ ├── ProofDependentSMTSettings.java │ │ │ │ │ ├── ProofIndependentSMTSettings.java │ │ │ │ │ ├── ProofIndependentSettings.java │ │ │ │ │ ├── ProofSettings.java │ │ │ │ │ ├── Settings.java │ │ │ │ │ ├── SettingsConverter.java │ │ │ │ │ ├── StrategySettings.java │ │ │ │ │ ├── TermLabelSettings.java │ │ │ │ │ └── ViewSettings.java │ │ │ │ │ ├── smt │ │ │ │ │ ├── AbstractSMTTranslator.java │ │ │ │ │ ├── ContextualBlock.java │ │ │ │ │ ├── IllegalFormulaException.java │ │ │ │ │ ├── IllegalNumberException.java │ │ │ │ │ ├── IllegalResultException.java │ │ │ │ │ ├── ModelExtractor.java │ │ │ │ │ ├── NumberTranslation.java │ │ │ │ │ ├── OverflowChecker.java │ │ │ │ │ ├── ProblemTypeInformation.java │ │ │ │ │ ├── SMTBeautifier.java │ │ │ │ │ ├── SMTFocusResults.java │ │ │ │ │ ├── SMTObjTranslator.java │ │ │ │ │ ├── SMTProblem.java │ │ │ │ │ ├── SMTRuleApp.java │ │ │ │ │ ├── SMTSettings.java │ │ │ │ │ ├── SMTSolver.java │ │ │ │ │ ├── SMTSolverImplementation.java │ │ │ │ │ ├── SMTSolverResult.java │ │ │ │ │ ├── SMTTranslationException.java │ │ │ │ │ ├── SMTTranslator.java │ │ │ │ │ ├── SmtLib2Translator.java │ │ │ │ │ ├── SolverException.java │ │ │ │ │ ├── SolverLauncher.java │ │ │ │ │ ├── SolverLauncherListener.java │ │ │ │ │ ├── SolverListener.java │ │ │ │ │ ├── SolverTimeout.java │ │ │ │ │ ├── SolverTypeCollection.java │ │ │ │ │ ├── SortHierarchy.java │ │ │ │ │ ├── VersionChecker.java │ │ │ │ │ ├── communication │ │ │ │ │ │ ├── AbstractSolverSocket.java │ │ │ │ │ │ ├── BufferedMessageReader.java │ │ │ │ │ │ ├── CVC4Socket.java │ │ │ │ │ │ ├── Cvc5Socket.java │ │ │ │ │ │ ├── ExternalProcessLauncher.java │ │ │ │ │ │ ├── LegacyPipe.java │ │ │ │ │ │ ├── Pipe.java │ │ │ │ │ │ ├── SimplePipe.java │ │ │ │ │ │ ├── SolverCommunication.java │ │ │ │ │ │ ├── TeeReader.java │ │ │ │ │ │ ├── TeeWriter.java │ │ │ │ │ │ ├── Z3CESocket.java │ │ │ │ │ │ ├── Z3Socket.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── hierarchy │ │ │ │ │ │ ├── SortNode.java │ │ │ │ │ │ └── TypeHierarchy.java │ │ │ │ │ ├── lang │ │ │ │ │ │ ├── SMTFile.java │ │ │ │ │ │ ├── SMTFunction.java │ │ │ │ │ │ ├── SMTFunctionDef.java │ │ │ │ │ │ ├── SMTSort.java │ │ │ │ │ │ ├── SMTTerm.java │ │ │ │ │ │ ├── SMTTermBinOp.java │ │ │ │ │ │ ├── SMTTermCall.java │ │ │ │ │ │ ├── SMTTermITE.java │ │ │ │ │ │ ├── SMTTermMultOp.java │ │ │ │ │ │ ├── SMTTermNumber.java │ │ │ │ │ │ ├── SMTTermQuant.java │ │ │ │ │ │ ├── SMTTermUnaryOp.java │ │ │ │ │ │ ├── SMTTermVariable.java │ │ │ │ │ │ ├── SMTTerms.java │ │ │ │ │ │ └── Util.java │ │ │ │ │ ├── model │ │ │ │ │ │ ├── Heap.java │ │ │ │ │ │ ├── Location.java │ │ │ │ │ │ ├── LocationSet.java │ │ │ │ │ │ ├── Model.java │ │ │ │ │ │ ├── ObjectVal.java │ │ │ │ │ │ └── Sequence.java │ │ │ │ │ ├── newsmt2 │ │ │ │ │ │ ├── BooleanConnectiveHandler.java │ │ │ │ │ │ ├── CastHandler.java │ │ │ │ │ │ ├── CastingFunctionsHandler.java │ │ │ │ │ │ ├── DefinedSymbolsHandler.java │ │ │ │ │ │ ├── FieldConstantHandler.java │ │ │ │ │ │ ├── FloatHandler.java │ │ │ │ │ │ ├── FloatRemainderHandler.java │ │ │ │ │ │ ├── HandlerUtil.java │ │ │ │ │ │ ├── InstanceOfHandler.java │ │ │ │ │ │ ├── IntegerOpHandler.java │ │ │ │ │ │ ├── LogicalVariableHandler.java │ │ │ │ │ │ ├── MasterHandler.java │ │ │ │ │ │ ├── ModularSMTLib2Translator.java │ │ │ │ │ │ ├── NumberConstantsHandler.java │ │ │ │ │ │ ├── PatternHandler.java │ │ │ │ │ │ ├── PolymorphicHandler.java │ │ │ │ │ │ ├── QuantifierHandler.java │ │ │ │ │ │ ├── SExpr.java │ │ │ │ │ │ ├── SExprs.java │ │ │ │ │ │ ├── SMTFunctionsHandler.java │ │ │ │ │ │ ├── SMTHandler.java │ │ │ │ │ │ ├── SMTHandlerProperty.java │ │ │ │ │ │ ├── SMTHandlerPropertyVisitor.java │ │ │ │ │ │ ├── SMTHandlerServices.java │ │ │ │ │ │ ├── SMTTacletTranslator.java │ │ │ │ │ │ ├── SeqDefHandler.java │ │ │ │ │ │ ├── SumProdHandler.java │ │ │ │ │ │ ├── TypeManager.java │ │ │ │ │ │ ├── UninterpretedSymbolsHandler.java │ │ │ │ │ │ ├── UpdateHandler.java │ │ │ │ │ │ ├── VerbatimSMT.java │ │ │ │ │ │ └── Writable.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── solvertypes │ │ │ │ │ │ ├── SolverPropertiesLoader.java │ │ │ │ │ │ ├── SolverType.java │ │ │ │ │ │ ├── SolverTypeImplementation.java │ │ │ │ │ │ └── SolverTypes.java │ │ │ │ │ ├── speclang │ │ │ │ │ ├── AbstractAuxiliaryContractImpl.java │ │ │ │ │ ├── AuxiliaryContract.java │ │ │ │ │ ├── BlockContract.java │ │ │ │ │ ├── BlockContractImpl.java │ │ │ │ │ ├── BlockWellDefinedness.java │ │ │ │ │ ├── ClassAxiom.java │ │ │ │ │ ├── ClassAxiomImpl.java │ │ │ │ │ ├── ClassInvariant.java │ │ │ │ │ ├── ClassInvariantImpl.java │ │ │ │ │ ├── ClassWellDefinedness.java │ │ │ │ │ ├── Contract.java │ │ │ │ │ ├── ContractAxiom.java │ │ │ │ │ ├── ContractFactory.java │ │ │ │ │ ├── DependencyContract.java │ │ │ │ │ ├── DependencyContractImpl.java │ │ │ │ │ ├── FunctionalAuxiliaryContract.java │ │ │ │ │ ├── FunctionalBlockContract.java │ │ │ │ │ ├── FunctionalLoopContract.java │ │ │ │ │ ├── FunctionalOperationContract.java │ │ │ │ │ ├── FunctionalOperationContractImpl.java │ │ │ │ │ ├── HeapContext.java │ │ │ │ │ ├── InformationFlowContract.java │ │ │ │ │ ├── InformationFlowContractImpl.java │ │ │ │ │ ├── InitiallyClause.java │ │ │ │ │ ├── InitiallyClauseImpl.java │ │ │ │ │ ├── LoopContract.java │ │ │ │ │ ├── LoopContractImpl.java │ │ │ │ │ ├── LoopSpecImpl.java │ │ │ │ │ ├── LoopSpecification.java │ │ │ │ │ ├── LoopWellDefinedness.java │ │ │ │ │ ├── MergeContract.java │ │ │ │ │ ├── MethodWellDefinedness.java │ │ │ │ │ ├── ModelMethodExecution.java │ │ │ │ │ ├── OperationContract.java │ │ │ │ │ ├── PartialInvAxiom.java │ │ │ │ │ ├── PositionedLabeledString.java │ │ │ │ │ ├── PositionedString.java │ │ │ │ │ ├── PredicateAbstractionMergeContract.java │ │ │ │ │ ├── QueryAxiom.java │ │ │ │ │ ├── ReplacementMap.java │ │ │ │ │ ├── RepresentsAxiom.java │ │ │ │ │ ├── SLEnvInput.java │ │ │ │ │ ├── SpecExtractor.java │ │ │ │ │ ├── SpecificationElement.java │ │ │ │ │ ├── StatementWellDefinedness.java │ │ │ │ │ ├── TermReplacementMap.java │ │ │ │ │ ├── UnparameterizedMergeContract.java │ │ │ │ │ ├── VariableReplacementMap.java │ │ │ │ │ ├── WellDefinednessCheck.java │ │ │ │ │ ├── dl │ │ │ │ │ │ └── translation │ │ │ │ │ │ │ └── DLSpecFactory.java │ │ │ │ │ ├── jml │ │ │ │ │ │ ├── JMLInfoExtractor.java │ │ │ │ │ │ ├── JMLSpecExtractor.java │ │ │ │ │ │ ├── pretranslation │ │ │ │ │ │ │ ├── Behavior.java │ │ │ │ │ │ │ ├── JMLModifier.java │ │ │ │ │ │ │ ├── TextualJMLAssertStatement.java │ │ │ │ │ │ │ ├── TextualJMLClassAxiom.java │ │ │ │ │ │ │ ├── TextualJMLClassInv.java │ │ │ │ │ │ │ ├── TextualJMLConstruct.java │ │ │ │ │ │ │ ├── TextualJMLDepends.java │ │ │ │ │ │ │ ├── TextualJMLFieldDecl.java │ │ │ │ │ │ │ ├── TextualJMLInitially.java │ │ │ │ │ │ │ ├── TextualJMLLoopSpec.java │ │ │ │ │ │ │ ├── TextualJMLMergePointDecl.java │ │ │ │ │ │ │ ├── TextualJMLMethodDecl.java │ │ │ │ │ │ │ ├── TextualJMLRepresents.java │ │ │ │ │ │ │ ├── TextualJMLSetStatement.java │ │ │ │ │ │ │ └── TextualJMLSpecCase.java │ │ │ │ │ │ └── translation │ │ │ │ │ │ │ ├── Context.java │ │ │ │ │ │ │ ├── JMLBuiltInPropertyResolver.java │ │ │ │ │ │ │ ├── JMLResolverManager.java │ │ │ │ │ │ │ ├── JMLSpecFactory.java │ │ │ │ │ │ │ └── ProgramVariableCollection.java │ │ │ │ │ ├── njml │ │ │ │ │ │ ├── ContractClauses.java │ │ │ │ │ │ ├── DebugJmlLexer.java │ │ │ │ │ │ ├── DoubleHandler.java │ │ │ │ │ │ ├── FloatHandler.java │ │ │ │ │ │ ├── IntegerHandler.java │ │ │ │ │ │ ├── JmlCheck.java │ │ │ │ │ │ ├── JmlChecks.java │ │ │ │ │ │ ├── JmlFacade.java │ │ │ │ │ │ ├── JmlIO.java │ │ │ │ │ │ ├── JmlMarkerDecision.java │ │ │ │ │ │ ├── JmlTermFactory.java │ │ │ │ │ │ ├── LDTHandler.java │ │ │ │ │ │ ├── LabeledParserRuleContext.java │ │ │ │ │ │ ├── OverloadedOperatorHandler.java │ │ │ │ │ │ ├── PreParser.java │ │ │ │ │ │ ├── SpecMathMode.java │ │ │ │ │ │ ├── TextualTranslator.java │ │ │ │ │ │ ├── TranslatedDependencyContract.java │ │ │ │ │ │ ├── Translator.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── translation │ │ │ │ │ │ ├── JavaIntegerSemanticsHelper.java │ │ │ │ │ │ ├── SLAttributeResolver.java │ │ │ │ │ │ ├── SLExceptionFactory.java │ │ │ │ │ │ ├── SLExpression.java │ │ │ │ │ │ ├── SLExpressionResolver.java │ │ │ │ │ │ ├── SLMethodResolver.java │ │ │ │ │ │ ├── SLParameters.java │ │ │ │ │ │ ├── SLResolverManager.java │ │ │ │ │ │ ├── SLTranslationException.java │ │ │ │ │ │ ├── SLTypeResolver.java │ │ │ │ │ │ └── SLWarningException.java │ │ │ │ │ ├── strategy │ │ │ │ │ ├── AbstractFeatureStrategy.java │ │ │ │ │ ├── ArithTermFeatures.java │ │ │ │ │ ├── AssumesInstantiator.java │ │ │ │ │ ├── BuiltInRuleAppContainer.java │ │ │ │ │ ├── FIFOStrategy.java │ │ │ │ │ ├── FindTacletAppContainer.java │ │ │ │ │ ├── FocussedBreakpointRuleApplicationManager.java │ │ │ │ │ ├── FocussedRuleApplicationManager.java │ │ │ │ │ ├── FormulaTermFeatures.java │ │ │ │ │ ├── IfInstantiationCachePool.java │ │ │ │ │ ├── IntroducedSymbolBy.java │ │ │ │ │ ├── JavaCardDLStrategy.java │ │ │ │ │ ├── JavaCardDLStrategyFactory.java │ │ │ │ │ ├── NoFindTacletAppContainer.java │ │ │ │ │ ├── QueueRuleApplicationManager.java │ │ │ │ │ ├── RuleAppContainer.java │ │ │ │ │ ├── RuleAppCostCollector.java │ │ │ │ │ ├── SimpleFilteredStrategy.java │ │ │ │ │ ├── StaticFeatureCollection.java │ │ │ │ │ ├── Strategy.java │ │ │ │ │ ├── StrategyFactory.java │ │ │ │ │ ├── StrategyProperties.java │ │ │ │ │ ├── TacletAppContainer.java │ │ │ │ │ ├── ValueTermFeature.java │ │ │ │ │ ├── definition │ │ │ │ │ │ ├── AbstractStrategyPropertyDefinition.java │ │ │ │ │ │ ├── IDefaultStrategyPropertiesFactory.java │ │ │ │ │ │ ├── OneOfStrategyPropertyDefinition.java │ │ │ │ │ │ ├── StrategyPropertyValueDefinition.java │ │ │ │ │ │ └── StrategySettingsDefinition.java │ │ │ │ │ ├── feature │ │ │ │ │ │ ├── AbstractBetaFeature.java │ │ │ │ │ │ ├── AbstractMonomialSmallerThanFeature.java │ │ │ │ │ │ ├── AbstractNonDuplicateAppFeature.java │ │ │ │ │ │ ├── AgeFeature.java │ │ │ │ │ │ ├── AllowedCutPositionFeature.java │ │ │ │ │ │ ├── AppliedRuleAppsNameCache.java │ │ │ │ │ │ ├── AtomsSmallerThanFeature.java │ │ │ │ │ │ ├── BinaryTacletAppFeature.java │ │ │ │ │ │ ├── CheckApplyEqFeature.java │ │ │ │ │ │ ├── ComprehendedSumFeature.java │ │ │ │ │ │ ├── ContainsQuantifierFeature.java │ │ │ │ │ │ ├── ContainsTermFeature.java │ │ │ │ │ │ ├── CountBranchFeature.java │ │ │ │ │ │ ├── CountMaxDPathFeature.java │ │ │ │ │ │ ├── CountPosDPathFeature.java │ │ │ │ │ │ ├── DeleteMergePointRuleFeature.java │ │ │ │ │ │ ├── DependencyContractFeature.java │ │ │ │ │ │ ├── DiffFindAndIfFeature.java │ │ │ │ │ │ ├── DiffFindAndReplacewithFeature.java │ │ │ │ │ │ ├── EqNonDuplicateAppFeature.java │ │ │ │ │ │ ├── FindRightishFeature.java │ │ │ │ │ │ ├── FocusIsSubFormulaOfInfFlowContractAppFeature.java │ │ │ │ │ │ ├── FormulaAddedByRuleFeature.java │ │ │ │ │ │ ├── ImplicitCastNecessary.java │ │ │ │ │ │ ├── InEquationMultFeature.java │ │ │ │ │ │ ├── InfFlowContractAppFeature.java │ │ │ │ │ │ ├── InstantiatedSVFeature.java │ │ │ │ │ │ ├── LeftmostNegAtomFeature.java │ │ │ │ │ │ ├── MatchedAssumesFeature.java │ │ │ │ │ │ ├── MergeRuleFeature.java │ │ │ │ │ │ ├── MonomialsSmallerThanFeature.java │ │ │ │ │ │ ├── NoSelfApplicationFeature.java │ │ │ │ │ │ ├── NonDuplicateAppFeature.java │ │ │ │ │ │ ├── NonDuplicateAppModPositionFeature.java │ │ │ │ │ │ ├── NotInScopeOfModalityFeature.java │ │ │ │ │ │ ├── PolynomialValuesCmpFeature.java │ │ │ │ │ │ ├── PrintFeature.java │ │ │ │ │ │ ├── PurePosDPathFeature.java │ │ │ │ │ │ ├── QueryExpandCost.java │ │ │ │ │ │ ├── ReducibleMonomialsFeature.java │ │ │ │ │ │ ├── RuleSetDispatchFeature.java │ │ │ │ │ │ ├── SVNeedsInstantiation.java │ │ │ │ │ │ ├── SeqContainsExecutableCodeFeature.java │ │ │ │ │ │ ├── SetsSmallerThanFeature.java │ │ │ │ │ │ ├── SimplifyBetaCandidateFeature.java │ │ │ │ │ │ ├── SmallerThanFeature.java │ │ │ │ │ │ ├── TermSmallerThanFeature.java │ │ │ │ │ │ ├── ThrownExceptionFeature.java │ │ │ │ │ │ ├── TopLevelFindFeature.java │ │ │ │ │ │ ├── TriggerVarInstantiatedFeature.java │ │ │ │ │ │ ├── TrivialMonomialLCRFeature.java │ │ │ │ │ │ ├── findprefix │ │ │ │ │ │ │ ├── AntecChecker.java │ │ │ │ │ │ │ ├── AntecSuccPrefixChecker.java │ │ │ │ │ │ │ ├── Checker.java │ │ │ │ │ │ │ ├── FindPrefixRestrictionFeature.java │ │ │ │ │ │ │ ├── Modifier.java │ │ │ │ │ │ │ ├── RemoveParentUpdateModifier.java │ │ │ │ │ │ │ ├── SuccChecker.java │ │ │ │ │ │ │ └── TopLevelChecker.java │ │ │ │ │ │ └── instantiator │ │ │ │ │ │ │ ├── ForEachCP.java │ │ │ │ │ │ │ ├── OneOfCP.java │ │ │ │ │ │ │ └── SVInstantiationCP.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── quantifierHeuristics │ │ │ │ │ │ ├── BasicMatching.java │ │ │ │ │ │ ├── ClausesGraph.java │ │ │ │ │ │ ├── ClausesSmallerThanFeature.java │ │ │ │ │ │ ├── Constraint.java │ │ │ │ │ │ ├── ConstraintAwareSyntacticalReplaceVisitor.java │ │ │ │ │ │ ├── EliminableQuantifierTF.java │ │ │ │ │ │ ├── EqualityConstraint.java │ │ │ │ │ │ ├── ExistentiallyConnectedFormulasFeature.java │ │ │ │ │ │ ├── HandleArith.java │ │ │ │ │ │ ├── HeuristicInstantiation.java │ │ │ │ │ │ ├── Instantiation.java │ │ │ │ │ │ ├── InstantiationCost.java │ │ │ │ │ │ ├── InstantiationCostScalerFeature.java │ │ │ │ │ │ ├── LiteralsSmallerThanFeature.java │ │ │ │ │ │ ├── Matching.java │ │ │ │ │ │ ├── Metavariable.java │ │ │ │ │ │ ├── MultiTrigger.java │ │ │ │ │ │ ├── PredictCostProver.java │ │ │ │ │ │ ├── QuanEliminationAnalyser.java │ │ │ │ │ │ ├── RecAndExistentiallyConnectedClausesFeature.java │ │ │ │ │ │ ├── ReplacerOfQuanVariablesWithMetavariables.java │ │ │ │ │ │ ├── SplittableQuantifiedFormulaFeature.java │ │ │ │ │ │ ├── Substitution.java │ │ │ │ │ │ ├── Trigger.java │ │ │ │ │ │ ├── TriggerUtils.java │ │ │ │ │ │ ├── TriggersSet.java │ │ │ │ │ │ ├── TwoSidedMatching.java │ │ │ │ │ │ └── UniTrigger.java │ │ │ │ │ ├── termProjection │ │ │ │ │ │ ├── AbstractDividePolynomialsProjection.java │ │ │ │ │ │ ├── AssumptionProjection.java │ │ │ │ │ │ ├── CoeffGcdProjection.java │ │ │ │ │ │ ├── DividePolynomialsProjection.java │ │ │ │ │ │ ├── FocusFormulaProjection.java │ │ │ │ │ │ ├── FocusProjection.java │ │ │ │ │ │ ├── MonomialColumnOp.java │ │ │ │ │ │ ├── ReduceMonomialsProjection.java │ │ │ │ │ │ ├── SVInstantiationProjection.java │ │ │ │ │ │ ├── SubtermProjection.java │ │ │ │ │ │ ├── TermBuffer.java │ │ │ │ │ │ ├── TermConstructionProjection.java │ │ │ │ │ │ └── TriggerVariableInstantiationProjection.java │ │ │ │ │ ├── termfeature │ │ │ │ │ │ ├── AtomTermFeature.java │ │ │ │ │ │ ├── ContainsExecutableCodeTermFeature.java │ │ │ │ │ │ ├── EqTermFeature.java │ │ │ │ │ │ ├── IsInductionVariable.java │ │ │ │ │ │ ├── PrimitiveHeapTermFeature.java │ │ │ │ │ │ └── SimplifiedSelectTermFeature.java │ │ │ │ │ └── termgenerator │ │ │ │ │ │ ├── AllowedCutPositionsGenerator.java │ │ │ │ │ │ ├── HeapGenerator.java │ │ │ │ │ │ ├── MultiplesModEquationsGenerator.java │ │ │ │ │ │ ├── RootsGenerator.java │ │ │ │ │ │ ├── SuperTermGenerator.java │ │ │ │ │ │ └── TriggeredInstantiations.java │ │ │ │ │ ├── taclettranslation │ │ │ │ │ ├── DefaultTacletTranslator.java │ │ │ │ │ ├── IllegalTacletException.java │ │ │ │ │ ├── SkeletonGenerator.java │ │ │ │ │ ├── TacletFormula.java │ │ │ │ │ ├── TacletTranslator.java │ │ │ │ │ ├── TacletVisitor.java │ │ │ │ │ ├── assumptions │ │ │ │ │ │ ├── AssumptionFormula.java │ │ │ │ │ │ ├── AssumptionGenerator.java │ │ │ │ │ │ ├── DefaultTacletSetTranslation.java │ │ │ │ │ │ ├── GenericTranslator.java │ │ │ │ │ │ ├── SupportedTaclets.java │ │ │ │ │ │ ├── TacletConditions.java │ │ │ │ │ │ ├── TacletSetTranslation.java │ │ │ │ │ │ └── TranslationListener.java │ │ │ │ │ └── lemma │ │ │ │ │ │ ├── AutomaticProver.java │ │ │ │ │ │ ├── DefaultLemmaGenerator.java │ │ │ │ │ │ ├── EmptyEnvInput.java │ │ │ │ │ │ ├── GenericRemovingLemmaGenerator.java │ │ │ │ │ │ ├── LemmaGenerator.java │ │ │ │ │ │ ├── ProofObligationCreator.java │ │ │ │ │ │ ├── TacletLoader.java │ │ │ │ │ │ ├── TacletProofObligationInput.java │ │ │ │ │ │ ├── TacletProofObligationInputLoader.java │ │ │ │ │ │ ├── TacletSoundnessPOLoader.java │ │ │ │ │ │ └── UserDefinedSymbols.java │ │ │ │ │ └── util │ │ │ │ │ ├── Assert.java │ │ │ │ │ ├── AssertionFailure.java │ │ │ │ │ ├── Debug.java │ │ │ │ │ ├── DebugMBean.java │ │ │ │ │ ├── DirectoryFileCollection.java │ │ │ │ │ ├── ExceptionHandlerException.java │ │ │ │ │ ├── ExceptionTools.java │ │ │ │ │ ├── FileCollection.java │ │ │ │ │ ├── HelperClassForTests.java │ │ │ │ │ ├── InfFlowProgVarRenamer.java │ │ │ │ │ ├── InfFlowSpec.java │ │ │ │ │ ├── KeYConstants.java │ │ │ │ │ ├── KeYRecoderExcHandler.java │ │ │ │ │ ├── KeYResourceManager.java │ │ │ │ │ ├── KeYTypeUtil.java │ │ │ │ │ ├── LexicographicComparator.java │ │ │ │ │ ├── LinkedHashMap.java │ │ │ │ │ ├── LinkedHashMapWrapper.java │ │ │ │ │ ├── MiscTools.java │ │ │ │ │ ├── NodePreorderIterator.java │ │ │ │ │ ├── Position.java │ │ │ │ │ ├── ProgressMonitor.java │ │ │ │ │ ├── ProofStarter.java │ │ │ │ │ ├── ProofUserManager.java │ │ │ │ │ ├── RecognitionException.java │ │ │ │ │ ├── ReferenceLister.java │ │ │ │ │ ├── SearchNodePreorderIterator.java │ │ │ │ │ ├── SearchNodeReversePreorderIterator.java │ │ │ │ │ ├── SideProofUtil.java │ │ │ │ │ ├── SpecDataLocation.java │ │ │ │ │ ├── TermUtil.java │ │ │ │ │ ├── UnicodeHelper.java │ │ │ │ │ ├── Union.java │ │ │ │ │ ├── VersionStringComparator.java │ │ │ │ │ ├── ZipFileCollection.java │ │ │ │ │ ├── mergerule │ │ │ │ │ ├── MergeParamsSpec.java │ │ │ │ │ ├── MergeRuleUtils.java │ │ │ │ │ ├── SymbolicExecutionState.java │ │ │ │ │ └── SymbolicExecutionStateWithProgCnt.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── parsing │ │ │ │ │ ├── BuildingException.java │ │ │ │ │ ├── BuildingExceptions.java │ │ │ │ │ ├── BuildingIssue.java │ │ │ │ │ ├── HasLocation.java │ │ │ │ │ ├── LocatableException.java │ │ │ │ │ └── SyntaxErrorReporter.java │ │ │ │ │ ├── pp │ │ │ │ │ ├── Backend.java │ │ │ │ │ ├── Layouter.java │ │ │ │ │ ├── Printer.java │ │ │ │ │ ├── StringBackend.java │ │ │ │ │ ├── UnbalancedBlocksException.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── properties │ │ │ │ │ ├── AbstractProperties.java │ │ │ │ │ ├── MapProperties.java │ │ │ │ │ └── Properties.java │ │ │ ├── org │ │ │ │ └── key_project │ │ │ │ │ └── proof │ │ │ │ │ └── LocationVariableTracker.java │ │ │ └── recoder │ │ │ │ └── service │ │ │ │ └── KeYCrossReferenceSourceInfo.java │ │ ├── javacc │ │ │ └── de │ │ │ │ └── uka │ │ │ │ └── ilkd │ │ │ │ └── key │ │ │ │ └── parser │ │ │ │ ├── proofjava │ │ │ │ ├── JavaCharStream.java │ │ │ │ ├── ProofJavaParser.jj │ │ │ │ └── Token.java │ │ │ │ └── schemajava │ │ │ │ ├── JavaCharStream.java │ │ │ │ ├── SchemaJavaParser.jj │ │ │ │ └── Token.java │ │ └── resources │ │ │ ├── META-INF │ │ │ ├── MANIFEST.MF │ │ │ └── services │ │ │ │ ├── de.uka.ilkd.key.macros.ProofMacro │ │ │ │ ├── de.uka.ilkd.key.proof.init.DefaultProfileResolver │ │ │ │ ├── de.uka.ilkd.key.proof.init.POExtension │ │ │ │ ├── de.uka.ilkd.key.proof.init.loader.ProofObligationLoader │ │ │ │ └── de.uka.ilkd.key.scripts.ProofScriptCommand │ │ │ ├── de │ │ │ └── uka │ │ │ │ └── ilkd │ │ │ │ └── key │ │ │ │ ├── java │ │ │ │ └── JavaRedux │ │ │ │ │ ├── JAVALANG.TXT │ │ │ │ │ ├── README.txt │ │ │ │ │ └── java │ │ │ │ │ ├── io │ │ │ │ │ ├── FilterOutputStream.java │ │ │ │ │ ├── IOException.java │ │ │ │ │ ├── InputStream.java │ │ │ │ │ ├── OutputStream.java │ │ │ │ │ ├── PrintStream.java │ │ │ │ │ └── Serializable.java │ │ │ │ │ ├── lang │ │ │ │ │ ├── ArithmeticException.java │ │ │ │ │ ├── ArrayIndexOutOfBoundsException.java │ │ │ │ │ ├── ArrayStoreException.java │ │ │ │ │ ├── AssertionError.java │ │ │ │ │ ├── Boolean.java │ │ │ │ │ ├── Character.java │ │ │ │ │ ├── Class.java │ │ │ │ │ ├── ClassCastException.java │ │ │ │ │ ├── CloneNotSupportedException.java │ │ │ │ │ ├── Cloneable.java │ │ │ │ │ ├── Comparable.java │ │ │ │ │ ├── Double.java │ │ │ │ │ ├── Enum.java │ │ │ │ │ ├── Error.java │ │ │ │ │ ├── Exception.java │ │ │ │ │ ├── ExceptionInInitializerError.java │ │ │ │ │ ├── Float.java │ │ │ │ │ ├── IllegalArgumentException.java │ │ │ │ │ ├── IndexOutOfBoundsException.java │ │ │ │ │ ├── Integer.java │ │ │ │ │ ├── InterruptedException.java │ │ │ │ │ ├── Iterable.java │ │ │ │ │ ├── LinkageError.java │ │ │ │ │ ├── Long.java │ │ │ │ │ ├── Math.java │ │ │ │ │ ├── NegativeArraySizeException.java │ │ │ │ │ ├── NoClassDefFoundError.java │ │ │ │ │ ├── NullPointerException.java │ │ │ │ │ ├── Number.java │ │ │ │ │ ├── NumberFormatException.java │ │ │ │ │ ├── Object.java │ │ │ │ │ ├── OutOfMemoryError.java │ │ │ │ │ ├── Runnable.java │ │ │ │ │ ├── RuntimeException.java │ │ │ │ │ ├── String.java │ │ │ │ │ ├── String.key │ │ │ │ │ ├── StringBuffer.java │ │ │ │ │ ├── System.java │ │ │ │ │ ├── Thread.java │ │ │ │ │ ├── Throwable.java │ │ │ │ │ ├── VirtualMachineError.java │ │ │ │ │ └── annotation │ │ │ │ │ │ └── Annotation.java │ │ │ │ │ ├── math │ │ │ │ │ └── BigInteger.java │ │ │ │ │ └── util │ │ │ │ │ ├── ArrayList.java │ │ │ │ │ ├── Arrays.java │ │ │ │ │ ├── Collection.java │ │ │ │ │ ├── Date.java │ │ │ │ │ ├── Iterator.java │ │ │ │ │ ├── LinkedHashMap.java │ │ │ │ │ ├── LinkedList.java │ │ │ │ │ ├── List.java │ │ │ │ │ ├── ListIterator.java │ │ │ │ │ ├── ListIteratorImpl.java │ │ │ │ │ ├── Map.java │ │ │ │ │ └── Set.java │ │ │ │ ├── nparser │ │ │ │ └── builder │ │ │ │ │ └── resources.properties │ │ │ │ ├── proof │ │ │ │ └── rules │ │ │ │ │ ├── activeUse.key │ │ │ │ │ ├── adtProgramDecompositionRules.key │ │ │ │ │ ├── assertions.key │ │ │ │ │ ├── bigint.key │ │ │ │ │ ├── binaryAxioms.key │ │ │ │ │ ├── binaryLemmas.key │ │ │ │ │ ├── boolean.key │ │ │ │ │ ├── booleanRules.key │ │ │ │ │ ├── bprod.key │ │ │ │ │ ├── bsum.key │ │ │ │ │ ├── charListHeader.key │ │ │ │ │ ├── charListRules.key │ │ │ │ │ ├── epsilon.key │ │ │ │ │ ├── execRules.key │ │ │ │ │ ├── firstOrderRules.key │ │ │ │ │ ├── floatAssignment2UpdateRules.key │ │ │ │ │ ├── floatHeader.key │ │ │ │ │ ├── floatRules.key │ │ │ │ │ ├── floatRulesAssumeStrictfp.key │ │ │ │ │ ├── floatRulesCommon.key │ │ │ │ │ ├── floatRulesVerifyNormal.key │ │ │ │ │ ├── forLoopRules.key │ │ │ │ │ ├── formulaNormalisationRules.key │ │ │ │ │ ├── freeADT.key │ │ │ │ │ ├── genericRules.key │ │ │ │ │ ├── heap.key │ │ │ │ │ ├── heapRules.key │ │ │ │ │ ├── ifThenElseRules.key │ │ │ │ │ ├── infFlow.key │ │ │ │ │ ├── instanceAllocation.key │ │ │ │ │ ├── intDiv.key │ │ │ │ │ ├── intPow.key │ │ │ │ │ ├── intRules.key │ │ │ │ │ ├── intRulesCheckedSemantics.key │ │ │ │ │ ├── intRulesJavaSemantics.key │ │ │ │ │ ├── intRulesUncheckedSemantics.key │ │ │ │ │ ├── integerAssignment2UpdateRules.key │ │ │ │ │ ├── integerHeader.key │ │ │ │ │ ├── integerRulesCommon.key │ │ │ │ │ ├── integerSimplificationRules.key │ │ │ │ │ ├── java5.key │ │ │ │ │ ├── javaHeader.key │ │ │ │ │ ├── javaRules.key │ │ │ │ │ ├── ldt.key │ │ │ │ │ ├── locSets.key │ │ │ │ │ ├── locSetsRules.key │ │ │ │ │ ├── loopInvariantRules.key │ │ │ │ │ ├── loopRules.key │ │ │ │ │ ├── loopScopeRules.key │ │ │ │ │ ├── map.key │ │ │ │ │ ├── mapSize.key │ │ │ │ │ ├── optionsDeclarations.key │ │ │ │ │ ├── permission.key │ │ │ │ │ ├── permissionRules.key │ │ │ │ │ ├── precRules.key │ │ │ │ │ ├── propRule.key │ │ │ │ │ ├── reach.key │ │ │ │ │ ├── reachRules.key │ │ │ │ │ ├── regExAxioms.key │ │ │ │ │ ├── regExHeader.key │ │ │ │ │ ├── regExLemma.key │ │ │ │ │ ├── regExLemmaProven.key │ │ │ │ │ ├── regExTheory.key │ │ │ │ │ ├── ruleSetsDeclarations.key │ │ │ │ │ ├── seq.key │ │ │ │ │ ├── seqCoreRules.key │ │ │ │ │ ├── seqEq.key │ │ │ │ │ ├── seqPerm.key │ │ │ │ │ ├── seqPerm2.key │ │ │ │ │ ├── seqRules.key │ │ │ │ │ ├── soundDefaultContracts.key │ │ │ │ │ ├── standardRules.key │ │ │ │ │ ├── types.key │ │ │ │ │ ├── updateRules.key │ │ │ │ │ ├── wd.key │ │ │ │ │ ├── wdFormulaRules.key │ │ │ │ │ ├── wdGeneralRules.key │ │ │ │ │ ├── wdHeader.key │ │ │ │ │ ├── wdHeapRules.key │ │ │ │ │ ├── wdLocSetRules.key │ │ │ │ │ ├── wdNumericalRules.key │ │ │ │ │ ├── wdReachRules.key │ │ │ │ │ ├── wdRegExRules.key │ │ │ │ │ ├── wdSeqRules.key │ │ │ │ │ ├── wdStringRules.key │ │ │ │ │ └── wellfound.key │ │ │ │ ├── settings │ │ │ │ ├── default-proof-settings.json │ │ │ │ └── default-proof-settings.props │ │ │ │ ├── smt │ │ │ │ ├── newsmt2 │ │ │ │ │ ├── BooleanConnectiveHandler.preamble.xml │ │ │ │ │ ├── CastHandler.preamble.xml │ │ │ │ │ ├── CastingFunctionsHandler.preamble.xml │ │ │ │ │ ├── FieldConstantHandler.preamble.xml │ │ │ │ │ ├── Float.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ ├── FloatHandler.preamble.xml │ │ │ │ │ ├── Heap.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ ├── Int.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ ├── IntegerOpHandler.preamble.xml │ │ │ │ │ ├── Java.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ ├── LocSet.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ ├── Seq.DefinedSymbolsHandler.preamble.xml │ │ │ │ │ └── preamble.smt2 │ │ │ │ └── solvertypes │ │ │ │ │ ├── AddingSMTSolvers.md │ │ │ │ │ ├── CVC4.props │ │ │ │ │ ├── CVC4_legacy.props │ │ │ │ │ ├── CVC5.props │ │ │ │ │ ├── Princess.props │ │ │ │ │ ├── Z3.props │ │ │ │ │ ├── Z3_CE.props │ │ │ │ │ ├── Z3_FloatingPoint.props │ │ │ │ │ ├── Z3_QF.props │ │ │ │ │ ├── Z3_legacy.props │ │ │ │ │ └── defaultHandlers.txt │ │ │ │ └── util │ │ │ │ └── install │ │ │ │ ├── MANIFEST.MF │ │ │ │ ├── startProver_linux │ │ │ │ └── startProver_win │ │ │ └── key.properties │ └── test │ │ ├── java │ │ └── de │ │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ ├── java │ │ │ ├── ProofJavaProgramFactoryTest.java │ │ │ ├── RecoderExample.java │ │ │ ├── TestContextStatementBlock.java │ │ │ ├── TestJavaCardDLJavaExtensions.java │ │ │ ├── TestJavaInfo.java │ │ │ ├── TestKeYRecoderMapping.java │ │ │ ├── TestPositions.java │ │ │ ├── TestRecoder2KeY.java │ │ │ ├── recoderext │ │ │ │ └── TestEnumClassDeclaration.java │ │ │ └── visitor │ │ │ │ └── TestDeclarationProgramVariableCollector.java │ │ │ ├── logic │ │ │ ├── LabeledTermImplTest.java │ │ │ ├── TestClashFreeSubst.java │ │ │ ├── TestLocalSymbols.java │ │ │ ├── TestName.java │ │ │ ├── TestNamespace.java │ │ │ ├── TestPosInOcc.java │ │ │ ├── TestPosInProgram.java │ │ │ ├── TestPosInTerm.java │ │ │ ├── TestSyntacticalReplaceVisitor.java │ │ │ ├── TestTerm.java │ │ │ ├── TestTermBuilder.java │ │ │ ├── TestTermFactory.java │ │ │ ├── TestTermLabelManager.java │ │ │ ├── TestVariableNamer.java │ │ │ ├── equality │ │ │ │ └── TestEqualsModProperty.java │ │ │ └── label │ │ │ │ ├── LabelCollectionTest.java │ │ │ │ └── OriginTermLabelTest.java │ │ │ ├── nparser │ │ │ ├── AdtTests.java │ │ │ ├── ExprTest.java │ │ │ ├── Issue3452Test.java │ │ │ ├── KeYParserExceptionTest.java │ │ │ ├── NamespaceBuilder.java │ │ │ ├── ParseAllKeyFilesTest.java │ │ │ ├── ParseLDTsTests.java │ │ │ └── TestTacletEquality.java │ │ │ ├── parser │ │ │ ├── AbstractTestTermParser.java │ │ │ ├── TestDeclParser.java │ │ │ ├── TestIntLiteralParsing.java │ │ │ ├── TestJMLParserAssociativity.java │ │ │ ├── TestParallelParsing.java │ │ │ ├── TestParser.java │ │ │ ├── TestTacletParser.java │ │ │ ├── TestTermParser.java │ │ │ ├── TestTermParserHeap.java │ │ │ ├── TestTermParserSorts.java │ │ │ ├── messages │ │ │ │ └── ParserMessageTest.java │ │ │ └── proofjava │ │ │ │ └── TestProofJavaParser.java │ │ │ ├── pp │ │ │ ├── FinalPrinterTest.java │ │ │ ├── LogicPrinterTest.java │ │ │ ├── PrettyPrinterRoundtripTest.java │ │ │ └── PrettyPrinterTest.java │ │ │ ├── proof │ │ │ ├── TestGoal.java │ │ │ ├── TestOneStepSimplifier.java │ │ │ ├── TestProofTree.java │ │ │ ├── TestTacletIndex.java │ │ │ ├── TestTermTacletAppIndex.java │ │ │ ├── calculus │ │ │ │ └── TestSemisequent.java │ │ │ ├── init │ │ │ │ └── FinalFieldCodeValidatorTest.java │ │ │ ├── io │ │ │ │ ├── KeYFileForTests.java │ │ │ │ ├── ProofSaverTest.java │ │ │ │ ├── TestZipProofSaving.java │ │ │ │ └── consistency │ │ │ │ │ └── TestProofBundleIO.java │ │ │ ├── proverules │ │ │ │ └── ProveRulesTest.java │ │ │ ├── replay │ │ │ │ └── TestCopyingReplayer.java │ │ │ └── runallproofs │ │ │ │ ├── GenerateUnitTests.java │ │ │ │ ├── JunitXmlWriter.java │ │ │ │ ├── ProofCollections.java │ │ │ │ ├── ProveTest.java │ │ │ │ ├── RunAllProofsDirectories.java │ │ │ │ ├── RunAllProofsFunctional.java │ │ │ │ ├── RunAllProofsInfFlow.java │ │ │ │ ├── RunAllProofsTest.java │ │ │ │ ├── RunAllProofsTestUnit.java │ │ │ │ ├── TestResult.java │ │ │ │ ├── performance │ │ │ │ ├── DataRecordingStrategy.java │ │ │ │ ├── DataRecordingTable.java │ │ │ │ ├── DataRecordingTestFile.java │ │ │ │ ├── FunctionPerformanceData.java │ │ │ │ ├── NodeData.java │ │ │ │ ├── ProfilingDirectories.java │ │ │ │ ├── RuleData.java │ │ │ │ ├── RuleIndependentData.java │ │ │ │ └── RunAllProofsTestWithComputeCostProfiling.java │ │ │ │ └── proofcollection │ │ │ │ ├── ForkMode.java │ │ │ │ ├── ForkedTestFileRunner.java │ │ │ │ ├── GroupedProofCollectionUnit.java │ │ │ │ ├── ProofCollection.java │ │ │ │ ├── ProofCollectionSettings.java │ │ │ │ ├── ProofCollectionUnit.java │ │ │ │ ├── SingletonProofCollectionUnit.java │ │ │ │ ├── StatisticsFile.java │ │ │ │ ├── TestFile.java │ │ │ │ └── TestProperty.java │ │ │ ├── rule │ │ │ ├── CreateTacletForTests.java │ │ │ ├── IntSemanticsTest.java │ │ │ ├── TacletForTests.java │ │ │ ├── TestApplyTaclet.java │ │ │ ├── TestCollisionResolving.java │ │ │ ├── TestMatchTaclet.java │ │ │ ├── TestSchemaModalOperators.java │ │ │ ├── conditions │ │ │ │ ├── TestApplyUpdateOnRigidCondition.java │ │ │ │ └── TestDropEffectlessElementary.java │ │ │ ├── inst │ │ │ │ └── TestGenericSortInstantiations.java │ │ │ ├── loop │ │ │ │ └── LoopScopeInvRuleTests.java │ │ │ ├── match │ │ │ │ └── vm │ │ │ │ │ └── VMTacletMatcherTest.java │ │ │ ├── merge │ │ │ │ ├── MergeRuleTests.java │ │ │ │ └── PredicateAbstractionLatticeTests.java │ │ │ ├── metaconstruct │ │ │ │ └── TestProgramMetaConstructs.java │ │ │ └── tacletbuilder │ │ │ │ └── TestTacletBuild.java │ │ │ ├── scripts │ │ │ ├── FocusCommandTest.java │ │ │ ├── ProofScriptParserTest.java │ │ │ ├── TestProofScriptCommand.java │ │ │ └── meta │ │ │ │ ├── RewriteTest.java │ │ │ │ └── ValueInjectorTest.java │ │ │ ├── settings │ │ │ └── SettingsTest.java │ │ │ ├── smt │ │ │ ├── SMTBeautifierTest.java │ │ │ ├── SMTTestSettings.java │ │ │ ├── SmtTestUtils.java │ │ │ ├── TestSMTFocusResults.java │ │ │ ├── TestUnsatCore.java │ │ │ ├── communication │ │ │ │ └── BufferedMessageReaderTest.java │ │ │ ├── newsmt2 │ │ │ │ ├── MasterHandlerTest.java │ │ │ │ ├── ProveSMTLemmasTest.java │ │ │ │ └── TestSMTMod.java │ │ │ └── test │ │ │ │ ├── Cvc5Test.java │ │ │ │ ├── SMTSolverTest.java │ │ │ │ ├── SMTTestCommons.java │ │ │ │ ├── Z3LegacyTest.java │ │ │ │ └── Z3Test.java │ │ │ ├── speclang │ │ │ ├── ContractFactoryTest.java │ │ │ ├── SetStatementTest.java │ │ │ ├── jml │ │ │ │ ├── JmlMarkerDecisionTest.java │ │ │ │ ├── TestJMLPreTranslator.java │ │ │ │ ├── TestJMLTranslator.java │ │ │ │ └── pretranslation │ │ │ │ │ └── TextualJMLAssertStatementTest.java │ │ │ └── njml │ │ │ │ ├── ClasslevelTranslatorTest.java │ │ │ │ ├── ContractLoadingTests.java │ │ │ │ ├── ExpressionTranslatorTest.java │ │ │ │ ├── JMLParserExceptionTest.java │ │ │ │ ├── MethodlevelTranslatorTest.java │ │ │ │ ├── NJmlTranslatorTests.java │ │ │ │ └── TextualTranslatorTest.java │ │ │ ├── strategy │ │ │ └── quantifierHeuristics │ │ │ │ └── TestTriggersSet.java │ │ │ ├── taclettranslation │ │ │ ├── TestTacletTranslator.java │ │ │ └── lemma │ │ │ │ └── TestGenericRemovingLemmaGenerator.java │ │ │ └── util │ │ │ ├── DesignTests.java │ │ │ ├── ExceptionToolsTest.java │ │ │ ├── IOForwarder.java │ │ │ ├── ParserExceptionTest.java │ │ │ ├── TestEqualsModProofIrrelevancy.java │ │ │ ├── TestLexicographicComparator.java │ │ │ ├── TestLinkedHashMapWrapper.java │ │ │ ├── TestMiscTools.java │ │ │ ├── TestNodePreorderIterator.java │ │ │ ├── TestProofStarter.java │ │ │ ├── TestProofUserManager.java │ │ │ ├── TestSearchNodePreorderIterator.java │ │ │ ├── TestSearchNodeReversePreorderIterator.java │ │ │ ├── TestVersionStringComparator.java │ │ │ ├── UnionTest.java │ │ │ └── pp │ │ │ └── TestLayouter.java │ │ └── resources │ │ ├── de │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ ├── java │ │ │ ├── Positions.java │ │ │ ├── Positions.txt │ │ │ ├── recoderext │ │ │ │ ├── AssertsFalse.java │ │ │ │ ├── SetInMethodBody.java │ │ │ │ └── Steinhoefel1.java │ │ │ ├── testAttachCommentsCompilationUnit_LockSpec.txt │ │ │ └── testAttachCommentsCompilationUnit_SmansEtAlArrayList.txt │ │ │ ├── nparser │ │ │ ├── exceptional │ │ │ │ ├── README.md │ │ │ │ ├── delayed_error.key │ │ │ │ ├── doubleDecl.key │ │ │ │ ├── doubleDecl2.key │ │ │ │ ├── missing_semicolon.key │ │ │ │ ├── unknownsort.key │ │ │ │ └── unknownsort2.key │ │ │ ├── exprs.txt │ │ │ ├── fix3452 │ │ │ │ ├── fix │ │ │ │ │ └── Issue3452Fixture.java │ │ │ │ └── problem │ │ │ │ │ └── Issue3452IllegalNoState.java │ │ │ ├── precedence_tests.txt │ │ │ └── taclets.old.txt │ │ │ ├── pp │ │ │ ├── roundTripTest.key │ │ │ └── roundtrip-src │ │ │ │ └── C.java │ │ │ ├── proof │ │ │ ├── init │ │ │ │ └── final │ │ │ │ │ ├── shouldfail │ │ │ │ │ ├── FinalReadBeforeWriteIndirect.java │ │ │ │ │ ├── LeakThis1.java │ │ │ │ │ ├── LeakThis2.java │ │ │ │ │ └── Subclass.java │ │ │ │ │ └── shouldparse │ │ │ │ │ └── SecondaryConstructor.java │ │ │ ├── io │ │ │ │ └── keyZipTest.key │ │ │ ├── ruleForTestTacletIndex.taclet │ │ │ └── runallproofs │ │ │ │ └── automaticJAVADL.properties │ │ │ ├── rule │ │ │ ├── intSemantics │ │ │ │ ├── checkedOF │ │ │ │ │ ├── IntSemanticsCheckedOF.java │ │ │ │ │ ├── mOFCheck.proof │ │ │ │ │ └── mOFCheckWrong.key │ │ │ │ ├── java │ │ │ │ │ ├── IntSemanticsJava.java │ │ │ │ │ ├── intSemanticsJava.key │ │ │ │ │ ├── mJava.proof │ │ │ │ │ └── mJavaWrong.key │ │ │ │ └── uncheckedOF │ │ │ │ │ ├── IntSemanticsUncheckedOF.java │ │ │ │ │ ├── intSemanticsUncheckedOF.key │ │ │ │ │ ├── mBigint.proof │ │ │ │ │ └── mBigintWrong.key │ │ │ └── testRuleMatch.txt │ │ │ ├── scripts │ │ │ ├── cases │ │ │ │ ├── andRight.yml │ │ │ │ ├── hide.exec.yml │ │ │ │ ├── hide.yml │ │ │ │ ├── rule.exc.yml │ │ │ │ ├── selectFormula.yml │ │ │ │ ├── unhide.yml │ │ │ │ └── unhide2.yml │ │ │ └── lesstrans.script │ │ │ ├── smt │ │ │ ├── beautifier.in.smt2 │ │ │ ├── beautifier.out.smt2 │ │ │ └── newsmt2 │ │ │ │ ├── SMT_lemma_jdiv.dl.proof │ │ │ │ ├── SMT_lemma_jmod.dl.proof │ │ │ │ ├── SMT_lemma_seqGet.dl.proof │ │ │ │ ├── SMT_lemma_seqGetOutside.dl.proof │ │ │ │ ├── cases │ │ │ │ ├── bool1.yml │ │ │ │ ├── bool2.yml │ │ │ │ ├── bool3.yml │ │ │ │ ├── cast1.yml │ │ │ │ ├── cast2.yml │ │ │ │ ├── cast3.yml │ │ │ │ ├── ex1.yml │ │ │ │ ├── ex2.yml │ │ │ │ ├── float.eq.yml │ │ │ │ ├── float.sinDouble.yml │ │ │ │ ├── float.sqrt1.yml │ │ │ │ ├── float.sqrt2.yml │ │ │ │ ├── float1.yml │ │ │ │ ├── float2.yml │ │ │ │ ├── heap1.yml │ │ │ │ ├── heap2.yml │ │ │ │ ├── int1.yml │ │ │ │ ├── ite1.yml │ │ │ │ ├── quant1.yml │ │ │ │ ├── quant2.yml │ │ │ │ ├── types1.yml │ │ │ │ ├── types2.yml │ │ │ │ ├── uninterpreted1.yml │ │ │ │ ├── unknownQuantified.yml │ │ │ │ ├── upd1.yml │ │ │ │ └── upd2.yml │ │ │ │ └── smt-lemma-header.key │ │ │ └── speclang │ │ │ └── njml │ │ │ ├── classlevel.txt │ │ │ ├── exceptional │ │ │ ├── AccessingSequences.java │ │ │ ├── Bevhavioural.java │ │ │ ├── BigInt.java │ │ │ ├── IllegalInv.java │ │ │ ├── KeyTest.java │ │ │ ├── MethodInMethod.java │ │ │ ├── MissingClosingBrace.java │ │ │ ├── MissingClosingParens.java │ │ │ ├── MissingOpeningParen.java │ │ │ ├── MissingReturnType.java │ │ │ ├── ModelFieldinMethod.java │ │ │ ├── NamedAccessInContract.java │ │ │ ├── NoState.java │ │ │ ├── Outside.java │ │ │ ├── README.md │ │ │ ├── SetInClass.java │ │ │ ├── SpuriousContract.java │ │ │ ├── ThisStarStar.java │ │ │ ├── TypeError.java │ │ │ ├── UnknownVar.java │ │ │ ├── UnknownVarInJML.java │ │ │ ├── UnnamedAccessibleInClass.java │ │ │ └── WrongEquals.java │ │ │ ├── exprs.txt │ │ │ └── methodlevel.txt │ │ ├── logback.xml │ │ └── testcase │ │ ├── README │ │ ├── classpath │ │ ├── README │ │ ├── classpath.key │ │ ├── classpath.key.proof │ │ ├── classpath.key.save.proof │ │ ├── classpath │ │ │ ├── C.class │ │ │ ├── C.jml │ │ │ ├── C1.java │ │ │ └── E.class │ │ ├── javaSource │ │ │ └── C2.java │ │ └── src │ │ │ └── cp │ │ │ ├── C.java │ │ │ ├── E.java │ │ │ └── Unresolved1.java │ │ ├── dummyTrue.key │ │ ├── issues │ │ ├── 39 │ │ │ └── A.java │ │ ├── 1566 │ │ │ ├── A.java │ │ │ ├── README.md │ │ │ └── a.key │ │ ├── 1658 │ │ │ └── Test.java │ │ ├── 1716 │ │ │ ├── incorrectPolarity.proof │ │ │ ├── incorrectPolarity2.proof │ │ │ └── incorrectPolarity3.proof │ │ └── 1717 │ │ │ └── UnderscoreZero.java │ │ ├── javacardDLExtensions │ │ ├── src │ │ │ └── test │ │ │ │ └── TestJavaCardDLExtensions.java │ │ ├── typeResolutionInMethodFrame.key │ │ └── typeResolutionInMethodFrame2.key │ │ ├── javainfo │ │ ├── src │ │ │ └── THIS_DIRECTORY_IS_INTENTIONALLY_LEFT_BLANK │ │ └── testJavaInfo.key │ │ ├── localSymbols │ │ └── doubleSkolem.key │ │ ├── loopScopeInvRule │ │ ├── Test.java │ │ └── Test.key │ │ ├── merge │ │ ├── A.differentVarsWithSameName.MPS.cut.closed.proof │ │ ├── A.java │ │ ├── Gcd.java │ │ ├── IndistinguishablePathConditions.proof │ │ ├── IndistinguishablePathConditions.twoJoins.proof │ │ ├── dummy.key │ │ ├── gcd.MPSAndBlockContract.key │ │ ├── gcd.closed.predicateAbstractionWithUserChoices.proof │ │ ├── gcd.closed.predicateabstraction.proof │ │ ├── gcd.closed.proof │ │ ├── gcd.joinBlocks.key │ │ ├── gcd.key │ │ ├── gcd.mergePointStatements.closed.proof │ │ └── gcd.mergePointStatements.key │ │ ├── ossRestriction.proof │ │ ├── parser │ │ └── MultipleRecursion │ │ │ ├── MultipleRecursion.java │ │ │ ├── MultipleRecursion[MultipleRecursion__a()]_JML_normal_behavior_operation_contract_0.proof │ │ │ └── MultipleRecursion[MultipleRecursion__b()]_JML_normal_behavior_operation_contract_0.proof │ │ ├── parserErrorTest │ │ ├── AssignToArray.java │ │ └── missing_semicolon.key │ │ ├── parserMessageTest │ │ ├── ArrayMax.java │ │ ├── AssignmentInJMLExpression1 │ │ │ └── ArrayMax.java │ │ ├── AssignmentInJMLExpression2 │ │ │ └── A.java │ │ ├── DotOperatorIncompatibleWithLocationSet │ │ │ └── ArrayMax.java │ │ ├── MissingClosingParenthesis │ │ │ └── ArrayMax.java │ │ ├── MissingOpeningParenthesis │ │ │ └── ArrayMax.java │ │ ├── MissingOperator1 │ │ │ └── ArrayMax.java │ │ ├── MissingOperator2 │ │ │ └── ArrayMax.java │ │ ├── MissingParenthesesAroundQuantifiedExpression │ │ │ └── ArrayMax.java │ │ ├── MissingSemicolon │ │ │ └── ArrayMax.java │ │ ├── MissingSemicolonAfterQuantifier │ │ │ └── ArrayMax.java │ │ ├── ModifiableLocationIgnoredWarning │ │ │ ├── ArrayMax.java │ │ │ └── IGNORE │ │ ├── OperatorNotCompatibleWithArguments │ │ │ └── ArrayMax.java │ │ ├── README.txt │ │ ├── RequiresAfterEnsures │ │ │ └── ArrayMax.java │ │ ├── SpecificationExpressionOutsideOfJMLClause │ │ │ └── ArrayMax.java │ │ ├── UnknownIdentifier1 │ │ │ └── ArrayMax.java │ │ ├── UnknownIdentifier2 │ │ │ └── ArrayMax.java │ │ ├── UnknownJMLClause │ │ │ └── ArrayMax.java │ │ ├── UnknownJMLIdentifier │ │ │ └── ArrayMax.java │ │ └── VerifyPPUsedInErrorMSG │ │ │ └── ArrayMax.java │ │ ├── prettyprinter │ │ └── pp1.key │ │ ├── proofBundle │ │ ├── complexBundleGeneration │ │ │ ├── a │ │ │ │ ├── io │ │ │ │ │ ├── FilterOutputStream.java │ │ │ │ │ ├── IOException.java │ │ │ │ │ ├── InputStream.java │ │ │ │ │ ├── OutputStream.java │ │ │ │ │ ├── PrintStream.java │ │ │ │ │ └── Serializable.java │ │ │ │ ├── lang │ │ │ │ │ ├── ArithmeticException.java │ │ │ │ │ ├── ArrayIndexOutOfBoundsException.java │ │ │ │ │ ├── ArrayStoreException.java │ │ │ │ │ ├── AssertionError.java │ │ │ │ │ ├── Character.java │ │ │ │ │ ├── Class.java │ │ │ │ │ ├── ClassCastException.java │ │ │ │ │ ├── CloneNotSupportedException.java │ │ │ │ │ ├── Cloneable.java │ │ │ │ │ ├── Comparable.java │ │ │ │ │ ├── Enum.java │ │ │ │ │ ├── Error.java │ │ │ │ │ ├── Exception.java │ │ │ │ │ ├── ExceptionInInitializerError.java │ │ │ │ │ ├── IllegalArgumentException.java │ │ │ │ │ ├── IndexOutOfBoundsException.java │ │ │ │ │ ├── Integer.java │ │ │ │ │ ├── InterruptedException.java │ │ │ │ │ ├── Iterable.java │ │ │ │ │ ├── LinkageError.java │ │ │ │ │ ├── NegativeArraySizeException.java │ │ │ │ │ ├── NoClassDefFoundError.java │ │ │ │ │ ├── NullPointerException.java │ │ │ │ │ ├── Number.java │ │ │ │ │ ├── NumberFormatException.java │ │ │ │ │ ├── Object.java │ │ │ │ │ ├── OutOfMemoryError.java │ │ │ │ │ ├── Runnable.java │ │ │ │ │ ├── RuntimeException.java │ │ │ │ │ ├── String.java │ │ │ │ │ ├── String.key │ │ │ │ │ ├── StringBuffer.java │ │ │ │ │ ├── System.java │ │ │ │ │ ├── Thread.java │ │ │ │ │ ├── Throwable.java │ │ │ │ │ ├── VirtualMachineError.java │ │ │ │ │ └── annotation │ │ │ │ │ │ └── Annotation.java │ │ │ │ └── util │ │ │ │ │ ├── Collection.java │ │ │ │ │ ├── Iterator.java │ │ │ │ │ ├── List.java │ │ │ │ │ ├── ListIterator.java │ │ │ │ │ ├── Map.java │ │ │ │ │ └── Set.java │ │ │ ├── b │ │ │ │ ├── Compressed.zip │ │ │ │ ├── Compressed │ │ │ │ │ ├── C2.java │ │ │ │ │ └── subdir │ │ │ │ │ │ └── C1.java │ │ │ │ ├── cp1 │ │ │ │ │ ├── B.java │ │ │ │ │ └── subdir │ │ │ │ │ │ └── A.java │ │ │ │ └── cp2 │ │ │ │ │ └── D.java │ │ │ ├── src │ │ │ │ ├── Client.java │ │ │ │ └── Test.java │ │ │ └── test.key │ │ └── simpleBundleGeneration │ │ │ ├── src │ │ │ ├── Client.java │ │ │ └── Test.java │ │ │ └── test.key │ │ ├── proofStarter │ │ └── CC │ │ │ ├── CC.java │ │ │ └── project.key │ │ ├── scriptCommands │ │ ├── eq.key │ │ ├── eq.script │ │ ├── less_trans.key │ │ ├── lesstrans.script │ │ ├── rewrite.script │ │ └── transitive.key │ │ ├── setStatements │ │ ├── testFile.key │ │ └── testPackage │ │ │ └── TestClass.java │ │ ├── smt │ │ ├── add1.key │ │ ├── add2.key │ │ ├── allex1.key │ │ ├── allex2.key │ │ ├── allex3.key │ │ ├── andnot.key │ │ ├── andornot.key │ │ ├── andornot2.key │ │ ├── binder.key │ │ ├── binder2.key │ │ ├── binder3.key │ │ ├── binder4.key │ │ ├── binder5.key │ │ ├── binder6.key │ │ ├── bprod1.key │ │ ├── bprod2.key │ │ ├── bprod3.key │ │ ├── bprod4.key │ │ ├── bsum1.key │ │ ├── bsum2.key │ │ ├── bsum3.key │ │ ├── bsum4.key │ │ ├── bsum5.key │ │ ├── div1.key │ │ ├── div2.key │ │ ├── div3.key │ │ ├── div4.key │ │ ├── div5.key │ │ ├── div6.key │ │ ├── equal1.key │ │ ├── equal2.key │ │ ├── equi1.key │ │ ├── equi2.key │ │ ├── imply.key │ │ ├── imply2.key │ │ ├── imply3.key │ │ ├── logicalite1.key │ │ ├── logicalite2.key │ │ ├── modSpec.key │ │ ├── mult1.key │ │ ├── null.key │ │ ├── ornot.key │ │ ├── subsort1.key │ │ ├── subsort2.key │ │ ├── tacletTranslation │ │ │ ├── arrayLength.key │ │ │ ├── attributes.key │ │ │ ├── booleanProblems.key │ │ │ ├── castOperators.key │ │ │ ├── castProblems.key │ │ │ ├── complexProblem.key │ │ │ ├── complexProblem2.key │ │ │ ├── dummyFile.key │ │ │ ├── integerProblems.key │ │ │ └── javaSource │ │ │ │ └── Test.java │ │ ├── termite1.key │ │ ├── termite2.key │ │ └── unsatCore.proof │ │ ├── specMath │ │ ├── bigint │ │ │ └── Test.java │ │ └── java │ │ │ └── Test.java │ │ ├── speclang │ │ ├── testFile.key │ │ └── testPackage │ │ │ └── TestClass.java │ │ ├── tacletmatch │ │ └── tacletMatch1.key │ │ ├── tacletprefix │ │ └── schemaVarInAddruleRespectPrefix.key │ │ ├── termLabels │ │ └── flatSteps │ │ │ └── FlatSteps.java │ │ ├── termParser │ │ ├── parserTest.key │ │ ├── testTermParserHeap │ │ │ └── A.java │ │ └── testTermParserSorts │ │ │ └── IntegerMethods.java │ │ ├── testgen │ │ ├── BranchingLoop.java │ │ ├── absMin.key │ │ └── branchingLoop.proof │ │ ├── testrules.key │ │ ├── updatesimplification │ │ ├── A.java │ │ ├── testAnonymous1.key │ │ ├── testAnonymous2.key │ │ ├── testArrayRule1.key │ │ ├── testArrayRule2.key │ │ ├── testAttributeRule1.key │ │ ├── testAttributeRule2.key │ │ ├── testAttributeRule3.key │ │ ├── testAttributeRule4.key │ │ ├── testDeletion.key │ │ ├── testDeletion10.key │ │ ├── testDeletion11.key │ │ ├── testDeletion2.key │ │ ├── testDeletion3.key │ │ ├── testDeletion4.key │ │ ├── testDeletion5.key │ │ ├── testDeletion6.key │ │ ├── testDeletion7.key │ │ ├── testDeletion8.key │ │ ├── testDeletion9.key │ │ ├── testHeapDependent1.key │ │ ├── testHeapDependent2.key │ │ ├── testLocationFunction1.key │ │ ├── testLocationFunction2.key │ │ ├── testLocationFunction3.key │ │ ├── testQuantified1.key │ │ ├── testQuantified2.key │ │ ├── testQuantified3.key │ │ ├── testQuantified4.key │ │ ├── testQuantified5.key │ │ ├── testShadowOnShadowDiffNr.key │ │ ├── testShadowOnShadowSameNr.key │ │ ├── testShadowedArrayRule1.key │ │ ├── testShadowedArrayRule2.key │ │ ├── testShadowedAttributeRule1.key │ │ └── testShadowedAttributeRule2.key │ │ └── updateterm │ │ ├── UpdateTest.java │ │ ├── updatetermTest.key │ │ ├── updatetermTest0.key │ │ ├── updatetermTest1.key │ │ ├── updatetermTest2.key │ │ ├── updatetermTest3.key │ │ └── updatetermTest4.key └── tacletProofs │ ├── IntDiv │ ├── Taclet_cancel_gtNeg.proof │ ├── Taclet_cancel_gtPos.proof │ ├── Taclet_divAddMultDenom.proof │ ├── Taclet_divGreatestDNeg.proof │ ├── Taclet_divGreatestDPos.proof │ ├── Taclet_divIncreasingNeg.proof │ ├── Taclet_divIncreasingPos.proof │ ├── Taclet_divLeastDNeg.proof │ ├── Taclet_divLeastDPos.proof │ ├── Taclet_divMinus.proof │ ├── Taclet_divMinusDenom.proof │ ├── Taclet_divResOne1.proof │ ├── Taclet_divResOne2.proof │ ├── Taclet_divResZero1.proof │ ├── Taclet_divResZero2.proof │ ├── Taclet_div_cancel1.proof │ ├── Taclet_div_cancel2.proof │ ├── Taclet_div_exists.proof │ ├── Taclet_div_one.proof │ ├── Taclet_div_unique1.proof │ ├── Taclet_div_unique2.proof │ ├── Taclet_div_zero.proof │ ├── Taclet_intDivRem.proof │ ├── Taclet_irrflConcrete1.proof │ ├── Taclet_irrflConcrete2.proof │ ├── Taclet_jdivAddMultDenom.proof │ ├── Taclet_jdivMultDenom1.proof │ ├── Taclet_jdivMultDenom2.proof │ ├── Taclet_jdivPulloutMinusDenom.proof │ ├── Taclet_jdivPulloutMinusNum.proof │ ├── Taclet_jdiv_one.proof │ ├── Taclet_jdiv_uniqueNegNeg.proof │ ├── Taclet_jdiv_uniqueNegPos.proof │ ├── Taclet_jdiv_uniquePosNeg.proof │ ├── Taclet_jdiv_uniquePosPos.proof │ ├── Taclet_jdiv_zero.proof │ ├── Taclet_jmodAddMultDenomZero.proof │ ├── Taclet_jmodAltZero.proof │ ├── Taclet_jmodDivisible.proof │ ├── Taclet_jmodDivisibleRep.proof │ ├── Taclet_jmodNumZero.proof │ ├── Taclet_jmodUnique1.proof │ ├── Taclet_jmodUnique2.proof │ ├── Taclet_jmod_NumNeg.proof │ ├── Taclet_jmod_NumPos.proof │ ├── Taclet_jmod_geZero.proof │ ├── Taclet_jmod_pulloutminusDenom.proof │ ├── Taclet_jmod_pulloutminusNum.proof │ ├── Taclet_jmodjmod.proof │ ├── Taclet_mod_geZero.proof │ ├── Taclet_mod_lessDenom.proof │ ├── Taclet_polyDiv_zero.proof │ └── Taclet_polyMod_ltdivDenom.proof │ ├── booleanRules │ ├── Taclet_ifthenelse_equals.proof │ ├── Taclet_ifthenelse_equals_1.proof │ └── Taclet_ifthenelse_equals_2.proof │ ├── bprod │ ├── Taclet_bprod_all_positive.proof │ └── Taclet_bprod_split.proof │ ├── bsum │ ├── README │ ├── Taclet_bsum_add_concrete.proof │ ├── Taclet_bsum_empty.proof │ ├── Taclet_bsum_equal_except_one_index.proof │ ├── Taclet_bsum_induction_lower.proof │ ├── Taclet_bsum_induction_lower2.proof │ ├── Taclet_bsum_induction_lower2_concrete.proof │ ├── Taclet_bsum_induction_lower_concrete.proof │ ├── Taclet_bsum_induction_upper.proof │ ├── Taclet_bsum_induction_upper2.proof │ ├── Taclet_bsum_induction_upper2_concrete.proof │ ├── Taclet_bsum_induction_upper_concrete.proof │ ├── Taclet_bsum_induction_upper_concrete_2.proof │ ├── Taclet_bsum_less_same_index.proof │ ├── Taclet_bsum_lower_bound.proof │ ├── Taclet_bsum_num_of_bounds.proof │ ├── Taclet_bsum_num_of_bounds2.proof │ ├── Taclet_bsum_num_of_gt0.proof │ ├── Taclet_bsum_num_of_gt0_alt.proof │ ├── Taclet_bsum_num_of_is_max.proof │ ├── Taclet_bsum_num_of_is_max2.proof │ ├── Taclet_bsum_num_of_is_max3.proof │ ├── Taclet_bsum_num_of_is_max4.proof │ ├── Taclet_bsum_num_of_lt_max.proof │ ├── Taclet_bsum_num_of_lt_max2.proof │ ├── Taclet_bsum_num_of_lt_max3.proof │ ├── Taclet_bsum_num_of_lt_max4.proof │ ├── Taclet_bsum_positive.proof │ ├── Taclet_bsum_positive_lower_bound_element.proof │ ├── Taclet_bsum_sub_same_index.proof │ └── Taclet_bsum_upper_bound.proof │ ├── firstOrder │ ├── Taclet_eqTermCut.proof │ └── Taclet_equivAllRight.proof │ ├── intPow │ ├── Taclet_log1Concrete.proof │ ├── Taclet_logLessThanPow.proof │ ├── Taclet_logLessThanPowConcrete.proof │ ├── Taclet_logMono.proof │ ├── Taclet_logMonoConcrete.proof │ ├── Taclet_logPositive.proof │ ├── Taclet_logPositiveConcrete.proof │ ├── Taclet_logPowIdentity.proof │ ├── Taclet_logPowIdentityConcrete.proof │ ├── Taclet_logProdIdentity.proof │ ├── Taclet_logProdIdentityConcrete.proof │ ├── Taclet_logProduct.proof │ ├── Taclet_logSelfConcrete.proof │ ├── Taclet_logSqueeze.proof │ ├── Taclet_logTimesBaseConcrete.proof │ ├── Taclet_pow2InIntLower.proof │ ├── Taclet_pow2InIntUpper.proof │ ├── Taclet_powAdd.proof │ ├── Taclet_powConcrete0.proof │ ├── Taclet_powConcrete1.proof │ ├── Taclet_powGeq1Concrete.proof │ ├── Taclet_powLogLess.proof │ ├── Taclet_powLogMore2.proof │ ├── Taclet_powMono.proof │ ├── Taclet_powMonoConcrete.proof │ ├── Taclet_powMonoConcreteRight.proof │ ├── Taclet_powPositive.proof │ ├── Taclet_powPositiveConcrete.proof │ └── Taclet_powSplitFactor.proof │ ├── intRulesCheckingOF │ ├── README.txt │ ├── Taclet_moduloByteFixpoint.proof.ignore │ ├── Taclet_moduloByteIsInByte.proof.ignore │ ├── Taclet_moduloCharFixpoint.proof.ignore │ ├── Taclet_moduloCharIsInChar.proof.ignore │ ├── Taclet_moduloIntFixpoint.proof.ignore │ ├── Taclet_moduloIntIsInInt.proof.ignore │ ├── Taclet_moduloLongFixpoint.proof.ignore │ ├── Taclet_moduloLongIsInLong.proof.ignore │ ├── Taclet_moduloShortFixpoint.proof.ignore │ └── Taclet_moduloShortIsInShort.proof.ignore │ ├── intRulesIgnoringOF │ ├── Taclet_moduloByteIsInByte.proof │ ├── Taclet_moduloCharIsInChar.proof │ ├── Taclet_moduloIntIsInInt.proof │ ├── Taclet_moduloLongIsInLong.proof │ └── Taclet_moduloShortIsInShort.proof │ ├── intRulesJavaSemantics │ ├── README.txt │ ├── Taclet_moduloByteFixpoint.proof.ignore │ ├── Taclet_moduloByteIsInByte.proof.ignore │ ├── Taclet_moduloCharFixpoint.proof.ignore │ ├── Taclet_moduloCharIsInChar.proof.ignore │ ├── Taclet_moduloIntFixpoint.proof.ignore │ ├── Taclet_moduloIntIsInInt.proof.ignore │ ├── Taclet_moduloLongFixpoint.proof.ignore │ ├── Taclet_moduloLongIsInLong.proof.ignore │ ├── Taclet_moduloShortFixpoint.proof.ignore │ └── Taclet_moduloShortIsInShort.proof.ignore │ ├── locSet │ ├── Taclet_disjointArrayRangeAllFields1.proof │ ├── Taclet_disjointArrayRangeAllFields2.proof │ ├── Taclet_disjointArrayRanges.proof │ ├── Taclet_disjointWithSingleton1.proof │ ├── Taclet_disjointWithSingleton2.proof │ └── Taclet_equalityOfSingleton.proof │ ├── seqPerm │ ├── Taclet_getAnyOfNPermInv.proof │ ├── Taclet_seqNPermRange.proof │ ├── Taclet_seqNPermRange.txt │ ├── Taclet_seqPermExists.proof │ ├── Taclet_seqPermForall.proof │ ├── Taclet_seqPermFromSwap.proof │ ├── Taclet_seqPermRefl.proof │ ├── Taclet_seqPermSplit.proof │ ├── Taclet_seqPermTrans.proof │ ├── Taclet_seqPermTransAlt0.proof │ ├── Taclet_seqPermTransAlt1.proof │ ├── Taclet_seqPermTransAlt2.proof │ ├── Taclet_seqPermTransAlt3.proof │ ├── Taclet_seqSwapPreservesSeqPerm.proof │ └── Taclet_seqSwapPreservesSeqPermEQ.proof │ ├── seqPerm2 │ ├── Taclet_schiffl_lemma_2.proof │ ├── Taclet_schiffl_lemma_2.proof.lowlevel.gz │ └── Taclet_schiffl_thm_1.proof │ └── seqRules │ ├── Taclet_castedGetAny.proof │ ├── Taclet_eqSameSeq.proof │ ├── Taclet_equalityToSeqGetAndSeqLenLeft.proof │ ├── Taclet_equalityToSeqGetAndSeqLenRight.proof │ ├── Taclet_getAnyOfArray2seq.proof │ ├── Taclet_getOfArray2seq.proof │ ├── Taclet_getOfSeqConcat.proof │ ├── Taclet_getOfSeqConcatEQ.proof │ ├── Taclet_getOfSeqDefEQ.proof │ ├── Taclet_getOfSeqReverse.proof │ ├── Taclet_getOfSeqReverseEQ.proof │ ├── Taclet_getOfSeqSingleton.proof │ ├── Taclet_getOfSeqSingletonConcrete.proof │ ├── Taclet_getOfSeqSingletonEQ.proof │ ├── Taclet_getOfSeqSub.proof │ ├── Taclet_getOfSeqSubEQ.proof │ ├── Taclet_getOfSeqUpd.proof │ ├── Taclet_indexOfSeqConcatFirst.proof │ ├── Taclet_indexOfSeqConcatSecond.proof │ ├── Taclet_indexOfSeqSingleton.proof │ ├── Taclet_indexOfSeqSub.proof │ ├── Taclet_lenOfArray2seq.proof │ ├── Taclet_lenOfSeqConcat.proof │ ├── Taclet_lenOfSeqConcatEQ.proof │ ├── Taclet_lenOfSeqDefEQ.proof │ ├── Taclet_lenOfSeqEmpty.proof │ ├── Taclet_lenOfSeqEmptyEQ.proof │ ├── Taclet_lenOfSeqReverse.proof │ ├── Taclet_lenOfSeqReverseEQ.proof │ ├── Taclet_lenOfSeqSingleton.proof │ ├── Taclet_lenOfSeqSingletonEQ.proof │ ├── Taclet_lenOfSeqSub.proof │ ├── Taclet_lenOfSeqSubEQ.proof │ ├── Taclet_lenOfSeqUpd.proof │ ├── Taclet_seqConcatWithSeqEmpty1.proof │ ├── Taclet_seqConcatWithSeqEmpty2.proof │ ├── Taclet_seqDefOfSeq.proof │ ├── Taclet_seqDef_empty.proof │ ├── Taclet_seqDef_induction_lower.proof │ ├── Taclet_seqDef_induction_lower_concrete.proof │ ├── Taclet_seqDef_induction_upper.proof │ ├── Taclet_seqDef_induction_upper_concrete.proof │ ├── Taclet_seqDef_lower_equals_upper.proof │ ├── Taclet_seqDef_one_summand.proof │ ├── Taclet_seqDef_split.proof │ ├── Taclet_seqDef_split_in_three.proof │ ├── Taclet_seqGetAlphaCast.proof │ ├── Taclet_seqIndexOf2.proof.hidden │ ├── Taclet_seqNPermRight.proof │ ├── Taclet_seqNPermRight.proof.old │ ├── Taclet_seqOutsideValue.proof │ ├── Taclet_seqReverseOfSeqEmpty.proof │ ├── Taclet_seqSelfDefinition.proof │ ├── Taclet_seqSelfDefinitionEQ2.proof │ ├── Taclet_subSeqComplete.proof │ ├── Taclet_subSeqTailEQL.proof │ ├── Taclet_subSeqTailEQR.proof │ ├── Taclet_subSeqTailL.proof │ └── Taclet_subSeqTailR.proof ├── key.ncore.calculus ├── README.md ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── key_project │ │ │ └── prover │ │ │ ├── engine │ │ │ ├── AbstractProverCore.java │ │ │ ├── GoalChooser.java │ │ │ ├── GoalChooserFactory.java │ │ │ ├── ProofSearchInformation.java │ │ │ ├── ProverCore.java │ │ │ ├── ProverTaskListener.java │ │ │ ├── SingleRuleApplicationInfo.java │ │ │ ├── StopCondition.java │ │ │ ├── TaskFinishedInfo.java │ │ │ ├── TaskStartedInfo.java │ │ │ ├── impl │ │ │ │ ├── AppliedRuleStopCondition.java │ │ │ │ ├── ApplyStrategyInfo.java │ │ │ │ ├── DefaultProver.java │ │ │ │ └── package-info.java │ │ │ └── package-info.java │ │ │ ├── indexing │ │ │ ├── FormulaTag.java │ │ │ ├── FormulaTagManager.java │ │ │ └── RuleIndex.java │ │ │ ├── package-info.java │ │ │ ├── proof │ │ │ ├── ProofGoal.java │ │ │ ├── ProofObject.java │ │ │ ├── ProofServices.java │ │ │ ├── SessionCaches.java │ │ │ ├── package-info.java │ │ │ └── rulefilter │ │ │ │ ├── AndRuleFilter.java │ │ │ │ ├── AnyRuleSetTacletFilter.java │ │ │ │ ├── IHTacletFilter.java │ │ │ │ ├── NotRuleFilter.java │ │ │ │ ├── RuleFilter.java │ │ │ │ ├── SetRuleFilter.java │ │ │ │ ├── TacletFilter.java │ │ │ │ └── package-info.java │ │ │ ├── rules │ │ │ ├── ApplicationRestriction.java │ │ │ ├── Rule.java │ │ │ ├── RuleAbortException.java │ │ │ ├── RuleApp.java │ │ │ ├── RuleExecutor.java │ │ │ ├── RuleSet.java │ │ │ ├── Taclet.java │ │ │ ├── TacletAnnotation.java │ │ │ ├── TacletApplPart.java │ │ │ ├── TacletAttributes.java │ │ │ ├── TacletExecutor.java │ │ │ ├── TacletMatcher.java │ │ │ ├── TacletPrefix.java │ │ │ ├── Trigger.java │ │ │ ├── VariableCondition.java │ │ │ ├── conditions │ │ │ │ ├── NewDependingOn.java │ │ │ │ ├── NewVarcond.java │ │ │ │ ├── NotFreeIn.java │ │ │ │ └── package-info.java │ │ │ ├── instantiation │ │ │ │ ├── AssumesFormulaInstDirect.java │ │ │ │ ├── AssumesFormulaInstSeq.java │ │ │ │ ├── AssumesFormulaInstantiation.java │ │ │ │ ├── AssumesMatchResult.java │ │ │ │ ├── IllegalInstantiationException.java │ │ │ │ ├── InstantiationEntry.java │ │ │ │ ├── ListInstantiation.java │ │ │ │ ├── MatchResultInfo.java │ │ │ │ ├── SVInstantiations.java │ │ │ │ ├── caches │ │ │ │ │ └── AssumesFormulaInstantiationCache.java │ │ │ │ └── package-info.java │ │ │ ├── matcher │ │ │ │ └── vm │ │ │ │ │ ├── VMProgramInterpreter.java │ │ │ │ │ └── instruction │ │ │ │ │ ├── CheckNodeKindInstruction.java │ │ │ │ │ ├── GotoNextInstruction.java │ │ │ │ │ ├── GotoNextSiblingInstruction.java │ │ │ │ │ ├── MatchIdentityInstruction.java │ │ │ │ │ ├── MatchInstruction.java │ │ │ │ │ └── VMInstruction.java │ │ │ ├── package-info.java │ │ │ └── tacletbuilder │ │ │ │ ├── TacletGoalTemplate.java │ │ │ │ └── package-info.java │ │ │ ├── sequent │ │ │ ├── FormulaChangeInfo.java │ │ │ ├── PIOPathIterator.java │ │ │ ├── PosInOccurrence.java │ │ │ ├── Semisequent.java │ │ │ ├── SemisequentChangeInfo.java │ │ │ ├── Sequent.java │ │ │ ├── SequentChangeInfo.java │ │ │ ├── SequentFormula.java │ │ │ ├── SequentKit.java │ │ │ └── package-info.java │ │ │ └── strategy │ │ │ ├── DelegationBasedRuleApplicationManager.java │ │ │ ├── NewRuleListener.java │ │ │ ├── RuleApplicationManager.java │ │ │ ├── costbased │ │ │ ├── MutableState.java │ │ │ ├── NumberRuleAppCost.java │ │ │ ├── RuleAppCost.java │ │ │ ├── TopRuleAppCost.java │ │ │ ├── feature │ │ │ │ ├── AutomatedRuleFeature.java │ │ │ │ ├── BelowBinderFeature.java │ │ │ │ ├── BinaryFeature.java │ │ │ │ ├── CompareCostsFeature.java │ │ │ │ ├── ConditionalFeature.java │ │ │ │ ├── ConstFeature.java │ │ │ │ ├── Feature.java │ │ │ │ ├── FindDepthFeature.java │ │ │ │ ├── FocusInAntecFeature.java │ │ │ │ ├── LetFeature.java │ │ │ │ ├── ScaleFeature.java │ │ │ │ ├── ShannonFeature.java │ │ │ │ ├── SortComparisonFeature.java │ │ │ │ ├── SumFeature.java │ │ │ │ └── instantiator │ │ │ │ │ ├── BackTrackingManager.java │ │ │ │ │ ├── CPBranch.java │ │ │ │ │ └── ChoicePoint.java │ │ │ ├── package-info.java │ │ │ ├── termProjection │ │ │ │ ├── ProjectionToTerm.java │ │ │ │ └── TermBuffer.java │ │ │ ├── termfeature │ │ │ │ ├── ApplyTFFeature.java │ │ │ │ ├── BinarySumTermFeature.java │ │ │ │ ├── BinaryTermFeature.java │ │ │ │ ├── ClosedExpressionTermFeature.java │ │ │ │ ├── ConstTermFeature.java │ │ │ │ ├── IsNonRigidTermFeature.java │ │ │ │ ├── OperatorClassTF.java │ │ │ │ ├── OperatorTF.java │ │ │ │ ├── PrintTermFeature.java │ │ │ │ ├── RecSubTermFeature.java │ │ │ │ ├── ShannonTermFeature.java │ │ │ │ ├── SortExtendsTransTermFeature.java │ │ │ │ ├── SubTermFeature.java │ │ │ │ ├── TermFeature.java │ │ │ │ └── TermPredicateTermFeature.java │ │ │ └── termgenerator │ │ │ │ ├── SequentFormulasGenerator.java │ │ │ │ ├── SubtermGenerator.java │ │ │ │ └── TermGenerator.java │ │ │ └── package-info.java │ └── resources │ │ └── Readme.md │ └── test │ └── resources │ └── Readme.md ├── key.ncore ├── README.md ├── build.gradle └── src │ ├── main │ ├── antlr │ │ ├── KeYCommonParser.g4 │ │ ├── KeYGlobalDeclParser.g4 │ │ ├── KeYLexer.g4 │ │ ├── KeYParser.g4 │ │ ├── KeYSequentParser.g4 │ │ ├── KeYTacletParser.g4 │ │ └── KeYTermParser.g4 │ ├── java │ │ └── org │ │ │ └── key_project │ │ │ └── logic │ │ │ ├── Choice.java │ │ │ ├── ChoiceExpr.java │ │ │ ├── HasOrigin.java │ │ │ ├── IntIterator.java │ │ │ ├── LanguageElement.java │ │ │ ├── LogicElement.java │ │ │ ├── LogicServices.java │ │ │ ├── Name.java │ │ │ ├── Named.java │ │ │ ├── Namespace.java │ │ │ ├── PoolSyntaxElementCursor.java │ │ │ ├── PosInTerm.java │ │ │ ├── Program.java │ │ │ ├── Property.java │ │ │ ├── Sorted.java │ │ │ ├── SyntaxElement.java │ │ │ ├── SyntaxElementCursor.java │ │ │ ├── Term.java │ │ │ ├── TermCreationException.java │ │ │ ├── TerminalSyntaxElement.java │ │ │ ├── Visitor.java │ │ │ ├── op │ │ │ ├── AbstractOperator.java │ │ │ ├── AbstractSortedOperator.java │ │ │ ├── Function.java │ │ │ ├── Modality.java │ │ │ ├── Modifier.java │ │ │ ├── Operator.java │ │ │ ├── ParsableVariable.java │ │ │ ├── QuantifiableVariable.java │ │ │ ├── SortedOperator.java │ │ │ ├── UpdateableOperator.java │ │ │ ├── package-info.java │ │ │ └── sv │ │ │ │ ├── OperatorSV.java │ │ │ │ └── SchemaVariable.java │ │ │ ├── package-info.java │ │ │ └── sort │ │ │ ├── AbstractSort.java │ │ │ ├── Sort.java │ │ │ └── package-info.java │ └── resources │ │ └── Readme.md │ └── test │ ├── java │ └── org │ │ └── key_project │ │ └── logic │ │ ├── NameTest.java │ │ ├── Readme.md │ │ └── SyntaxElementCursorTest.java │ └── resources │ └── Readme.md ├── key.removegenerics ├── build.gradle └── src │ ├── main │ └── java │ │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── util │ │ └── removegenerics │ │ ├── AbstractGenericRemover.java │ │ ├── GenericRemover.java │ │ ├── GenericResolutionTransformation.java │ │ ├── Main.java │ │ ├── PreviewGenericRemover.java │ │ ├── ResolveGenerics.java │ │ ├── ResolveMemberReference.java │ │ ├── ResolveMethodDeclaration.java │ │ ├── ResolveTypeDeclaration.java │ │ ├── ResolveTypeReference.java │ │ ├── SingleLineCommentRepairer.java │ │ └── monitor │ │ ├── ConsoleGenericRemoverMonitor.java │ │ └── GenericRemoverMonitor.java │ └── test │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── util │ │ └── removegenerics │ │ ├── ResolveGenericClass.java │ │ ├── TestClassDeclaration.java │ │ ├── TestComment.java │ │ ├── TestMemberReference.java │ │ ├── TestMethodDeclaration.java │ │ ├── TestMultipleBounds.java │ │ └── TestTypeReference.java │ └── resources │ └── logback.xml ├── key.ui ├── build.gradle ├── examples │ ├── InformationFlow │ │ ├── BlockContracts │ │ │ ├── README.txt │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_no_return_secure(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_no_return_secure(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_no_return_secure(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_while_secure(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_while_secure(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__block_while_secure(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_1(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_1(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_1(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_3(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_3(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_3(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_4(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_4(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__insecure_4(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_1(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_1(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_1(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_2(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_2(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_2(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_3(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_3(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_3(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_4(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_4(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_4(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_5()).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_5()).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_5()).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_6(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_6(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_6(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_7(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_7(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_7(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_8(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_8(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__secure_8(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_insecure(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_insecure(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_insecure(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_secure(int)).JML operation contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_secure(int)).Non-interference contract.0.key │ │ │ ├── contract.IFBlockExamples(contract.IFBlockExamples__while_block_secure(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithBlockContract()).JML operation contract.0.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithBlockContract()).Non-interference contract.0.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithBlockContract()).Non-interference contract.0.m.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithoutBlockContract()).JML operation contract.0.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithoutBlockContract()).Non-interference contract.0.key │ │ │ ├── contract.IFEfficiencyExamples(contract.IFEfficiencyExamples__mWithoutBlockContract()).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── contract │ │ │ │ ├── IFBlockExamples.java │ │ │ │ └── IFEfficiencyExamples.java │ │ ├── ConditionalConfidential │ │ │ ├── CCExample(CCExample__getConfidentialData(CCExample.User)).JML normal_behavior operation contract.0.key │ │ │ ├── CCExample(CCExample__getConfidentialData(CCExample.User)).Non-interference contract.0.key │ │ │ ├── CCExample(CCExample__getConfidentialData(CCExample.User)).Non-interference contract.0.m.key │ │ │ ├── CCExample(CCExample__hasAccessRight(CCExample.User)).JML normal_behavior operation contract.0.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── ConditionalConfidentialExample.java │ │ ├── LoopInvariants │ │ │ ├── README.txt │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__hammer(int)).JML normal_behavior operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__hammer(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__hammer(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile2(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile2(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_doubleNestedWhile2(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile_2(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile_2(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_twoWhile_2(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_while_3(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_while_3(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__insecure_while_3(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__loc_secure_while(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__loc_secure_while(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__loc_secure_while(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while_wrongInv(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while_wrongInv(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__notSecure_while_wrongInv(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__print(int)).JML normal_behavior operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__print(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__print(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_doubleNestedWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_doubleNestedWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_doubleNestedWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedTwoWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedTwoWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedTwoWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_nestedWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_twoWhile(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_twoWhile(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_twoWhile(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_2(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_2(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_2(int)).Non-interference contract.0.m.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_4(int)).JML operation contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_4(int)).Non-interference contract.0.key │ │ │ ├── loop.IFLoopExamples(loop.IFLoopExamples__secure_while_4(int)).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── loop │ │ │ │ └── IFLoopExamples.java │ │ ├── MethodContracts │ │ │ ├── README.txt │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_assignment_n2()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_assignment_n2()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_assignment_n2()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_if_high_n5_n1()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_if_high_n5_n1()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__insecure_if_high_n5_n1()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n1()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n1()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n1()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n2()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n2()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n2()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n3()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n3()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n3()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n4()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n4()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n4()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n5(int)).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n5(int)).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n5(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n6()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n6()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n6()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__n9()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_array_param((I,int)).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_array_param((I,int)).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_array_param((I,int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_array_param_helper()).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignment_0_n9()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignment_0_n9()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignment_0_n9()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignments_n2()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignments_n2()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_assignments_n2()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_catch_exception()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_catch_exception()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_catch_exception()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n1()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n1()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n1()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n5_n1()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n5_n1()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_if_high_n5_n1()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n5()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n5()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n5()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n6()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n6()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_n6()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion(int)).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion(int)).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion(int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion_2((I,int)).JML normal_behavior operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion_2((I,int)).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_recursion_2((I,int)).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n1_n2()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n1_n2()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n1_n2()).Non-interference contract.0.m.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n3_precond_n4()).JML operation contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n3_precond_n4()).Non-interference contract.0.key │ │ │ ├── contract.IFMethodContract(contract.IFMethodContract__secure_sequential_n3_precond_n4()).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── contract │ │ │ │ └── IFMethodContract.java │ │ ├── MiniExamples │ │ │ ├── README.txt │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__insecure_1(mini.AliasingExamples,mini.AliasingExamples,int)).JML operation contract.0.key │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__insecure_1(mini.AliasingExamples,mini.AliasingExamples,int)).Non-interference contract.0.key │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__insecure_1(mini.AliasingExamples,mini.AliasingExamples,int)).Non-interference contract.0.m.key │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__secure_1(mini.AliasingExamples,mini.AliasingExamples,int)).JML operation contract.0.key │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__secure_1(mini.AliasingExamples,mini.AliasingExamples,int)).Non-interference contract.0.key │ │ │ ├── mini.AliasingExamples(mini.AliasingExamples__secure_1(mini.AliasingExamples,mini.AliasingExamples,int)).Non-interference contract.0.m.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).JML normal_behavior operation contract.1.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).Non-interference contract.0.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).Non-interference contract.0.m.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).Non-interference contract.1.key │ │ │ ├── mini.DifferenceSeqLocset(mini.DifferenceSeqLocset__m()).Non-interference contract.1.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_1()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_1()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_1()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_2()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_2()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p1_2()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_1()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_1()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_1()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_2()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_2()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__insecure_p2_2()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).JML normal_behavior operation contract.1.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).Non-interference contract.1.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_1()).Non-interference contract.1.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_2()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_2()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_2()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_3()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_3()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_3()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_4()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_4()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_4()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_5()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_5()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_5()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_6()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_6()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p1_6()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_1()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_1()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_1()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_2()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_2()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_2()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_3()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_3()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_3()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_4()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_4()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_4()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_5()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_5()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_5()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_6()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_6()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_6()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_7()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_7()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_7()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_8()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_8()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_p2_8()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_parameter(int)).JML operation contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_parameter(int)).Non-interference contract.0.key │ │ │ ├── mini.MiniExamples(mini.MiniExamples__secure_parameter(int)).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_1()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_1()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_1()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_2()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_2()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_2()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_3()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_3()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_3()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_4()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_4()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_4()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_5()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_5()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_5()).Non-interference contract.0.m.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_6()).JML normal_behavior operation contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_6()).Non-interference contract.0.key │ │ │ ├── mini.MiniExamplesLecture(mini.MiniExamplesLecture__m_6()).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── mini │ │ │ │ ├── AliasingExamples.java │ │ │ │ ├── DifferenceSeqLocset.java │ │ │ │ ├── MiniExamples.java │ │ │ │ └── MiniExamplesLecture.java │ │ ├── NewObjects │ │ │ ├── README.txt │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__getQ()).JML normal_behavior operation contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__getQ()).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__getQ()).Non-interference contract.0.m.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).JML normal_behavior operation contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).JML normal_behavior operation contract.1.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).Non-interference contract.0.m.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).Non-interference contract.1.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_1()).Non-interference contract.1.m.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_2()).JML normal_behavior operation contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_2()).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee(object.AmtoftBanerjee__m_2()).Non-interference contract.0.m.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__cexp(int)).JML normal_behavior operation contract.0.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__cexp(int)).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__cexp(int)).Non-interference contract.0.m.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__expensive(int)).JML accessible clause.0.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__expensive(int)).JML normal_behavior operation contract.0.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__expensive(int)).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee2(object.AmtoftBanerjee2__expensive(int)).Non-interference contract.0.m.key │ │ │ ├── object.AmtoftBanerjee3(object.AmtoftBanerjee3__m()).JML operation contract.0.key │ │ │ ├── object.AmtoftBanerjee3(object.AmtoftBanerjee3__m()).Non-interference contract.0.key │ │ │ ├── object.AmtoftBanerjee3(object.AmtoftBanerjee3__m()).Non-interference contract.0.m.key │ │ │ ├── object.Naumann(object.Naumann__Pair_m(int,int)).JML operation contract.0.key │ │ │ ├── object.Naumann(object.Naumann__Pair_m(int,int)).Non-interference contract.0.key │ │ │ ├── object.Naumann(object.Naumann__Pair_m(int,int)).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).JML operation contract.1.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).Non-interference contract.1.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__if_two_object_creation_next()).Non-interference contract.1.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).JML operation contract.1.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).Non-interference contract.1.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_object_assignment()).Non-interference contract.1.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_two_object_creation()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_two_object_creation()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__insecure_two_object_creation()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_if_two_object_creation()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_if_two_object_creation()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_if_two_object_creation()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_method_call()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_method_call()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_method_call()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_2()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_2()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_2()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_3()).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_3()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_object_creation_3()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_two_object_creation()).JML normal_behavior operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_two_object_creation()).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_two_object_creation()).Non-interference contract.0.m.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_while_i((Ljava.lang.Object)).JML operation contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_while_i((Ljava.lang.Object)).Non-interference contract.0.key │ │ │ ├── object.ObjectOrientation(object.ObjectOrientation__secure_while_i((Ljava.lang.Object)).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── object │ │ │ │ ├── AmtoftBanerjee.java │ │ │ │ ├── AmtoftBanerjee2.java │ │ │ │ ├── AmtoftBanerjee3.java │ │ │ │ ├── Naumann.java │ │ │ │ └── ObjectOrientation.java │ │ ├── PasswordFile │ │ │ ├── passwordfile.SecurePasswordFile(passwordfile.SecurePasswordFile___userIndex()).JML accessible clause.0.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── passwordfile │ │ │ │ └── SecurePasswordFile.java │ │ ├── SimpleEvoting │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment___rep()).JML accessible clause.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput()).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput()).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput(int)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput(int)).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInput(int)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage((B)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage((B)).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage((B)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage()).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedInputMessage()).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutput(int)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutput(int)).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutput(int)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutputMessage((B)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutputMessage((B)).Non-interference contract.0.key │ │ │ ├── simple_evoting.Environment(simple_evoting.Environment__untrustedOutputMessage((B)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Message(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── simple_evoting.NetworkClient(simple_evoting.NetworkClient__send((B,simple_evoting.Server,int)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.NetworkClient(simple_evoting.NetworkClient__send((B,simple_evoting.Server,int)).Non-interference contract.0.key │ │ │ ├── simple_evoting.NetworkClient(simple_evoting.NetworkClient__send((B,simple_evoting.Server,int)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).JML normal_behavior operation contract.1.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).Non-interference contract.0.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).Non-interference contract.1.key │ │ │ ├── simple_evoting.SMT(simple_evoting.SMT__send(simple_evoting.Message,int,simple_evoting.Server)).Non-interference contract.1.m.key │ │ │ ├── simple_evoting.SMTEnv(simple_evoting.SMTEnv__send(int,int,int,simple_evoting.Server,int)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.SMTEnv(simple_evoting.SMTEnv__send(int,int,int,simple_evoting.Server,int)).Non-interference contract.0.key │ │ │ ├── simple_evoting.SMTEnv(simple_evoting.SMTEnv__send(int,int,int,simple_evoting.Server,int)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Server(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── simple_evoting.Server(simple_evoting.Server__onCollectBallot(simple_evoting.Message)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Server(simple_evoting.Server__onCollectBallot(simple_evoting.Message)).JML normal_behavior operation contract.1.key │ │ │ ├── simple_evoting.Server(simple_evoting.Server__onSendResult()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Server(simple_evoting.Server__resultReady()).JML accessible clause.0.key │ │ │ ├── simple_evoting.Server(simple_evoting.Server__resultReady()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Setup(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__main()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__main()).Non-interference contract.0.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__main()).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__publishResult()).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__publishResult()).Non-interference contract.0.key │ │ │ ├── simple_evoting.Setup(simple_evoting.Setup__publishResult()).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Voter(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).JML normal_behavior operation contract.0.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).JML normal_behavior operation contract.1.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).Non-interference contract.0.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).Non-interference contract.0.m.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).Non-interference contract.1.key │ │ │ ├── simple_evoting.Voter(simple_evoting.Voter__onSendBallot(simple_evoting.Server)).Non-interference contract.1.m.key │ │ │ └── src │ │ │ │ └── simple_evoting │ │ │ │ ├── Environment.java │ │ │ │ ├── Message.java │ │ │ │ ├── NetworkClient.java │ │ │ │ ├── SMT.java │ │ │ │ ├── SMTEnv.java │ │ │ │ ├── Server.java │ │ │ │ ├── Setup.java │ │ │ │ └── Voter.java │ │ ├── Sum │ │ │ ├── README.txt │ │ │ ├── SumExample(SumExample__getSum()).JML normal_behavior operation contract.0.key │ │ │ ├── SumExample(SumExample__getSum()).Non-interference contract.0.key │ │ │ ├── SumExample(SumExample__getSum()).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── SumExample.java │ │ ├── ToyBanking │ │ │ ├── README.txt │ │ │ ├── README2.txt │ │ │ ├── banking_example.Bank(banking_example.Bank__login(int,(C)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.Bank(banking_example.Bank__login(int,(C)).Non-interference contract.0.key │ │ │ ├── banking_example.Bank(banking_example.Bank__login(int,(C)).Non-interference contract.0.m.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__depositMoney(int)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__depositMoney(int)).Non-interference contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__depositMoney(int)).Non-interference contract.0.m.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getBalance()).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getBalance()).Non-interference contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getBalance()).Non-interference contract.0.m.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getId()).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getId()).Non-interference contract.0.key │ │ │ ├── banking_example.BankAccount(banking_example.BankAccount__getId()).Non-interference contract.0.m.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__getBankAccount(int)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__getBankAccount(int)).Non-interference contract.0.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__getBankAccount(int)).Non-interference contract.0.m.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__tryLogin(int,(C)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__tryLogin(int,(C)).Non-interference contract.0.key │ │ │ ├── banking_example.UserAccount(banking_example.UserAccount__tryLogin(int,(C)).Non-interference contract.0.m.key │ │ │ ├── banking_example.UserAccount(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── banking_example2.Bank(banking_example2.Bank__login(int,(C)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.Bank(banking_example2.Bank__login(int,(C)).Non-interference contract.0.key │ │ │ ├── banking_example2.Bank(banking_example2.Bank__login(int,(C)).Non-interference contract.0.m.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__depositMoney(int)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__depositMoney(int)).Non-interference contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__depositMoney(int)).Non-interference contract.0.m.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getBalance()).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getBalance()).Non-interference contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getBalance()).Non-interference contract.0.m.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getId()).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getId()).Non-interference contract.0.key │ │ │ ├── banking_example2.BankAccount(banking_example2.BankAccount__getId()).Non-interference contract.0.m.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__getBankAccount(int)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__getBankAccount(int)).Non-interference contract.0.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__getBankAccount(int)).Non-interference contract.0.m.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__tryLogin(int,(C)).JML normal_behavior operation contract.0.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__tryLogin(int,(C)).Non-interference contract.0.key │ │ │ ├── banking_example2.UserAccount(banking_example2.UserAccount__tryLogin(int,(C)).Non-interference contract.0.m.key │ │ │ ├── banking_example2.UserAccount(java.lang.Object___inv_()).JML accessible clause.0.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── banking_example │ │ │ │ ├── Bank.java │ │ │ │ ├── BankAccount.java │ │ │ │ └── UserAccount.java │ │ │ │ └── banking_example2 │ │ │ │ ├── Bank.java │ │ │ │ ├── BankAccount.java │ │ │ │ └── UserAccount.java │ │ └── ToyVoting │ │ │ ├── README.txt │ │ │ ├── Voter(Voter__inputVote()).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__inputVote()).Non-interference contract.0.key │ │ │ ├── Voter(Voter__inputVote()).Non-interference contract.0.m.key │ │ │ ├── Voter(Voter__insecure_voting()).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__insecure_voting()).Non-interference contract.0.key │ │ │ ├── Voter(Voter__insecure_voting()).Non-interference contract.0.m.key │ │ │ ├── Voter(Voter__isValid(int)).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__isValid(int)).Non-interference contract.0.key │ │ │ ├── Voter(Voter__isValid(int)).Non-interference contract.0.m.key │ │ │ ├── Voter(Voter__publishVoterParticipation()).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__publishVoterParticipation()).Non-interference contract.0.key │ │ │ ├── Voter(Voter__publishVoterParticipation()).Non-interference contract.0.m.key │ │ │ ├── Voter(Voter__secure_voting()).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__secure_voting()).Non-interference contract.0.key │ │ │ ├── Voter(Voter__secure_voting()).Non-interference contract.0.m.key │ │ │ ├── Voter(Voter__sendVote(int)).JML normal_behavior operation contract.0.key │ │ │ ├── Voter(Voter__sendVote(int)).Non-interference contract.0.key │ │ │ ├── Voter(Voter__sendVote(int)).Non-interference contract.0.m.key │ │ │ ├── project.key │ │ │ └── src │ │ │ └── Voter.java │ ├── JLS_Conformance_Tests │ │ ├── JLS_15_12_4_Method_Invocation │ │ │ ├── evaluateArgs.key │ │ │ ├── evaluateArgsConst.key │ │ │ ├── methodInvocationIfNoMethodImplExists.key │ │ │ └── src │ │ │ │ ├── A.java │ │ │ │ └── I.java │ │ └── JLS_15_26_Assignment │ │ │ ├── simpleArrayAssignmentNoExc.key │ │ │ ├── simpleArrayAssignment_AIOOB.key │ │ │ ├── simpleArrayAssignment_ASE.key │ │ │ ├── simpleArrayAssignment_ASE_2.key │ │ │ ├── simpleArrayAssignment_NPE.key │ │ │ ├── simpleAssignmentNPE.key │ │ │ ├── simpleAssignment_No_NPE.key │ │ │ ├── src │ │ │ ├── Container.java │ │ │ └── LList.java │ │ │ ├── unfoldLeftArrayAssignment_NPE.key │ │ │ ├── unfoldLeftArrayAssignment_NPE_2.key │ │ │ ├── unfoldLeftArrayAssignment_NPE_3.key │ │ │ ├── unfoldLeftArrayAssignment_Normal.key │ │ │ ├── unfoldLeftAssignment_NPE.key │ │ │ ├── unfoldLeftAssignment_NPE_2.key │ │ │ ├── unfoldLeftAssignment_No_NPE.key │ │ │ ├── unfoldLeftThenUnfoldRightAssignment_NPE.key │ │ │ ├── unfoldLeftThenUnfoldRightAssignment_NPE_2.key │ │ │ ├── unfoldLeftThenUnfoldRightAssignment_No_NPE.key │ │ │ └── unfoldLeftThenUnfoldRightThrowNPEOnRight.key │ ├── Loop1.java │ ├── completionscopes │ │ ├── src │ │ │ └── CompletionScopes.java │ │ ├── testCcatchBreakLabel.key │ │ ├── testCcatchBreakLabelNonmatchingNested.key │ │ ├── testCcatchBreakLabelWildcard.key │ │ ├── testCcatchContinueLabel.key │ │ ├── testCcatchContinueLabelWildcard.key │ │ ├── testCcatchReturnVal.key │ │ ├── testMultCcatchClauses.key │ │ └── testNestedExec.key │ ├── exploration │ │ └── Test.java │ ├── firstTouch │ │ ├── 01-Agatha │ │ │ ├── README.txt │ │ │ ├── example.properties │ │ │ └── project.key │ │ ├── 02-Subset │ │ │ ├── README.txt │ │ │ └── project.key │ │ ├── 05-ReverseArray │ │ │ ├── README.txt │ │ │ ├── classpath │ │ │ │ └── System.java │ │ │ ├── reverse2.proof │ │ │ ├── reverse2WD.key │ │ │ ├── reverse2WD_Y.key │ │ │ ├── reverseArray.key │ │ │ ├── reverseArray.proof │ │ │ └── src │ │ │ │ └── ReverseArray.java │ │ ├── 06-BinarySearch │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── searchWD.key │ │ │ └── src │ │ │ │ └── BinarySearch.java │ │ ├── 08-Java5 │ │ │ ├── For_infiniteLoopWD.key │ │ │ ├── For_infiniteLoopWithWDLoop.key │ │ │ ├── For_invariantWD.key │ │ │ ├── For_sumWD.key │ │ │ ├── For_sumWithWDLoop.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── For.java │ │ ├── 09-Quicktour │ │ │ ├── CardException_getCauseWD.key │ │ │ ├── CardException_getMessageWD.key │ │ │ ├── CardException_initCauseWD.key │ │ │ ├── LogFile_LogFileWD.key │ │ │ ├── LogFile_LogFileWithWDLoop.key │ │ │ ├── LogFile_addRecordWD.key │ │ │ ├── LogFile_getMaximumRecordWD.key │ │ │ ├── LogFile_getMaximumRecordWithWDLoop.key │ │ │ ├── LogFile_invariantWD.key │ │ │ ├── LogRecord_getBalanceWD.key │ │ │ ├── LogRecord_getTransactionIdWD.key │ │ │ ├── LogRecord_invariantWD.key │ │ │ ├── LogRecord_setRecordWD.key │ │ │ ├── PayCard_PayCardWD.key │ │ │ ├── PayCard_PayCardintWD.key │ │ │ ├── PayCard__chargeExcWD.key │ │ │ ├── PayCard_chargeAndRecordWD.key │ │ │ ├── PayCard_chargeWD.0.key │ │ │ ├── PayCard_chargeWD.1.key │ │ │ ├── PayCard_createJuniorCardWD.key │ │ │ ├── PayCard_invariantWD.key │ │ │ ├── PayCard_isValidWD.key │ │ │ ├── README.txt │ │ │ ├── gui │ │ │ │ ├── ChargeUI.java │ │ │ │ ├── IssueCardUI.java │ │ │ │ └── Start.java │ │ │ ├── paycard │ │ │ │ ├── CardException.java │ │ │ │ ├── LogFile.java │ │ │ │ ├── LogRecord.java │ │ │ │ └── PayCard.java │ │ │ ├── project.key │ │ │ └── proof │ │ │ │ └── paycard.LogRecord(paycard.LogRecord__getBalance()).JML normal_behavior operation contract.0.proof │ │ ├── 10-SITA │ │ │ ├── README.txt │ │ │ ├── SITA3.java │ │ │ ├── SITA3_commonEntryWD.key │ │ │ ├── SITA3_commonEntryWithWDLoop.key │ │ │ ├── SITA3_invariantWD.key │ │ │ ├── SITA3_rearrangeWD.key │ │ │ ├── SITA3_rearrangeWithWDLoop.key │ │ │ ├── SITA3_swapWD.key │ │ │ └── project.key │ │ └── 11-StateMerging │ │ │ ├── A.java │ │ │ ├── Gcd.java │ │ │ ├── README.txt │ │ │ └── project.key │ ├── heap │ │ ├── BoyerMoore │ │ │ ├── BM(BM__bm((I)).JML normal_behavior operation contract.0.proof │ │ │ ├── BM(BM__count((I,_bigint,_bigint)).JML accessible clause.0.proof │ │ │ ├── BM(BM__count((I,_bigint,_bigint)).JML model_behavior operation contract.0.proof │ │ │ ├── BM(BM__monoLemma((I,int,int)).JML normal_behavior operation contract.0.proof │ │ │ ├── BoyerMoore.key │ │ │ ├── README.txt │ │ │ └── src │ │ │ │ └── BoyerMoore.java │ │ ├── Map │ │ │ ├── existenceInfiniteMaps.key │ │ │ └── src │ │ │ │ └── MapCaseStudy │ │ │ │ ├── AbstractMap.java │ │ │ │ ├── MapEntry.java │ │ │ │ ├── MapImplementation.java │ │ │ │ ├── MapInterface.java │ │ │ │ └── TestImplementation.java │ │ ├── SemanticSlicing │ │ │ ├── LCP.java │ │ │ ├── LRS.java │ │ │ ├── SuffixArray.java │ │ │ └── project.key │ │ ├── SmansEtAl │ │ │ ├── ArrayList_ArrayList.key │ │ │ ├── ArrayList_add.key │ │ │ ├── ArrayList_footprint.key │ │ │ ├── ArrayList_get.key │ │ │ ├── ArrayList_get_dep.key │ │ │ ├── ArrayList_inv.key │ │ │ ├── ArrayList_size.key │ │ │ ├── ArrayList_size_dep.key │ │ │ ├── CellClient_m.key │ │ │ ├── Cell_Cell.key │ │ │ ├── Cell_footprint.key │ │ │ ├── Cell_getX.key │ │ │ ├── Cell_getX_dep.key │ │ │ ├── Cell_inv.key │ │ │ ├── Cell_setX.key │ │ │ ├── Iterator_Iterator.key │ │ │ ├── Iterator_footprint.key │ │ │ ├── Iterator_hasNext.key │ │ │ ├── Iterator_hasNext_dep.key │ │ │ ├── Iterator_inv.key │ │ │ ├── Iterator_list.key │ │ │ ├── Iterator_list_dep.key │ │ │ ├── Iterator_next.key │ │ │ ├── README.txt │ │ │ ├── Stack_Stack.key │ │ │ ├── Stack_footprint.key │ │ │ ├── Stack_inv.key │ │ │ ├── Stack_push.key │ │ │ ├── Stack_size.key │ │ │ ├── Stack_switchContents.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ArrayList.java │ │ │ │ ├── Cell.java │ │ │ │ ├── CellClient.java │ │ │ │ ├── Iterator.java │ │ │ │ └── Stack.java │ │ ├── Transactions │ │ │ ├── JML depends clause (id_ 0 - java.lang.Object___inv_ for Account).proof │ │ │ ├── JML depends clause (id_ 7 - java.lang.Object___inv_ for Transaction).proof │ │ │ ├── JML operation contract (id_ 1 - Account__deposit).proof │ │ │ ├── JML operation contract (id_ 2 - Account__withdraw).proof │ │ │ ├── JML operation contract (id_ 3 - Account__transfer).proof │ │ │ ├── JML operation contract (id_ 4 - Account__getTotal).proof │ │ │ ├── JML operation contract (id_ 5 - Account__Account).proof │ │ │ ├── JML operation contract (id_ 6 - Main__main).proof │ │ │ ├── JML operation contract (id_ 8 - Transaction__getTotal).proof │ │ │ ├── JML operation contract (id_ 9 - Transaction__Transaction).proof │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── src │ │ │ │ ├── Account.java │ │ │ │ └── Transaction.java │ │ │ └── verifast-assignment2.c │ │ ├── WeideEtAl_01_AddAndMultiply │ │ │ ├── AddAndMultiply_add.key │ │ │ ├── AddAndMultiply_mul.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── AddAndMultiply.java │ │ ├── WeideEtAl_02_BinarySearch │ │ │ ├── BinarySearch_search.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── BinarySearch.java │ │ ├── Wellfounded │ │ │ ├── Ackermann.java │ │ │ ├── B.java │ │ │ ├── Recursion.java │ │ │ └── ackermann.key │ │ ├── block_contracts │ │ │ ├── GreatestCommonDivisor.key │ │ │ ├── GreatestCommonDivisor_ofWithWD.key │ │ │ ├── Simple__add.key │ │ │ ├── Simple__addAbsoluteValues.key │ │ │ ├── Simple__addWithJump.key │ │ │ ├── Simple__addWithTwoBlockContracts.key │ │ │ ├── Simple__generateByteArray.key │ │ │ ├── Simple__getLength.key │ │ │ ├── Simple__square.key │ │ │ ├── Simple__unnecessaryBlockContract.key │ │ │ ├── Simple__unnecessaryLoopInvariant.key │ │ │ └── src │ │ │ │ ├── GreatestCommonDivisor.java │ │ │ │ ├── LabeledBlocksTest.java │ │ │ │ ├── Simple.java │ │ │ │ └── Weird.java │ │ ├── block_loop_contracts │ │ │ ├── Divide │ │ │ │ ├── DualPivotQuicksort_sort_methods(DualPivotQuicksort_sort_methods__calcE(int,int)).JML normal_behavior operation contract.0.proof │ │ │ │ ├── README.txt │ │ │ │ ├── project.key │ │ │ │ └── src │ │ │ │ │ ├── DualPivotQuicksort_sort_blocks.java │ │ │ │ │ └── DualPivotQuicksort_sort_methods.java │ │ │ ├── Finally │ │ │ │ ├── block_finally.key │ │ │ │ ├── loop_finally.key │ │ │ │ └── src │ │ │ │ │ └── AuxiliaryContractsFinally.java │ │ │ ├── Free │ │ │ │ ├── assertions0.key │ │ │ │ ├── assertions1.key │ │ │ │ ├── blockContracts0.key │ │ │ │ ├── blockContracts1.key │ │ │ │ ├── blockContracts2.key │ │ │ │ ├── blockContracts3.key │ │ │ │ └── src │ │ │ │ │ └── FreeConditions.java │ │ │ ├── InternalExternal │ │ │ │ ├── DualPivotQuicksort Internal Rule With Preconditions.proof │ │ │ │ ├── DualPivotQuicksort_sort_external(DualPivotQuicksort_sort_external__eInsertionSort.JML_block_contract.0.proof │ │ │ │ ├── DualPivotQuicksort_sort_external(DualPivotQuicksort_sort_external__eInsertionSort.JML_block_contract.1.proof │ │ │ │ ├── DualPivotQuicksort_sort_external(DualPivotQuicksort_sort_external__eInsertionSort.JML_block_contract.2.proof │ │ │ │ ├── DualPivotQuicksort_sort_external(DualPivotQuicksort_sort_external__eInsertionSort.JML_block_contract.3.proof │ │ │ │ ├── DualPivotQuicksort_sort_external(DualPivotQuicksort_sort_external__eInsertionSort.JML_operation_contract.0.proof │ │ │ │ ├── DualPivotQuicksort_sort_internal(DualPivotQuicksort_sort_internal__eInsertionSort.JML_operation_contract.0.proof │ │ │ │ ├── README.txt │ │ │ │ ├── project.key │ │ │ │ └── src │ │ │ │ │ ├── DualPivotQuicksort_sort_external.java │ │ │ │ │ └── DualPivotQuicksort_sort_internal.java │ │ │ ├── List │ │ │ │ ├── IntLinkedList(IntLinkedList__mapIncrement_loopContract()).JML normal_behavior loop contract.0.proof │ │ │ │ ├── IntLinkedList(IntLinkedList__mapIncrement_loopContract()).JML normal_behavior operation contract.0.proof │ │ │ │ ├── IntLinkedList(IntLinkedList__mapIncrement_loopInvariant()).JML normal_behavior operation contract.0.proof │ │ │ │ ├── README.txt │ │ │ │ ├── project.key │ │ │ │ └── src │ │ │ │ │ ├── IntLinkedList.java │ │ │ │ │ ├── IntList.java │ │ │ │ │ └── IntNode.java │ │ │ ├── ListsWithIterators │ │ │ │ ├── README.txt │ │ │ │ └── src │ │ │ │ │ ├── IntIterator.java │ │ │ │ │ ├── IntLinkedList.java │ │ │ │ │ ├── IntList.java │ │ │ │ │ ├── IntNode.java │ │ │ │ │ └── MyInteger.java │ │ │ ├── Simple │ │ │ │ ├── README.txt │ │ │ │ ├── project.key │ │ │ │ └── src │ │ │ │ │ ├── BlockContractExamples.java │ │ │ │ │ ├── BlockContractExamplesWithoutPreconditions.java │ │ │ │ │ └── LoopContractExamples.java │ │ │ └── SimpleVariants │ │ │ │ ├── README.txt │ │ │ │ ├── src │ │ │ │ └── LoopContractExamplesAll.java │ │ │ │ ├── sum_onBlock_external.key │ │ │ │ ├── sum_onBlock_internal.key │ │ │ │ ├── sum_onBlock_loop.key │ │ │ │ ├── sum_onLoop_external.key │ │ │ │ ├── sum_onLoop_internal.key │ │ │ │ └── sum_onLoop_loop.key │ │ ├── coincidence_count │ │ │ ├── CC.java │ │ │ └── project.key │ │ ├── comprehensions │ │ │ ├── bprodSplit.key │ │ │ ├── bsumSplit.key │ │ │ ├── bsumSplitInvalid.key │ │ │ ├── bsum_neg2.key │ │ │ ├── bsum_negative.key │ │ │ ├── general_sum.key │ │ │ ├── segsum.key │ │ │ ├── src │ │ │ │ ├── GSum.java │ │ │ │ ├── SegSum.java │ │ │ │ └── Sum.java │ │ │ ├── sum0.key │ │ │ ├── sum1.key │ │ │ ├── sum2.key │ │ │ └── sum3.key │ │ ├── fm12_01_LRS │ │ │ ├── LCP.java │ │ │ ├── LCP_lcpWD.key │ │ │ ├── LRS.java │ │ │ ├── LRS_doLRSWD.key │ │ │ ├── Lemmas.java │ │ │ ├── README.txt │ │ │ ├── SuffixArray.java │ │ │ ├── SuffixArray_invariantWD.key │ │ │ └── lcp.key │ │ ├── fm12_02_PrefixSum │ │ │ ├── PrefixSumRec.java │ │ │ └── PrefixSumRec_minWD.key │ │ ├── fm12_03_TreeDel │ │ │ └── Tree.java │ │ ├── foveoos11_02_TreeMax │ │ │ ├── Tree(Tree__max()).JML normal_behavior operation contract.0.proof │ │ │ ├── Tree(Tree__maxHelper(int,int,int)).JML normal_behavior operation contract.0.proof │ │ │ └── TreeMax.java │ │ ├── inconsistent_represents │ │ │ ├── MyClass_m.key │ │ │ ├── MyClass_n.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── MyClass.java │ │ ├── information_flow │ │ │ ├── ArrayList_contains.key │ │ │ ├── ArrayList_get.key │ │ │ ├── ArrayList_size.key │ │ │ ├── README-ArrayList.txt │ │ │ ├── README.txt │ │ │ ├── UpdateAbstraction_ex7_1_insecure.key │ │ │ ├── UpdateAbstraction_ex7_2_insecure.key │ │ │ ├── UpdateAbstraction_ex7_3_secure.key │ │ │ ├── UpdateAbstraction_ex7_4_secure.key │ │ │ ├── UpdateAbstraction_ex7_5_secure.key │ │ │ ├── UpdateAbstraction_ex7_6_secure.key │ │ │ ├── UpdateAbstraction_ex9_secure.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ArrayList.java │ │ │ │ └── UpdateAbstraction.java │ │ ├── initially │ │ │ ├── IniSub.java │ │ │ └── Initially.java │ │ ├── javacard │ │ │ ├── arrayFillNonAtomic.key │ │ │ ├── boot │ │ │ │ └── java │ │ │ │ │ ├── io │ │ │ │ │ ├── IOException.java │ │ │ │ │ └── Serializable.java │ │ │ │ │ └── lang │ │ │ │ │ ├── ArithmeticException.java │ │ │ │ │ ├── ArrayIndexOutOfBoundsException.java │ │ │ │ │ ├── ArrayStoreException.java │ │ │ │ │ ├── ClassCastException.java │ │ │ │ │ ├── Cloneable.java │ │ │ │ │ ├── Error.java │ │ │ │ │ ├── Exception.java │ │ │ │ │ ├── ExceptionInInitializerError.java │ │ │ │ │ ├── IllegalArgumentException.java │ │ │ │ │ ├── IndexOutOfBoundsException.java │ │ │ │ │ ├── LinkageError.java │ │ │ │ │ ├── NegativeArraySizeException.java │ │ │ │ │ ├── NoClassDefFoundError.java │ │ │ │ │ ├── NullPointerException.java │ │ │ │ │ ├── Object.java │ │ │ │ │ ├── RuntimeException.java │ │ │ │ │ ├── SecurityException.java │ │ │ │ │ └── Throwable.java │ │ │ ├── project.key │ │ │ ├── setArray1.key │ │ │ ├── setArray2.key │ │ │ ├── src │ │ │ │ ├── Examples.java │ │ │ │ └── javacard │ │ │ │ │ └── framework │ │ │ │ │ ├── CardRuntimeException.java │ │ │ │ │ ├── JCSystem.java │ │ │ │ │ ├── OwnerPIN.java │ │ │ │ │ ├── PIN.java │ │ │ │ │ ├── PINException.java │ │ │ │ │ ├── SystemException.java │ │ │ │ │ ├── TransactionException.java │ │ │ │ │ └── Util.java │ │ │ ├── updateBalance0.key │ │ │ └── updateBalance1.key │ │ ├── linkedListSimple │ │ │ ├── LinkedList.java │ │ │ └── README.txt │ │ ├── list │ │ │ ├── ArrayList.ArrayListIterator_ArrayListIterator.key │ │ │ ├── ArrayList.ArrayListIterator_hasNext.key │ │ │ ├── ArrayList.ArrayListIterator_hasNext_dep.key │ │ │ ├── ArrayList.ArrayListIterator_inv.key │ │ │ ├── ArrayList.ArrayListIterator_list.key │ │ │ ├── ArrayList.ArrayListIterator_next_exceptional.key │ │ │ ├── ArrayList.ArrayListIterator_next_normal.key │ │ │ ├── ArrayList.ArrayListIterator_pos.key │ │ │ ├── ArrayList_ArrayList.key │ │ │ ├── ArrayList_add.key │ │ │ ├── ArrayList_concatenate.key │ │ │ ├── ArrayList_contains_dep.key │ │ │ ├── ArrayList_enlarge.key │ │ │ ├── ArrayList_footprint.key │ │ │ ├── ArrayList_get_dep.key │ │ │ ├── ArrayList_get_exceptional.key │ │ │ ├── ArrayList_get_normal.key │ │ │ ├── ArrayList_inv.key │ │ │ ├── ArrayList_iterator.key │ │ │ ├── ArrayList_size.key │ │ │ ├── ArrayList_size_dep.key │ │ │ ├── Client_m.key │ │ │ ├── Client_n.key │ │ │ ├── LinkedList_LinkedList.key │ │ │ ├── LinkedList_get_exceptional.key │ │ │ ├── LinkedList_get_normal.key │ │ │ ├── LinkedList_size.key │ │ │ ├── LinkedList_size_dep.key │ │ │ ├── MySet_MySet.key │ │ │ ├── MySet_footprint.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ArrayList.java │ │ │ │ ├── Client.java │ │ │ │ ├── LinkedList.java │ │ │ │ ├── List.java │ │ │ │ ├── ListIterator.java │ │ │ │ ├── MySet.java │ │ │ │ └── Node.java │ │ ├── list_ghost │ │ │ ├── ArrayList_ArrayList.key │ │ │ ├── ArrayList_add.key │ │ │ ├── ArrayList_enlarge.key │ │ │ ├── ArrayList_get_dep.key │ │ │ ├── ArrayList_get_exceptional.key │ │ │ ├── ArrayList_get_normal.key │ │ │ ├── ArrayList_inv.key │ │ │ ├── ArrayList_size.key │ │ │ ├── ArrayList_size_dep.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ArrayList.java │ │ │ │ └── List.java │ │ ├── list_recursiveSpec │ │ │ ├── ListOperationsNonNull_getNextNNWD.key │ │ │ ├── ListOperationsNonNull_getNextNN_normal_behavior.key │ │ │ ├── ListOperationsNonNull_remove_normal_behavior.key │ │ │ ├── ListOperationsNonNull_setValueAt_normal_behavior.key │ │ │ └── src │ │ │ │ ├── ListNN.java │ │ │ │ └── ListOperationsNonNull.java │ │ ├── list_seq │ │ │ ├── ArrayList.ArrayList.key │ │ │ ├── ArrayList.add.key │ │ │ ├── ArrayList.contains.key │ │ │ ├── ArrayList.enlarge.key │ │ │ ├── ArrayList.get.key │ │ │ ├── ArrayList.newArray.key │ │ │ ├── ArrayList.remove.0.key │ │ │ ├── ArrayList.remove.1.key │ │ │ ├── ArrayList.set.key │ │ │ ├── ArrayList_newArrayWD.key │ │ │ ├── ArrayList_newArrayWD_Y.key │ │ │ ├── LinkedList(LinkedList__remove(java.lang.Object)).JML normal_behavior operation contract.1.proof │ │ │ ├── LinkedList.set.key │ │ │ ├── README.txt │ │ │ ├── SimplifiedLinkedList.remove.key │ │ │ ├── SimplifiedLinkedList_getNextWD.key │ │ │ ├── SimplifiedLinkedList_invariantWD.key │ │ │ ├── TestLists_appendWD.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ArrayList.java │ │ │ │ ├── LinkedList.java │ │ │ │ ├── List.java │ │ │ │ ├── Node.java │ │ │ │ ├── SimplifiedLL.java │ │ │ │ └── TestLists.java │ │ ├── model_methods │ │ │ ├── CellTest_callSet.key │ │ │ ├── CellTest_test.key │ │ │ ├── CellTest_test2.key │ │ │ ├── Cell_footprint.key │ │ │ ├── Cell_footprint_acc.key │ │ │ ├── Cell_get.key │ │ │ ├── Cell_get_acc.key │ │ │ ├── Cell_post_set.key │ │ │ ├── Cell_set.key │ │ │ ├── Coll1_Coll1_add_pre.key │ │ │ ├── Coll1_Coll_add_pre.key │ │ │ ├── Coll1_add.key │ │ │ ├── Coll2_Coll2_add_pre.key │ │ │ ├── Coll2_Coll_add_pre.key │ │ │ ├── Coll2_add.key │ │ │ ├── Coll_add.key │ │ │ ├── Coll_add_pre.key │ │ │ ├── Indirect_callAdd.key │ │ │ ├── Indirect_test.key │ │ │ ├── Recell_Cell_footprint.key │ │ │ ├── Recell_Cell_post_set.key │ │ │ ├── Recell_Recell_footprint.key │ │ │ ├── Recell_Recell_post_set.key │ │ │ ├── Recell_footprint_acc.key │ │ │ ├── Recell_get.key │ │ │ ├── Recell_get_acc.key │ │ │ ├── Recell_set.key │ │ │ ├── Recell_undo.key │ │ │ └── src │ │ │ │ ├── Cell.java │ │ │ │ ├── CellTest.java │ │ │ │ ├── Coll.java │ │ │ │ └── Recell.java │ │ ├── observer │ │ │ ├── ExampleObserver_ExampleObserver.key │ │ │ ├── ExampleObserver_inv.key │ │ │ ├── ExampleObserver_subject.key │ │ │ ├── ExampleObserver_upToDate.key │ │ │ ├── ExampleObserver_update.key │ │ │ ├── ExampleObserver_value.key │ │ │ ├── ExampleSubject_ExampleSubject.key │ │ │ ├── ExampleSubject_addObserver.key │ │ │ ├── ExampleSubject_change.key │ │ │ ├── ExampleSubject_footprint.key │ │ │ ├── ExampleSubject_inv.key │ │ │ ├── ExampleSubject_notifyObservers.key │ │ │ ├── ExampleSubject_value.key │ │ │ ├── ExampleSubject_valueWD.key │ │ │ ├── ExampleSubject_value_dep.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── ExampleClient.java │ │ │ │ ├── ExampleObserver.java │ │ │ │ ├── ExampleSubject.java │ │ │ │ ├── Observer.java │ │ │ │ └── Subject.java │ │ ├── permissions │ │ │ ├── lockspec │ │ │ │ ├── Counter_fpLock_accessible.key │ │ │ │ ├── Counter_fpPerm_accessible.key │ │ │ │ ├── Counter_fp_accessible.key │ │ │ │ ├── Counter_increase_contract.key │ │ │ │ ├── Counter_inv_accessible1.key │ │ │ │ ├── Counter_inv_accessible2.key │ │ │ │ ├── Counter_lockConsistent_contract.key │ │ │ │ ├── Counter_lockRef_accessible.key │ │ │ │ ├── Counter_lockRef_contract1.key │ │ │ │ ├── Counter_lockRef_contract2.key │ │ │ │ ├── Counter_lockState_accessible.key │ │ │ │ ├── Counter_lockStatus_accessible.key │ │ │ │ ├── Counter_lockTransfer_accessible.key │ │ │ │ ├── Counter_unlockTransfer_accessible.key │ │ │ │ ├── load.key │ │ │ │ └── src │ │ │ │ │ └── LockSpec.java │ │ │ ├── mulleretal │ │ │ │ ├── ReadWrite_doRead_contract.key │ │ │ │ ├── ReadWrite_doWrite_contract.key │ │ │ │ ├── ReadWrite_inv1_accessible.key │ │ │ │ ├── ReadWrite_inv2_accessible.key │ │ │ │ ├── ReadWrite_read_contract.key │ │ │ │ ├── ReadWrite_write_contract.key │ │ │ │ ├── load.key │ │ │ │ └── src │ │ │ │ │ └── ReadWrite.java │ │ │ ├── paper │ │ │ │ ├── Transfer_entry.proof │ │ │ │ ├── src │ │ │ │ │ └── Transfer.java │ │ │ │ └── threads.key │ │ │ ├── permissionProperties.key │ │ │ ├── permissions_method0.key │ │ │ ├── permissions_method1.key │ │ │ ├── permissions_method3.key │ │ │ ├── permissions_setAB.key │ │ │ ├── src │ │ │ │ └── MyClass.java │ │ │ └── threads │ │ │ │ ├── AFilter_AFilter.key │ │ │ │ ├── AFilter_initPost_accessible.key │ │ │ │ ├── AFilter_inv_accessible1.key │ │ │ │ ├── AFilter_inv_accessible2.key │ │ │ │ ├── AFilter_joinTransfer_accessible.key │ │ │ │ ├── AFilter_joinTransfer_contract.key │ │ │ │ ├── AFilter_postJoin_accessible.key │ │ │ │ ├── AFilter_preStart_accessible.key │ │ │ │ ├── AFilter_run.key │ │ │ │ ├── AFilter_startTransfer_accessible.key │ │ │ │ ├── AFilter_startTransfer_contract.key │ │ │ │ ├── AFilter_stateInv_accessible.key │ │ │ │ ├── AFilter_staticPermissions_accessible.key │ │ │ │ ├── AFilter_workingPermissions_accessible.key │ │ │ │ ├── BFilter_BFilter.key │ │ │ │ ├── BFilter_initPost_accessible.key │ │ │ │ ├── BFilter_inv_accessible1.key │ │ │ │ ├── BFilter_inv_accessible2.key │ │ │ │ ├── BFilter_joinTransfer_accessible.key │ │ │ │ ├── BFilter_joinTransfer_contract.key │ │ │ │ ├── BFilter_postJoin_accessible.key │ │ │ │ ├── BFilter_preStart_accessible.key │ │ │ │ ├── BFilter_run.key │ │ │ │ ├── BFilter_startTransfer_accessible.key │ │ │ │ ├── BFilter_startTransfer_contract.key │ │ │ │ ├── BFilter_stateInv_accessible.key │ │ │ │ ├── BFilter_staticPermissions_accessible.key │ │ │ │ ├── BFilter_workingPermissions_accessible.key │ │ │ │ ├── Fib_Fib.key │ │ │ │ ├── Fib_initPost_accessible.key │ │ │ │ ├── Fib_inv1_accessible.key │ │ │ │ ├── Fib_inv2_accessible.key │ │ │ │ ├── Fib_joinTransfer_accessible.key │ │ │ │ ├── Fib_joinTransfer_contract.key │ │ │ │ ├── Fib_postJoin_accessible.key │ │ │ │ ├── Fib_preStart_accessible.key │ │ │ │ ├── Fib_run.key │ │ │ │ ├── Fib_startTransfer_accessible.key │ │ │ │ ├── Fib_startTransfer_contract.key │ │ │ │ ├── Fib_workingPermissions_accessible.key │ │ │ │ ├── Main_main.key │ │ │ │ ├── Plotter_Plotter.key │ │ │ │ ├── Plotter_initPost_accessible.key │ │ │ │ ├── Plotter_inv_accessible1.key │ │ │ │ ├── Plotter_inv_accessible2.key │ │ │ │ ├── Plotter_joinTransfer_accessible.key │ │ │ │ ├── Plotter_joinTransfer_accessible.proof │ │ │ │ ├── Plotter_joinTransfer_contract.key │ │ │ │ ├── Plotter_postJoin_accessible.key │ │ │ │ ├── Plotter_preStart_accessible.key │ │ │ │ ├── Plotter_run.key │ │ │ │ ├── Plotter_startTransfer_accessible.key │ │ │ │ ├── Plotter_startTransfer_accessible.proof │ │ │ │ ├── Plotter_startTransfer_contract.key │ │ │ │ ├── Plotter_startTransfer_contract.proof │ │ │ │ ├── Plotter_stateInv_accessible.key │ │ │ │ ├── Plotter_staticPermissions_accessible.key │ │ │ │ ├── Plotter_workingPermissions_accessible.key │ │ │ │ ├── Sampler_Sampler.key │ │ │ │ ├── Sampler_initPost_accessible.key │ │ │ │ ├── Sampler_inv_accessible1.key │ │ │ │ ├── Sampler_inv_accessible2.key │ │ │ │ ├── Sampler_joinTransfer_accessible.key │ │ │ │ ├── Sampler_joinTransfer_contract.key │ │ │ │ ├── Sampler_postJoin_accessible.key │ │ │ │ ├── Sampler_preStart_accessible.key │ │ │ │ ├── Sampler_run.key │ │ │ │ ├── Sampler_startTransfer_accessible.key │ │ │ │ ├── Sampler_startTransfer_contract.key │ │ │ │ ├── Sampler_stateInv_accessible.key │ │ │ │ ├── Sampler_staticPermissions_accessible.key │ │ │ │ ├── Sampler_workingPermissions_accessible.key │ │ │ │ ├── src │ │ │ │ ├── AFilter.java │ │ │ │ ├── BFilter.java │ │ │ │ ├── Buffer.java │ │ │ │ ├── Fib.java │ │ │ │ ├── Main.java │ │ │ │ ├── Plotter.java │ │ │ │ ├── Sampler.java │ │ │ │ ├── ThreadSpec.java │ │ │ │ └── ThreadSpec2.java │ │ │ │ └── threads.key │ │ ├── permutedSum │ │ │ ├── README.txt │ │ │ ├── perm.key │ │ │ ├── perm.proof │ │ │ └── src │ │ │ │ └── Perm.java │ │ ├── polarity_tests │ │ │ ├── src │ │ │ │ └── Test.java │ │ │ ├── wellformed1.key │ │ │ ├── wellformed10.key │ │ │ ├── wellformed11.key │ │ │ ├── wellformed2.key │ │ │ ├── wellformed3.key │ │ │ ├── wellformed4.key │ │ │ ├── wellformed5.key │ │ │ ├── wellformed6.key │ │ │ ├── wellformed7.key │ │ │ ├── wellformed8.key │ │ │ └── wellformed9.key │ │ ├── quicksort │ │ │ ├── Quicksort.java │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── sort.key │ │ │ ├── sort.key.proof.ignore │ │ │ ├── sort.script │ │ │ ├── split.key │ │ │ ├── split.script │ │ │ └── toplevel.key │ │ ├── removeDups │ │ │ ├── README.txt │ │ │ ├── RemoveDup.java │ │ │ ├── RemoveDup.unspecified │ │ │ ├── arrayPart.key │ │ │ ├── contains.key │ │ │ ├── project.key │ │ │ └── removeDup.key │ │ ├── saddleback_search │ │ │ ├── README.txt │ │ │ ├── Saddleback.java │ │ │ ├── Saddleback_search.key │ │ │ ├── Saddleback_searchWD.key │ │ │ ├── Saddleback_searchWithWDLoop.key │ │ │ └── saddle.dfy │ │ ├── simple │ │ │ ├── README.txt │ │ │ ├── anonymise_datagroup.key │ │ │ ├── array_creation.key │ │ │ ├── arrays.key │ │ │ ├── arrays_with_disjoint_sorts.key │ │ │ ├── attributes.key │ │ │ ├── constructor_contracts.key │ │ │ ├── dependencies.key │ │ │ ├── dependency_contracts.key │ │ │ ├── invariant_preservation.key │ │ │ ├── locsets.key │ │ │ ├── loop1.key │ │ │ ├── loop2.key │ │ │ ├── modifiable.key │ │ │ ├── modifiable_datagroup.key │ │ │ ├── object_creation.key │ │ │ ├── oldForParams.key │ │ │ ├── operation_contracts.key │ │ │ ├── parse_lmtd.key │ │ │ ├── project.key │ │ │ ├── select_store.key │ │ │ ├── selection_sort.key │ │ │ ├── seq.key │ │ │ └── src │ │ │ │ ├── MyClass.java │ │ │ │ ├── MyClient.java │ │ │ │ ├── MySubclass.java │ │ │ │ ├── OldForParameters.java │ │ │ │ └── ParseLmtd.java │ │ ├── strictlyModular │ │ │ ├── mayExpand.key │ │ │ ├── modularOnly.key │ │ │ └── src │ │ │ │ └── Modular.java │ │ ├── strictly_pure │ │ │ ├── README │ │ │ ├── StrictlyPure.java │ │ │ ├── StrictlyPureModifiedClass.java │ │ │ ├── strictlyPureMethod.key │ │ │ └── useStrictlyPureMethod.key │ │ ├── string │ │ │ └── String2.java │ │ ├── vacid0_01_SparseArray │ │ │ ├── Harness_sparseArrayTestHarness1.key │ │ │ ├── Harness_sparseArrayTestHarness1WD.key │ │ │ ├── Harness_sparseArrayTestHarness2.key │ │ │ ├── MemoryAllocator_alloc.key │ │ │ ├── MemoryAllocator_alloc_unsigned.key │ │ │ ├── README.txt │ │ │ ├── SparseArray_SparseArray.key │ │ │ ├── SparseArray_get.key │ │ │ ├── SparseArray_get_dep.key │ │ │ ├── SparseArray_inv.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── Harness.java │ │ │ │ ├── MemoryAllocator.java │ │ │ │ └── SparseArray.java │ │ ├── vacid0_05_RedBlackTrees │ │ │ ├── LICENSE │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── vacid0 │ │ │ │ └── redblacktree │ │ │ │ ├── AbstractMap.java │ │ │ │ ├── Harness.java │ │ │ │ ├── Node.java │ │ │ │ └── RedBlackTree.java │ │ ├── verifyThis11_1_Maximum │ │ │ ├── Maximum.java │ │ │ ├── README.txt │ │ │ └── project.key │ │ ├── verifyThis15_1_RelaxedPrefix │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── relax.proof │ │ │ └── src │ │ │ │ └── Relaxed.java │ │ ├── verifyThis15_2_ParallelGcd │ │ │ ├── README.txt │ │ │ ├── gcd.proof │ │ │ ├── parallelGcd.proof │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── ParallelGcd.java │ │ ├── verifyThis15_3_DLL │ │ │ ├── README.txt │ │ │ ├── dll.proof │ │ │ ├── doUndo.proof │ │ │ ├── project.key │ │ │ ├── remove.proof │ │ │ ├── src │ │ │ │ └── DoubleLinkedList.java │ │ │ └── unremove.proof │ │ ├── verifyThis17_1_PairInsertionSort │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ ├── sort.proof.gz │ │ │ ├── sort.proof.ignore │ │ │ └── src │ │ │ │ └── PairInsertionSort.java │ │ ├── voting │ │ │ ├── MajorityVotingProof.java │ │ │ └── MajorityVotingProof.script │ │ ├── vstte10_01_SumAndMax │ │ │ ├── FIRSTTOUCH.txt │ │ │ ├── README.txt │ │ │ ├── SumAndMax_sumAndMax.key │ │ │ ├── SumAndMax_sumAndMaxWD.key │ │ │ ├── SumAndMax_sumAndMaxWithWDLoop.key │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── SumAndMax.java │ │ ├── vstte10_02_Invert │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── Invert.java │ │ ├── vstte10_03_LinkedList │ │ │ ├── Node_cons.key │ │ │ ├── Node_consWD.key │ │ │ ├── Node_inv.key │ │ │ ├── Node_invWD.key │ │ │ ├── Node_search.key │ │ │ ├── Node_searchWD.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── Node.java │ │ ├── vstte10_04_Queens │ │ │ ├── Queens_isConsistent.key │ │ │ ├── Queens_nQueens.key │ │ │ ├── Queens_nQueensWD.key │ │ │ ├── Queens_search.proof │ │ │ ├── Queens_searchWD.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ └── Queens.java │ │ ├── vstte10_05_Queue │ │ │ ├── AmortizedQueue_AmortizedQueue.key │ │ │ ├── AmortizedQueue_front.key │ │ │ ├── LinkedList_LinkedList1.key │ │ │ ├── LinkedList_LinkedList2.key │ │ │ ├── LinkedList_LinkedList3.key │ │ │ ├── LinkedList_concat.key │ │ │ ├── LinkedList_cons.key │ │ │ ├── LinkedList_head.key │ │ │ ├── LinkedList_inv.key │ │ │ ├── LinkedList_length.key │ │ │ ├── LinkedList_reverse.key │ │ │ ├── LinkedList_tail.key │ │ │ ├── LinkedList_tailWD.key │ │ │ ├── README.txt │ │ │ ├── project.key │ │ │ └── src │ │ │ │ ├── AmortizedQueue.java │ │ │ │ └── LinkedList.java │ │ ├── vstte12_01_Swap │ │ │ ├── JML normal_behavior operation contract (id 0 - TwoWaySwap__set).proof │ │ │ ├── JML normal_behavior operation contract (id 1 - TwoWaySwap__swap).proof │ │ │ ├── JML normal_behavior operation contract (id 2 - TwoWaySwap__twoWaySort).proof │ │ │ ├── TwoWaySwap.java │ │ │ └── project.key │ │ ├── vstte12_03_RingBuffer │ │ │ ├── README │ │ │ ├── RingBuffer(RingBuffer__RingBuffer(int)).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__clear()).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__head()).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__isEmpty()).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__isFull()).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__modulo(int)).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__pop()).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__push(int)).JML normal_behavior operation contract.0.proof │ │ │ ├── RingBuffer(RingBuffer__test(int,int,int)).JML operation contract.0.proof │ │ │ ├── problem3.key │ │ │ └── src │ │ │ │ └── RingBuffer.java │ │ ├── vstte12_04_TreeReconstruct │ │ │ ├── JML accessible clause (id 0 - java.lang.Object___inv_ for List).proof │ │ │ ├── JML behavior operation contract (id 3 - Tree__build).proof │ │ │ ├── JML behavior operation contract (id 4 - Tree__build).proof │ │ │ ├── JML behavior operation contract (id 5 - Tree__harness1).proof │ │ │ ├── JML behavior operation contract (id 6 - Tree__harness2).proof │ │ │ ├── JML normal_behavior operation contract (id 2 - List__List).proof │ │ │ ├── JML normal_behavior operation contract (id 7 - Tree__Tree).proof │ │ │ ├── JML normal_behavior operation contract (id 8 - Tree__Tree).proof │ │ │ ├── JML operation contract (id 1 - List__pop).proof │ │ │ ├── problem4.key │ │ │ └── src │ │ │ │ ├── List.java │ │ │ │ ├── Tree.java │ │ │ │ └── TreeException.java │ │ └── vstte12_README │ ├── index │ │ ├── default+performance.txt │ │ ├── performance-tests.txt │ │ ├── samplesIndex.txt │ │ └── testIndex.txt │ ├── newBook │ │ ├── 09.list_modelfield │ │ │ ├── ArrayList.add.key │ │ │ ├── ArrayList.empty.key │ │ │ ├── ArrayList.get.key │ │ │ ├── ArrayList.java │ │ │ ├── ArrayList.remFirst.key │ │ │ ├── ArrayList.size.key │ │ │ ├── LinkedList.java │ │ │ ├── LinkedListNonEmpty.java │ │ │ └── List.java │ │ ├── Chapter_16 │ │ │ ├── PostInc │ │ │ │ ├── PostInc.java │ │ │ │ └── README.txt │ │ │ ├── Sort │ │ │ │ ├── README.txt │ │ │ │ └── Sort.java │ │ │ └── SortPerm │ │ │ │ ├── README.txt │ │ │ │ └── SortPerm.java │ │ └── Using_KeY │ │ │ ├── Building_Dynamic_Logic_Proofs │ │ │ ├── 01-exchange │ │ │ │ ├── README.txt │ │ │ │ └── exchange.key │ │ │ ├── 02-executeByProving │ │ │ │ ├── README.txt │ │ │ │ └── executeByProving.key │ │ │ ├── 03-updates │ │ │ │ ├── README.txt │ │ │ │ └── updates.key │ │ │ ├── 04-activeStmt │ │ │ │ ├── README.txt │ │ │ │ └── activeStmt.key │ │ │ ├── 05-symbolicExecution │ │ │ │ ├── README.txt │ │ │ │ └── symbolicExecution.key │ │ │ ├── 06-postIncrement │ │ │ │ ├── README.txt │ │ │ │ └── postIncrement.key │ │ │ ├── 07-quantifyProgVals │ │ │ │ ├── README.txt │ │ │ │ └── quantifyProgVals.key │ │ │ ├── 08-postIncrNoUpdate │ │ │ │ ├── README.txt │ │ │ │ └── postIncrNoUpdate.key │ │ │ ├── 09-methodCall │ │ │ │ ├── README.txt │ │ │ │ ├── README2.txt │ │ │ │ ├── methodCall.key │ │ │ │ ├── methodCall2.key │ │ │ │ └── methodExample │ │ │ │ │ └── Person.java │ │ │ ├── README.txt │ │ │ └── README1.txt │ │ │ ├── Building_First-Order_Proofs │ │ │ ├── README.txt │ │ │ └── projection.key │ │ │ ├── Building_Propositional_Proofs │ │ │ ├── README.txt │ │ │ └── andCommutes.key │ │ │ ├── Further-Features │ │ │ ├── README.txt │ │ │ └── generalProjection.key │ │ │ └── Understanding_Proof_Situations │ │ │ ├── PostInc.java │ │ │ ├── PostIncCorrected.java │ │ │ ├── PostIncMod.java │ │ │ └── README.txt │ ├── new_infinite_union_test │ │ └── TestInfiniteUnion.java │ ├── performance-test │ │ ├── AccessChain1(AccessChain1__foo_01()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_02()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_03()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_04()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_05()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_06()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_07()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_08()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_09()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_10()).JML_operation_contract.0.key │ │ ├── AccessChain1(AccessChain1__foo_20()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_01()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_02()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_03()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_04()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_05()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_06()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_07()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_08()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_09()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_10()).JML_operation_contract.0.key │ │ ├── AccessChain2(AccessChain2__foo_20()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_01()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_02()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_03()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_04()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_05()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_06()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_07()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_08()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_09()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_10()).JML_operation_contract.0.key │ │ ├── AccessChain4(AccessChain4__foo_20()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_01()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_02()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_03()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_04()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_05()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_06()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_07()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_08()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_09()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_10()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint2_20()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_01()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_02()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_03()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_04()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_05()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_06()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_07()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_08()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_09()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_10()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__disjoint_20()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_01()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_02()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_03()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_04()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_05()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_06()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_07()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_08()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_09()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_10()).JML_operation_contract.0.key │ │ ├── Disjoint(Disjoint__xZero_20()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_01()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_02()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_03()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_04()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_05()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_06()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_07()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_08()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_09()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_10()).JML_operation_contract.0.key │ │ ├── Dynamic(Dynamic__foo_20()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_01()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_02()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_03()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_04()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_05()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_06()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_07()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_08()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_09()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_10()).JML_operation_contract.0.key │ │ ├── Dynamic2(Dynamic2__foo_20()).JML_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_01()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_02()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_03()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_04()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_05()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_06()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_07()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_08()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_09()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_10()).JML_normal_behavior_operation_contract.0.key │ │ ├── DynamicGhost(DynamicGhost__dynamicGhost_20()).JML_normal_behavior_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_01()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_02()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_03()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_04()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_05()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_06()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_07()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_08()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_09()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_10()).JML_operation_contract.0.key │ │ ├── GhostFrame(GhostFrame__foo_20()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_01()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_02()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_03()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_04()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_05()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_06()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_07()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_08()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_09()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_10()).JML_operation_contract.0.key │ │ ├── Inc(Inc__foo_20()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_01()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_02()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_03()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_04()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_05()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_06()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_07()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_08()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_09()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_10()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_20()).JML_operation_contract.0.key │ │ ├── Inc2(Inc2__foo_40()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_01()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_02()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_03()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_04()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_05()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_06()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_07()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_08()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_09()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_10()).JML_operation_contract.0.key │ │ ├── Modelfield(Modelfield__foo_20()).JML_operation_contract.0.key │ │ ├── Test(Test__a0(int)).JML_normal_behavior_operation_contract.0.key │ │ ├── Test(Test__a1(int)).JML_normal_behavior_operation_contract.0.key │ │ ├── Test(Test__f1(int)).JML_normal_behavior_operation_contract.0.key │ │ └── src.templates │ │ │ ├── AccessChain1.java │ │ │ ├── AccessChain2.java │ │ │ ├── AccessChain4.java │ │ │ ├── Contract.java │ │ │ ├── Disjoint.java │ │ │ ├── Dynamic.java │ │ │ ├── Dynamic2.java │ │ │ ├── DynamicGhost.java │ │ │ ├── GhostFrame.java │ │ │ ├── Inc.java │ │ │ ├── Inc2.java │ │ │ ├── Modelfield.java │ │ │ ├── Split.java │ │ │ └── Test-10-2.java │ ├── proofLoadRepair │ │ ├── disjConj-manipulated.proof │ │ ├── disjConj.key │ │ ├── insufficient-manipulated.proof │ │ └── insufficient.key │ ├── redux │ │ └── arrays │ │ │ ├── ArrayCopy.arraycopy.exceptional.0.key │ │ │ ├── ArrayCopy.arraycopy.exceptional.1.key │ │ │ ├── ArrayCopy.arraycopy.normal.0.key │ │ │ ├── Arrays.copyOf.float.key │ │ │ ├── Arrays.copyOf.key │ │ │ ├── Arrays.copyOfRange.float.key │ │ │ ├── Arrays.copyOfRange.key │ │ │ ├── Arrays.equals.key │ │ │ ├── Arrays.fill.float.key │ │ │ ├── Arrays.fill.key │ │ │ ├── Arrays.fillFromTo.float.key │ │ │ ├── Arrays.fillFromTo.key │ │ │ └── src │ │ │ ├── ArrayCopy.java │ │ │ └── Arrays.java │ ├── smt │ │ ├── casestudy │ │ │ ├── SumAndMax.java │ │ │ ├── SumAndMaxProof.key │ │ │ ├── src_replace │ │ │ │ └── Main.java │ │ │ └── translation │ │ │ │ ├── instantiation.smt │ │ │ │ ├── original.smt │ │ │ │ ├── replace.jar │ │ │ │ └── template.smt │ │ ├── readme.txt │ │ └── taclettranslation │ │ │ ├── arraylength.key │ │ │ ├── attributes.key │ │ │ ├── castOperators.key │ │ │ ├── complexProblem.key │ │ │ ├── complexProblem2.key │ │ │ ├── javaSource │ │ │ └── Test.java │ │ │ └── readme.txt │ ├── standard_key │ │ ├── BookExamples │ │ │ ├── 02FirstOrderLogic │ │ │ │ ├── Ex2.53.key │ │ │ │ ├── Ex2.54.key │ │ │ │ ├── Ex2.55.key │ │ │ │ ├── Ex2.56.key │ │ │ │ ├── Ex2.57.key │ │ │ │ ├── Ex2.58.key │ │ │ │ ├── Ex2.60.key │ │ │ │ ├── Sect2.5.1-ExampleProof.key │ │ │ │ └── java │ │ │ │ │ ├── A.java │ │ │ │ │ ├── AbstractCollection.java │ │ │ │ │ ├── AbstractList.java │ │ │ │ │ └── List.java │ │ │ ├── 03DynamicLogic │ │ │ │ ├── Ex3.11-ArrayList.java │ │ │ │ ├── Ex3.41-formula1.key │ │ │ │ ├── Ex3.41-formula2.key │ │ │ │ ├── Ex3.41-formula3.key │ │ │ │ ├── Ex3.41-formula4.key │ │ │ │ ├── Ex3.41-formula5.key │ │ │ │ ├── Ex3.41-formula6.key │ │ │ │ ├── Ex3.41-formula7.key │ │ │ │ ├── Ex3.43-Control.java │ │ │ │ ├── Ex3.43-control.key │ │ │ │ ├── Ex3.43-control2.key │ │ │ │ ├── Fig3.3-base3.key │ │ │ │ ├── IncorrectLoopModifierSet.java │ │ │ │ ├── Sect3.3.1.key │ │ │ │ ├── Sect3.3.4-Base.java │ │ │ │ ├── Sect3.3.4-base.key │ │ │ │ ├── Sect3.3.4-base2.key │ │ │ │ ├── jmlAnnotatedExamples │ │ │ │ │ ├── IncorrectLoopModifierSet.java │ │ │ │ │ ├── KeepingContextIsUnsound.java │ │ │ │ │ └── MethodContractDemo.java │ │ │ │ └── source │ │ │ │ │ ├── base │ │ │ │ │ └── Base.java │ │ │ │ │ ├── base2 │ │ │ │ │ └── Base.java │ │ │ │ │ ├── base3 │ │ │ │ │ ├── Base.java │ │ │ │ │ ├── SubA.java │ │ │ │ │ └── SubB.java │ │ │ │ │ ├── control │ │ │ │ │ └── Control.java │ │ │ │ │ └── formulas │ │ │ │ │ └── ArrayList.java │ │ │ ├── 05FormalSpecification │ │ │ │ ├── ATM_Example_JML │ │ │ │ │ ├── ATM.java │ │ │ │ │ ├── BankCard.java │ │ │ │ │ └── CentralHost.java │ │ │ │ ├── README │ │ │ │ └── While-Example_JML │ │ │ │ │ └── WhileDemo.java │ │ │ ├── 08ProofObligations │ │ │ │ ├── Fig8.1-A.java │ │ │ │ ├── README │ │ │ │ ├── Sect8.1.4.key │ │ │ │ └── Sect8.1.4.key.proof │ │ │ ├── 10UsingKeY │ │ │ │ ├── Bank-JML │ │ │ │ │ ├── README │ │ │ │ │ ├── bank │ │ │ │ │ │ ├── ATM.java │ │ │ │ │ │ ├── Account.java │ │ │ │ │ │ ├── AccountStatementRequest.java │ │ │ │ │ │ ├── BankCard.java │ │ │ │ │ │ ├── CentralHost.java │ │ │ │ │ │ ├── Clock.java │ │ │ │ │ │ ├── OfflineAccountProxy.java │ │ │ │ │ │ ├── PermanentAccount.java │ │ │ │ │ │ ├── Transaction.java │ │ │ │ │ │ ├── TransactionList.java │ │ │ │ │ │ ├── TransactionListCons.java │ │ │ │ │ │ ├── TransactionListNIL.java │ │ │ │ │ │ └── Withdrawal.java │ │ │ │ │ ├── bankjml.key │ │ │ │ │ └── classpath │ │ │ │ │ │ ├── AbstractButton.java │ │ │ │ │ │ ├── ActionEvent.java │ │ │ │ │ │ ├── ActionListener.java │ │ │ │ │ │ ├── BorderFactory.java │ │ │ │ │ │ ├── BorderLayout.java │ │ │ │ │ │ ├── ButtonGroup.java │ │ │ │ │ │ ├── Component.java │ │ │ │ │ │ ├── Container.java │ │ │ │ │ │ ├── Dimension.java │ │ │ │ │ │ ├── Font.java │ │ │ │ │ │ ├── Frame.java │ │ │ │ │ │ ├── GridLayout.java │ │ │ │ │ │ ├── IllegalStateException.java │ │ │ │ │ │ ├── Integer.java │ │ │ │ │ │ ├── JButton.java │ │ │ │ │ │ ├── JComponent.java │ │ │ │ │ │ ├── JFrame.java │ │ │ │ │ │ ├── JLabel.java │ │ │ │ │ │ ├── JOptionPane.java │ │ │ │ │ │ ├── JPanel.java │ │ │ │ │ │ ├── JRadioButton.java │ │ │ │ │ │ ├── JRadioButtonMenuItem.java │ │ │ │ │ │ ├── JScrollPane.java │ │ │ │ │ │ ├── JTextArea.java │ │ │ │ │ │ ├── JTextComponent.java │ │ │ │ │ │ ├── JTextField.java │ │ │ │ │ │ ├── JToggleButton.java │ │ │ │ │ │ ├── LayoutManager.java │ │ │ │ │ │ ├── LayoutManager2.java │ │ │ │ │ │ ├── PrintStream.java │ │ │ │ │ │ ├── ScrollPaneConstants.java │ │ │ │ │ │ ├── System.java │ │ │ │ │ │ └── Window.java │ │ │ │ ├── README │ │ │ │ ├── activeStmt.key │ │ │ │ ├── andCommutes.key │ │ │ │ ├── andCommutes.proof │ │ │ │ ├── exchange.key │ │ │ │ ├── executeByProving.key │ │ │ │ ├── generalProjection.key │ │ │ │ ├── methodCall.key │ │ │ │ ├── methodCall2.key │ │ │ │ ├── methodExample │ │ │ │ │ └── Person.java │ │ │ │ ├── postIncrNoUpdate.key │ │ │ │ ├── postIncrement.key │ │ │ │ ├── projection.key │ │ │ │ ├── projectionAutomat.proof │ │ │ │ ├── quantifyProgVals.key │ │ │ │ ├── symbolicExecution.key │ │ │ │ └── updates.key │ │ │ └── 12JavaIntegers │ │ │ │ ├── Ex12.4-1.key │ │ │ │ ├── Ex12.4-2.key │ │ │ │ └── Sect12.2.1.key │ │ ├── adt │ │ │ ├── dt_color.key │ │ │ ├── dt_color.proof │ │ │ ├── dt_list_appnil.key │ │ │ ├── dt_list_appnil.proof │ │ │ ├── dt_list_deconstruct.key │ │ │ ├── dt_list_deconstruct.proof │ │ │ ├── dt_list_revrev.key │ │ │ ├── dt_list_revrev.proof │ │ │ ├── dt_nat.key │ │ │ ├── dt_nat.proof │ │ │ ├── dt_nonrec.key │ │ │ ├── isabelleTutorial.ps.gz │ │ │ └── list.key │ │ ├── arith │ │ │ ├── CubicSum_src │ │ │ │ └── CubicSum.java │ │ │ ├── binomial1.key │ │ │ ├── binomial2.key │ │ │ ├── check_jdiv.key │ │ │ ├── check_jdiv_concrete.key │ │ │ ├── check_jdiv_instantiated.key │ │ │ ├── check_jmod.key │ │ │ ├── complexExpressions.key │ │ │ ├── compound_unaryMinus.key │ │ │ ├── computation.key │ │ │ ├── cryptarithm.key │ │ │ ├── cubicSum.key │ │ │ ├── divByZero.key │ │ │ ├── divByZero2.key │ │ │ ├── divByZero3.key │ │ │ ├── divisionAssoc.key │ │ │ ├── divisionBy2.key │ │ │ ├── euclidean │ │ │ │ ├── gcdHelp-post.key │ │ │ │ └── src │ │ │ │ │ └── Gcd.java │ │ │ ├── gemplusDecimal │ │ │ │ ├── add.key │ │ │ │ ├── mul.key │ │ │ │ └── src │ │ │ │ │ └── Decimal.java │ │ │ ├── jdivevenodd.key │ │ │ ├── jdivevenodd.key.proof │ │ │ ├── median.key │ │ │ ├── mod1.key │ │ │ ├── mod2.key │ │ │ ├── mod2ex.key │ │ │ ├── mod3.key │ │ │ ├── mod4.key │ │ │ ├── mod5.key │ │ │ ├── mod6.key │ │ │ ├── mod7.key │ │ │ ├── no_overflow1.key │ │ │ ├── overflow1_add.key │ │ │ ├── overflow1_add.proof │ │ │ ├── overflow2.key │ │ │ ├── overflow3_unaryMinus.key │ │ │ ├── overflow4_sub.key │ │ │ ├── overflow5_div.key │ │ │ ├── overflow_hija.key │ │ │ ├── poly_division0.key │ │ │ ├── poly_division1.key │ │ │ ├── saveProofTest.key.proof │ │ │ └── simplify_overflow1.key │ │ ├── arrays │ │ │ ├── arrayStoreException │ │ │ │ ├── array2Dim.key │ │ │ │ ├── array2DimClose.key │ │ │ │ ├── array2DimPrim.key │ │ │ │ ├── arrayStoreKnownDynType.key │ │ │ │ ├── classes │ │ │ │ │ ├── ASEPrim.java │ │ │ │ │ ├── CSub12.java │ │ │ │ │ ├── CSub3.java │ │ │ │ │ ├── ISub1.java │ │ │ │ │ ├── ISub2.java │ │ │ │ │ └── ISuper.java │ │ │ │ ├── reverseArray.key │ │ │ │ ├── throwASEForPrim.key │ │ │ │ ├── throwASEForPrim2.key │ │ │ │ └── throwArrayStoreException.key │ │ │ └── creation │ │ │ │ ├── arrayCreation1.key │ │ │ │ ├── arrayDeclaration.key │ │ │ │ └── classes │ │ │ │ └── Array.java │ │ ├── bitoperations │ │ │ ├── exBitwiseOr1.key │ │ │ └── exBitwiseOr1.key.proof │ │ ├── bitvector │ │ │ ├── testAnd1.key │ │ │ ├── testJintGte.key │ │ │ ├── testOrJintNeutral.key │ │ │ ├── testOrJintSign.key │ │ │ ├── testShiftRightJint.key │ │ │ ├── testUnsignedShiftRight.key │ │ │ └── testWrongSizeBounds.key │ │ ├── challenges │ │ │ └── jacobsEtAl │ │ │ │ ├── abruptTermination │ │ │ │ ├── AbruptTermination.java │ │ │ │ └── abruptTermination.key │ │ │ │ ├── aliasing │ │ │ │ ├── Alias.java │ │ │ │ └── alias.key │ │ │ │ ├── sideeffects │ │ │ │ ├── Sideeffect.java │ │ │ │ └── sideeffect.key │ │ │ │ └── static_initialisation │ │ │ │ ├── challenge.key │ │ │ │ ├── challenge2.key │ │ │ │ └── classes │ │ │ │ └── A.java │ │ ├── defaultContracts │ │ │ ├── SimpleMin.java │ │ │ ├── soundDefault.key │ │ │ └── unsoundDefault.key │ │ ├── dynamicMethodBinding │ │ │ ├── java │ │ │ │ ├── pck │ │ │ │ │ └── C.java │ │ │ │ └── pck2 │ │ │ │ │ ├── A.java │ │ │ │ │ └── B.java │ │ │ ├── java_bug │ │ │ │ ├── A.java │ │ │ │ ├── B.java │ │ │ │ ├── C.java │ │ │ │ ├── D.java │ │ │ │ └── E.java │ │ │ ├── java_context │ │ │ │ ├── A.java │ │ │ │ └── B.java │ │ │ ├── test.key │ │ │ ├── testBugfoundByPhilipp.key │ │ │ ├── testBugfoundByPhilipp2.key │ │ │ ├── testCallingContext.key │ │ │ └── testCallingContext2.key │ │ ├── floats │ │ │ ├── Floats.java │ │ │ └── README.txt │ │ ├── inEqSimp │ │ │ ├── division.key │ │ │ ├── inequations0.key │ │ │ ├── inequations1.key │ │ │ ├── inequations2.key │ │ │ ├── inequations3.key │ │ │ ├── linApprox.key │ │ │ ├── nonLinInEqExample0.key │ │ │ ├── nonLinInEqExample1.key │ │ │ ├── nonLinInEqExample2.key │ │ │ ├── nonLinInEqExample3.key │ │ │ ├── nonLinInEqExample4.key │ │ │ ├── quadraticInEq.key │ │ │ ├── quadraticInEq10.key │ │ │ ├── quadraticInEq11.key │ │ │ ├── quadraticInEq12.key │ │ │ ├── quadraticInEq13.key │ │ │ ├── quadraticInEq14.key │ │ │ ├── quadraticInEq2.key │ │ │ ├── quadraticInEq3.key │ │ │ ├── quadraticInEq4.key │ │ │ ├── quadraticInEq5.key │ │ │ ├── quadraticInEq6.key │ │ │ ├── quadraticInEq7.key │ │ │ ├── quadraticInEq8.key │ │ │ ├── quadraticInEq9.key │ │ │ ├── simplify0.key │ │ │ ├── simplify1.key │ │ │ ├── simplify2.key │ │ │ ├── simplify3.key │ │ │ ├── simplify4.key │ │ │ ├── simplify5.key │ │ │ └── subsumptionExample.key │ │ ├── induction │ │ │ ├── decrToZero.key │ │ │ ├── decrToZero.tex │ │ │ ├── increaseToN.key │ │ │ ├── indWithoutProg.key │ │ │ ├── russianMult.key │ │ │ ├── russianMult2.key │ │ │ └── sum.key │ │ ├── instanceCreation │ │ │ ├── README │ │ │ ├── classes │ │ │ │ ├── A.java │ │ │ │ ├── Abstract.java │ │ │ │ ├── BC.java │ │ │ │ ├── ConstructorBugTest.java │ │ │ │ ├── Interface.java │ │ │ │ └── SuperA.java │ │ │ ├── instanceCreation1.key │ │ │ ├── instanceCreation2.key │ │ │ ├── instanceof.key │ │ │ ├── interfacesAndAbstractClassesHaveNoInstances.key │ │ │ ├── successiveCreatedObjectsAreDistinct.key │ │ │ └── testOverloadingConstructors.key │ │ ├── integerSemantics │ │ │ ├── addSemanticsJavaSemantics.key │ │ │ ├── addSemanticsNoOF.key │ │ │ ├── bigint.key │ │ │ ├── classes │ │ │ │ ├── A.java │ │ │ │ └── Bigint.java │ │ │ ├── selectedAssignmentsJavaSemantics.key │ │ │ ├── selectedAssignmentsJavaSemanticsNoOF.key │ │ │ └── selectedAssignmentsNoOF.key │ │ ├── invrule │ │ │ ├── inv1.key │ │ │ └── source │ │ │ │ └── Demo.java │ │ ├── java_dl │ │ │ ├── DLContractChooser │ │ │ │ ├── code │ │ │ │ │ └── MyClass.java │ │ │ │ └── example.key │ │ │ ├── PolishFlagSort │ │ │ │ └── PolishFlagSort.java │ │ │ ├── SimpleAttributes.key │ │ │ ├── SimpleAttributes_java │ │ │ │ └── SimpleClass.java │ │ │ ├── anonymousUpdateOnNonrigidTerm.key │ │ │ ├── arrayMax.key │ │ │ ├── arrayMax_java │ │ │ │ └── ArrayMax.java │ │ │ ├── arrayUpdateSimp.key │ │ │ ├── assert.key │ │ │ ├── assert │ │ │ │ ├── C.java │ │ │ │ ├── assert1.key │ │ │ │ ├── assert2.key │ │ │ │ └── assert3.key │ │ │ ├── attributes-in-taclets.key │ │ │ ├── attributes.key │ │ │ ├── attributes2.key │ │ │ ├── attributes_java │ │ │ │ └── KiAdClass.java │ │ │ ├── bitoperators.key │ │ │ ├── break.key │ │ │ ├── byzantine │ │ │ │ └── Byzantine.java │ │ │ ├── casts.key │ │ │ ├── casts.key.proof │ │ │ ├── char.key │ │ │ ├── char1.key │ │ │ ├── char1.key.proof │ │ │ ├── classpath │ │ │ │ ├── IllegalStateException.java │ │ │ │ ├── InputStream.java │ │ │ │ ├── PrintStream.java │ │ │ │ ├── README │ │ │ │ └── System.java │ │ │ ├── compileTimeConstants.key │ │ │ ├── compileTimeConstants2.key │ │ │ ├── compileTimeConstants_java │ │ │ │ └── MyClass.java │ │ │ ├── complexAssignment.key │ │ │ ├── constructorException │ │ │ │ ├── False.java │ │ │ │ ├── Test.java │ │ │ │ ├── regressionTestBug1333.key │ │ │ │ └── test.key │ │ │ ├── continue.key │ │ │ ├── continue.key.proof │ │ │ ├── continue1.key │ │ │ ├── continue1.key.proof │ │ │ ├── continue2.key │ │ │ ├── continue2.key.proof │ │ │ ├── cost │ │ │ │ └── PositiveArrayElements.java │ │ │ ├── danglingElse.key │ │ │ ├── danglingElse.key.proof │ │ │ ├── danglingElse.keyproof │ │ │ ├── danglingElse.keytmp │ │ │ ├── danglingElseSolution1.key │ │ │ ├── danglingElseSolution2.key │ │ │ ├── deepNonNull │ │ │ │ ├── Arrays.java │ │ │ │ ├── deepNonNull0.key │ │ │ │ ├── deepNonNull1.key │ │ │ │ ├── deepNonNull2.key │ │ │ │ └── deepNonNull3.key │ │ │ ├── equivalentUpdates.key │ │ │ ├── examDB │ │ │ │ ├── core │ │ │ │ │ ├── ExamDataBase.java │ │ │ │ │ ├── ExamDataBaseException.java │ │ │ │ │ ├── ExamDataBaseImpl.java │ │ │ │ │ └── Student.java │ │ │ │ ├── examDB.key │ │ │ │ └── gui │ │ │ │ │ └── ExamDialog.java │ │ │ ├── exceptions.key │ │ │ ├── exceptions1.key │ │ │ ├── exceptions2.key │ │ │ ├── exceptions3.key │ │ │ ├── exceptions_java │ │ │ │ ├── MyClass.java │ │ │ │ └── MyClass2.java │ │ │ ├── exchange.key │ │ │ ├── for_demo │ │ │ │ └── For.java │ │ │ ├── function91 │ │ │ │ └── Function91.java │ │ │ ├── geometry │ │ │ │ └── Factory.java │ │ │ ├── if.key │ │ │ ├── incrementcounter.key │ │ │ ├── innerClasses │ │ │ │ ├── InnerClasses.java │ │ │ │ └── inner.key │ │ │ ├── innerClasses2 │ │ │ │ ├── A.java │ │ │ │ └── B.java │ │ │ ├── iteratedAssignment.key │ │ │ ├── java5 │ │ │ │ ├── enum_large.key │ │ │ │ ├── enum_large.key.proof.gz │ │ │ │ ├── enum_property1.key │ │ │ │ ├── enum_property2.key │ │ │ │ ├── for_Array.key │ │ │ │ ├── for_Iterable.key │ │ │ │ ├── for_ReferenceArray.key │ │ │ │ ├── forinv.key │ │ │ │ ├── src │ │ │ │ │ ├── For.java │ │ │ │ │ ├── ForReferenceArray.java │ │ │ │ │ ├── Large.java │ │ │ │ │ ├── Months.java │ │ │ │ │ └── VarArg.java │ │ │ │ └── vararg.key │ │ │ ├── jml-assert │ │ │ │ ├── Assert.java │ │ │ │ ├── AssertAssume.java │ │ │ │ ├── ModelMethods.java │ │ │ │ ├── Quantor.java │ │ │ │ ├── RecursiveMethod.java │ │ │ │ ├── assert-old │ │ │ │ │ ├── Inc.java │ │ │ │ │ ├── inc-field.key │ │ │ │ │ ├── inc-ghost-field.key │ │ │ │ │ ├── inc-parameter-field.key │ │ │ │ │ └── inc-parameter.key │ │ │ │ ├── assert.key │ │ │ │ ├── assert_assume_order.key │ │ │ │ ├── model-methods-instance-instance.key │ │ │ │ ├── model-methods-instance-static.key │ │ │ │ ├── model-methods-static-instance.key │ │ │ │ ├── model-methods-static-static.key │ │ │ │ ├── quantor-assert.key │ │ │ │ ├── quantor-assume.key │ │ │ │ ├── recursion-assert.key │ │ │ │ └── recursion-assume.key │ │ │ ├── jml-bigint │ │ │ │ ├── cast.key │ │ │ │ ├── mult.key │ │ │ │ └── src │ │ │ │ │ └── Mult.java │ │ │ ├── jml-free │ │ │ │ ├── AssignableFree.java │ │ │ │ ├── AssignableLoopFree.java │ │ │ │ ├── EnsuresFree.java │ │ │ │ ├── InvariantFree.java │ │ │ │ ├── LoopInvFree.java │ │ │ │ ├── assignableFree0.key │ │ │ │ ├── assignableFree1.key │ │ │ │ ├── assignableFree2.key │ │ │ │ ├── assignableFree3.key │ │ │ │ ├── assignableFree4.key │ │ │ │ ├── assignableFreeLoopScopeRule.key │ │ │ │ ├── assignableFreeLoopTransformationRule.key │ │ │ │ ├── ensuresFree.key │ │ │ │ ├── invFree1.key │ │ │ │ ├── invFree2.key │ │ │ │ ├── invFree3.key │ │ │ │ ├── invFree4.key │ │ │ │ └── loopInvFree.key │ │ │ ├── jml-information-flow.key │ │ │ ├── jml-information-flow │ │ │ │ └── Avg.java │ │ │ ├── jml-min │ │ │ │ ├── Min.java │ │ │ │ ├── min-unprovable1.key │ │ │ │ ├── min-unprovable2.key │ │ │ │ └── min.key │ │ │ ├── list_reversal │ │ │ │ ├── reversal.key │ │ │ │ ├── reversal.proof │ │ │ │ └── src │ │ │ │ │ └── list.java │ │ │ ├── methodCall.key │ │ │ ├── methodCall1.key │ │ │ ├── methodCall1box.key │ │ │ ├── methodCall2.key │ │ │ ├── methodCall3.key │ │ │ ├── methodcall_java │ │ │ │ ├── AbstractBase.java │ │ │ │ ├── Base.java │ │ │ │ ├── ConcreteDerived.java │ │ │ │ ├── MyClass.java │ │ │ │ └── Recurse.java │ │ │ ├── payCardJML │ │ │ │ ├── classpath │ │ │ │ │ ├── AbstractButton.java │ │ │ │ │ ├── ActionEvent.java │ │ │ │ │ ├── ActionListener.java │ │ │ │ │ ├── BorderFactory.java │ │ │ │ │ ├── BorderLayout.java │ │ │ │ │ ├── ButtonGroup.java │ │ │ │ │ ├── Component.java │ │ │ │ │ ├── Container.java │ │ │ │ │ ├── Dimension.java │ │ │ │ │ ├── Font.java │ │ │ │ │ ├── Frame.java │ │ │ │ │ ├── GridLayout.java │ │ │ │ │ ├── IllegalStateException.java │ │ │ │ │ ├── Integer.java │ │ │ │ │ ├── JButton.java │ │ │ │ │ ├── JComponent.java │ │ │ │ │ ├── JFrame.java │ │ │ │ │ ├── JLabel.java │ │ │ │ │ ├── JOptionPane.java │ │ │ │ │ ├── JPanel.java │ │ │ │ │ ├── JRadioButton.java │ │ │ │ │ ├── JRadioButtonMenuItem.java │ │ │ │ │ ├── JScrollPane.java │ │ │ │ │ ├── JTextArea.java │ │ │ │ │ ├── JTextComponent.java │ │ │ │ │ ├── JTextField.java │ │ │ │ │ ├── JToggleButton.java │ │ │ │ │ ├── LayoutManager.java │ │ │ │ │ ├── LayoutManager2.java │ │ │ │ │ ├── PrintStream.java │ │ │ │ │ ├── ScrollPaneConstants.java │ │ │ │ │ ├── System.java │ │ │ │ │ └── Window.java │ │ │ │ ├── paycard.key │ │ │ │ └── paycard │ │ │ │ │ ├── CardException.java │ │ │ │ │ ├── ChargeUI.java │ │ │ │ │ ├── IssueCardUI.java │ │ │ │ │ ├── LimitedIntContainer.java │ │ │ │ │ ├── LogFile.java │ │ │ │ │ ├── LogRecord.java │ │ │ │ │ ├── PayCard.java │ │ │ │ │ ├── PayCardJunior.java │ │ │ │ │ └── Start.java │ │ │ ├── payCardOCL │ │ │ │ ├── classpath │ │ │ │ ├── paycard.key │ │ │ │ └── paycard │ │ │ │ │ ├── CardException.java │ │ │ │ │ ├── ChargeUI.java │ │ │ │ │ ├── IssueCardUI.java │ │ │ │ │ ├── PayCard.java │ │ │ │ │ ├── PayCardJunior.java │ │ │ │ │ └── Start.java │ │ │ ├── polishFlagSort.key │ │ │ ├── postConditionTaclets1.key │ │ │ ├── postConditionTaclets2.key │ │ │ ├── quantifiedQuery.key │ │ │ ├── query_anon_updates_java │ │ │ │ └── MyClass.java │ │ │ ├── query_java │ │ │ │ └── A.java │ │ │ ├── recursion │ │ │ │ ├── Triangular.java │ │ │ │ ├── triangular.key │ │ │ │ └── triangular.proof │ │ │ ├── reverseArray.key │ │ │ ├── reverseArray │ │ │ │ ├── ReverseArray.java │ │ │ │ └── reverse2.proof │ │ │ ├── reverseArray2.key │ │ │ ├── simpleAssignment.key │ │ │ ├── simpleAssignment2.key │ │ │ ├── splittingWithQueries.key │ │ │ ├── strassen │ │ │ │ ├── Matrix.java │ │ │ │ ├── Matrix22.java │ │ │ │ ├── strassen.auto.0.proof │ │ │ │ └── strassen.key │ │ │ ├── sum │ │ │ │ └── Examples.java │ │ │ ├── switch │ │ │ │ ├── LabeledCase.java │ │ │ │ ├── LargeSwitch.java │ │ │ │ ├── SwitchInSwitch.java │ │ │ │ ├── WhileAndSwitch.java │ │ │ │ ├── empty_switch.key │ │ │ │ ├── empty_switch_array_out_of_bounds.key │ │ │ │ ├── empty_switch_array_out_of_bounds_catch.key │ │ │ │ ├── empty_switch_null.key │ │ │ │ ├── empty_switch_null_catch.key │ │ │ │ ├── labeled_case.key │ │ │ │ ├── large_switch.key │ │ │ │ ├── switch_in_switch.key │ │ │ │ └── while_and_switch.key │ │ │ ├── symmArray.key │ │ │ ├── symmArray_java │ │ │ │ └── SymmArray.java │ │ │ ├── testcontext.key │ │ │ ├── testcontext_java │ │ │ │ ├── Break.java │ │ │ │ ├── ContinueLabel.java │ │ │ │ └── test.java │ │ │ ├── while.key │ │ │ ├── while.key.proof │ │ │ ├── while1.key │ │ │ ├── while1.key.proof │ │ │ ├── while2.key │ │ │ ├── while2.key.proof │ │ │ ├── while3.key │ │ │ ├── while3.key.proof │ │ │ ├── while4.key │ │ │ ├── while4.key.proof │ │ │ ├── while5.key │ │ │ ├── while5.key.proof │ │ │ └── while_demo │ │ │ │ └── While.java │ │ ├── polySimp │ │ │ ├── simplify0.key │ │ │ ├── simplify1.key │ │ │ ├── simplify10.key │ │ │ ├── simplify11.key │ │ │ ├── simplify12.key │ │ │ ├── simplify13.key │ │ │ ├── simplify14.key │ │ │ ├── simplify15.key │ │ │ ├── simplify16.key │ │ │ ├── simplify17.key │ │ │ ├── simplify18.key │ │ │ ├── simplify19.key │ │ │ ├── simplify2.key │ │ │ ├── simplify20.key │ │ │ ├── simplify21.key │ │ │ ├── simplify22.key │ │ │ ├── simplify23.key │ │ │ ├── simplify24.key │ │ │ ├── simplify25.key │ │ │ ├── simplify26.key │ │ │ ├── simplify27.key │ │ │ ├── simplify3.key │ │ │ ├── simplify4.key │ │ │ ├── simplify5.key │ │ │ ├── simplify6.key │ │ │ ├── simplify7.key │ │ │ ├── simplify8.key │ │ │ └── simplify9.key │ │ ├── pred_log │ │ │ ├── clam-examples │ │ │ │ ├── 001.key │ │ │ │ ├── 002.key │ │ │ │ ├── 003.key │ │ │ │ ├── 004.key │ │ │ │ └── 005.key │ │ │ ├── count.key │ │ │ ├── count.key.proof │ │ │ ├── count2.key │ │ │ ├── count3.key │ │ │ ├── equalities.key │ │ │ ├── equalities2.key │ │ │ ├── equalities2.key.proof │ │ │ ├── equalities3.key │ │ │ ├── exist1.key │ │ │ ├── functions.key │ │ │ ├── jbyteIfEx.key │ │ │ ├── liars.key │ │ │ ├── liarsWithInt.key │ │ │ ├── mv1.key │ │ │ ├── mv2.key │ │ │ ├── mv3.key │ │ │ ├── quantifiers.key │ │ │ ├── sameName1.key │ │ │ ├── simpleEps.key │ │ │ ├── specialNat.key │ │ │ ├── specialNat.key.proof │ │ │ ├── steam1.key │ │ │ ├── tptp │ │ │ │ ├── PUZ │ │ │ │ │ ├── PUZ001p1-eq.key │ │ │ │ │ ├── PUZ001p1.key │ │ │ │ │ ├── PUZ031p1.key │ │ │ │ │ └── PUZ047p1.key │ │ │ │ ├── README │ │ │ │ ├── SET │ │ │ │ │ ├── SET027p3.key │ │ │ │ │ ├── SET043p1.key │ │ │ │ │ ├── SET044p1.key │ │ │ │ │ ├── SET045p1.key │ │ │ │ │ ├── SET062p3.key │ │ │ │ │ └── SET063p3.key │ │ │ │ └── SYN │ │ │ │ │ ├── SYN002m1.007.008.key │ │ │ │ │ ├── SYN007p1.014.key │ │ │ │ │ ├── SYN036p2.key │ │ │ │ │ ├── SYN548p1.key │ │ │ │ │ └── SYN550p1.key │ │ │ └── unprovable_onlyOneInteger.key │ │ ├── preservesInReachableState │ │ │ ├── becomesErroneous.key │ │ │ ├── becomesInitialized.key │ │ │ ├── becomesUninitialized.key │ │ │ ├── classes │ │ │ │ └── MyClass.java │ │ │ ├── erroneousDeletion.key │ │ │ ├── objectCreationPreservesInReachableState.key │ │ │ ├── preservePOArray1.key │ │ │ ├── preservePOArray2.key │ │ │ ├── preservePOAttribute1.key │ │ │ ├── preservePOStaticAttribute1.key │ │ │ ├── preservePOStaticAttribute2.key │ │ │ ├── preservePOStaticAttribute3.key │ │ │ ├── preservesPOForQuantUpdates.key │ │ │ ├── safeObjectCreationInUpdate.key │ │ │ └── unsafeObjectCreationInUpdate.key │ │ ├── prop_log │ │ │ ├── allClausesLength4.key │ │ │ ├── allClausesLength5.key │ │ │ ├── contraposition.key │ │ │ ├── contraposition.txt │ │ │ ├── doubleNeg.key │ │ │ ├── liarsville.key │ │ │ ├── liarsville.txt │ │ │ ├── reallySimple.key │ │ │ └── simplest.key │ │ ├── quantifiers │ │ │ ├── elimination0.key │ │ │ ├── heuristic_PUZ001p1-eq.key │ │ │ ├── heuristic_PUZ001p1.key │ │ │ ├── heuristic_PUZ031p1.key │ │ │ ├── heuristic_SYN036p2.key │ │ │ ├── injectivity.key │ │ │ ├── normalisation0.key │ │ │ ├── normalisation1.key │ │ │ ├── normalisation10.key │ │ │ ├── normalisation11.key │ │ │ ├── normalisation12.key │ │ │ ├── normalisation13.key │ │ │ ├── normalisation2.key │ │ │ ├── normalisation3.key │ │ │ ├── normalisation4.key │ │ │ ├── normalisation5.key │ │ │ ├── normalisation6.key │ │ │ ├── normalisation7.key │ │ │ ├── normalisation8.key │ │ │ ├── normalisation9.key │ │ │ └── triggers0.key │ │ ├── queries │ │ │ ├── src │ │ │ │ └── A.java │ │ │ └── useQuery.key │ │ ├── reachable │ │ │ ├── attributes_java │ │ │ │ ├── KiAdClass.java │ │ │ │ ├── LinkList.java │ │ │ │ └── ListElement.java │ │ │ ├── getLast.key │ │ │ ├── getLast.key.proof │ │ │ └── reachtest.key │ │ ├── regularExpressions │ │ │ ├── example1.key │ │ │ ├── example2.key │ │ │ └── example3.key │ │ ├── simplifier │ │ │ ├── Test.java │ │ │ ├── simplifyArray.key │ │ │ ├── simplifyArrayCompley.key │ │ │ ├── simplifyArraySplit.key │ │ │ └── simplifyAttribute.key │ │ ├── smtBenchmark │ │ │ ├── PUZ001p1-eq.key │ │ │ ├── PUZ001p1.key │ │ │ ├── PUZ031p1.key │ │ │ ├── PUZ047p1.key │ │ │ ├── count.key │ │ │ ├── count2.key │ │ │ ├── count3.key │ │ │ ├── decproc1.key │ │ │ ├── decproc2.key │ │ │ ├── decproc3-shortened.key │ │ │ ├── decproc3.key │ │ │ ├── equalities.key │ │ │ ├── equalities2.key │ │ │ ├── equalities3.key │ │ │ ├── exist1.key │ │ │ ├── expected-results │ │ │ ├── functions.key │ │ │ ├── ics_ist_ueberfordert.key │ │ │ ├── mv1.key │ │ │ ├── mv2.key │ │ │ ├── mv3.key │ │ │ ├── quantifiers.key │ │ │ ├── readme.txt │ │ │ ├── sameName1.key │ │ │ ├── simpleEps.key │ │ │ ├── smtBenchmarkResults.csv │ │ │ └── subsorts.key │ │ ├── staticInitialisation │ │ │ ├── assigningArrayToStaticField.key │ │ │ ├── cascadeStaticInitialisation.key │ │ │ ├── classpath │ │ │ │ ├── PrintStream.java │ │ │ │ ├── README │ │ │ │ └── System.java │ │ │ ├── constantFieldIsNoActiveUse.key │ │ │ ├── erroneousClassImpliesErroneousSubclass.key │ │ │ ├── initializedSubclassImpliesInitializedSuperclass.key │ │ │ ├── java │ │ │ │ ├── A.java │ │ │ │ ├── B.java │ │ │ │ ├── FailedStaticInit.java │ │ │ │ ├── MyClass.java │ │ │ │ ├── MyClass2.java │ │ │ │ └── Test.java │ │ │ ├── localDeclared.key │ │ │ ├── localDeclaredMethod.key │ │ │ ├── objectOfErroneousClass.key │ │ │ └── staticInitialisersAreNonSimple.key │ │ ├── strings │ │ │ ├── Case_Studies │ │ │ │ ├── example1.key │ │ │ │ ├── example1_contains_ensuresPost_id3.proof │ │ │ │ ├── example1_contains_ensuresPost_id4.proof │ │ │ │ ├── example1_contains_preservesInv.proof │ │ │ │ ├── example1_contains_respectsMod_id3.proof │ │ │ │ ├── example1_contains_respectsMod_id4.proof │ │ │ │ ├── example1_insert_ensuresPost_id0.proof │ │ │ │ ├── example1_insert_ensuresPost_id1.proof │ │ │ │ ├── example1_insert_ensuresPost_id2.proof │ │ │ │ ├── example1_insert_preservesInv.proof │ │ │ │ ├── example1_insert_respectsMod_id0.proof │ │ │ │ ├── example1_insert_respectsMod_id1.proof │ │ │ │ ├── example1_insert_respectsMod_id2.proof │ │ │ │ ├── example2_1.key │ │ │ │ ├── example2_1.proof │ │ │ │ ├── example2_1_incomplete.proof │ │ │ │ ├── example2_2.key │ │ │ │ ├── example2_2.proof │ │ │ │ ├── example2_2_incomplete.proof │ │ │ │ └── src │ │ │ │ │ ├── StringDistance.java │ │ │ │ │ └── StringSet.java │ │ │ ├── Sanitization │ │ │ │ └── src │ │ │ │ │ └── Sanitize.java │ │ │ ├── charAt0.key │ │ │ ├── charAt1.key │ │ │ ├── concat0.key │ │ │ ├── concat1.key │ │ │ ├── concat2.key │ │ │ ├── deriveLength1.key │ │ │ ├── emptyStringLengthZero.key │ │ │ ├── implicitBooleanStringConversion.key │ │ │ ├── implicitBooleanStringConversion2.key │ │ │ ├── implicitIntStringConversion.key │ │ │ ├── implicitNullStringConversion.key │ │ │ ├── implicitNullStringConversion2.key │ │ │ ├── implicitObjectStringConversion.key │ │ │ ├── literalEquality.key │ │ │ ├── proofs │ │ │ │ ├── charAtConcat.proof │ │ │ │ ├── charAtSubstring.proof │ │ │ │ ├── concatConcat.proof │ │ │ │ ├── concatEqLeft.proof │ │ │ │ ├── consEq.proof │ │ │ │ ├── length0.proof │ │ │ │ ├── lengthConcat.proof │ │ │ │ ├── lengthGeq0.proof │ │ │ │ ├── lengthNEq1.proof │ │ │ │ ├── lengthNEq2.proof │ │ │ │ ├── lengthReplace.proof │ │ │ │ ├── lengthSubstring.proof │ │ │ │ ├── replaceConcat.proof │ │ │ │ ├── replaceSubstring.proof │ │ │ │ ├── substringConcat.proof │ │ │ │ └── substringSubstring.proof │ │ │ ├── replace0.key │ │ │ ├── replace1.key │ │ │ ├── simpleAssignment.key │ │ │ ├── simpleLengthComp.key │ │ │ ├── src │ │ │ │ └── S.java │ │ │ ├── stringCompileTimeConstant1.key │ │ │ ├── stringCompileTimeConstant2.key │ │ │ ├── stringEquality1.key │ │ │ ├── stringEquality2.key │ │ │ ├── stringIntern.key │ │ │ ├── substring0.key │ │ │ ├── substring1.key │ │ │ ├── substring2.key │ │ │ ├── substring3.key │ │ │ ├── substring4.key │ │ │ └── substring5.key │ │ ├── taclet_po │ │ │ ├── testPO0.key │ │ │ ├── testPO1.key │ │ │ ├── testPO10.key │ │ │ ├── testPO11.key │ │ │ ├── testPO12.key │ │ │ ├── testPO13.key │ │ │ ├── testPO14.key │ │ │ ├── testPO15.key │ │ │ ├── testPO16.key │ │ │ ├── testPO17.key │ │ │ ├── testPO18.key │ │ │ ├── testPO19.key │ │ │ ├── testPO2.key │ │ │ ├── testPO20.key │ │ │ ├── testPO21.key │ │ │ ├── testPO22.key │ │ │ ├── testPO23.key │ │ │ ├── testPO24.key │ │ │ ├── testPO3.key │ │ │ ├── testPO4.key │ │ │ ├── testPO5.key │ │ │ ├── testPO6.key │ │ │ ├── testPO7.key │ │ │ ├── testPO8.key │ │ │ └── testPO9.key │ │ ├── types │ │ │ ├── Final.java │ │ │ ├── Subtypes.java │ │ │ ├── disjoint.key │ │ │ ├── finalTypes.key │ │ │ ├── finalTypes_unprovable.key │ │ │ └── subtypes.key │ │ ├── unicode_test.key │ │ ├── viennaExamples │ │ │ ├── vienna1.key │ │ │ └── vienna2.key │ │ └── visualdebugger │ │ │ └── src │ │ │ ├── conditionalBreakpoints.key │ │ │ ├── paycard │ │ │ ├── CardException.java │ │ │ ├── LimitedIntContainer.java │ │ │ ├── LogFile.java │ │ │ ├── LogRecord.java │ │ │ ├── PayCard.java │ │ │ └── PayCardJunior.java │ │ │ ├── prettyprinter │ │ │ └── Pretty.java │ │ │ ├── taclets │ │ │ └── HowTacletsWork.java │ │ │ └── tests │ │ │ ├── Caller.java │ │ │ ├── ClassA.java │ │ │ ├── ClassA1.java │ │ │ ├── ClassA2.java │ │ │ ├── ClassA3.java │ │ │ ├── HowTacletsWork.java │ │ │ └── Main.java │ ├── testGen │ │ ├── absMin │ │ │ └── AbsMin.java │ │ ├── arrCopy │ │ │ └── ArrayUtils.java │ │ ├── bubble │ │ │ └── BubbleSort.java │ │ ├── coverage │ │ │ ├── ContractLoopInvariantTest.java │ │ │ └── CoverageTest.java │ │ ├── listAndArray │ │ │ ├── List.java │ │ │ ├── List1.java │ │ │ ├── List2.java │ │ │ └── List3.java │ │ ├── mid │ │ │ └── Middle.java │ │ ├── pin │ │ │ └── PinCard.java │ │ └── quickSort │ │ │ └── QuickSort.java │ └── theories │ │ ├── binaryTree.key │ │ ├── map.key │ │ └── set.key └── src │ ├── main │ ├── java │ │ ├── de │ │ │ └── uka │ │ │ │ └── ilkd │ │ │ │ └── key │ │ │ │ ├── core │ │ │ │ ├── InterruptListener.java │ │ │ │ ├── KeYMediator.java │ │ │ │ ├── KeYSelectionEvent.java │ │ │ │ ├── KeYSelectionListener.java │ │ │ │ ├── KeYSelectionModel.java │ │ │ │ ├── Log.java │ │ │ │ ├── Main.java │ │ │ │ └── Watchdog.java │ │ │ │ ├── gui │ │ │ │ ├── ApplyTacletDialog.java │ │ │ │ ├── AutoDismissDialog.java │ │ │ │ ├── AuxiliaryContractConfigurator.java │ │ │ │ ├── AuxiliaryContractSelectionPanel.java │ │ │ │ ├── BlockContractExternalCompletion.java │ │ │ │ ├── BlockContractInternalCompletion.java │ │ │ │ ├── BlockContractSelectionPanel.java │ │ │ │ ├── ClassTree.java │ │ │ │ ├── ContractConfigurator.java │ │ │ │ ├── ContractSelectionPanel.java │ │ │ │ ├── DependencyContractCompletion.java │ │ │ │ ├── ExampleChooser.java │ │ │ │ ├── ExceptionalHandler.java │ │ │ │ ├── FilterMouseAction.java │ │ │ │ ├── FunctionalOperationContractCompletion.java │ │ │ │ ├── GUIListener.java │ │ │ │ ├── GoalList.java │ │ │ │ ├── HeatmapOptionsDialog.java │ │ │ │ ├── InfoTree.java │ │ │ │ ├── InfoTreeModel.java │ │ │ │ ├── InfoTreeNode.java │ │ │ │ ├── InfoView.java │ │ │ │ ├── InfoViewContentPane.java │ │ │ │ ├── InspectorForDecisionPredicates.java │ │ │ │ ├── InteractiveRuleApplicationCompletion.java │ │ │ │ ├── InvariantConfigurator.java │ │ │ │ ├── IssueDialog.java │ │ │ │ ├── JmlEnabledKeysIndicator.java │ │ │ │ ├── KeYFileChooser.java │ │ │ │ ├── KeYFileChooserBookmarkPanel.java │ │ │ │ ├── KeyboardTacletExtension.java │ │ │ │ ├── LogView.java │ │ │ │ ├── LoopApplyHeadCompletion.java │ │ │ │ ├── LoopContractExternalCompletion.java │ │ │ │ ├── LoopContractInternalCompletion.java │ │ │ │ ├── LoopContractSelectionPanel.java │ │ │ │ ├── LoopInvariantRuleCompletion.java │ │ │ │ ├── MainStatusLine.java │ │ │ │ ├── MainWindow.java │ │ │ │ ├── MainWindowTabbedPane.java │ │ │ │ ├── MaxRuleAppSlider.java │ │ │ │ ├── NodeInfoVisualizer.java │ │ │ │ ├── NodeInfoVisualizerListener.java │ │ │ │ ├── PositionedIssueString.java │ │ │ │ ├── ProofMacroMenu.java │ │ │ │ ├── ProofMacroWorker.java │ │ │ │ ├── ProofManagementDialog.java │ │ │ │ ├── ProofScriptWorker.java │ │ │ │ ├── ProofSelectionDialog.java │ │ │ │ ├── RecentFileMenu.java │ │ │ │ ├── SearchBar.java │ │ │ │ ├── SelectionHistory.java │ │ │ │ ├── SelectionHistoryChangeListener.java │ │ │ │ ├── ShortUniqueFileNames.java │ │ │ │ ├── StrategySelectionView.java │ │ │ │ ├── TableRowResizer.java │ │ │ │ ├── TacletIfSelectionDialog.java │ │ │ │ ├── TacletMatchCompletionDialog.java │ │ │ │ ├── TaskTree.java │ │ │ │ ├── UserActionListener.java │ │ │ │ ├── WindowUserInterfaceControl.java │ │ │ │ ├── actions │ │ │ │ │ ├── AbandonTaskAction.java │ │ │ │ │ ├── AboutAction.java │ │ │ │ │ ├── AutoModeAction.java │ │ │ │ │ ├── AutoSave.java │ │ │ │ │ ├── CopyToClipboardAction.java │ │ │ │ │ ├── DecreaseFontSizeAction.java │ │ │ │ │ ├── EditMostRecentFileAction.java │ │ │ │ │ ├── EditSourceFileAction.java │ │ │ │ │ ├── EnsureSourceConsistencyToggleAction.java │ │ │ │ │ ├── ExitMainAction.java │ │ │ │ │ ├── GoalBackAction.java │ │ │ │ │ ├── GoalSelectAboveAction.java │ │ │ │ │ ├── GoalSelectBelowAction.java │ │ │ │ │ ├── HeatmapSettingsAction.java │ │ │ │ │ ├── HeatmapToggleAction.java │ │ │ │ │ ├── HidePackagePrefixToggleAction.java │ │ │ │ │ ├── IncreaseFontSizeAction.java │ │ │ │ │ ├── KeYMenuCheckBox.java │ │ │ │ │ ├── KeYProjectHomepageAction.java │ │ │ │ │ ├── KeyAction.java │ │ │ │ │ ├── LemmaGenerationAction.java │ │ │ │ │ ├── LemmaGenerationBatchModeAction.java │ │ │ │ │ ├── LicenseAction.java │ │ │ │ │ ├── MacroKeyBinding.java │ │ │ │ │ ├── MainWindowAction.java │ │ │ │ │ ├── MenuSendFeedackAction.java │ │ │ │ │ ├── MinimizeInteraction.java │ │ │ │ │ ├── OpenExampleAction.java │ │ │ │ │ ├── OpenFileAction.java │ │ │ │ │ ├── OpenMostRecentFileAction.java │ │ │ │ │ ├── OpenSingleJavaFileAction.java │ │ │ │ │ ├── PrettyPrintToggleAction.java │ │ │ │ │ ├── ProofManagementAction.java │ │ │ │ │ ├── ProofScriptFromFileAction.java │ │ │ │ │ ├── ProofScriptInputAction.java │ │ │ │ │ ├── PruneProofAction.java │ │ │ │ │ ├── QuickLoadAction.java │ │ │ │ │ ├── QuickSaveAction.java │ │ │ │ │ ├── RightMouseClickToggleAction.java │ │ │ │ │ ├── RunAllProofsAction.java │ │ │ │ │ ├── SMTInvokeAction.java │ │ │ │ │ ├── SMTOptionsAction.java │ │ │ │ │ ├── SaveBundleAction.java │ │ │ │ │ ├── SaveFileAction.java │ │ │ │ │ ├── SearchInProofTreeAction.java │ │ │ │ │ ├── SearchInSequentAction.java │ │ │ │ │ ├── SearchModeChangeAction.java │ │ │ │ │ ├── SearchNextAction.java │ │ │ │ │ ├── SearchPreviousAction.java │ │ │ │ │ ├── SelectionBackAction.java │ │ │ │ │ ├── SelectionForwardAction.java │ │ │ │ │ ├── SendFeedbackAction.java │ │ │ │ │ ├── SettingsTreeModel.java │ │ │ │ │ ├── ShowActiveSettingsAction.java │ │ │ │ │ ├── ShowActiveTactletOptionsAction.java │ │ │ │ │ ├── ShowKnownTypesAction.java │ │ │ │ │ ├── ShowProofStatistics.java │ │ │ │ │ ├── ShowUsedContractsAction.java │ │ │ │ │ ├── SyntaxHighlightingToggleAction.java │ │ │ │ │ ├── SystemInfoAction.java │ │ │ │ │ ├── TacletOptionsAction.java │ │ │ │ │ ├── TermLabelMenu.java │ │ │ │ │ ├── ToggleConfirmExitAction.java │ │ │ │ │ ├── ToggleProofTreeTooltipAction.java │ │ │ │ │ ├── ToggleSequentViewTooltipAction.java │ │ │ │ │ ├── ToggleSourceViewTooltipAction.java │ │ │ │ │ ├── ToolTipOptionsAction.java │ │ │ │ │ ├── UnicodeToggleAction.java │ │ │ │ │ ├── key-report.php │ │ │ │ │ └── useractions │ │ │ │ │ │ ├── AutoModeUserAction.java │ │ │ │ │ │ ├── FocussedAutoModeUserAction.java │ │ │ │ │ │ ├── ProofLoadUserAction.java │ │ │ │ │ │ ├── ProofMacroUserAction.java │ │ │ │ │ │ ├── ProofModifyingUserAction.java │ │ │ │ │ │ ├── ProofRuleUserAction.java │ │ │ │ │ │ ├── RunStrategyOnNodeUserAction.java │ │ │ │ │ │ ├── SMTProofApplyUserAction.java │ │ │ │ │ │ └── UserAction.java │ │ │ │ ├── colors │ │ │ │ │ ├── ColorSettings.java │ │ │ │ │ └── ColorSettingsProvider.java │ │ │ │ ├── configuration │ │ │ │ │ ├── ChoiceSelector.java │ │ │ │ │ ├── Config.java │ │ │ │ │ ├── ConfigChangeAdapter.java │ │ │ │ │ ├── ConfigChangeEvent.java │ │ │ │ │ ├── ConfigChangeListener.java │ │ │ │ │ ├── ViewSelector.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── docking │ │ │ │ │ ├── DockingHelper.java │ │ │ │ │ ├── DockingLayout.java │ │ │ │ │ └── DynamicCMenu.java │ │ │ │ ├── extension │ │ │ │ │ ├── ExtensionManager.java │ │ │ │ │ ├── api │ │ │ │ │ │ ├── ContextMenuAdapter.java │ │ │ │ │ │ ├── ContextMenuKind.java │ │ │ │ │ │ ├── DefaultContextMenuKind.java │ │ │ │ │ │ ├── KeYGuiExtension.java │ │ │ │ │ │ ├── KeYToolbarExtensionAdapter.java │ │ │ │ │ │ ├── KeyboardShortcutAdapter.java │ │ │ │ │ │ └── TabPanel.java │ │ │ │ │ └── impl │ │ │ │ │ │ ├── Extension.java │ │ │ │ │ │ ├── ExtensionSettings.java │ │ │ │ │ │ ├── HeatmapExt.java │ │ │ │ │ │ ├── KeYGuiExtensionFacade.java │ │ │ │ │ │ └── TestExtension.java │ │ │ │ ├── fonticons │ │ │ │ │ ├── Entypo.java │ │ │ │ │ ├── FontAwesomeBrands.java │ │ │ │ │ ├── FontAwesomeRegular.java │ │ │ │ │ ├── FontAwesomeSolid.java │ │ │ │ │ ├── IconFactory.java │ │ │ │ │ ├── IconFont.java │ │ │ │ │ ├── IconFontProvider.java │ │ │ │ │ ├── IconFontSwing.java │ │ │ │ │ ├── IconProvider.java │ │ │ │ │ ├── MaterialDesignRegular.java │ │ │ │ │ ├── ShowIcons.java │ │ │ │ │ └── Typicons.java │ │ │ │ ├── help │ │ │ │ │ ├── HelpFacade.java │ │ │ │ │ └── HelpInfo.java │ │ │ │ ├── join │ │ │ │ │ ├── JoinDialog.java │ │ │ │ │ ├── JoinMenuItem.java │ │ │ │ │ └── SequentViewer.java │ │ │ │ ├── keyshortcuts │ │ │ │ │ ├── KeyStrokeManager.java │ │ │ │ │ ├── KeyStrokeSettings.java │ │ │ │ │ └── ShortcutSettings.java │ │ │ │ ├── lemmatagenerator │ │ │ │ │ ├── InfoDialog.java │ │ │ │ │ ├── ItemChooser.java │ │ │ │ │ ├── LemmaSelectionDialog.java │ │ │ │ │ ├── LemmataAutoModeOptions.java │ │ │ │ │ ├── LemmataHandler.java │ │ │ │ │ └── LoadUserTacletsDialog.java │ │ │ │ ├── mergerule │ │ │ │ │ ├── MergePartnerSelectionDialog.java │ │ │ │ │ ├── MergeProcedureCompletion.java │ │ │ │ │ ├── MergeRuleCompletion.java │ │ │ │ │ ├── MergeRuleMenuItem.java │ │ │ │ │ └── predicateabstraction │ │ │ │ │ │ ├── AbstractDomainElemChoice.java │ │ │ │ │ │ ├── AbstractionPredicatesChoiceDialog.java │ │ │ │ │ │ ├── ObservableArrayList.java │ │ │ │ │ │ └── PredicateAbstractionCompletion.java │ │ │ │ ├── nodeviews │ │ │ │ │ ├── BuiltInRuleMenuItem.java │ │ │ │ │ ├── CurrentGoalView.java │ │ │ │ │ ├── CurrentGoalViewListener.java │ │ │ │ │ ├── CurrentGoalViewMenu.java │ │ │ │ │ ├── DefaultTacletMenuItem.java │ │ │ │ │ ├── DragNDropInstantiator.java │ │ │ │ │ ├── EmptySequent.java │ │ │ │ │ ├── HTMLSyntaxHighlighter.java │ │ │ │ │ ├── HighlighterArgs.java │ │ │ │ │ ├── InnerNodeView.java │ │ │ │ │ ├── InnerNodeViewListener.java │ │ │ │ │ ├── InsertionTacletBrowserMenuItem.java │ │ │ │ │ ├── MainFrame.java │ │ │ │ │ ├── PosInSequentTransferable.java │ │ │ │ │ ├── SequentHideWarningBorder.java │ │ │ │ │ ├── SequentView.java │ │ │ │ │ ├── SequentViewChangeListener.java │ │ │ │ │ ├── SequentViewDock.java │ │ │ │ │ ├── SequentViewInputListener.java │ │ │ │ │ ├── SequentViewListener.java │ │ │ │ │ ├── SequentViewMenu.java │ │ │ │ │ ├── SequentViewPanel.java │ │ │ │ │ ├── SequentViewSearchBar.java │ │ │ │ │ ├── ShowHashcodesExtension.java │ │ │ │ │ ├── SimpleTacletSelectionMenu.java │ │ │ │ │ ├── TacletDescriber.java │ │ │ │ │ └── TacletMenuItem.java │ │ │ │ ├── notification │ │ │ │ │ ├── AbandonNotification.java │ │ │ │ │ ├── ExceptionFailureNotification.java │ │ │ │ │ ├── ExitKeYNotification.java │ │ │ │ │ ├── GeneralFailureNotification.java │ │ │ │ │ ├── GeneralInformationNotification.java │ │ │ │ │ ├── NotificationAction.java │ │ │ │ │ ├── NotificationEventID.java │ │ │ │ │ ├── NotificationManager.java │ │ │ │ │ ├── NotificationTask.java │ │ │ │ │ ├── ProofClosedNotification.java │ │ │ │ │ ├── actions │ │ │ │ │ │ ├── ExceptionFailureNotificationDialog.java │ │ │ │ │ │ ├── GeneralFailureJTextPaneDisplay.java │ │ │ │ │ │ ├── GeneralInformationJTextPaneDisplay.java │ │ │ │ │ │ ├── ProofClosedJTextPaneDisplay.java │ │ │ │ │ │ └── ShowDisplayPane.java │ │ │ │ │ └── events │ │ │ │ │ │ ├── AbandonTaskEvent.java │ │ │ │ │ │ ├── ExceptionFailureEvent.java │ │ │ │ │ │ ├── ExitKeYEvent.java │ │ │ │ │ │ ├── GeneralFailureEvent.java │ │ │ │ │ │ ├── GeneralInformationEvent.java │ │ │ │ │ │ ├── NotificationEvent.java │ │ │ │ │ │ └── ProofClosedNotificationEvent.java │ │ │ │ ├── originlabels │ │ │ │ │ ├── OriginTermLabelVisualizer.java │ │ │ │ │ ├── OriginTermLabelsExt.java │ │ │ │ │ ├── ShowOriginAction.java │ │ │ │ │ ├── ToggleOriginHighlightAction.java │ │ │ │ │ └── ToggleTermOriginTrackingAction.java │ │ │ │ ├── package-info.java │ │ │ │ ├── plugins │ │ │ │ │ ├── action_history │ │ │ │ │ │ ├── ActionHistoryExtension.java │ │ │ │ │ │ ├── StateChangeListener.java │ │ │ │ │ │ └── UndoHistoryButton.java │ │ │ │ │ └── javac │ │ │ │ │ │ ├── JavaCompilerCheckFacade.java │ │ │ │ │ │ └── JavacExtension.java │ │ │ │ ├── proofdiff │ │ │ │ │ ├── ProofDiffFrame.java │ │ │ │ │ ├── ProofDifference.java │ │ │ │ │ └── diff_match_patch.java │ │ │ │ ├── prooftree │ │ │ │ │ ├── DisableGoal.java │ │ │ │ │ ├── GUIAbstractTreeNode.java │ │ │ │ │ ├── GUIBranchNode.java │ │ │ │ │ ├── GUIOneStepChildTreeNode.java │ │ │ │ │ ├── GUIProofTreeModel.java │ │ │ │ │ ├── GUIProofTreeNode.java │ │ │ │ │ ├── ProofTreeExpansionState.java │ │ │ │ │ ├── ProofTreePopupFactory.java │ │ │ │ │ ├── ProofTreeSearchBar.java │ │ │ │ │ ├── ProofTreeSettingsMenuFactory.java │ │ │ │ │ ├── ProofTreeView.java │ │ │ │ │ ├── ProofTreeViewFilter.java │ │ │ │ │ ├── Style.java │ │ │ │ │ └── Styler.java │ │ │ │ ├── settings │ │ │ │ │ ├── DefaultSettingsProvider.java │ │ │ │ │ ├── FeatureSettingsPanel.java │ │ │ │ │ ├── FontSizeFacade.java │ │ │ │ │ ├── InvalidSettingsInputException.java │ │ │ │ │ ├── SettingsDialog.java │ │ │ │ │ ├── SettingsManager.java │ │ │ │ │ ├── SettingsPanel.java │ │ │ │ │ ├── SettingsProvider.java │ │ │ │ │ ├── SettingsUi.java │ │ │ │ │ ├── SimpleSettingsPanel.java │ │ │ │ │ ├── StandardUISettings.java │ │ │ │ │ ├── TacletOptionsSettings.java │ │ │ │ │ ├── Validator.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── smt │ │ │ │ │ ├── CETree.java │ │ │ │ │ ├── DropdownSelectionButton.java │ │ │ │ │ ├── InformationWindow.java │ │ │ │ │ ├── OptionContentNode.java │ │ │ │ │ ├── ProgressDialog.java │ │ │ │ │ ├── ProgressModel.java │ │ │ │ │ ├── SolverListener.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── settings │ │ │ │ │ │ ├── NewTranslationOptions.java │ │ │ │ │ │ ├── SMTSettingsProvider.java │ │ │ │ │ │ ├── SolverOptions.java │ │ │ │ │ │ ├── TacletTranslationOptions.java │ │ │ │ │ │ └── TranslationOptions.java │ │ │ │ ├── sourceview │ │ │ │ │ ├── JavaDocument.java │ │ │ │ │ ├── JavaJMLEditorLexer.java │ │ │ │ │ ├── KeYEditorLexer.java │ │ │ │ │ ├── SourceHighlightDocument.java │ │ │ │ │ ├── SourceView.java │ │ │ │ │ ├── SourceViewFrame.java │ │ │ │ │ └── TextLineNumber.java │ │ │ │ └── utilities │ │ │ │ │ ├── BracketMatchingTextArea.java │ │ │ │ │ ├── Cached.java │ │ │ │ │ ├── CheckedUserInput.java │ │ │ │ │ ├── ClickableMessageBox.java │ │ │ │ │ ├── ClosableTabComponent.java │ │ │ │ │ ├── CurrentLineHighlighter.java │ │ │ │ │ ├── GuiUtilities.java │ │ │ │ │ ├── HeapStatusExt.java │ │ │ │ │ ├── InspectorForFormulas.java │ │ │ │ │ ├── LruCached.java │ │ │ │ │ ├── SquigglyUnderlinePainter.java │ │ │ │ │ ├── StdDialog.java │ │ │ │ │ ├── TrafficLight.java │ │ │ │ │ └── WrapLayout.java │ │ │ │ ├── proof │ │ │ │ ├── io │ │ │ │ │ └── ProblemLoader.java │ │ │ │ └── mgt │ │ │ │ │ ├── BasicTask.java │ │ │ │ │ ├── EnvNode.java │ │ │ │ │ ├── ProofAggregateTask.java │ │ │ │ │ ├── TaskTreeModel.java │ │ │ │ │ └── TaskTreeNode.java │ │ │ │ ├── ui │ │ │ │ ├── AbstractMediatorUserInterfaceControl.java │ │ │ │ ├── ConsoleProofObligationSelector.java │ │ │ │ ├── ConsoleUserInterfaceControl.java │ │ │ │ ├── MediatorProofControl.java │ │ │ │ ├── ProofObligationSelector.java │ │ │ │ └── Verbosity.java │ │ │ │ └── util │ │ │ │ ├── DoNothingCaret.java │ │ │ │ ├── PreferenceSaver.java │ │ │ │ ├── ThreadUtilities.java │ │ │ │ └── XMLResources.java │ │ └── org │ │ │ └── key_project │ │ │ └── util │ │ │ └── java │ │ │ ├── CheckedProcessBuilder.java │ │ │ └── SwingUtil.java │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension │ │ ├── de │ │ └── uka │ │ │ └── ilkd │ │ │ └── key │ │ │ └── gui │ │ │ ├── LICENSE.TXT │ │ │ ├── THIRD_PARTY_LICENSES.txt │ │ │ ├── actions │ │ │ └── runallproofsui.txt │ │ │ ├── css │ │ │ └── abstrPredsMergeDialog.css │ │ │ ├── help │ │ │ ├── abstrPredsMergeDialogInfo.html │ │ │ ├── choiceExplanations.xml │ │ │ ├── functionExplanations.xml │ │ │ ├── ruleExplanations.xml │ │ │ └── termLabelExplanations.xml │ │ │ ├── images │ │ │ ├── closed-cached.png │ │ │ ├── ekey-brackets.gif │ │ │ ├── ekey-mono-inverted-icon.gif │ │ │ ├── ekey-mono.gif │ │ │ ├── interactiveAppLogo.png │ │ │ ├── key-color-icon-square.gif │ │ │ ├── key-color-icon-square.png │ │ │ ├── key-color.png │ │ │ ├── key-shadow-2.10.png │ │ │ ├── key-shadow-2.12.png │ │ │ ├── key-shadow-2.8.png │ │ │ ├── key-shadow.png │ │ │ ├── keyinteractive.gif │ │ │ ├── keylinked.gif │ │ │ ├── keyproved.gif │ │ │ ├── questionIcon.png │ │ │ ├── scriptAppLogo.png │ │ │ ├── scriptAppLogo.svg │ │ │ └── toolbar │ │ │ │ ├── README │ │ │ │ ├── abandon.png │ │ │ │ ├── autoModeStart.png │ │ │ │ ├── autoModeStop.png │ │ │ │ ├── ce.png │ │ │ │ ├── config.png │ │ │ │ ├── decProcArrow.png │ │ │ │ ├── edit.png │ │ │ │ ├── expandGoals.png │ │ │ │ ├── go-next.png │ │ │ │ ├── go-previous.png │ │ │ │ ├── goalBack.png │ │ │ │ ├── heatmap.png │ │ │ │ ├── help.png │ │ │ │ ├── jml.png │ │ │ │ ├── junit_logo.png │ │ │ │ ├── macros.png │ │ │ │ ├── mgt.png │ │ │ │ ├── minus.png │ │ │ │ ├── oneStepSimplifier.png │ │ │ │ ├── oneStepSimplifier.svg │ │ │ │ ├── open.png │ │ │ │ ├── openMostRecent.png │ │ │ │ ├── plus.png │ │ │ │ ├── properties.png │ │ │ │ ├── pruneProof.png │ │ │ │ ├── quit.png │ │ │ │ ├── recent.png │ │ │ │ ├── saveFile.png │ │ │ │ ├── search.png │ │ │ │ ├── search2.png │ │ │ │ ├── statistics.png │ │ │ │ ├── stop.png │ │ │ │ ├── tg.png │ │ │ │ ├── toolbox.png │ │ │ │ └── uml.png │ │ │ └── mergerule │ │ │ └── predicateabstraction │ │ │ └── AbstractionPredicatesMergeDialog.fxml │ │ ├── fonts │ │ ├── Font Awesome 6 Brands-Regular-400.otf │ │ ├── Font Awesome 6 Free-Regular-400.otf │ │ ├── Font Awesome 6 Free-Solid-900.otf │ │ ├── MaterialIcons-Regular.ttf │ │ ├── entypo.ttf │ │ ├── fontawesome-webfont.ttf │ │ └── typicons.ttf │ │ └── logback.xml │ └── test │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── gui │ │ ├── ChaosMonkey.java │ │ ├── KeyboardTacletTest.java │ │ ├── ShortUniqueFileNamesTest.java │ │ ├── plugins │ │ └── javac │ │ │ └── JavaCompilerCheckFacadeTest.java │ │ └── proofdiff │ │ └── ProofDifferenceTest.java │ └── resources │ ├── logback.xml │ └── singleLoadJavaFile │ ├── A.java │ └── Broken.java ├── key.util ├── Readme.md ├── build.gradle └── src │ ├── main │ ├── checkerframework │ │ └── java │ │ │ └── net │ │ │ └── URI.astub │ ├── java │ │ └── org │ │ │ └── key_project │ │ │ └── util │ │ │ ├── EnhancedStringBuffer.java │ │ │ ├── EqualsAndHashCodeDelegator.java │ │ │ ├── EqualsModProofIrrelevancyUtil.java │ │ │ ├── ExtList.java │ │ │ ├── Filenames.java │ │ │ ├── LRUCache.java │ │ │ ├── RandomName.java │ │ │ ├── Streams.java │ │ │ ├── Strings.java │ │ │ ├── bean │ │ │ ├── Bean.java │ │ │ ├── IBean.java │ │ │ └── package-info.java │ │ │ ├── bitops │ │ │ └── ImmutableFixedLengthBitSet.java │ │ │ ├── collection │ │ │ ├── DefaultEdge.java │ │ │ ├── DefaultImmutableMap.java │ │ │ ├── DefaultImmutableSet.java │ │ │ ├── DirectedGraph.java │ │ │ ├── Graph.java │ │ │ ├── GraphEdge.java │ │ │ ├── IdentityHashSet.java │ │ │ ├── ImmutableArray.java │ │ │ ├── ImmutableHeap.java │ │ │ ├── ImmutableLeftistHeap.java │ │ │ ├── ImmutableList.java │ │ │ ├── ImmutableMap.java │ │ │ ├── ImmutableMapEntry.java │ │ │ ├── ImmutableSLList.java │ │ │ ├── ImmutableSet.java │ │ │ ├── Immutables.java │ │ │ ├── KeYCollections.java │ │ │ ├── NotUniqueException.java │ │ │ ├── Pair.java │ │ │ ├── PropertiesUtil.java │ │ │ ├── WeakValueLinkedHashMap.java │ │ │ └── package-info.java │ │ │ ├── helper │ │ │ ├── FindResources.java │ │ │ ├── HelperClassForUtilityTests.java │ │ │ └── package-info.java │ │ │ ├── java │ │ │ ├── ArrayUtil.java │ │ │ ├── CollectionUtil.java │ │ │ ├── IFilter.java │ │ │ ├── IFilterWithException.java │ │ │ ├── IOUtil.java │ │ │ ├── IntegerUtil.java │ │ │ ├── MapUtil.java │ │ │ ├── NumberUtil.java │ │ │ ├── StringUtil.java │ │ │ ├── WrapUtils.java │ │ │ ├── XMLUtil.java │ │ │ ├── package-info.java │ │ │ └── thread │ │ │ │ ├── AbstractRunnableWithException.java │ │ │ │ ├── AbstractRunnableWithResult.java │ │ │ │ ├── IRunnableWithException.java │ │ │ │ ├── IRunnableWithResult.java │ │ │ │ └── package-info.java │ │ │ ├── lookup │ │ │ ├── Inject.java │ │ │ ├── InjectionException.java │ │ │ ├── Lookup.java │ │ │ └── LookupListener.java │ │ │ ├── package-info.java │ │ │ ├── reflection │ │ │ ├── ClassLoaderUtil.java │ │ │ ├── IClassLoader.java │ │ │ ├── JavaApplicationClassLoader.java │ │ │ └── package-info.java │ │ │ └── testcategories │ │ │ ├── Interactive.java │ │ │ ├── Performance.java │ │ │ ├── Slow.java │ │ │ └── package-info.java │ └── resources │ │ └── MANIFEST.MF │ └── test │ ├── java │ └── org │ │ └── key_project │ │ └── util │ │ ├── StringsTest.java │ │ ├── collection │ │ ├── DefaultImmutableMapTest.java │ │ ├── TestDirectedGraph.java │ │ ├── TestImmutables.java │ │ └── WeakValueLinkedHashMapTest.java │ │ ├── model │ │ ├── ClassA.java │ │ └── ClassB.java │ │ └── testcase │ │ ├── bitops │ │ └── TestFixedLengthBitSet.java │ │ ├── collection │ │ ├── TestLeftistHeapOfInteger.java │ │ ├── TestMapAsListFromIntegerToString.java │ │ ├── TestSLListOfString.java │ │ └── TestSetAsListOfString.java │ │ └── java │ │ ├── ArrayUtilTest.java │ │ ├── CollectionUtilTest.java │ │ ├── IOUtilTest.java │ │ ├── IntegerUtilTest.java │ │ ├── NumberUtilTest.java │ │ ├── StringUtilTest.java │ │ └── XMLUtilTest.java │ └── resources │ ├── lineIndicesTest │ ├── Text.txt │ ├── Text_DOS.txt │ ├── Text_Mac.txt │ └── Text_Unix.txt │ └── logback.xml ├── keyext.caching ├── build.gradle └── src │ ├── main │ └── java │ │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ ├── gui │ │ └── plugins │ │ │ └── caching │ │ │ ├── CachedProofBranch.java │ │ │ ├── CachingException.java │ │ │ ├── CachingExtension.java │ │ │ ├── CachingPruneHandler.java │ │ │ ├── DefaultReferenceSearchDialogListener.java │ │ │ ├── ReferenceSearchButton.java │ │ │ ├── ReferenceSearchDialog.java │ │ │ ├── ReferenceSearchDialogListener.java │ │ │ ├── ReferenceSearchTable.java │ │ │ ├── actions │ │ │ ├── CloseAllByReference.java │ │ │ ├── CloseByReference.java │ │ │ ├── CopyReferencedProof.java │ │ │ ├── GotoReferenceAction.java │ │ │ └── RemoveCachingInformationAction.java │ │ │ ├── settings │ │ │ ├── CachingSettingsProvider.java │ │ │ └── ProofCachingSettings.java │ │ │ └── toolbar │ │ │ └── CachingToggleAction.java │ │ └── proof │ │ └── reference │ │ ├── ProgramMethodFinder.java │ │ └── ReferenceSearcher.java │ └── test │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── proof │ │ └── reference │ │ └── TestReferenceSearcher.java │ └── resources │ └── testcase │ └── proofCaching │ ├── proofWithRule.proof │ └── proofWithoutRule.proof ├── keyext.exploration ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── key_project │ │ │ └── exploration │ │ │ ├── ExplorationExtension.java │ │ │ ├── ExplorationModeModel.java │ │ │ ├── ExplorationNodeData.java │ │ │ ├── Icons.java │ │ │ ├── ProofExplorationService.java │ │ │ ├── actions │ │ │ ├── AddFormulaToAntecedentAction.java │ │ │ ├── AddFormulaToSuccedentAction.java │ │ │ ├── DeleteFormulaAction.java │ │ │ ├── EditFormulaAction.java │ │ │ ├── ExplorationAction.java │ │ │ ├── ShowInteractiveBranchesAction.java │ │ │ └── ToggleExplorationAction.java │ │ │ └── ui │ │ │ └── ExplorationStepsList.java │ └── resources │ │ └── META-INF │ │ └── services │ │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension │ └── test │ ├── java │ └── org │ │ └── key_project │ │ └── exploration │ │ └── ProofExplorationServiceTest.java │ └── resources │ ├── org │ └── key_project │ │ └── exploration │ │ └── testAdditions.key │ └── simplelogger.properties ├── keyext.isabelletranslation ├── build.gradle └── src │ └── main │ ├── java │ └── org │ │ └── key_project │ │ └── isabelletranslation │ │ ├── IsabelleSettingsProvider.java │ │ ├── IsabelleTranslationExtension.java │ │ ├── IsabelleTranslationSettings.java │ │ ├── automation │ │ ├── IsabelleLauncher.java │ │ ├── IsabelleLauncherListener.java │ │ ├── IsabelleNotFoundException.java │ │ ├── IsabelleProblem.java │ │ ├── IsabelleResource.java │ │ ├── IsabelleResourceController.java │ │ ├── IsabelleResult.java │ │ ├── IsabelleRuleApp.java │ │ ├── IsabelleSledgehammerSolver.java │ │ ├── IsabelleSolver.java │ │ └── IsabelleSolverListener.java │ │ ├── gui │ │ ├── InformationWindow.java │ │ ├── IsabelleProgressDialog.java │ │ ├── IsabelleProgressModel.java │ │ ├── IsabelleProofApplyUserAction.java │ │ └── controller │ │ │ ├── IsabelleLauncherProgressDialogMediator.java │ │ │ ├── IsabelleTranslateAllAction.java │ │ │ └── IsabelleTranslationAction.java │ │ └── translation │ │ ├── BSumHandler.java │ │ ├── BooleanOpHandler.java │ │ ├── DefinedSymbolsHandler.java │ │ ├── FieldHandler.java │ │ ├── IllegalFormulaException.java │ │ ├── InfiniteUnionHandler.java │ │ ├── InstanceOperatorHandler.java │ │ ├── IntegerOpHandler.java │ │ ├── IsabelleHandler.java │ │ ├── IsabelleHandlerServices.java │ │ ├── IsabelleMasterHandler.java │ │ ├── IsabelleTranslator.java │ │ ├── LogicalVariableHandler.java │ │ ├── NumberConstantsHandler.java │ │ ├── ObserverFunctionHandler.java │ │ ├── PolymorphicHandler.java │ │ ├── QuantifierHandler.java │ │ ├── SeqDefHandler.java │ │ ├── SortDependingFunctionHandler.java │ │ └── UninterpretedSymbolsHandler.java │ └── resources │ ├── META-INF │ └── services │ │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension │ └── org │ └── key_project │ └── isabelletranslation │ ├── ROOT │ ├── root.tex │ └── translation │ ├── DefinedSymbolsHandler.preamble.xml │ ├── IntegerOpHandler.preamble.xml │ └── defaultHandlers.txt ├── keyext.proofmanagement ├── README.md ├── build.gradle └── src │ └── main │ ├── java │ └── org │ │ └── key_project │ │ └── proofmanagement │ │ ├── CheckConfigDialog.java │ │ ├── Main.java │ │ ├── ProofManagementExt.java │ │ ├── check │ │ ├── Checker.java │ │ ├── CheckerData.java │ │ ├── DependencyChecker.java │ │ ├── KeYFacade.java │ │ ├── MissingProofsChecker.java │ │ ├── Node.java │ │ ├── PathNode.java │ │ ├── ProofManagementException.java │ │ ├── ReplayChecker.java │ │ ├── SettingsChecker.java │ │ └── dependency │ │ │ ├── ContractAppCollector.java │ │ │ ├── DependencyGraph.java │ │ │ ├── DependencyGraphBuilder.java │ │ │ ├── DependencyNode.java │ │ │ └── NodeIntermediateWalker.java │ │ ├── io │ │ ├── DirectoryProofBundleHandler.java │ │ ├── HTMLReport.java │ │ ├── LogLevel.java │ │ ├── Logger.java │ │ ├── ProofBundleHandler.java │ │ └── ZipProofBundleHandler.java │ │ └── merge │ │ ├── FilesChecker.java │ │ └── ProofBundleMerger.java │ └── resources │ ├── META-INF │ └── services │ │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension │ ├── report │ └── html │ │ ├── dependency │ │ ├── dep.st │ │ └── dependencies.st │ │ ├── lines │ │ ├── contract.st │ │ ├── line.st │ │ ├── lines.st │ │ └── prooflessContracts.st │ │ ├── overview │ │ ├── globalprogress.st │ │ └── overview.st │ │ ├── report.st │ │ ├── scripts.st │ │ ├── settings │ │ ├── choices.st │ │ └── settings.st │ │ ├── style.st │ │ └── tree │ │ ├── dir.st │ │ └── tree.st │ └── strings.properties ├── keyext.slicing ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── key_project │ │ │ └── slicing │ │ │ ├── DependencyNodeData.java │ │ │ ├── DependencyTracker.java │ │ │ ├── Main.java │ │ │ ├── RuleStatistics.java │ │ │ ├── SlicingExtension.java │ │ │ ├── SlicingProofReplayer.java │ │ │ ├── SlicingSettings.java │ │ │ ├── SlicingSettingsProvider.java │ │ │ ├── analysis │ │ │ ├── AnalysisResults.java │ │ │ └── DependencyAnalyzer.java │ │ │ ├── graph │ │ │ ├── AddedRule.java │ │ │ ├── AnnotatedEdge.java │ │ │ ├── AnnotatedShortenedEdge.java │ │ │ ├── ClosedGoal.java │ │ │ ├── DependencyGraph.java │ │ │ ├── DotExporter.java │ │ │ ├── EquivalenceDirectedGraph.java │ │ │ ├── GraphNode.java │ │ │ ├── PseudoInput.java │ │ │ ├── PseudoOutput.java │ │ │ └── TrackedFormula.java │ │ │ ├── ui │ │ │ ├── HtmlDialog.java │ │ │ ├── HtmlFactory.java │ │ │ ├── IndexFactory.java │ │ │ ├── PanZoomImageView.java │ │ │ ├── PreviewDialog.java │ │ │ ├── RuleStatisticsDialog.java │ │ │ ├── ShowCreatedByAction.java │ │ │ ├── ShowGraphAction.java │ │ │ ├── ShowNodeInfoAction.java │ │ │ ├── SliceToFixedPointDialog.java │ │ │ ├── SliceToFixedPointWorker.java │ │ │ └── SlicingLeftPanel.java │ │ │ └── util │ │ │ ├── ExecutionTime.java │ │ │ ├── GenericWorker.java │ │ │ ├── GraphvizDotExecutor.java │ │ │ └── GraphvizResult.java │ └── resources │ │ └── META-INF │ │ └── services │ │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension │ └── test │ ├── java │ └── org │ │ └── key_project │ │ └── slicing │ │ ├── DependencyGraphTest.java │ │ ├── EndToEndTests.java │ │ ├── Issue3437Test.java │ │ ├── TestClosedGoal.java │ │ └── TestGraphNode.java │ └── resources │ └── testcase │ ├── agatha.proof │ ├── agathaOpenGoal.proof │ ├── cutExample.proof │ ├── deduplicateCheck4.proof │ ├── exampleDuplicate.proof │ ├── exampleDuplicateOpen.proof │ ├── ifThenElseSplit.proof │ ├── issues │ └── 3437 │ │ ├── Newnames(Newnames__createArray()).JML normal_behavior operation contract.0.proof │ │ └── Newnames.java │ ├── openGoal1.proof │ ├── openGoal2.proof │ └── simpleSMT.proof ├── keyext.ui.testgen ├── build.gradle └── src │ └── main │ ├── java │ └── de │ │ └── uka │ │ └── ilkd │ │ └── key │ │ └── gui │ │ └── testgen │ │ ├── CounterExampleAction.java │ │ ├── TGInfoDialog.java │ │ ├── TGWorker.java │ │ ├── TestGenerationAction.java │ │ ├── TestgenExtension.java │ │ ├── TestgenOptionsPanel.java │ │ └── package-info.java │ └── resources │ └── META-INF │ └── services │ └── de.uka.ilkd.key.gui.extension.api.KeYGuiExtension ├── oldStuff ├── perl_scripts │ ├── extractStatistics.pl │ ├── proveRules.pl │ └── runAllProofs.pl └── system │ ├── MANIFEST.MF │ ├── Makefile │ ├── README.keydebug │ ├── append │ ├── brandFeatureSite.sh │ ├── brandManifest.sh │ ├── brandPlugin.sh │ ├── build.xml │ ├── checkEnvironment │ ├── ejc │ └── success ├── qodana.yaml ├── recoder ├── build.gradle ├── doc │ ├── CodingPorting.html │ ├── api │ │ └── Makefile │ ├── download.html │ ├── examples.html │ ├── examples │ │ ├── Makefile │ │ ├── collections.prj │ │ ├── collections │ │ │ └── java │ │ │ │ └── util │ │ │ │ ├── AbstractCollection.java │ │ │ │ ├── AbstractList.java │ │ │ │ ├── AbstractMap.java │ │ │ │ ├── AbstractSequentialList.java │ │ │ │ ├── AbstractSet.java │ │ │ │ ├── ArrayList.java │ │ │ │ ├── Arrays.java │ │ │ │ ├── Collection.java │ │ │ │ ├── Collections.java │ │ │ │ ├── Comparator.java │ │ │ │ ├── ConcurrentModificationException.java │ │ │ │ ├── Dictionary.java │ │ │ │ ├── EmptyStackException.java │ │ │ │ ├── Enumeration.java │ │ │ │ ├── HashMap.java │ │ │ │ ├── HashSet.java │ │ │ │ ├── Hashtable.java │ │ │ │ ├── Iterator.java │ │ │ │ ├── LinkedList.java │ │ │ │ ├── List.java │ │ │ │ ├── ListIterator.java │ │ │ │ ├── Map.java │ │ │ │ ├── NoSuchElementException.java │ │ │ │ ├── Set.java │ │ │ │ ├── SortedMap.java │ │ │ │ ├── SortedSet.java │ │ │ │ ├── Stack.java │ │ │ │ ├── TreeMap.java │ │ │ │ ├── TreeSet.java │ │ │ │ └── Vector.java │ │ ├── converter-html │ │ │ ├── 0.html │ │ │ ├── 1h.html │ │ │ ├── 1s.html │ │ │ ├── 29.html │ │ │ ├── 50.html │ │ │ ├── 54.html │ │ │ ├── 6.html │ │ │ ├── XRef.html │ │ │ ├── index.html │ │ │ ├── reference-blank.html │ │ │ └── reference-index.html │ │ ├── converter-obfuscated-html │ │ │ ├── 0.html │ │ │ ├── 1h.html │ │ │ ├── 1s.html │ │ │ ├── 31.html │ │ │ ├── 37.html │ │ │ ├── 3f.html │ │ │ ├── 6.html │ │ │ ├── XRef.html │ │ │ ├── index.html │ │ │ ├── reference-blank.html │ │ │ └── reference-index.html │ │ ├── converter.prj │ │ ├── converter │ │ │ ├── ConversionPanel.java │ │ │ ├── Converter.java │ │ │ ├── ConverterRangeModel.java │ │ │ ├── DecimalField.java │ │ │ ├── FollowerRangeModel.java │ │ │ ├── FormattedDocument.java │ │ │ └── Unit.java │ │ ├── java5test.prj │ │ ├── recoder.prj │ │ └── src │ │ │ ├── application │ │ │ ├── Instrumentalize.java │ │ │ ├── Obfuscate.java │ │ │ ├── PlainAnalysis.java │ │ │ ├── RecoderProgram.java │ │ │ ├── SyntaxStatistics.java │ │ │ └── XReferenceHTMLGenerator.java │ │ │ ├── doc │ │ │ ├── stylesheet.css │ │ │ ├── uml.png │ │ │ └── uml.xmi │ │ │ └── sourcerer │ │ │ ├── DefaultSelectionModel.java │ │ │ ├── Main.java │ │ │ ├── RecoderProgram.java │ │ │ ├── Resources.java │ │ │ ├── SelectionModel.java │ │ │ ├── resources │ │ │ ├── AbstractPackageClass12.gif │ │ │ ├── AbstractPackageMethod12.gif │ │ │ ├── AbstractPackageStaticClass12.gif │ │ │ ├── AbstractPrivateStaticClass12.gif │ │ │ ├── AbstractProtectedMethod12.gif │ │ │ ├── AbstractProtectedStaticClass12.gif │ │ │ ├── AbstractPublicClass12.gif │ │ │ ├── AbstractPublicMethod12.gif │ │ │ ├── AbstractPublicStaticClass12.gif │ │ │ ├── Back16.gif │ │ │ ├── Forward16.gif │ │ │ ├── Gear16.gif │ │ │ ├── Goto16.gif │ │ │ ├── History16.gif │ │ │ ├── Logo.jpg │ │ │ ├── Package12.gif │ │ │ ├── PackageClass12.gif │ │ │ ├── PackageConstructor12.gif │ │ │ ├── PackageField12.gif │ │ │ ├── PackageFinalClass12.gif │ │ │ ├── PackageFinalField12.gif │ │ │ ├── PackageFinalMethod12.gif │ │ │ ├── PackageFinalStaticClass12.gif │ │ │ ├── PackageFinalStaticField12.gif │ │ │ ├── PackageFinalStaticMethod12.gif │ │ │ ├── PackageMethod12.gif │ │ │ ├── PackageStaticClass12.gif │ │ │ ├── PackageStaticField12.gif │ │ │ ├── PackageStaticMethod12.gif │ │ │ ├── PrivateClass12.gif │ │ │ ├── PrivateConstructor12.gif │ │ │ ├── PrivateField12.gif │ │ │ ├── PrivateFinalClass12.gif │ │ │ ├── PrivateFinalField12.gif │ │ │ ├── PrivateFinalMethod12.gif │ │ │ ├── PrivateFinalStaticClass12.gif │ │ │ ├── PrivateFinalStaticField12.gif │ │ │ ├── PrivateFinalStaticMethod12.gif │ │ │ ├── PrivateMethod12.gif │ │ │ ├── PrivateStaticClass12.gif │ │ │ ├── PrivateStaticField12.gif │ │ │ ├── PrivateStaticMethod12.gif │ │ │ ├── ProtectedClass12.gif │ │ │ ├── ProtectedConstructor12.gif │ │ │ ├── ProtectedField12.gif │ │ │ ├── ProtectedFinalClass12.gif │ │ │ ├── ProtectedFinalField12.gif │ │ │ ├── ProtectedFinalMethod12.gif │ │ │ ├── ProtectedFinalStaticClass12.gif │ │ │ ├── ProtectedFinalStaticField12.gif │ │ │ ├── ProtectedFinalStaticMethod12.gif │ │ │ ├── ProtectedMethod12.gif │ │ │ ├── ProtectedStaticClass12.gif │ │ │ ├── ProtectedStaticField12.gif │ │ │ ├── ProtectedStaticMethod12.gif │ │ │ ├── PublicClass12.gif │ │ │ ├── PublicConstructor12.gif │ │ │ ├── PublicField12.gif │ │ │ ├── PublicFinalClass12.gif │ │ │ ├── PublicFinalField12.gif │ │ │ ├── PublicFinalMethod12.gif │ │ │ ├── PublicFinalStaticClass12.gif │ │ │ ├── PublicFinalStaticField12.gif │ │ │ ├── PublicFinalStaticMethod12.gif │ │ │ ├── PublicMethod12.gif │ │ │ ├── PublicStaticClass12.gif │ │ │ ├── PublicStaticField12.gif │ │ │ ├── PublicStaticMethod12.gif │ │ │ ├── Refresh16.gif │ │ │ ├── SaveAs16.gif │ │ │ ├── Triangle12.gif │ │ │ ├── Up16.gif │ │ │ ├── Zoom16.gif │ │ │ ├── help.html │ │ │ └── recodershell.bsh │ │ │ ├── tool │ │ │ ├── CodeCleaner.java │ │ │ ├── MethodRenamer.java │ │ │ ├── Obfuscator.java │ │ │ └── SourcererWizard.java │ │ │ ├── util │ │ │ ├── MiniBrowser.java │ │ │ ├── ModelElementRenderer.java │ │ │ ├── RecoderProgram.java │ │ │ ├── RecoderUtils.java │ │ │ ├── SwingUtils.java │ │ │ ├── ThinMetalTheme.java │ │ │ └── Wizard.java │ │ │ └── view │ │ │ ├── BeanShellView.java │ │ │ ├── ChangeEventView.java │ │ │ ├── Console.java │ │ │ ├── ElementSearch.java │ │ │ ├── ElementSelector.java │ │ │ ├── HistoryView.java │ │ │ ├── ListSelector.java │ │ │ ├── MemberView.java │ │ │ ├── MemoryDisplay.java │ │ │ ├── SelectionView.java │ │ │ ├── SelectorList.java │ │ │ ├── SourceCodeView.java │ │ │ ├── StatusBar.java │ │ │ └── SyntaxView.java │ ├── faqs.html │ ├── images │ │ ├── CompostLogo.jpg │ │ ├── GooseLogo.gif │ │ ├── InjectJLogo.jpg │ │ ├── MetaprogrammingCycle-small.png │ │ ├── MetaprogrammingCycle.png │ │ ├── UniLogo.gif │ │ ├── bullet.gif │ │ ├── change-history-rollback.png │ │ ├── change-history-update.png │ │ ├── composite-transformations.png │ │ ├── echidna.jpg │ │ ├── recoder-abstractions-small.png │ │ ├── recoder-abstractions.png │ │ ├── recoder-architecture-small.png │ │ ├── recoder-architecture.png │ │ ├── recoder-configurations-small.png │ │ ├── recoder-configurations.png │ │ ├── recoder-elements-small.png │ │ ├── recoder-elements.png │ │ ├── recoder-services-small.png │ │ ├── recoder-services.png │ │ ├── recoder.jpg │ │ └── screenshot.jpg │ ├── lgpl.html │ ├── links.html │ ├── manual.html │ └── recoder.css ├── doclet │ ├── AbstractIndexWriter.java │ ├── AbstractPackageIndexWriter.java │ ├── AbstractPackageWriter.java │ ├── AbstractSubWriter.java │ ├── AbstractTreeWriter.java │ ├── AllClassesFrameWriter.java │ ├── ClassSubWriter.java │ ├── ClassUseMapper.java │ ├── ClassUseWriter.java │ ├── ClassWriter.java │ ├── ConfigurationStandard.java │ ├── ConstructorSubWriter.java │ ├── DeprecatedAPIListBuilder.java │ ├── DeprecatedListWriter.java │ ├── ExecutableMemberSubWriter.java │ ├── Extern.java │ ├── FieldSubWriter.java │ ├── FrameOutputWriter.java │ ├── Group.java │ ├── HelpWriter.java │ ├── HtmlStandardWriter.java │ ├── MethodSubWriter.java │ ├── PackageFrameWriter.java │ ├── PackageIndexFrameWriter.java │ ├── PackageIndexWriter.java │ ├── PackageListWriter.java │ ├── PackageTreeWriter.java │ ├── PackageUseWriter.java │ ├── PackageWriter.java │ ├── PackagesFileWriter.java │ ├── SerialFieldSubWriter.java │ ├── SerialMethodSubWriter.java │ ├── SerializedFormWriter.java │ ├── SingleIndexWriter.java │ ├── SplitIndexWriter.java │ ├── Standard.java │ ├── StylesheetWriter.java │ ├── SubWriterHolderWriter.java │ ├── TreeWriter.java │ ├── readme.txt │ └── resources │ │ └── standard.properties ├── licenses │ ├── ASM_license.txt │ ├── cpl-v10.html │ └── lgpl.txt ├── src │ ├── main │ │ └── java │ │ │ └── recoder │ │ │ ├── AbstractService.java │ │ │ ├── CrossReferenceServiceConfiguration.java │ │ │ ├── DefaultServiceConfiguration.java │ │ │ ├── IllegalTransformationException.java │ │ │ ├── ModelElement.java │ │ │ ├── ModelException.java │ │ │ ├── NamedModelElement.java │ │ │ ├── ParserException.java │ │ │ ├── ProgramFactory.java │ │ │ ├── Service.java │ │ │ ├── ServiceConfiguration.java │ │ │ ├── TuningParameters.java │ │ │ ├── abstraction │ │ │ ├── AnnotationProperty.java │ │ │ ├── AnnotationUse.java │ │ │ ├── ArrayType.java │ │ │ ├── ClassType.java │ │ │ ├── ClassTypeContainer.java │ │ │ ├── Constructor.java │ │ │ ├── DefaultConstructor.java │ │ │ ├── ElementValuePair.java │ │ │ ├── EnumConstant.java │ │ │ ├── Field.java │ │ │ ├── ImplicitEnumMethod.java │ │ │ ├── ImplicitEnumValueOf.java │ │ │ ├── ImplicitEnumValues.java │ │ │ ├── IntersectionType.java │ │ │ ├── Member.java │ │ │ ├── Method.java │ │ │ ├── NullType.java │ │ │ ├── Package.java │ │ │ ├── ParameterizedType.java │ │ │ ├── PrimitiveType.java │ │ │ ├── ProgramModelElement.java │ │ │ ├── Type.java │ │ │ ├── TypeArgument.java │ │ │ ├── TypeParameter.java │ │ │ ├── Variable.java │ │ │ └── package-info.java │ │ │ ├── bytecode │ │ │ ├── AccessFlags.java │ │ │ ├── AnnotationPropertyInfo.java │ │ │ ├── AnnotationUseInfo.java │ │ │ ├── ByteCodeElement.java │ │ │ ├── ByteCodeFormatException.java │ │ │ ├── ByteCodeParser.java │ │ │ ├── ClassFile.java │ │ │ ├── ConstructorInfo.java │ │ │ ├── ElementValuePairInfo.java │ │ │ ├── EnumConstantReferenceInfo.java │ │ │ ├── FieldInfo.java │ │ │ ├── MemberInfo.java │ │ │ ├── MethodInfo.java │ │ │ ├── ReflectionImport.java │ │ │ ├── TypeArgumentInfo.java │ │ │ ├── TypeNameReferenceInfo.java │ │ │ ├── TypeParameterInfo.java │ │ │ └── package-info.java │ │ │ ├── convenience │ │ │ ├── ASTIterator.java │ │ │ ├── ASTIteratorAdapter.java │ │ │ ├── ASTIteratorListener.java │ │ │ ├── AbstractTreeWalker.java │ │ │ ├── CustomTreeWalker.java │ │ │ ├── ForestWalker.java │ │ │ ├── Format.java │ │ │ ├── Formats.java │ │ │ ├── ModelElementFilter.java │ │ │ ├── NameGenerator.java │ │ │ ├── NamedModelElementFilter.java │ │ │ ├── Naming.java │ │ │ ├── ProgramElementWalker.java │ │ │ ├── Relations.java │ │ │ ├── TaggedComment.java │ │ │ ├── TreeWalker.java │ │ │ └── package-info.java │ │ │ ├── io │ │ │ ├── ArchiveDataLocation.java │ │ │ ├── ClassFileRepository.java │ │ │ ├── DataFileLocation.java │ │ │ ├── DataLocation.java │ │ │ ├── DefaultClassFileRepository.java │ │ │ ├── DefaultProjectFileIO.java │ │ │ ├── DefaultSourceFileRepository.java │ │ │ ├── PathList.java │ │ │ ├── ProjectFileIO.java │ │ │ ├── ProjectSettings.java │ │ │ ├── PropertyNames.java │ │ │ ├── SourceFileRepository.java │ │ │ └── package-info.java │ │ │ ├── java │ │ │ ├── Comment.java │ │ │ ├── CompilationUnit.java │ │ │ ├── Declaration.java │ │ │ ├── DocComment.java │ │ │ ├── Expression.java │ │ │ ├── ExpressionContainer.java │ │ │ ├── Identifier.java │ │ │ ├── Import.java │ │ │ ├── JavaNonTerminalProgramElement.java │ │ │ ├── JavaNonTerminalProgramElement.java.tmp │ │ │ ├── JavaProgramElement.java │ │ │ ├── JavaProgramFactory.java │ │ │ ├── JavaSourceElement.java │ │ │ ├── LoopInitializer.java │ │ │ ├── NamedProgramElement.java │ │ │ ├── NonTerminalProgramElement.java │ │ │ ├── PackageSpecification.java │ │ │ ├── ParameterContainer.java │ │ │ ├── PrettyPrinter.java │ │ │ ├── PrettyPrintingException.java │ │ │ ├── ProgramElement.java │ │ │ ├── Reference.java │ │ │ ├── ScopeDefiningElement.java │ │ │ ├── SingleLineComment.java │ │ │ ├── SourceElement.java │ │ │ ├── SourceVisitor.java │ │ │ ├── Statement.java │ │ │ ├── StatementBlock.java │ │ │ ├── StatementContainer.java │ │ │ ├── TerminalProgramElement.java │ │ │ ├── TypeScope.java │ │ │ ├── VariableScope.java │ │ │ ├── declaration │ │ │ │ ├── AnnotationDeclaration.java │ │ │ │ ├── AnnotationElementValuePair.java │ │ │ │ ├── AnnotationPropertyDeclaration.java │ │ │ │ ├── AnnotationUseSpecification.java │ │ │ │ ├── ClassDeclaration.java │ │ │ │ ├── ClassInitializer.java │ │ │ │ ├── ConstructorDeclaration.java │ │ │ │ ├── DeclarationSpecifier.java │ │ │ │ ├── EnumConstantDeclaration.java │ │ │ │ ├── EnumConstantSpecification.java │ │ │ │ ├── EnumDeclaration.java │ │ │ │ ├── Extends.java │ │ │ │ ├── FieldDeclaration.java │ │ │ │ ├── FieldSpecification.java │ │ │ │ ├── Implements.java │ │ │ │ ├── InheritanceSpecification.java │ │ │ │ ├── InterfaceDeclaration.java │ │ │ │ ├── JavaDeclaration.java │ │ │ │ ├── LocalVariableDeclaration.java │ │ │ │ ├── MemberDeclaration.java │ │ │ │ ├── MethodDeclaration.java │ │ │ │ ├── Modifier.java │ │ │ │ ├── ParameterDeclaration.java │ │ │ │ ├── Throws.java │ │ │ │ ├── TypeArgumentDeclaration.java │ │ │ │ ├── TypeDeclaration.java │ │ │ │ ├── TypeDeclarationContainer.java │ │ │ │ ├── TypeParameterDeclaration.java │ │ │ │ ├── VariableDeclaration.java │ │ │ │ ├── VariableSpecification.java │ │ │ │ ├── modifier │ │ │ │ │ ├── Abstract.java │ │ │ │ │ ├── Final.java │ │ │ │ │ ├── Native.java │ │ │ │ │ ├── Private.java │ │ │ │ │ ├── Protected.java │ │ │ │ │ ├── Public.java │ │ │ │ │ ├── Static.java │ │ │ │ │ ├── StrictFp.java │ │ │ │ │ ├── Synchronized.java │ │ │ │ │ ├── Transient.java │ │ │ │ │ ├── VisibilityModifier.java │ │ │ │ │ ├── Volatile.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── expression │ │ │ │ ├── ArrayInitializer.java │ │ │ │ ├── Assignment.java │ │ │ │ ├── ElementValueArrayInitializer.java │ │ │ │ ├── ExpressionStatement.java │ │ │ │ ├── Literal.java │ │ │ │ ├── Operator.java │ │ │ │ ├── ParenthesizedExpression.java │ │ │ │ ├── literal │ │ │ │ │ ├── BooleanLiteral.java │ │ │ │ │ ├── CharLiteral.java │ │ │ │ │ ├── DoubleLiteral.java │ │ │ │ │ ├── FloatLiteral.java │ │ │ │ │ ├── IntLiteral.java │ │ │ │ │ ├── LongLiteral.java │ │ │ │ │ ├── NullLiteral.java │ │ │ │ │ ├── StringLiteral.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── operator │ │ │ │ │ ├── BinaryAnd.java │ │ │ │ │ ├── BinaryAndAssignment.java │ │ │ │ │ ├── BinaryNot.java │ │ │ │ │ ├── BinaryOr.java │ │ │ │ │ ├── BinaryOrAssignment.java │ │ │ │ │ ├── BinaryXOr.java │ │ │ │ │ ├── BinaryXOrAssignment.java │ │ │ │ │ ├── ComparativeOperator.java │ │ │ │ │ ├── Conditional.java │ │ │ │ │ ├── CopyAssignment.java │ │ │ │ │ ├── Divide.java │ │ │ │ │ ├── DivideAssignment.java │ │ │ │ │ ├── Equals.java │ │ │ │ │ ├── GreaterOrEquals.java │ │ │ │ │ ├── GreaterThan.java │ │ │ │ │ ├── Instanceof.java │ │ │ │ │ ├── LessOrEquals.java │ │ │ │ │ ├── LessThan.java │ │ │ │ │ ├── LogicalAnd.java │ │ │ │ │ ├── LogicalNot.java │ │ │ │ │ ├── LogicalOr.java │ │ │ │ │ ├── Minus.java │ │ │ │ │ ├── MinusAssignment.java │ │ │ │ │ ├── Modulo.java │ │ │ │ │ ├── ModuloAssignment.java │ │ │ │ │ ├── Negative.java │ │ │ │ │ ├── New.java │ │ │ │ │ ├── NewArray.java │ │ │ │ │ ├── NotEquals.java │ │ │ │ │ ├── Plus.java │ │ │ │ │ ├── PlusAssignment.java │ │ │ │ │ ├── Positive.java │ │ │ │ │ ├── PostDecrement.java │ │ │ │ │ ├── PostIncrement.java │ │ │ │ │ ├── PreDecrement.java │ │ │ │ │ ├── PreIncrement.java │ │ │ │ │ ├── ShiftLeft.java │ │ │ │ │ ├── ShiftLeftAssignment.java │ │ │ │ │ ├── ShiftRight.java │ │ │ │ │ ├── ShiftRightAssignment.java │ │ │ │ │ ├── Times.java │ │ │ │ │ ├── TimesAssignment.java │ │ │ │ │ ├── TypeCast.java │ │ │ │ │ ├── TypeOperator.java │ │ │ │ │ ├── UnsignedShiftRight.java │ │ │ │ │ ├── UnsignedShiftRightAssignment.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ ├── reference │ │ │ │ ├── AnnotationPropertyReference.java │ │ │ │ ├── ArrayLengthReference.java │ │ │ │ ├── ArrayReference.java │ │ │ │ ├── ConstructorReference.java │ │ │ │ ├── EnumConstructorReference.java │ │ │ │ ├── FieldReference.java │ │ │ │ ├── MemberReference.java │ │ │ │ ├── MetaClassReference.java │ │ │ │ ├── MethodReference.java │ │ │ │ ├── NameReference.java │ │ │ │ ├── PackageReference.java │ │ │ │ ├── PackageReferenceContainer.java │ │ │ │ ├── ReferencePrefix.java │ │ │ │ ├── ReferenceSuffix.java │ │ │ │ ├── SpecialConstructorReference.java │ │ │ │ ├── SuperConstructorReference.java │ │ │ │ ├── SuperReference.java │ │ │ │ ├── ThisConstructorReference.java │ │ │ │ ├── ThisReference.java │ │ │ │ ├── TypeReference.java │ │ │ │ ├── TypeReferenceContainer.java │ │ │ │ ├── TypeReferenceInfix.java │ │ │ │ ├── UncollatedReferenceQualifier.java │ │ │ │ ├── VariableReference.java │ │ │ │ └── package-info.java │ │ │ └── statement │ │ │ │ ├── Assert.java │ │ │ │ ├── Branch.java │ │ │ │ ├── BranchStatement.java │ │ │ │ ├── Break.java │ │ │ │ ├── Case.java │ │ │ │ ├── Catch.java │ │ │ │ ├── Continue.java │ │ │ │ ├── Default.java │ │ │ │ ├── Do.java │ │ │ │ ├── Else.java │ │ │ │ ├── EmptyStatement.java │ │ │ │ ├── EnhancedFor.java │ │ │ │ ├── ExpressionJumpStatement.java │ │ │ │ ├── Finally.java │ │ │ │ ├── For.java │ │ │ │ ├── If.java │ │ │ │ ├── JavaStatement.java │ │ │ │ ├── JumpStatement.java │ │ │ │ ├── LabelJumpStatement.java │ │ │ │ ├── LabeledStatement.java │ │ │ │ ├── LoopStatement.java │ │ │ │ ├── Return.java │ │ │ │ ├── Switch.java │ │ │ │ ├── SynchronizedBlock.java │ │ │ │ ├── Then.java │ │ │ │ ├── Throw.java │ │ │ │ ├── Try.java │ │ │ │ ├── While.java │ │ │ │ └── package-info.java │ │ │ ├── kit │ │ │ ├── CommentKit.java │ │ │ ├── Conflict.java │ │ │ ├── DifferentReturnTypeOverwrite.java │ │ │ ├── Equivalence.java │ │ │ ├── ExpressionKit.java │ │ │ ├── FinalOverwrite.java │ │ │ ├── Identity.java │ │ │ ├── IllegalInterfaceMember.java │ │ │ ├── IllegalName.java │ │ │ ├── MethodKit.java │ │ │ ├── MiscKit.java │ │ │ ├── MissingSources.java │ │ │ ├── MissingTypeDeclarations.java │ │ │ ├── ModifierKit.java │ │ │ ├── MorePrivateOverwrite.java │ │ │ ├── NameClashException.java │ │ │ ├── NameConflict.java │ │ │ ├── NameGenerator.java │ │ │ ├── NoProblem.java │ │ │ ├── NonStaticOverwrite.java │ │ │ ├── PackageKit.java │ │ │ ├── Problem.java │ │ │ ├── ProblemReport.java │ │ │ ├── StatementKit.java │ │ │ ├── Transformation.java │ │ │ ├── TwoPassTransformation.java │ │ │ ├── TypeKit.java │ │ │ ├── UncoveredExceptionsOverwrite.java │ │ │ ├── UnitKit.java │ │ │ ├── VariableKit.java │ │ │ ├── package-info.java │ │ │ ├── pattern │ │ │ │ ├── DesignPattern.java │ │ │ │ ├── Factory.java │ │ │ │ ├── FactoryMethod.java │ │ │ │ ├── InconsistentPatternException.java │ │ │ │ ├── Property.java │ │ │ │ └── package-info.java │ │ │ └── transformation │ │ │ │ ├── AppendMember.java │ │ │ │ ├── Modify.java │ │ │ │ ├── PrepareStatementList.java │ │ │ │ ├── PrependExpressionWithStatements.java │ │ │ │ ├── RemoveRedundantTypeReferences.java │ │ │ │ ├── RemoveUnusedImports.java │ │ │ │ ├── RenameMethod.java │ │ │ │ ├── RenamePackage.java │ │ │ │ ├── RenameType.java │ │ │ │ ├── RenameVariable.java │ │ │ │ ├── ShiftPreceedingStatementExpressions.java │ │ │ │ ├── java5to4 │ │ │ │ ├── EnhancedFor2For.java │ │ │ │ ├── MakeConditionalCompatible.java │ │ │ │ ├── RemoveAnnotations.java │ │ │ │ ├── RemoveCoVariantReturnTypes.java │ │ │ │ ├── RemoveStaticImports.java │ │ │ │ ├── ReplaceEnums.java │ │ │ │ ├── ResolveBoxing.java │ │ │ │ ├── ResolveGenerics.java │ │ │ │ ├── ResolveVarArgs.java │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── list │ │ │ ├── generic │ │ │ │ ├── ASTArrayList.java │ │ │ │ ├── ASTList.java │ │ │ │ └── package-info.java │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ ├── parser │ │ │ ├── ASCII_UCodeESC_CharStream.java │ │ │ ├── JavaCCParser.java │ │ │ ├── JavaCCParserConstants.java │ │ │ ├── JavaCCParserTokenManager.java │ │ │ ├── JavaCharStream.java │ │ │ ├── ParseException.java │ │ │ ├── Token.java │ │ │ ├── TokenMgrError.java │ │ │ └── package-info.java │ │ │ ├── service │ │ │ ├── AmbiguousDeclarationException.java │ │ │ ├── AmbiguousImportException.java │ │ │ ├── AmbiguousReferenceException.java │ │ │ ├── AmbiguousStaticFieldImportException.java │ │ │ ├── AttachChange.java │ │ │ ├── ByteCodeInfo.java │ │ │ ├── ChangeHistory.java │ │ │ ├── ChangeHistoryEvent.java │ │ │ ├── ChangeHistoryListener.java │ │ │ ├── ClassTypeTopSort.java │ │ │ ├── ConstantEvaluator.java │ │ │ ├── CrossReferenceSourceInfo.java │ │ │ ├── CyclicInheritanceException.java │ │ │ ├── DefaultByteCodeInfo.java │ │ │ ├── DefaultConstantEvaluator.java │ │ │ ├── DefaultCrossReferenceSourceInfo.java │ │ │ ├── DefaultErrorHandler.java │ │ │ ├── DefaultImplicitElementInfo.java │ │ │ ├── DefaultNameInfo.java │ │ │ ├── DefaultProgramModelInfo.java │ │ │ ├── DefaultSourceInfo.java │ │ │ ├── DetachChange.java │ │ │ ├── ErrorHandler.java │ │ │ ├── IllegalChangeReportException.java │ │ │ ├── IllegalModifierException.java │ │ │ ├── ImplicitElementInfo.java │ │ │ ├── MissingClassFileException.java │ │ │ ├── ModelUpdateListener.java │ │ │ ├── NameInfo.java │ │ │ ├── NoSuchTransformationException.java │ │ │ ├── ProgramModelInfo.java │ │ │ ├── SourceInfo.java │ │ │ ├── TreeChange.java │ │ │ ├── TypeImportException.java │ │ │ ├── TypingException.java │ │ │ ├── UnresolvedReferenceException.java │ │ │ └── package-info.java │ │ │ └── util │ │ │ ├── AbstractIndex.java │ │ │ ├── CommandLineProgram.java │ │ │ ├── Debug.java │ │ │ ├── Equality.java │ │ │ ├── FileCollector.java │ │ │ ├── FileUtils.java │ │ │ ├── HashCode.java │ │ │ ├── IdentityIndex.java │ │ │ ├── IllegalOptionValueException.java │ │ │ ├── Index.java │ │ │ ├── Marker.java │ │ │ ├── MissingArgumentException.java │ │ │ ├── MissingOptionValueException.java │ │ │ ├── NaturalIndex.java │ │ │ ├── ObjectIDAssignment.java │ │ │ ├── OptionException.java │ │ │ ├── OptionManager.java │ │ │ ├── OptionMultiplicityException.java │ │ │ ├── Order.java │ │ │ ├── ProgressEvent.java │ │ │ ├── ProgressListener.java │ │ │ ├── ProgressListenerManager.java │ │ │ ├── Queue.java │ │ │ ├── Sorting.java │ │ │ ├── StringUtils.java │ │ │ ├── UnknownOptionException.java │ │ │ ├── Worklist.java │ │ │ └── package-info.java │ └── test │ │ ├── java │ │ └── recoder │ │ │ └── testsuite │ │ │ ├── basic │ │ │ ├── BasicTestsSuite.java │ │ │ ├── ParseFilesTest.java │ │ │ ├── SetupModelTest.java │ │ │ ├── analysis │ │ │ │ ├── AnalysisReportTest.java │ │ │ │ ├── GetAllRelatedMethodsTest.java │ │ │ │ ├── LocalVariableXReferenceCompletenessTest.java │ │ │ │ ├── MemberXReferenceCompletenessTest.java │ │ │ │ ├── ModelRebuildTest.java │ │ │ │ ├── PackageXReferenceCompletenessTest.java │ │ │ │ ├── ReferenceCompletenessTest.java │ │ │ │ ├── TypeXReferenceCompletenessTest.java │ │ │ │ └── XReferenceCompletenessTest.java │ │ │ └── syntax │ │ │ │ ├── CloneTest.java │ │ │ │ ├── ParserPrinterTest.java │ │ │ │ └── WalkPositionTest.java │ │ │ ├── fixedbugs │ │ │ └── FixedBugs.java │ │ │ ├── java5test │ │ │ └── Java5Test.java │ │ │ └── transformation │ │ │ └── TransformationTests.java │ │ └── resources │ │ ├── Makefile │ │ ├── basic │ │ ├── collections.log.gz │ │ ├── collections.prj │ │ ├── standard.tst │ │ ├── testideas.txt │ │ └── testsrc │ │ │ └── testdata │ │ │ └── MethodTestData.java │ │ ├── java5 │ │ └── src │ │ │ ├── annotationtest │ │ │ ├── a │ │ │ │ └── A.java │ │ │ └── annotationtest │ │ │ │ ├── AnnotationTest.java │ │ │ │ ├── AnnotationType.java │ │ │ │ ├── MarkerAnnotation.java │ │ │ │ └── package-info.java │ │ │ ├── comments │ │ │ ├── Client.java │ │ │ ├── InsufficientRightsException.java │ │ │ └── SecureList.java │ │ │ ├── enumtest │ │ │ └── enumtest │ │ │ │ ├── EnumTest.java │ │ │ │ └── jls │ │ │ │ ├── Card.java │ │ │ │ └── Operation.java │ │ │ ├── errortest │ │ │ ├── Dummy1.java │ │ │ ├── Dummy2.java │ │ │ └── a │ │ │ │ ├── Helper.java │ │ │ │ └── StaticImports.java │ │ │ ├── generictest │ │ │ └── generictest │ │ │ │ └── GenericTest.java │ │ │ ├── prettyprinting │ │ │ └── A.java │ │ │ └── transformations │ │ │ ├── Dummy.java │ │ │ ├── GenericTest.java │ │ │ └── util │ │ │ ├── AbstractHashSet.java │ │ │ ├── AbstractHashTable.java │ │ │ ├── AbstractIndex.java │ │ │ ├── CommandLineProgram.java │ │ │ ├── CustomHashSet.java │ │ │ ├── CustomHashTable.java │ │ │ ├── Debug.java │ │ │ ├── Equality.java │ │ │ ├── FileCollector.java │ │ │ ├── FileUtils.java │ │ │ ├── HashCode.java │ │ │ ├── IdentityHashSet.java │ │ │ ├── IdentityHashTable.java │ │ │ ├── IdentityIndex.java │ │ │ ├── IllegalOptionValueException.java │ │ │ ├── Index.java │ │ │ ├── Map.java │ │ │ ├── Marker.java │ │ │ ├── MissingArgumentException.java │ │ │ ├── MissingOptionValueException.java │ │ │ ├── MutableMap.java │ │ │ ├── MutableSet.java │ │ │ ├── NaturalHashSet.java │ │ │ ├── NaturalHashTable.java │ │ │ ├── NaturalIndex.java │ │ │ ├── ObjectIDAssignment.java │ │ │ ├── OptionException.java │ │ │ ├── OptionManager.java │ │ │ ├── OptionMultiplicityException.java │ │ │ ├── Order.java │ │ │ ├── ProgressEvent.java │ │ │ ├── ProgressListener.java │ │ │ ├── ProgressListenerManager.java │ │ │ ├── Queue.java │ │ │ ├── Set.java │ │ │ ├── Sorting.java │ │ │ ├── StringUtils.java │ │ │ ├── UnknownOptionException.java │ │ │ ├── Worklist.java │ │ │ └── package-info.java │ │ ├── test │ │ ├── A.java │ │ ├── B.java │ │ └── recoder │ │ │ └── GetMethodsTest.java │ │ └── transformation │ │ ├── defaultCons │ │ ├── DefaultCons.java │ │ └── Ext.java │ │ ├── obfuscate │ │ └── ObfuscateTest.java │ │ └── readOnly │ │ ├── MotifComboBoxUI.java │ │ └── Test.java └── templates │ ├── Java12FrontEnd.jj │ ├── JavaProgramFactory.template │ └── ProgramFactory.template ├── scripts ├── .ant-targets-build.xml ├── KeY.jar │ ├── META-INF │ │ └── MANIFEST.MF │ └── splash.gif │ │ └── key-color.gif ├── jacocokey.gradle ├── jenkins │ ├── deployAll.sh │ ├── generateDoc.sh │ ├── runOptionalTests.sh │ ├── runTests.sh │ └── startupClean.sh ├── key ├── mvndeploy │ ├── deploy.sh │ ├── docking-frames-common.pom.xml │ ├── docking-frames-core.pom.xml │ ├── recoderKey.pom.xml │ └── settings.xml ├── newlayout.sh ├── proofobligationrewrite.py ├── proveRules ├── runAllProofs ├── runTests └── tools │ ├── checkProofs.pl │ ├── checkstyle │ ├── CodestyleMerger.java │ ├── GitDiffFilter.java │ ├── NoEmbeddedPlusPlusCheck.java │ ├── checkstyle-10.6.0-all.jar │ ├── keyCodeStyle.xml │ ├── key_checks.xml │ ├── key_checks_incremental.xml │ ├── publishAudit.pl │ ├── publishAudit.py │ ├── runIncrementalCheckstyle.sh │ └── translateAudit.py │ ├── makeStatisticsPlots.pl │ ├── runAllProofs_createPerformancePlots.sh │ ├── runAllProofs_createPerformancePlots │ └── plot2png.sh │ ├── sonarqube_hint.py │ └── testRunner.sh ├── settings.gradle └── test ├── Test.java ├── enum.key └── list.key /.git-blame-ignore-revs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.git-blame-ignore-revs -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/ISSUE_TEMPLATE/bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/ISSUE_TEMPLATE/config.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/ISSUE_TEMPLATE/feature_request.md -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/old_workflows/deletecache.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/old_workflows/deletecache.yml -------------------------------------------------------------------------------- /.github/old_workflows/labeler.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/old_workflows/labeler.yml -------------------------------------------------------------------------------- /.github/old_workflows/mega-lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/old_workflows/mega-lint.yml -------------------------------------------------------------------------------- /.github/old_workflows/test-report.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/old_workflows/test-report.yml -------------------------------------------------------------------------------- /.github/old_workflows/update_symbex_oracles.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/old_workflows/update_symbex_oracles.yml -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/qodana.starter.full.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/qodana.starter.full.xml -------------------------------------------------------------------------------- /.github/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/release.yml -------------------------------------------------------------------------------- /.github/workflows/code_quality.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/code_quality.yml -------------------------------------------------------------------------------- /.github/workflows/gradle-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/gradle-publish.yml -------------------------------------------------------------------------------- /.github/workflows/javadoc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/javadoc.yml -------------------------------------------------------------------------------- /.github/workflows/nightlydeploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/nightlydeploy.yml -------------------------------------------------------------------------------- /.github/workflows/opttest.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/opttest.yml -------------------------------------------------------------------------------- /.github/workflows/sonarqube.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/sonarqube.yml -------------------------------------------------------------------------------- /.github/workflows/tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/tests.yml -------------------------------------------------------------------------------- /.github/workflows/tests_winmac.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.github/workflows/tests_winmac.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.gitlab-ci.yml -------------------------------------------------------------------------------- /.gitlab/issue_templates/Bug.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.gitlab/issue_templates/Bug.md -------------------------------------------------------------------------------- /.gitlab/merge_request_templates/Feature.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/.gitlab/merge_request_templates/Feature.md -------------------------------------------------------------------------------- /CITATION.bib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/CITATION.bib -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Jenkinsfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/Jenkinsfile -------------------------------------------------------------------------------- /LICENSE.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/LICENSE.TXT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/README.md -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/codecov.yml -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -------------------------------------------------------------------------------- /gradle/header: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradle/header -------------------------------------------------------------------------------- /gradle/header-recoder: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradle/header-recoder -------------------------------------------------------------------------------- /gradle/key_checks.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradle/key_checks.xml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/gradlew.bat -------------------------------------------------------------------------------- /key.core.example/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.example/META-INF/MANIFEST.MF -------------------------------------------------------------------------------- /key.core.example/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.example/build.gradle -------------------------------------------------------------------------------- /key.core.example/example/IntegerUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.example/example/IntegerUtil.java -------------------------------------------------------------------------------- /key.core.example/src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.example/src/main/resources/logback.xml -------------------------------------------------------------------------------- /key.core.proof_references/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.proof_references/build.gradle -------------------------------------------------------------------------------- /key.core.rifl/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.rifl/build.gradle -------------------------------------------------------------------------------- /key.core.symbolic_execution.example/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.symbolic_execution.example/build.gradle -------------------------------------------------------------------------------- /key.core.symbolic_execution/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.symbolic_execution/build.gradle -------------------------------------------------------------------------------- /key.core.symbolic_execution/src/test/resources/testcase/set/doWhileFalseTest/oracle/DoWhileFalseTest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.symbolic_execution/src/test/resources/testcase/set/doWhileTest/oracle/DoWhileTest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.symbolic_execution/src/test/resources/testcase/set/functionalDoWhileTest/oracle/FunctionalDoWhileTest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.symbolic_execution/src/test/resources/testcase/set/nestedDoWhileTest/oracle/NestedDoWhileTest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.symbolic_execution/src/test/resources/testcase/set/useLoopInvariantArraySizeDoWhile/oracle/ArraySizeDoWhile.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.testgen/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.testgen/build.gradle -------------------------------------------------------------------------------- /key.core.testgen/src/main/resources/de/uka/ilkd/key/tcg/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | package de.uka.ilkd.key.tcg -------------------------------------------------------------------------------- /key.core.testgen/src/test/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core.testgen/src/test/resources/logback.xml -------------------------------------------------------------------------------- /key.core.testgen/testcases/arrayutil/expected/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core.testgen/testcases/binarysearch/actual/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /key.core/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/build.gradle -------------------------------------------------------------------------------- /key.core/src/main/antlr4/JmlLexer.g4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/antlr4/JmlLexer.g4 -------------------------------------------------------------------------------- /key.core/src/main/antlr4/JmlParser.g4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/antlr4/JmlParser.g4 -------------------------------------------------------------------------------- /key.core/src/main/antlr4/KeYLexer.g4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/antlr4/KeYLexer.g4 -------------------------------------------------------------------------------- /key.core/src/main/antlr4/KeYParser.g4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/antlr4/KeYParser.g4 -------------------------------------------------------------------------------- /key.core/src/main/java/de/uka/ilkd/key/ldt/LDT.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/java/de/uka/ilkd/key/ldt/LDT.java -------------------------------------------------------------------------------- /key.core/src/main/resources/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/resources/META-INF/MANIFEST.MF -------------------------------------------------------------------------------- /key.core/src/main/resources/META-INF/services/de.uka.ilkd.key.proof.init.POExtension: -------------------------------------------------------------------------------- 1 | de.uka.ilkd.key.proof.init.FinalFieldsPOExtension -------------------------------------------------------------------------------- /key.core/src/main/resources/de/uka/ilkd/key/java/JavaRedux/java/lang/Boolean.java: -------------------------------------------------------------------------------- 1 | package java.lang; 2 | 3 | public class Boolean { 4 | 5 | } -------------------------------------------------------------------------------- /key.core/src/main/resources/de/uka/ilkd/key/java/JavaRedux/java/lang/Thread.java: -------------------------------------------------------------------------------- 1 | package java.lang; 2 | 3 | public class Thread{ 4 | 5 | 6 | 7 | } -------------------------------------------------------------------------------- /key.core/src/main/resources/de/uka/ilkd/key/nparser/builder/resources.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /key.core/src/main/resources/key.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KeYProject/key/HEAD/key.core/src/main/resources/key.properties -------------------------------------------------------------------------------- /key.core/src/test/resources/de/uka/ilkd/key/scripts/lesstrans.script: -------------------------------------------------------------------------------- 1 | rewrite find="f