Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,976 changes: 28 additions & 1,948 deletions key.core.testgen/testcases/binarysearch/attempt.proof

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -159,11 +159,13 @@ public void readSettings(Properties props) {
while (st.hasMoreTokens()) {
StringTokenizer st2 = new StringTokenizer(st.nextToken().trim(), "-");
String category = st2.nextToken().trim();
String def = st2.nextToken().trim();
String def = st2.nextToken().trim()
.replace("\\\\:", ":")
.replace("\\:", ":");
category2Default.put(category, def);

}
}
System.out.println(category2Default);
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,7 @@ public ConfigurationWriter printIndent() {
}

public ConfigurationWriter printComment(@Nullable String comment) {
if (comment == null) {
if (comment == null || comment.isBlank()) {
return this;
}
if (comment.contains("\n")) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,88 +1,82 @@
\profile "Java Profile";

\settings {
"#Proof-Settings-Config-File
#Thu Jun 02 14:33:33 CEST 2022
[NewSMT]NoTypeHierarchy=false
[Labels]UseOriginLabels=true
[StrategyProperty]QUERYAXIOM_OPTIONS_KEY=QUERYAXIOM_ON
[NewSMT]Presburger=false
[SMTSettings]invariantForall=false
[Strategy]ActiveStrategy=JavaCardDLStrategy
[StrategyProperty]USER_TACLETS_OPTIONS_KEY1=USER_TACLETS_OFF
[StrategyProperty]QUANTIFIERS_OPTIONS_KEY=QUANTIFIERS_NON_SPLITTING_WITH_PROGS
[StrategyProperty]USER_TACLETS_OPTIONS_KEY2=USER_TACLETS_OFF
[Choice]DefaultChoices=assertions-assertions\\:safe , initialisation-initialisation\\:disableStaticInitialisation , intRules-intRules\\:arithmeticSemanticsIgnoringOF , programRules-programRules\\:Java , runtimeExceptions-runtimeExceptions\\:allow , JavaCard-JavaCard\\:off , Strings-Strings\\:on , modelFields-modelFields\\:treatAsAxiom , bigint-bigint\\:on , sequences-sequences\\:on , moreSeqRules-moreSeqRules\\:off , reach-reach\\:on , integerSimplificationRules-integerSimplificationRules\\:full , permissions-permissions\\:off , wdOperator-wdOperator\\:L , wdChecks-wdChecks\\:off , mergeGenerateIsWeakeningGoal-mergeGenerateIsWeakeningGoal\\:off , floatRules-floatRules\\:strictfpOnly , javaLoopTreatment-javaLoopTreatment\\:efficient , methodExpansion-methodExpansion\\:modularOnly
[StrategyProperty]LOOP_OPTIONS_KEY=LOOP_SCOPE_INV_TACLET
[StrategyProperty]INF_FLOW_CHECK_PROPERTY=INF_FLOW_CHECK_FALSE
[SMTSettings]UseBuiltUniqueness=false
[SMTSettings]explicitTypeHierarchy=false
[SMTSettings]instantiateHierarchyAssumptions=true
[StrategyProperty]NON_LIN_ARITH_OPTIONS_KEY=NON_LIN_ARITH_DEF_OPS
[SMTSettings]SelectedTaclets=
[StrategyProperty]DEP_OPTIONS_KEY=DEP_ON
[StrategyProperty]AUTO_INDUCTION_OPTIONS_KEY=AUTO_INDUCTION_OFF
[Strategy]MaximumNumberOfAutomaticApplications=10000
[StrategyProperty]STOPMODE_OPTIONS_KEY=STOPMODE_DEFAULT
[StrategyProperty]CLASS_AXIOM_OPTIONS_KEY=CLASS_AXIOM_FREE
[SMTSettings]useConstantsForBigOrSmallIntegers=true
[StrategyProperty]MPS_OPTIONS_KEY=MPS_MERGE
[Strategy]Timeout=-1
[StrategyProperty]QUERY_NEW_OPTIONS_KEY=QUERY_OFF
[SMTSettings]useUninterpretedMultiplication=true
[NewSMT]sqrtSMTTranslation=SMT
[StrategyProperty]BLOCK_OPTIONS_KEY=BLOCK_CONTRACT_INTERNAL
[StrategyProperty]METHOD_OPTIONS_KEY=METHOD_CONTRACT
[StrategyProperty]USER_TACLETS_OPTIONS_KEY3=USER_TACLETS_OFF
[NewSMT]identifier=OPEN
[SMTSettings]maxGenericSorts=2
[StrategyProperty]OSS_OPTIONS_KEY=OSS_ON
[NewSMT]Axiomatisations=false
[StrategyProperty]SPLITTING_OPTIONS_KEY=SPLITTING_DELAYED
[SMTSettings]integersMinimum=-2147483645
[StrategyProperty]VBT_PHASE=VBT_SYM_EX
[SMTSettings]integersMaximum=2147483645
"
}


\problem {
\forall int divNum;
\forall int divDenom;
jdiv(divNum, divDenom)
= \if (geq(divNum, Z(0(#))))
\then (div(divNum, divDenom))
\else (mul(div(mul(divNum, Z(neglit(1(#)))),
divDenom),
Z(neglit(1(#)))))

}

\proof {
(keyLog "0" (keyUser "mattias" ) (keyVersion "6e9a3bc895080585635c1442cd178f3c0b6e17ca"))

(autoModeTime "236")

(branch "dummy ID"
(rule "allRight" (formula "1") (inst "sk=divNum_0"))
(rule "allRight" (formula "1") (inst "sk=divDenom_0"))
(rule "eqSymm" (formula "1"))
(rule "div_axiom" (formula "1") (term "1,0") (inst "quotient=quotient_0"))
(rule "polySimp_mulComm0" (formula "1") (term "1,1,1,1,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,1,0,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,2,1,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,1,1,1"))
(rule "polySimp_addComm1" (formula "1") (term "1,2,1,1"))
(rule "polySimp_addComm1" (formula "1") (term "1,1,1,1"))
(rule "div_axiom" (formula "2") (term "0,2,0") (inst "quotient=quotient_1"))
(rule "polySimp_mulComm0" (formula "1") (term "1,1,1,1,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,1,0,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,2,1,1"))
(rule "polySimp_mulComm0" (formula "1") (term "0,1,1,1"))
(rule "polySimp_addComm1" (formula "1") (term "1,2,1,1"))
(rule "polySimp_addComm1" (formula "1") (term "1,1,1,1"))
(rule "jdiv_axiom" (formula "3") (term "1"))
(rule "eqSymm" (formula "1"))
(rule "close" (formula "4") (ifseqformula "1"))
)
}
\settings{
"Choice" : {
"JavaCard" : "JavaCard:off",
"Strings" : "Strings:on",
"assertions" : "assertions:safe",
"bigint" : "bigint:on",
"finalFields" : "finalFields:immutable",
"floatRules" : "floatRules:strictfpOnly",
"initialisation" : "initialisation:disableStaticInitialisation",
"intRules" : "intRules:arithmeticSemanticsIgnoringOF",
"integerSimplificationRules" : "integerSimplificationRules:full",
"javaLoopTreatment" : "javaLoopTreatment:efficient",
"mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off",
"methodExpansion" : "methodExpansion:modularOnly",
"modelFields" : "modelFields:treatAsAxiom",
"moreSeqRules" : "moreSeqRules:off",
"optimisedSelectRules" : "optimisedSelectRules:on",
"permissions" : "permissions:off",
"programRules" : "programRules:Java",
"reach" : "reach:on",
"runtimeExceptions" : "runtimeExceptions:allow",
"sequences" : "sequences:on",
"soundDefaultContracts" : "soundDefaultContracts:on",
"wdChecks" : "wdChecks:off",
"wdOperator" : "wdOperator:L"
},
"Labels" : {
"UseOriginLabels" : true
},
"NewSMT" : {
"Axiomatisations" : "false",
"NoTypeHierarchy" : "false",
"Presburger" : "false",
"identifier" : "OPEN",
"sqrtSMTTranslation" : "SMT"
},
"SMTSettings" : {
"SelectedTaclets" : [

],
"UseBuiltUniqueness" : false,
"explicitTypeHierarchy" : false,
"instantiateHierarchyAssumptions" : true,
"integersMaximum" : 2147483645,
"integersMinimum" : -2147483645,
"invariantForall" : false,
"maxGenericSorts" : 2,
"useConstantsForBigOrSmallIntegers" : true,
"useUninterpretedMultiplication" : true
},
"Strategy" : {
"ActiveStrategy" : "JavaCardDLStrategy",
"MaximumNumberOfAutomaticApplications" : 10000,
"Timeout" : -1,
"options" : {
"AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF",
"BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL",
"CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_FREE",
"DEP_OPTIONS_KEY" : "DEP_ON",
"HEAP_REDUCTION_OPTIONS_KEY" : "HEAP_REDUCTION_NORMAL",
"LOOP_OPTIONS_KEY" : "LOOP_SCOPE_INV_TACLET",
"METHOD_OPTIONS_KEY" : "METHOD_CONTRACT",
"MPS_OPTIONS_KEY" : "MPS_MERGE",
"NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS",
"OSS_OPTIONS_KEY" : "OSS_ON",
"QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS",
"QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_ON",
"QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF",
"SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED",
"STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT",
"SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER",
"SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF",
"TRIGGERS_OPTIONS_KEY" : "TRIGGERS_BEST",
"USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF",
"USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF",
"USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF",
"VBT_PHASE" : "VBT_SYM_EX"
}
}
}
Loading
Loading