/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml --traceabstraction.compute.interpolants.along.a.counterexample Craig_NestedInterpolation --traceabstraction.use.separate.solver.for.trace.checks true -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/loops/string-2.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-267fbe0 [2020-07-18 06:34:06,986 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-18 06:34:06,989 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-18 06:34:07,003 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-18 06:34:07,004 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-18 06:34:07,005 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-18 06:34:07,007 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-18 06:34:07,009 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-18 06:34:07,011 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-18 06:34:07,013 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-18 06:34:07,014 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-18 06:34:07,016 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-18 06:34:07,016 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-18 06:34:07,017 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-18 06:34:07,019 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-18 06:34:07,020 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-18 06:34:07,021 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-18 06:34:07,023 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-18 06:34:07,025 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-18 06:34:07,027 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-18 06:34:07,029 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-18 06:34:07,030 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-18 06:34:07,031 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-18 06:34:07,032 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-18 06:34:07,035 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-18 06:34:07,035 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-18 06:34:07,036 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-18 06:34:07,041 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-18 06:34:07,041 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-18 06:34:07,043 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-18 06:34:07,043 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-18 06:34:07,046 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-18 06:34:07,047 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-18 06:34:07,048 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-18 06:34:07,050 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-18 06:34:07,051 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-18 06:34:07,052 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-18 06:34:07,053 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-18 06:34:07,053 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-18 06:34:07,054 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-18 06:34:07,057 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-18 06:34:07,058 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-18 06:34:07,082 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-18 06:34:07,082 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-18 06:34:07,085 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-18 06:34:07,085 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-18 06:34:07,085 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-18 06:34:07,085 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-18 06:34:07,086 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-18 06:34:07,086 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-18 06:34:07,086 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-18 06:34:07,086 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-18 06:34:07,087 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-18 06:34:07,088 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-18 06:34:07,088 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-18 06:34:07,088 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-18 06:34:07,089 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-18 06:34:07,090 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-18 06:34:07,090 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-18 06:34:07,090 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-18 06:34:07,090 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 06:34:07,090 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-18 06:34:07,091 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-18 06:34:07,091 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-18 06:34:07,091 INFO L138 SettingsManager]: * Use separate solver for trace checks=false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Interpolants along a Counterexample -> Craig_NestedInterpolation Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Use separate solver for trace checks -> true [2020-07-18 06:34:07,412 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-18 06:34:07,427 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-18 06:34:07,432 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-18 06:34:07,434 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-18 06:34:07,435 INFO L275 PluginConnector]: CDTParser initialized [2020-07-18 06:34:07,436 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops/string-2.i [2020-07-18 06:34:07,548 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/905165315/ffc5f1cdfe72467b8d149d17dfbd5ddd/FLAGa3c1ef5a7 [2020-07-18 06:34:08,094 INFO L306 CDTParser]: Found 1 translation units. [2020-07-18 06:34:08,095 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/string-2.i [2020-07-18 06:34:08,103 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/905165315/ffc5f1cdfe72467b8d149d17dfbd5ddd/FLAGa3c1ef5a7 [2020-07-18 06:34:08,438 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/905165315/ffc5f1cdfe72467b8d149d17dfbd5ddd [2020-07-18 06:34:08,451 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-18 06:34:08,455 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-18 06:34:08,456 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-18 06:34:08,456 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-18 06:34:08,460 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-18 06:34:08,462 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:08,466 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3f00a4d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08, skipping insertion in model container [2020-07-18 06:34:08,467 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:08,476 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-18 06:34:08,499 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-18 06:34:08,802 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 06:34:08,808 INFO L203 MainTranslator]: Completed pre-run [2020-07-18 06:34:08,840 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 06:34:08,869 INFO L208 MainTranslator]: Completed translation [2020-07-18 06:34:08,869 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08 WrapperNode [2020-07-18 06:34:08,869 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-18 06:34:08,870 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-18 06:34:08,870 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-18 06:34:08,870 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-18 06:34:08,975 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:08,975 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:08,985 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:08,986 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:09,003 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:09,013 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:09,015 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... [2020-07-18 06:34:09,018 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-18 06:34:09,019 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-18 06:34:09,019 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-18 06:34:09,019 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-18 06:34:09,020 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 06:34:09,099 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-18 06:34:09,099 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-18 06:34:09,099 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2020-07-18 06:34:09,099 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2020-07-18 06:34:09,100 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_char [2020-07-18 06:34:09,100 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-18 06:34:09,101 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-18 06:34:09,101 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-18 06:34:09,101 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-18 06:34:09,101 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-18 06:34:09,101 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-18 06:34:09,102 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-18 06:34:09,800 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-18 06:34:09,800 INFO L295 CfgBuilder]: Removed 5 assume(true) statements. [2020-07-18 06:34:09,807 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 06:34:09 BoogieIcfgContainer [2020-07-18 06:34:09,807 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-18 06:34:09,809 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-18 06:34:09,809 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-18 06:34:09,813 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-18 06:34:09,814 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 18.07 06:34:08" (1/3) ... [2020-07-18 06:34:09,814 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7539f576 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 06:34:09, skipping insertion in model container [2020-07-18 06:34:09,815 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:08" (2/3) ... [2020-07-18 06:34:09,815 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7539f576 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 06:34:09, skipping insertion in model container [2020-07-18 06:34:09,816 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 06:34:09" (3/3) ... [2020-07-18 06:34:09,818 INFO L109 eAbstractionObserver]: Analyzing ICFG string-2.i [2020-07-18 06:34:09,830 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-18 06:34:09,838 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-18 06:34:09,855 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-18 06:34:09,883 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-18 06:34:09,884 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-18 06:34:09,884 INFO L377 AbstractCegarLoop]: Compute interpolants for Craig_NestedInterpolation [2020-07-18 06:34:09,884 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-18 06:34:09,884 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-18 06:34:09,885 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-18 06:34:09,885 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-18 06:34:09,886 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-18 06:34:09,904 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states. [2020-07-18 06:34:09,919 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2020-07-18 06:34:09,919 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:09,920 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:09,921 INFO L427 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:09,927 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:09,928 INFO L82 PathProgramCache]: Analyzing trace with hash -768807104, now seen corresponding path program 1 times [2020-07-18 06:34:09,939 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:09,939 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [838096704] [2020-07-18 06:34:09,940 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:10,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:10,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:10,189 INFO L280 TraceCheckUtils]: 0: Hoare triple {115#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {108#true} is VALID [2020-07-18 06:34:10,190 INFO L280 TraceCheckUtils]: 1: Hoare triple {108#true} #valid := #valid[0 := 0]; {108#true} is VALID [2020-07-18 06:34:10,191 INFO L280 TraceCheckUtils]: 2: Hoare triple {108#true} assume 0 < #StackHeapBarrier; {108#true} is VALID [2020-07-18 06:34:10,192 INFO L280 TraceCheckUtils]: 3: Hoare triple {108#true} assume true; {108#true} is VALID [2020-07-18 06:34:10,192 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {108#true} {108#true} #186#return; {108#true} is VALID [2020-07-18 06:34:10,197 INFO L263 TraceCheckUtils]: 0: Hoare triple {108#true} call ULTIMATE.init(); {115#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:10,198 INFO L280 TraceCheckUtils]: 1: Hoare triple {115#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {108#true} is VALID [2020-07-18 06:34:10,198 INFO L280 TraceCheckUtils]: 2: Hoare triple {108#true} #valid := #valid[0 := 0]; {108#true} is VALID [2020-07-18 06:34:10,199 INFO L280 TraceCheckUtils]: 3: Hoare triple {108#true} assume 0 < #StackHeapBarrier; {108#true} is VALID [2020-07-18 06:34:10,199 INFO L280 TraceCheckUtils]: 4: Hoare triple {108#true} assume true; {108#true} is VALID [2020-07-18 06:34:10,200 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {108#true} {108#true} #186#return; {108#true} is VALID [2020-07-18 06:34:10,200 INFO L263 TraceCheckUtils]: 6: Hoare triple {108#true} call #t~ret14 := main(); {108#true} is VALID [2020-07-18 06:34:10,201 INFO L280 TraceCheckUtils]: 7: Hoare triple {108#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {108#true} is VALID [2020-07-18 06:34:10,201 INFO L280 TraceCheckUtils]: 8: Hoare triple {108#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {108#true} is VALID [2020-07-18 06:34:10,201 INFO L280 TraceCheckUtils]: 9: Hoare triple {108#true} havoc ~i~0; {108#true} is VALID [2020-07-18 06:34:10,202 INFO L280 TraceCheckUtils]: 10: Hoare triple {108#true} havoc ~j~0; {108#true} is VALID [2020-07-18 06:34:10,202 INFO L280 TraceCheckUtils]: 11: Hoare triple {108#true} havoc ~nc_A~0; {108#true} is VALID [2020-07-18 06:34:10,203 INFO L280 TraceCheckUtils]: 12: Hoare triple {108#true} havoc ~nc_B~0; {108#true} is VALID [2020-07-18 06:34:10,203 INFO L280 TraceCheckUtils]: 13: Hoare triple {108#true} ~found~0 := 0; {108#true} is VALID [2020-07-18 06:34:10,204 INFO L280 TraceCheckUtils]: 14: Hoare triple {108#true} ~i~0 := 0; {108#true} is VALID [2020-07-18 06:34:10,205 INFO L280 TraceCheckUtils]: 15: Hoare triple {108#true} assume !true; {109#false} is VALID [2020-07-18 06:34:10,206 INFO L280 TraceCheckUtils]: 16: Hoare triple {109#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {109#false} is VALID [2020-07-18 06:34:10,206 INFO L280 TraceCheckUtils]: 17: Hoare triple {109#false} assume !!(0 == #t~mem2); {109#false} is VALID [2020-07-18 06:34:10,206 INFO L280 TraceCheckUtils]: 18: Hoare triple {109#false} havoc #t~mem2; {109#false} is VALID [2020-07-18 06:34:10,207 INFO L280 TraceCheckUtils]: 19: Hoare triple {109#false} ~i~0 := 0; {109#false} is VALID [2020-07-18 06:34:10,207 INFO L280 TraceCheckUtils]: 20: Hoare triple {109#false} assume !true; {109#false} is VALID [2020-07-18 06:34:10,208 INFO L280 TraceCheckUtils]: 21: Hoare triple {109#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {109#false} is VALID [2020-07-18 06:34:10,208 INFO L280 TraceCheckUtils]: 22: Hoare triple {109#false} assume !!(0 == #t~mem5); {109#false} is VALID [2020-07-18 06:34:10,209 INFO L280 TraceCheckUtils]: 23: Hoare triple {109#false} havoc #t~mem5; {109#false} is VALID [2020-07-18 06:34:10,209 INFO L280 TraceCheckUtils]: 24: Hoare triple {109#false} ~nc_A~0 := 0; {109#false} is VALID [2020-07-18 06:34:10,209 INFO L280 TraceCheckUtils]: 25: Hoare triple {109#false} assume !true; {109#false} is VALID [2020-07-18 06:34:10,210 INFO L280 TraceCheckUtils]: 26: Hoare triple {109#false} ~nc_B~0 := 0; {109#false} is VALID [2020-07-18 06:34:10,210 INFO L280 TraceCheckUtils]: 27: Hoare triple {109#false} assume !true; {109#false} is VALID [2020-07-18 06:34:10,210 INFO L280 TraceCheckUtils]: 28: Hoare triple {109#false} assume !!(~nc_B~0 >= ~nc_A~0); {109#false} is VALID [2020-07-18 06:34:10,211 INFO L280 TraceCheckUtils]: 29: Hoare triple {109#false} ~j~0 := 0; {109#false} is VALID [2020-07-18 06:34:10,211 INFO L280 TraceCheckUtils]: 30: Hoare triple {109#false} ~i~0 := ~j~0; {109#false} is VALID [2020-07-18 06:34:10,212 INFO L280 TraceCheckUtils]: 31: Hoare triple {109#false} assume !true; {109#false} is VALID [2020-07-18 06:34:10,212 INFO L280 TraceCheckUtils]: 32: Hoare triple {109#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {109#false} is VALID [2020-07-18 06:34:10,212 INFO L263 TraceCheckUtils]: 33: Hoare triple {109#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {109#false} is VALID [2020-07-18 06:34:10,213 INFO L280 TraceCheckUtils]: 34: Hoare triple {109#false} ~cond := #in~cond; {109#false} is VALID [2020-07-18 06:34:10,213 INFO L280 TraceCheckUtils]: 35: Hoare triple {109#false} assume 0 == ~cond; {109#false} is VALID [2020-07-18 06:34:10,214 INFO L280 TraceCheckUtils]: 36: Hoare triple {109#false} assume !false; {109#false} is VALID [2020-07-18 06:34:10,219 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:10,220 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [838096704] [2020-07-18 06:34:10,222 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:34:10,223 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-18 06:34:10,224 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1741846860] [2020-07-18 06:34:10,231 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2020-07-18 06:34:10,235 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:10,240 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-18 06:34:10,314 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:10,315 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-18 06:34:10,315 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:10,328 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-18 06:34:10,330 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-18 06:34:10,333 INFO L87 Difference]: Start difference. First operand 105 states. Second operand 3 states. [2020-07-18 06:34:11,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:11,015 INFO L93 Difference]: Finished difference Result 188 states and 215 transitions. [2020-07-18 06:34:11,016 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-18 06:34:11,016 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2020-07-18 06:34:11,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:11,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-18 06:34:11,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 215 transitions. [2020-07-18 06:34:11,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-18 06:34:11,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 215 transitions. [2020-07-18 06:34:11,045 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 215 transitions. [2020-07-18 06:34:11,312 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:11,331 INFO L225 Difference]: With dead ends: 188 [2020-07-18 06:34:11,332 INFO L226 Difference]: Without dead ends: 77 [2020-07-18 06:34:11,340 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-18 06:34:11,371 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2020-07-18 06:34:11,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 77. [2020-07-18 06:34:11,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:11,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand 77 states. [2020-07-18 06:34:11,497 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 77 states. [2020-07-18 06:34:11,497 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 77 states. [2020-07-18 06:34:11,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:11,514 INFO L93 Difference]: Finished difference Result 77 states and 82 transitions. [2020-07-18 06:34:11,514 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 82 transitions. [2020-07-18 06:34:11,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:11,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:11,518 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 77 states. [2020-07-18 06:34:11,518 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 77 states. [2020-07-18 06:34:11,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:11,525 INFO L93 Difference]: Finished difference Result 77 states and 82 transitions. [2020-07-18 06:34:11,526 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 82 transitions. [2020-07-18 06:34:11,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:11,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:11,528 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:11,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:11,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2020-07-18 06:34:11,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 82 transitions. [2020-07-18 06:34:11,535 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 82 transitions. Word has length 37 [2020-07-18 06:34:11,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:11,536 INFO L479 AbstractCegarLoop]: Abstraction has 77 states and 82 transitions. [2020-07-18 06:34:11,536 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-18 06:34:11,537 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 77 states and 82 transitions. [2020-07-18 06:34:11,649 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:11,649 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 82 transitions. [2020-07-18 06:34:11,651 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2020-07-18 06:34:11,651 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:11,652 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:11,652 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-18 06:34:11,653 INFO L427 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:11,653 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:11,654 INFO L82 PathProgramCache]: Analyzing trace with hash 1309055982, now seen corresponding path program 1 times [2020-07-18 06:34:11,654 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:11,654 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1263408970] [2020-07-18 06:34:11,655 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:11,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:11,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:11,821 INFO L280 TraceCheckUtils]: 0: Hoare triple {810#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {802#true} is VALID [2020-07-18 06:34:11,822 INFO L280 TraceCheckUtils]: 1: Hoare triple {802#true} #valid := #valid[0 := 0]; {802#true} is VALID [2020-07-18 06:34:11,822 INFO L280 TraceCheckUtils]: 2: Hoare triple {802#true} assume 0 < #StackHeapBarrier; {802#true} is VALID [2020-07-18 06:34:11,823 INFO L280 TraceCheckUtils]: 3: Hoare triple {802#true} assume true; {802#true} is VALID [2020-07-18 06:34:11,823 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {802#true} {802#true} #186#return; {802#true} is VALID [2020-07-18 06:34:11,825 INFO L263 TraceCheckUtils]: 0: Hoare triple {802#true} call ULTIMATE.init(); {810#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:11,826 INFO L280 TraceCheckUtils]: 1: Hoare triple {810#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {802#true} is VALID [2020-07-18 06:34:11,826 INFO L280 TraceCheckUtils]: 2: Hoare triple {802#true} #valid := #valid[0 := 0]; {802#true} is VALID [2020-07-18 06:34:11,826 INFO L280 TraceCheckUtils]: 3: Hoare triple {802#true} assume 0 < #StackHeapBarrier; {802#true} is VALID [2020-07-18 06:34:11,827 INFO L280 TraceCheckUtils]: 4: Hoare triple {802#true} assume true; {802#true} is VALID [2020-07-18 06:34:11,829 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {802#true} {802#true} #186#return; {802#true} is VALID [2020-07-18 06:34:11,830 INFO L263 TraceCheckUtils]: 6: Hoare triple {802#true} call #t~ret14 := main(); {802#true} is VALID [2020-07-18 06:34:11,831 INFO L280 TraceCheckUtils]: 7: Hoare triple {802#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {802#true} is VALID [2020-07-18 06:34:11,831 INFO L280 TraceCheckUtils]: 8: Hoare triple {802#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {802#true} is VALID [2020-07-18 06:34:11,832 INFO L280 TraceCheckUtils]: 9: Hoare triple {802#true} havoc ~i~0; {802#true} is VALID [2020-07-18 06:34:11,832 INFO L280 TraceCheckUtils]: 10: Hoare triple {802#true} havoc ~j~0; {802#true} is VALID [2020-07-18 06:34:11,832 INFO L280 TraceCheckUtils]: 11: Hoare triple {802#true} havoc ~nc_A~0; {802#true} is VALID [2020-07-18 06:34:11,833 INFO L280 TraceCheckUtils]: 12: Hoare triple {802#true} havoc ~nc_B~0; {802#true} is VALID [2020-07-18 06:34:11,833 INFO L280 TraceCheckUtils]: 13: Hoare triple {802#true} ~found~0 := 0; {802#true} is VALID [2020-07-18 06:34:11,835 INFO L280 TraceCheckUtils]: 14: Hoare triple {802#true} ~i~0 := 0; {809#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:11,838 INFO L280 TraceCheckUtils]: 15: Hoare triple {809#(= 0 main_~i~0)} assume !(~i~0 < 5); {803#false} is VALID [2020-07-18 06:34:11,839 INFO L280 TraceCheckUtils]: 16: Hoare triple {803#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {803#false} is VALID [2020-07-18 06:34:11,839 INFO L280 TraceCheckUtils]: 17: Hoare triple {803#false} assume !!(0 == #t~mem2); {803#false} is VALID [2020-07-18 06:34:11,840 INFO L280 TraceCheckUtils]: 18: Hoare triple {803#false} havoc #t~mem2; {803#false} is VALID [2020-07-18 06:34:11,840 INFO L280 TraceCheckUtils]: 19: Hoare triple {803#false} ~i~0 := 0; {803#false} is VALID [2020-07-18 06:34:11,841 INFO L280 TraceCheckUtils]: 20: Hoare triple {803#false} assume !(~i~0 < 5); {803#false} is VALID [2020-07-18 06:34:11,841 INFO L280 TraceCheckUtils]: 21: Hoare triple {803#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {803#false} is VALID [2020-07-18 06:34:11,842 INFO L280 TraceCheckUtils]: 22: Hoare triple {803#false} assume !!(0 == #t~mem5); {803#false} is VALID [2020-07-18 06:34:11,857 INFO L280 TraceCheckUtils]: 23: Hoare triple {803#false} havoc #t~mem5; {803#false} is VALID [2020-07-18 06:34:11,857 INFO L280 TraceCheckUtils]: 24: Hoare triple {803#false} ~nc_A~0 := 0; {803#false} is VALID [2020-07-18 06:34:11,858 INFO L280 TraceCheckUtils]: 25: Hoare triple {803#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {803#false} is VALID [2020-07-18 06:34:11,858 INFO L280 TraceCheckUtils]: 26: Hoare triple {803#false} assume !(0 != #t~mem6); {803#false} is VALID [2020-07-18 06:34:11,858 INFO L280 TraceCheckUtils]: 27: Hoare triple {803#false} havoc #t~mem6; {803#false} is VALID [2020-07-18 06:34:11,858 INFO L280 TraceCheckUtils]: 28: Hoare triple {803#false} ~nc_B~0 := 0; {803#false} is VALID [2020-07-18 06:34:11,859 INFO L280 TraceCheckUtils]: 29: Hoare triple {803#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {803#false} is VALID [2020-07-18 06:34:11,859 INFO L280 TraceCheckUtils]: 30: Hoare triple {803#false} assume !(0 != #t~mem8); {803#false} is VALID [2020-07-18 06:34:11,860 INFO L280 TraceCheckUtils]: 31: Hoare triple {803#false} havoc #t~mem8; {803#false} is VALID [2020-07-18 06:34:11,860 INFO L280 TraceCheckUtils]: 32: Hoare triple {803#false} assume !!(~nc_B~0 >= ~nc_A~0); {803#false} is VALID [2020-07-18 06:34:11,860 INFO L280 TraceCheckUtils]: 33: Hoare triple {803#false} ~j~0 := 0; {803#false} is VALID [2020-07-18 06:34:11,861 INFO L280 TraceCheckUtils]: 34: Hoare triple {803#false} ~i~0 := ~j~0; {803#false} is VALID [2020-07-18 06:34:11,861 INFO L280 TraceCheckUtils]: 35: Hoare triple {803#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {803#false} is VALID [2020-07-18 06:34:11,861 INFO L280 TraceCheckUtils]: 36: Hoare triple {803#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {803#false} is VALID [2020-07-18 06:34:11,862 INFO L263 TraceCheckUtils]: 37: Hoare triple {803#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {803#false} is VALID [2020-07-18 06:34:11,862 INFO L280 TraceCheckUtils]: 38: Hoare triple {803#false} ~cond := #in~cond; {803#false} is VALID [2020-07-18 06:34:11,862 INFO L280 TraceCheckUtils]: 39: Hoare triple {803#false} assume 0 == ~cond; {803#false} is VALID [2020-07-18 06:34:11,863 INFO L280 TraceCheckUtils]: 40: Hoare triple {803#false} assume !false; {803#false} is VALID [2020-07-18 06:34:11,865 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:11,865 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1263408970] [2020-07-18 06:34:11,865 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:34:11,866 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 06:34:11,866 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1136116016] [2020-07-18 06:34:11,869 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 41 [2020-07-18 06:34:11,870 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:11,870 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 06:34:11,932 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:11,932 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 06:34:11,933 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:11,933 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 06:34:11,934 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:34:11,934 INFO L87 Difference]: Start difference. First operand 77 states and 82 transitions. Second operand 4 states. [2020-07-18 06:34:12,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:12,430 INFO L93 Difference]: Finished difference Result 144 states and 155 transitions. [2020-07-18 06:34:12,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 06:34:12,431 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 41 [2020-07-18 06:34:12,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:12,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:34:12,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 155 transitions. [2020-07-18 06:34:12,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:34:12,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 155 transitions. [2020-07-18 06:34:12,441 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 155 transitions. [2020-07-18 06:34:12,615 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:12,620 INFO L225 Difference]: With dead ends: 144 [2020-07-18 06:34:12,620 INFO L226 Difference]: Without dead ends: 89 [2020-07-18 06:34:12,622 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:34:12,623 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2020-07-18 06:34:12,677 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 79. [2020-07-18 06:34:12,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:12,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand 79 states. [2020-07-18 06:34:12,678 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 79 states. [2020-07-18 06:34:12,678 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 79 states. [2020-07-18 06:34:12,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:12,683 INFO L93 Difference]: Finished difference Result 89 states and 94 transitions. [2020-07-18 06:34:12,683 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 94 transitions. [2020-07-18 06:34:12,684 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:12,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:12,684 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand 89 states. [2020-07-18 06:34:12,685 INFO L87 Difference]: Start difference. First operand 79 states. Second operand 89 states. [2020-07-18 06:34:12,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:12,689 INFO L93 Difference]: Finished difference Result 89 states and 94 transitions. [2020-07-18 06:34:12,690 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 94 transitions. [2020-07-18 06:34:12,690 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:12,691 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:12,691 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:12,691 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:12,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 79 states. [2020-07-18 06:34:12,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 84 transitions. [2020-07-18 06:34:12,695 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 84 transitions. Word has length 41 [2020-07-18 06:34:12,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:12,696 INFO L479 AbstractCegarLoop]: Abstraction has 79 states and 84 transitions. [2020-07-18 06:34:12,696 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 06:34:12,696 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 79 states and 84 transitions. [2020-07-18 06:34:12,778 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:12,778 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 84 transitions. [2020-07-18 06:34:12,780 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2020-07-18 06:34:12,780 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:12,781 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:12,781 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-18 06:34:12,781 INFO L427 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:12,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:12,782 INFO L82 PathProgramCache]: Analyzing trace with hash 512896601, now seen corresponding path program 1 times [2020-07-18 06:34:12,782 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:12,782 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [51490255] [2020-07-18 06:34:12,783 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:12,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:12,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:12,934 INFO L280 TraceCheckUtils]: 0: Hoare triple {1447#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1437#true} is VALID [2020-07-18 06:34:12,935 INFO L280 TraceCheckUtils]: 1: Hoare triple {1437#true} #valid := #valid[0 := 0]; {1437#true} is VALID [2020-07-18 06:34:12,935 INFO L280 TraceCheckUtils]: 2: Hoare triple {1437#true} assume 0 < #StackHeapBarrier; {1437#true} is VALID [2020-07-18 06:34:12,936 INFO L280 TraceCheckUtils]: 3: Hoare triple {1437#true} assume true; {1437#true} is VALID [2020-07-18 06:34:12,936 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1437#true} {1437#true} #186#return; {1437#true} is VALID [2020-07-18 06:34:12,937 INFO L263 TraceCheckUtils]: 0: Hoare triple {1437#true} call ULTIMATE.init(); {1447#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:12,938 INFO L280 TraceCheckUtils]: 1: Hoare triple {1447#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1437#true} is VALID [2020-07-18 06:34:12,938 INFO L280 TraceCheckUtils]: 2: Hoare triple {1437#true} #valid := #valid[0 := 0]; {1437#true} is VALID [2020-07-18 06:34:12,938 INFO L280 TraceCheckUtils]: 3: Hoare triple {1437#true} assume 0 < #StackHeapBarrier; {1437#true} is VALID [2020-07-18 06:34:12,938 INFO L280 TraceCheckUtils]: 4: Hoare triple {1437#true} assume true; {1437#true} is VALID [2020-07-18 06:34:12,939 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1437#true} {1437#true} #186#return; {1437#true} is VALID [2020-07-18 06:34:12,939 INFO L263 TraceCheckUtils]: 6: Hoare triple {1437#true} call #t~ret14 := main(); {1437#true} is VALID [2020-07-18 06:34:12,939 INFO L280 TraceCheckUtils]: 7: Hoare triple {1437#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {1437#true} is VALID [2020-07-18 06:34:12,940 INFO L280 TraceCheckUtils]: 8: Hoare triple {1437#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {1437#true} is VALID [2020-07-18 06:34:12,940 INFO L280 TraceCheckUtils]: 9: Hoare triple {1437#true} havoc ~i~0; {1437#true} is VALID [2020-07-18 06:34:12,940 INFO L280 TraceCheckUtils]: 10: Hoare triple {1437#true} havoc ~j~0; {1437#true} is VALID [2020-07-18 06:34:12,940 INFO L280 TraceCheckUtils]: 11: Hoare triple {1437#true} havoc ~nc_A~0; {1437#true} is VALID [2020-07-18 06:34:12,941 INFO L280 TraceCheckUtils]: 12: Hoare triple {1437#true} havoc ~nc_B~0; {1437#true} is VALID [2020-07-18 06:34:12,941 INFO L280 TraceCheckUtils]: 13: Hoare triple {1437#true} ~found~0 := 0; {1437#true} is VALID [2020-07-18 06:34:12,942 INFO L280 TraceCheckUtils]: 14: Hoare triple {1437#true} ~i~0 := 0; {1444#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:12,943 INFO L280 TraceCheckUtils]: 15: Hoare triple {1444#(= 0 main_~i~0)} assume !!(~i~0 < 5); {1444#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:12,944 INFO L280 TraceCheckUtils]: 16: Hoare triple {1444#(= 0 main_~i~0)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {1444#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:12,945 INFO L280 TraceCheckUtils]: 17: Hoare triple {1444#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {1444#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:12,946 INFO L280 TraceCheckUtils]: 18: Hoare triple {1444#(= 0 main_~i~0)} havoc #t~nondet1; {1444#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:12,947 INFO L280 TraceCheckUtils]: 19: Hoare triple {1444#(= 0 main_~i~0)} #t~post0 := ~i~0; {1445#(= |main_#t~post0| 0)} is VALID [2020-07-18 06:34:12,948 INFO L280 TraceCheckUtils]: 20: Hoare triple {1445#(= |main_#t~post0| 0)} ~i~0 := 1 + #t~post0; {1446#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:12,949 INFO L280 TraceCheckUtils]: 21: Hoare triple {1446#(<= main_~i~0 1)} havoc #t~post0; {1446#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:12,950 INFO L280 TraceCheckUtils]: 22: Hoare triple {1446#(<= main_~i~0 1)} assume !(~i~0 < 5); {1438#false} is VALID [2020-07-18 06:34:12,950 INFO L280 TraceCheckUtils]: 23: Hoare triple {1438#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {1438#false} is VALID [2020-07-18 06:34:12,950 INFO L280 TraceCheckUtils]: 24: Hoare triple {1438#false} assume !!(0 == #t~mem2); {1438#false} is VALID [2020-07-18 06:34:12,951 INFO L280 TraceCheckUtils]: 25: Hoare triple {1438#false} havoc #t~mem2; {1438#false} is VALID [2020-07-18 06:34:12,951 INFO L280 TraceCheckUtils]: 26: Hoare triple {1438#false} ~i~0 := 0; {1438#false} is VALID [2020-07-18 06:34:12,951 INFO L280 TraceCheckUtils]: 27: Hoare triple {1438#false} assume !!(~i~0 < 5); {1438#false} is VALID [2020-07-18 06:34:12,951 INFO L280 TraceCheckUtils]: 28: Hoare triple {1438#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {1438#false} is VALID [2020-07-18 06:34:12,951 INFO L280 TraceCheckUtils]: 29: Hoare triple {1438#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {1438#false} is VALID [2020-07-18 06:34:12,952 INFO L280 TraceCheckUtils]: 30: Hoare triple {1438#false} havoc #t~nondet4; {1438#false} is VALID [2020-07-18 06:34:12,952 INFO L280 TraceCheckUtils]: 31: Hoare triple {1438#false} #t~post3 := ~i~0; {1438#false} is VALID [2020-07-18 06:34:12,952 INFO L280 TraceCheckUtils]: 32: Hoare triple {1438#false} ~i~0 := 1 + #t~post3; {1438#false} is VALID [2020-07-18 06:34:12,953 INFO L280 TraceCheckUtils]: 33: Hoare triple {1438#false} havoc #t~post3; {1438#false} is VALID [2020-07-18 06:34:12,953 INFO L280 TraceCheckUtils]: 34: Hoare triple {1438#false} assume !(~i~0 < 5); {1438#false} is VALID [2020-07-18 06:34:12,953 INFO L280 TraceCheckUtils]: 35: Hoare triple {1438#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {1438#false} is VALID [2020-07-18 06:34:12,953 INFO L280 TraceCheckUtils]: 36: Hoare triple {1438#false} assume !!(0 == #t~mem5); {1438#false} is VALID [2020-07-18 06:34:12,954 INFO L280 TraceCheckUtils]: 37: Hoare triple {1438#false} havoc #t~mem5; {1438#false} is VALID [2020-07-18 06:34:12,954 INFO L280 TraceCheckUtils]: 38: Hoare triple {1438#false} ~nc_A~0 := 0; {1438#false} is VALID [2020-07-18 06:34:12,954 INFO L280 TraceCheckUtils]: 39: Hoare triple {1438#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {1438#false} is VALID [2020-07-18 06:34:12,954 INFO L280 TraceCheckUtils]: 40: Hoare triple {1438#false} assume !(0 != #t~mem6); {1438#false} is VALID [2020-07-18 06:34:12,955 INFO L280 TraceCheckUtils]: 41: Hoare triple {1438#false} havoc #t~mem6; {1438#false} is VALID [2020-07-18 06:34:12,955 INFO L280 TraceCheckUtils]: 42: Hoare triple {1438#false} ~nc_B~0 := 0; {1438#false} is VALID [2020-07-18 06:34:12,955 INFO L280 TraceCheckUtils]: 43: Hoare triple {1438#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {1438#false} is VALID [2020-07-18 06:34:12,955 INFO L280 TraceCheckUtils]: 44: Hoare triple {1438#false} assume !(0 != #t~mem8); {1438#false} is VALID [2020-07-18 06:34:12,956 INFO L280 TraceCheckUtils]: 45: Hoare triple {1438#false} havoc #t~mem8; {1438#false} is VALID [2020-07-18 06:34:12,956 INFO L280 TraceCheckUtils]: 46: Hoare triple {1438#false} assume !!(~nc_B~0 >= ~nc_A~0); {1438#false} is VALID [2020-07-18 06:34:12,956 INFO L280 TraceCheckUtils]: 47: Hoare triple {1438#false} ~j~0 := 0; {1438#false} is VALID [2020-07-18 06:34:12,956 INFO L280 TraceCheckUtils]: 48: Hoare triple {1438#false} ~i~0 := ~j~0; {1438#false} is VALID [2020-07-18 06:34:12,957 INFO L280 TraceCheckUtils]: 49: Hoare triple {1438#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {1438#false} is VALID [2020-07-18 06:34:12,957 INFO L280 TraceCheckUtils]: 50: Hoare triple {1438#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {1438#false} is VALID [2020-07-18 06:34:12,957 INFO L263 TraceCheckUtils]: 51: Hoare triple {1438#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {1438#false} is VALID [2020-07-18 06:34:12,957 INFO L280 TraceCheckUtils]: 52: Hoare triple {1438#false} ~cond := #in~cond; {1438#false} is VALID [2020-07-18 06:34:12,958 INFO L280 TraceCheckUtils]: 53: Hoare triple {1438#false} assume 0 == ~cond; {1438#false} is VALID [2020-07-18 06:34:12,958 INFO L280 TraceCheckUtils]: 54: Hoare triple {1438#false} assume !false; {1438#false} is VALID [2020-07-18 06:34:12,962 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 06:34:12,962 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [51490255] [2020-07-18 06:34:12,963 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:12,963 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2020-07-18 06:34:12,963 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [727991981] [2020-07-18 06:34:12,964 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2020-07-18 06:34:12,964 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:12,964 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-18 06:34:13,015 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:13,015 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-18 06:34:13,016 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:13,016 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-18 06:34:13,017 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-18 06:34:13,017 INFO L87 Difference]: Start difference. First operand 79 states and 84 transitions. Second operand 6 states. [2020-07-18 06:34:13,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:13,607 INFO L93 Difference]: Finished difference Result 152 states and 162 transitions. [2020-07-18 06:34:13,607 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-18 06:34:13,607 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 55 [2020-07-18 06:34:13,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:13,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:13,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 161 transitions. [2020-07-18 06:34:13,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:13,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 161 transitions. [2020-07-18 06:34:13,616 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 161 transitions. [2020-07-18 06:34:13,854 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:13,860 INFO L225 Difference]: With dead ends: 152 [2020-07-18 06:34:13,860 INFO L226 Difference]: Without dead ends: 96 [2020-07-18 06:34:13,862 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:13,863 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2020-07-18 06:34:13,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 86. [2020-07-18 06:34:13,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:13,939 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand 86 states. [2020-07-18 06:34:13,940 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand 86 states. [2020-07-18 06:34:13,940 INFO L87 Difference]: Start difference. First operand 96 states. Second operand 86 states. [2020-07-18 06:34:13,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:13,948 INFO L93 Difference]: Finished difference Result 96 states and 101 transitions. [2020-07-18 06:34:13,949 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 101 transitions. [2020-07-18 06:34:13,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:13,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:13,950 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand 96 states. [2020-07-18 06:34:13,950 INFO L87 Difference]: Start difference. First operand 86 states. Second operand 96 states. [2020-07-18 06:34:13,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:13,954 INFO L93 Difference]: Finished difference Result 96 states and 101 transitions. [2020-07-18 06:34:13,955 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 101 transitions. [2020-07-18 06:34:13,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:13,958 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:13,959 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:13,959 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:13,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 86 states. [2020-07-18 06:34:13,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 91 transitions. [2020-07-18 06:34:13,962 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 91 transitions. Word has length 55 [2020-07-18 06:34:13,963 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:13,963 INFO L479 AbstractCegarLoop]: Abstraction has 86 states and 91 transitions. [2020-07-18 06:34:13,963 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-18 06:34:13,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 86 states and 91 transitions. [2020-07-18 06:34:14,059 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:14,059 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 91 transitions. [2020-07-18 06:34:14,062 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2020-07-18 06:34:14,063 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:14,063 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:14,063 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-18 06:34:14,064 INFO L427 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:14,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:14,064 INFO L82 PathProgramCache]: Analyzing trace with hash 1958895614, now seen corresponding path program 2 times [2020-07-18 06:34:14,065 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:14,065 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2143375205] [2020-07-18 06:34:14,065 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:14,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:14,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:14,181 INFO L280 TraceCheckUtils]: 0: Hoare triple {2132#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2122#true} is VALID [2020-07-18 06:34:14,181 INFO L280 TraceCheckUtils]: 1: Hoare triple {2122#true} #valid := #valid[0 := 0]; {2122#true} is VALID [2020-07-18 06:34:14,181 INFO L280 TraceCheckUtils]: 2: Hoare triple {2122#true} assume 0 < #StackHeapBarrier; {2122#true} is VALID [2020-07-18 06:34:14,182 INFO L280 TraceCheckUtils]: 3: Hoare triple {2122#true} assume true; {2122#true} is VALID [2020-07-18 06:34:14,182 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2122#true} {2122#true} #186#return; {2122#true} is VALID [2020-07-18 06:34:14,183 INFO L263 TraceCheckUtils]: 0: Hoare triple {2122#true} call ULTIMATE.init(); {2132#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:14,183 INFO L280 TraceCheckUtils]: 1: Hoare triple {2132#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2122#true} is VALID [2020-07-18 06:34:14,184 INFO L280 TraceCheckUtils]: 2: Hoare triple {2122#true} #valid := #valid[0 := 0]; {2122#true} is VALID [2020-07-18 06:34:14,184 INFO L280 TraceCheckUtils]: 3: Hoare triple {2122#true} assume 0 < #StackHeapBarrier; {2122#true} is VALID [2020-07-18 06:34:14,184 INFO L280 TraceCheckUtils]: 4: Hoare triple {2122#true} assume true; {2122#true} is VALID [2020-07-18 06:34:14,184 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2122#true} {2122#true} #186#return; {2122#true} is VALID [2020-07-18 06:34:14,185 INFO L263 TraceCheckUtils]: 6: Hoare triple {2122#true} call #t~ret14 := main(); {2122#true} is VALID [2020-07-18 06:34:14,185 INFO L280 TraceCheckUtils]: 7: Hoare triple {2122#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {2122#true} is VALID [2020-07-18 06:34:14,185 INFO L280 TraceCheckUtils]: 8: Hoare triple {2122#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {2122#true} is VALID [2020-07-18 06:34:14,185 INFO L280 TraceCheckUtils]: 9: Hoare triple {2122#true} havoc ~i~0; {2122#true} is VALID [2020-07-18 06:34:14,185 INFO L280 TraceCheckUtils]: 10: Hoare triple {2122#true} havoc ~j~0; {2122#true} is VALID [2020-07-18 06:34:14,186 INFO L280 TraceCheckUtils]: 11: Hoare triple {2122#true} havoc ~nc_A~0; {2122#true} is VALID [2020-07-18 06:34:14,186 INFO L280 TraceCheckUtils]: 12: Hoare triple {2122#true} havoc ~nc_B~0; {2122#true} is VALID [2020-07-18 06:34:14,186 INFO L280 TraceCheckUtils]: 13: Hoare triple {2122#true} ~found~0 := 0; {2122#true} is VALID [2020-07-18 06:34:14,186 INFO L280 TraceCheckUtils]: 14: Hoare triple {2122#true} ~i~0 := 0; {2122#true} is VALID [2020-07-18 06:34:14,186 INFO L280 TraceCheckUtils]: 15: Hoare triple {2122#true} assume !!(~i~0 < 5); {2122#true} is VALID [2020-07-18 06:34:14,187 INFO L280 TraceCheckUtils]: 16: Hoare triple {2122#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {2122#true} is VALID [2020-07-18 06:34:14,187 INFO L280 TraceCheckUtils]: 17: Hoare triple {2122#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {2122#true} is VALID [2020-07-18 06:34:14,187 INFO L280 TraceCheckUtils]: 18: Hoare triple {2122#true} havoc #t~nondet1; {2122#true} is VALID [2020-07-18 06:34:14,188 INFO L280 TraceCheckUtils]: 19: Hoare triple {2122#true} #t~post0 := ~i~0; {2122#true} is VALID [2020-07-18 06:34:14,188 INFO L280 TraceCheckUtils]: 20: Hoare triple {2122#true} ~i~0 := 1 + #t~post0; {2122#true} is VALID [2020-07-18 06:34:14,189 INFO L280 TraceCheckUtils]: 21: Hoare triple {2122#true} havoc #t~post0; {2122#true} is VALID [2020-07-18 06:34:14,189 INFO L280 TraceCheckUtils]: 22: Hoare triple {2122#true} assume !!(~i~0 < 5); {2122#true} is VALID [2020-07-18 06:34:14,189 INFO L280 TraceCheckUtils]: 23: Hoare triple {2122#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {2122#true} is VALID [2020-07-18 06:34:14,189 INFO L280 TraceCheckUtils]: 24: Hoare triple {2122#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {2122#true} is VALID [2020-07-18 06:34:14,190 INFO L280 TraceCheckUtils]: 25: Hoare triple {2122#true} havoc #t~nondet1; {2122#true} is VALID [2020-07-18 06:34:14,190 INFO L280 TraceCheckUtils]: 26: Hoare triple {2122#true} #t~post0 := ~i~0; {2122#true} is VALID [2020-07-18 06:34:14,190 INFO L280 TraceCheckUtils]: 27: Hoare triple {2122#true} ~i~0 := 1 + #t~post0; {2122#true} is VALID [2020-07-18 06:34:14,190 INFO L280 TraceCheckUtils]: 28: Hoare triple {2122#true} havoc #t~post0; {2122#true} is VALID [2020-07-18 06:34:14,191 INFO L280 TraceCheckUtils]: 29: Hoare triple {2122#true} assume !(~i~0 < 5); {2122#true} is VALID [2020-07-18 06:34:14,191 INFO L280 TraceCheckUtils]: 30: Hoare triple {2122#true} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {2122#true} is VALID [2020-07-18 06:34:14,191 INFO L280 TraceCheckUtils]: 31: Hoare triple {2122#true} assume !!(0 == #t~mem2); {2122#true} is VALID [2020-07-18 06:34:14,191 INFO L280 TraceCheckUtils]: 32: Hoare triple {2122#true} havoc #t~mem2; {2122#true} is VALID [2020-07-18 06:34:14,194 INFO L280 TraceCheckUtils]: 33: Hoare triple {2122#true} ~i~0 := 0; {2129#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:14,198 INFO L280 TraceCheckUtils]: 34: Hoare triple {2129#(= 0 main_~i~0)} assume !!(~i~0 < 5); {2129#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:14,199 INFO L280 TraceCheckUtils]: 35: Hoare triple {2129#(= 0 main_~i~0)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {2129#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:14,200 INFO L280 TraceCheckUtils]: 36: Hoare triple {2129#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {2129#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:14,200 INFO L280 TraceCheckUtils]: 37: Hoare triple {2129#(= 0 main_~i~0)} havoc #t~nondet4; {2129#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:14,201 INFO L280 TraceCheckUtils]: 38: Hoare triple {2129#(= 0 main_~i~0)} #t~post3 := ~i~0; {2130#(= |main_#t~post3| 0)} is VALID [2020-07-18 06:34:14,205 INFO L280 TraceCheckUtils]: 39: Hoare triple {2130#(= |main_#t~post3| 0)} ~i~0 := 1 + #t~post3; {2131#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:14,206 INFO L280 TraceCheckUtils]: 40: Hoare triple {2131#(<= main_~i~0 1)} havoc #t~post3; {2131#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:14,208 INFO L280 TraceCheckUtils]: 41: Hoare triple {2131#(<= main_~i~0 1)} assume !(~i~0 < 5); {2123#false} is VALID [2020-07-18 06:34:14,208 INFO L280 TraceCheckUtils]: 42: Hoare triple {2123#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {2123#false} is VALID [2020-07-18 06:34:14,208 INFO L280 TraceCheckUtils]: 43: Hoare triple {2123#false} assume !!(0 == #t~mem5); {2123#false} is VALID [2020-07-18 06:34:14,208 INFO L280 TraceCheckUtils]: 44: Hoare triple {2123#false} havoc #t~mem5; {2123#false} is VALID [2020-07-18 06:34:14,209 INFO L280 TraceCheckUtils]: 45: Hoare triple {2123#false} ~nc_A~0 := 0; {2123#false} is VALID [2020-07-18 06:34:14,209 INFO L280 TraceCheckUtils]: 46: Hoare triple {2123#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {2123#false} is VALID [2020-07-18 06:34:14,209 INFO L280 TraceCheckUtils]: 47: Hoare triple {2123#false} assume !(0 != #t~mem6); {2123#false} is VALID [2020-07-18 06:34:14,209 INFO L280 TraceCheckUtils]: 48: Hoare triple {2123#false} havoc #t~mem6; {2123#false} is VALID [2020-07-18 06:34:14,209 INFO L280 TraceCheckUtils]: 49: Hoare triple {2123#false} ~nc_B~0 := 0; {2123#false} is VALID [2020-07-18 06:34:14,210 INFO L280 TraceCheckUtils]: 50: Hoare triple {2123#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {2123#false} is VALID [2020-07-18 06:34:14,210 INFO L280 TraceCheckUtils]: 51: Hoare triple {2123#false} assume !(0 != #t~mem8); {2123#false} is VALID [2020-07-18 06:34:14,210 INFO L280 TraceCheckUtils]: 52: Hoare triple {2123#false} havoc #t~mem8; {2123#false} is VALID [2020-07-18 06:34:14,210 INFO L280 TraceCheckUtils]: 53: Hoare triple {2123#false} assume !!(~nc_B~0 >= ~nc_A~0); {2123#false} is VALID [2020-07-18 06:34:14,211 INFO L280 TraceCheckUtils]: 54: Hoare triple {2123#false} ~j~0 := 0; {2123#false} is VALID [2020-07-18 06:34:14,211 INFO L280 TraceCheckUtils]: 55: Hoare triple {2123#false} ~i~0 := ~j~0; {2123#false} is VALID [2020-07-18 06:34:14,211 INFO L280 TraceCheckUtils]: 56: Hoare triple {2123#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {2123#false} is VALID [2020-07-18 06:34:14,212 INFO L280 TraceCheckUtils]: 57: Hoare triple {2123#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {2123#false} is VALID [2020-07-18 06:34:14,212 INFO L263 TraceCheckUtils]: 58: Hoare triple {2123#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {2123#false} is VALID [2020-07-18 06:34:14,212 INFO L280 TraceCheckUtils]: 59: Hoare triple {2123#false} ~cond := #in~cond; {2123#false} is VALID [2020-07-18 06:34:14,212 INFO L280 TraceCheckUtils]: 60: Hoare triple {2123#false} assume 0 == ~cond; {2123#false} is VALID [2020-07-18 06:34:14,213 INFO L280 TraceCheckUtils]: 61: Hoare triple {2123#false} assume !false; {2123#false} is VALID [2020-07-18 06:34:14,216 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2020-07-18 06:34:14,217 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2143375205] [2020-07-18 06:34:14,217 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:14,218 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2020-07-18 06:34:14,218 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [703168535] [2020-07-18 06:34:14,218 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 62 [2020-07-18 06:34:14,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:14,219 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-18 06:34:14,276 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:14,277 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-18 06:34:14,277 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:14,277 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-18 06:34:14,278 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-18 06:34:14,278 INFO L87 Difference]: Start difference. First operand 86 states and 91 transitions. Second operand 6 states. [2020-07-18 06:34:14,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:14,845 INFO L93 Difference]: Finished difference Result 142 states and 151 transitions. [2020-07-18 06:34:14,845 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-18 06:34:14,845 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 62 [2020-07-18 06:34:14,846 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:14,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:14,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 149 transitions. [2020-07-18 06:34:14,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:14,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 149 transitions. [2020-07-18 06:34:14,870 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 149 transitions. [2020-07-18 06:34:15,016 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:15,019 INFO L225 Difference]: With dead ends: 142 [2020-07-18 06:34:15,020 INFO L226 Difference]: Without dead ends: 98 [2020-07-18 06:34:15,021 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:15,022 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2020-07-18 06:34:15,090 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 93. [2020-07-18 06:34:15,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:15,090 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand 93 states. [2020-07-18 06:34:15,090 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand 93 states. [2020-07-18 06:34:15,091 INFO L87 Difference]: Start difference. First operand 98 states. Second operand 93 states. [2020-07-18 06:34:15,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:15,096 INFO L93 Difference]: Finished difference Result 98 states and 103 transitions. [2020-07-18 06:34:15,096 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 103 transitions. [2020-07-18 06:34:15,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:15,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:15,097 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand 98 states. [2020-07-18 06:34:15,097 INFO L87 Difference]: Start difference. First operand 93 states. Second operand 98 states. [2020-07-18 06:34:15,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:15,101 INFO L93 Difference]: Finished difference Result 98 states and 103 transitions. [2020-07-18 06:34:15,101 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 103 transitions. [2020-07-18 06:34:15,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:15,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:15,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:15,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:15,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 93 states. [2020-07-18 06:34:15,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 98 transitions. [2020-07-18 06:34:15,106 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 98 transitions. Word has length 62 [2020-07-18 06:34:15,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:15,106 INFO L479 AbstractCegarLoop]: Abstraction has 93 states and 98 transitions. [2020-07-18 06:34:15,106 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-18 06:34:15,106 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 93 states and 98 transitions. [2020-07-18 06:34:15,216 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:15,216 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 98 transitions. [2020-07-18 06:34:15,217 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2020-07-18 06:34:15,217 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:15,217 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:15,217 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-18 06:34:15,218 INFO L427 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:15,218 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:15,222 INFO L82 PathProgramCache]: Analyzing trace with hash 11176526, now seen corresponding path program 3 times [2020-07-18 06:34:15,223 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:15,223 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [497862795] [2020-07-18 06:34:15,223 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:15,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:15,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:15,362 INFO L280 TraceCheckUtils]: 0: Hoare triple {2817#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2805#true} is VALID [2020-07-18 06:34:15,363 INFO L280 TraceCheckUtils]: 1: Hoare triple {2805#true} #valid := #valid[0 := 0]; {2805#true} is VALID [2020-07-18 06:34:15,363 INFO L280 TraceCheckUtils]: 2: Hoare triple {2805#true} assume 0 < #StackHeapBarrier; {2805#true} is VALID [2020-07-18 06:34:15,363 INFO L280 TraceCheckUtils]: 3: Hoare triple {2805#true} assume true; {2805#true} is VALID [2020-07-18 06:34:15,364 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2805#true} {2805#true} #186#return; {2805#true} is VALID [2020-07-18 06:34:15,365 INFO L263 TraceCheckUtils]: 0: Hoare triple {2805#true} call ULTIMATE.init(); {2817#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:15,366 INFO L280 TraceCheckUtils]: 1: Hoare triple {2817#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2805#true} is VALID [2020-07-18 06:34:15,366 INFO L280 TraceCheckUtils]: 2: Hoare triple {2805#true} #valid := #valid[0 := 0]; {2805#true} is VALID [2020-07-18 06:34:15,366 INFO L280 TraceCheckUtils]: 3: Hoare triple {2805#true} assume 0 < #StackHeapBarrier; {2805#true} is VALID [2020-07-18 06:34:15,366 INFO L280 TraceCheckUtils]: 4: Hoare triple {2805#true} assume true; {2805#true} is VALID [2020-07-18 06:34:15,367 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2805#true} {2805#true} #186#return; {2805#true} is VALID [2020-07-18 06:34:15,367 INFO L263 TraceCheckUtils]: 6: Hoare triple {2805#true} call #t~ret14 := main(); {2805#true} is VALID [2020-07-18 06:34:15,367 INFO L280 TraceCheckUtils]: 7: Hoare triple {2805#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {2805#true} is VALID [2020-07-18 06:34:15,368 INFO L280 TraceCheckUtils]: 8: Hoare triple {2805#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {2805#true} is VALID [2020-07-18 06:34:15,368 INFO L280 TraceCheckUtils]: 9: Hoare triple {2805#true} havoc ~i~0; {2805#true} is VALID [2020-07-18 06:34:15,368 INFO L280 TraceCheckUtils]: 10: Hoare triple {2805#true} havoc ~j~0; {2805#true} is VALID [2020-07-18 06:34:15,369 INFO L280 TraceCheckUtils]: 11: Hoare triple {2805#true} havoc ~nc_A~0; {2805#true} is VALID [2020-07-18 06:34:15,369 INFO L280 TraceCheckUtils]: 12: Hoare triple {2805#true} havoc ~nc_B~0; {2805#true} is VALID [2020-07-18 06:34:15,369 INFO L280 TraceCheckUtils]: 13: Hoare triple {2805#true} ~found~0 := 0; {2805#true} is VALID [2020-07-18 06:34:15,370 INFO L280 TraceCheckUtils]: 14: Hoare triple {2805#true} ~i~0 := 0; {2812#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:15,371 INFO L280 TraceCheckUtils]: 15: Hoare triple {2812#(= 0 main_~i~0)} assume !!(~i~0 < 5); {2812#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:15,372 INFO L280 TraceCheckUtils]: 16: Hoare triple {2812#(= 0 main_~i~0)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {2812#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:15,373 INFO L280 TraceCheckUtils]: 17: Hoare triple {2812#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {2812#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:15,374 INFO L280 TraceCheckUtils]: 18: Hoare triple {2812#(= 0 main_~i~0)} havoc #t~nondet1; {2812#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:15,375 INFO L280 TraceCheckUtils]: 19: Hoare triple {2812#(= 0 main_~i~0)} #t~post0 := ~i~0; {2813#(= |main_#t~post0| 0)} is VALID [2020-07-18 06:34:15,376 INFO L280 TraceCheckUtils]: 20: Hoare triple {2813#(= |main_#t~post0| 0)} ~i~0 := 1 + #t~post0; {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,377 INFO L280 TraceCheckUtils]: 21: Hoare triple {2814#(<= main_~i~0 1)} havoc #t~post0; {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,378 INFO L280 TraceCheckUtils]: 22: Hoare triple {2814#(<= main_~i~0 1)} assume !!(~i~0 < 5); {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,379 INFO L280 TraceCheckUtils]: 23: Hoare triple {2814#(<= main_~i~0 1)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,380 INFO L280 TraceCheckUtils]: 24: Hoare triple {2814#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,380 INFO L280 TraceCheckUtils]: 25: Hoare triple {2814#(<= main_~i~0 1)} havoc #t~nondet1; {2814#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:15,381 INFO L280 TraceCheckUtils]: 26: Hoare triple {2814#(<= main_~i~0 1)} #t~post0 := ~i~0; {2815#(<= |main_#t~post0| 1)} is VALID [2020-07-18 06:34:15,382 INFO L280 TraceCheckUtils]: 27: Hoare triple {2815#(<= |main_#t~post0| 1)} ~i~0 := 1 + #t~post0; {2816#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:15,383 INFO L280 TraceCheckUtils]: 28: Hoare triple {2816#(<= main_~i~0 2)} havoc #t~post0; {2816#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:15,384 INFO L280 TraceCheckUtils]: 29: Hoare triple {2816#(<= main_~i~0 2)} assume !(~i~0 < 5); {2806#false} is VALID [2020-07-18 06:34:15,385 INFO L280 TraceCheckUtils]: 30: Hoare triple {2806#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {2806#false} is VALID [2020-07-18 06:34:15,385 INFO L280 TraceCheckUtils]: 31: Hoare triple {2806#false} assume !!(0 == #t~mem2); {2806#false} is VALID [2020-07-18 06:34:15,385 INFO L280 TraceCheckUtils]: 32: Hoare triple {2806#false} havoc #t~mem2; {2806#false} is VALID [2020-07-18 06:34:15,385 INFO L280 TraceCheckUtils]: 33: Hoare triple {2806#false} ~i~0 := 0; {2806#false} is VALID [2020-07-18 06:34:15,386 INFO L280 TraceCheckUtils]: 34: Hoare triple {2806#false} assume !!(~i~0 < 5); {2806#false} is VALID [2020-07-18 06:34:15,386 INFO L280 TraceCheckUtils]: 35: Hoare triple {2806#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {2806#false} is VALID [2020-07-18 06:34:15,386 INFO L280 TraceCheckUtils]: 36: Hoare triple {2806#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {2806#false} is VALID [2020-07-18 06:34:15,386 INFO L280 TraceCheckUtils]: 37: Hoare triple {2806#false} havoc #t~nondet4; {2806#false} is VALID [2020-07-18 06:34:15,387 INFO L280 TraceCheckUtils]: 38: Hoare triple {2806#false} #t~post3 := ~i~0; {2806#false} is VALID [2020-07-18 06:34:15,387 INFO L280 TraceCheckUtils]: 39: Hoare triple {2806#false} ~i~0 := 1 + #t~post3; {2806#false} is VALID [2020-07-18 06:34:15,387 INFO L280 TraceCheckUtils]: 40: Hoare triple {2806#false} havoc #t~post3; {2806#false} is VALID [2020-07-18 06:34:15,387 INFO L280 TraceCheckUtils]: 41: Hoare triple {2806#false} assume !!(~i~0 < 5); {2806#false} is VALID [2020-07-18 06:34:15,388 INFO L280 TraceCheckUtils]: 42: Hoare triple {2806#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {2806#false} is VALID [2020-07-18 06:34:15,388 INFO L280 TraceCheckUtils]: 43: Hoare triple {2806#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {2806#false} is VALID [2020-07-18 06:34:15,388 INFO L280 TraceCheckUtils]: 44: Hoare triple {2806#false} havoc #t~nondet4; {2806#false} is VALID [2020-07-18 06:34:15,388 INFO L280 TraceCheckUtils]: 45: Hoare triple {2806#false} #t~post3 := ~i~0; {2806#false} is VALID [2020-07-18 06:34:15,389 INFO L280 TraceCheckUtils]: 46: Hoare triple {2806#false} ~i~0 := 1 + #t~post3; {2806#false} is VALID [2020-07-18 06:34:15,389 INFO L280 TraceCheckUtils]: 47: Hoare triple {2806#false} havoc #t~post3; {2806#false} is VALID [2020-07-18 06:34:15,389 INFO L280 TraceCheckUtils]: 48: Hoare triple {2806#false} assume !(~i~0 < 5); {2806#false} is VALID [2020-07-18 06:34:15,389 INFO L280 TraceCheckUtils]: 49: Hoare triple {2806#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {2806#false} is VALID [2020-07-18 06:34:15,390 INFO L280 TraceCheckUtils]: 50: Hoare triple {2806#false} assume !!(0 == #t~mem5); {2806#false} is VALID [2020-07-18 06:34:15,390 INFO L280 TraceCheckUtils]: 51: Hoare triple {2806#false} havoc #t~mem5; {2806#false} is VALID [2020-07-18 06:34:15,390 INFO L280 TraceCheckUtils]: 52: Hoare triple {2806#false} ~nc_A~0 := 0; {2806#false} is VALID [2020-07-18 06:34:15,390 INFO L280 TraceCheckUtils]: 53: Hoare triple {2806#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {2806#false} is VALID [2020-07-18 06:34:15,391 INFO L280 TraceCheckUtils]: 54: Hoare triple {2806#false} assume !(0 != #t~mem6); {2806#false} is VALID [2020-07-18 06:34:15,391 INFO L280 TraceCheckUtils]: 55: Hoare triple {2806#false} havoc #t~mem6; {2806#false} is VALID [2020-07-18 06:34:15,391 INFO L280 TraceCheckUtils]: 56: Hoare triple {2806#false} ~nc_B~0 := 0; {2806#false} is VALID [2020-07-18 06:34:15,391 INFO L280 TraceCheckUtils]: 57: Hoare triple {2806#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {2806#false} is VALID [2020-07-18 06:34:15,392 INFO L280 TraceCheckUtils]: 58: Hoare triple {2806#false} assume !(0 != #t~mem8); {2806#false} is VALID [2020-07-18 06:34:15,392 INFO L280 TraceCheckUtils]: 59: Hoare triple {2806#false} havoc #t~mem8; {2806#false} is VALID [2020-07-18 06:34:15,392 INFO L280 TraceCheckUtils]: 60: Hoare triple {2806#false} assume !!(~nc_B~0 >= ~nc_A~0); {2806#false} is VALID [2020-07-18 06:34:15,392 INFO L280 TraceCheckUtils]: 61: Hoare triple {2806#false} ~j~0 := 0; {2806#false} is VALID [2020-07-18 06:34:15,393 INFO L280 TraceCheckUtils]: 62: Hoare triple {2806#false} ~i~0 := ~j~0; {2806#false} is VALID [2020-07-18 06:34:15,393 INFO L280 TraceCheckUtils]: 63: Hoare triple {2806#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {2806#false} is VALID [2020-07-18 06:34:15,393 INFO L280 TraceCheckUtils]: 64: Hoare triple {2806#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {2806#false} is VALID [2020-07-18 06:34:15,394 INFO L263 TraceCheckUtils]: 65: Hoare triple {2806#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {2806#false} is VALID [2020-07-18 06:34:15,394 INFO L280 TraceCheckUtils]: 66: Hoare triple {2806#false} ~cond := #in~cond; {2806#false} is VALID [2020-07-18 06:34:15,394 INFO L280 TraceCheckUtils]: 67: Hoare triple {2806#false} assume 0 == ~cond; {2806#false} is VALID [2020-07-18 06:34:15,394 INFO L280 TraceCheckUtils]: 68: Hoare triple {2806#false} assume !false; {2806#false} is VALID [2020-07-18 06:34:15,399 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2020-07-18 06:34:15,399 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [497862795] [2020-07-18 06:34:15,400 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:15,400 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2020-07-18 06:34:15,400 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [933896320] [2020-07-18 06:34:15,401 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 69 [2020-07-18 06:34:15,401 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:15,402 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-18 06:34:15,470 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:15,470 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-18 06:34:15,471 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:15,471 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-18 06:34:15,471 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:15,472 INFO L87 Difference]: Start difference. First operand 93 states and 98 transitions. Second operand 8 states. [2020-07-18 06:34:16,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:16,093 INFO L93 Difference]: Finished difference Result 168 states and 178 transitions. [2020-07-18 06:34:16,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-18 06:34:16,093 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 69 [2020-07-18 06:34:16,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:16,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:16,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 168 transitions. [2020-07-18 06:34:16,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:16,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 168 transitions. [2020-07-18 06:34:16,101 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 168 transitions. [2020-07-18 06:34:16,281 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:16,284 INFO L225 Difference]: With dead ends: 168 [2020-07-18 06:34:16,284 INFO L226 Difference]: Without dead ends: 105 [2020-07-18 06:34:16,285 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=87, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:16,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2020-07-18 06:34:16,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 100. [2020-07-18 06:34:16,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:16,359 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand 100 states. [2020-07-18 06:34:16,360 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand 100 states. [2020-07-18 06:34:16,360 INFO L87 Difference]: Start difference. First operand 105 states. Second operand 100 states. [2020-07-18 06:34:16,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:16,364 INFO L93 Difference]: Finished difference Result 105 states and 110 transitions. [2020-07-18 06:34:16,364 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 110 transitions. [2020-07-18 06:34:16,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:16,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:16,365 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 105 states. [2020-07-18 06:34:16,365 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 105 states. [2020-07-18 06:34:16,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:16,368 INFO L93 Difference]: Finished difference Result 105 states and 110 transitions. [2020-07-18 06:34:16,369 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 110 transitions. [2020-07-18 06:34:16,369 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:16,369 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:16,369 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:16,369 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:16,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 100 states. [2020-07-18 06:34:16,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 105 transitions. [2020-07-18 06:34:16,372 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 105 transitions. Word has length 69 [2020-07-18 06:34:16,373 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:16,373 INFO L479 AbstractCegarLoop]: Abstraction has 100 states and 105 transitions. [2020-07-18 06:34:16,373 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-18 06:34:16,373 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 100 states and 105 transitions. [2020-07-18 06:34:16,493 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:16,493 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 105 transitions. [2020-07-18 06:34:16,494 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2020-07-18 06:34:16,495 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:16,495 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:16,495 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-18 06:34:16,496 INFO L427 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:16,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:16,496 INFO L82 PathProgramCache]: Analyzing trace with hash -1399032013, now seen corresponding path program 4 times [2020-07-18 06:34:16,497 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:16,497 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2020803216] [2020-07-18 06:34:16,497 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:16,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:16,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:16,692 INFO L280 TraceCheckUtils]: 0: Hoare triple {3588#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3574#true} is VALID [2020-07-18 06:34:16,693 INFO L280 TraceCheckUtils]: 1: Hoare triple {3574#true} #valid := #valid[0 := 0]; {3574#true} is VALID [2020-07-18 06:34:16,693 INFO L280 TraceCheckUtils]: 2: Hoare triple {3574#true} assume 0 < #StackHeapBarrier; {3574#true} is VALID [2020-07-18 06:34:16,693 INFO L280 TraceCheckUtils]: 3: Hoare triple {3574#true} assume true; {3574#true} is VALID [2020-07-18 06:34:16,694 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3574#true} {3574#true} #186#return; {3574#true} is VALID [2020-07-18 06:34:16,695 INFO L263 TraceCheckUtils]: 0: Hoare triple {3574#true} call ULTIMATE.init(); {3588#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:16,696 INFO L280 TraceCheckUtils]: 1: Hoare triple {3588#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3574#true} is VALID [2020-07-18 06:34:16,696 INFO L280 TraceCheckUtils]: 2: Hoare triple {3574#true} #valid := #valid[0 := 0]; {3574#true} is VALID [2020-07-18 06:34:16,696 INFO L280 TraceCheckUtils]: 3: Hoare triple {3574#true} assume 0 < #StackHeapBarrier; {3574#true} is VALID [2020-07-18 06:34:16,697 INFO L280 TraceCheckUtils]: 4: Hoare triple {3574#true} assume true; {3574#true} is VALID [2020-07-18 06:34:16,697 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3574#true} {3574#true} #186#return; {3574#true} is VALID [2020-07-18 06:34:16,697 INFO L263 TraceCheckUtils]: 6: Hoare triple {3574#true} call #t~ret14 := main(); {3574#true} is VALID [2020-07-18 06:34:16,697 INFO L280 TraceCheckUtils]: 7: Hoare triple {3574#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {3574#true} is VALID [2020-07-18 06:34:16,698 INFO L280 TraceCheckUtils]: 8: Hoare triple {3574#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {3574#true} is VALID [2020-07-18 06:34:16,698 INFO L280 TraceCheckUtils]: 9: Hoare triple {3574#true} havoc ~i~0; {3574#true} is VALID [2020-07-18 06:34:16,698 INFO L280 TraceCheckUtils]: 10: Hoare triple {3574#true} havoc ~j~0; {3574#true} is VALID [2020-07-18 06:34:16,699 INFO L280 TraceCheckUtils]: 11: Hoare triple {3574#true} havoc ~nc_A~0; {3574#true} is VALID [2020-07-18 06:34:16,699 INFO L280 TraceCheckUtils]: 12: Hoare triple {3574#true} havoc ~nc_B~0; {3574#true} is VALID [2020-07-18 06:34:16,699 INFO L280 TraceCheckUtils]: 13: Hoare triple {3574#true} ~found~0 := 0; {3574#true} is VALID [2020-07-18 06:34:16,700 INFO L280 TraceCheckUtils]: 14: Hoare triple {3574#true} ~i~0 := 0; {3581#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:16,701 INFO L280 TraceCheckUtils]: 15: Hoare triple {3581#(= 0 main_~i~0)} assume !!(~i~0 < 5); {3581#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:16,702 INFO L280 TraceCheckUtils]: 16: Hoare triple {3581#(= 0 main_~i~0)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {3581#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:16,703 INFO L280 TraceCheckUtils]: 17: Hoare triple {3581#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {3581#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:16,704 INFO L280 TraceCheckUtils]: 18: Hoare triple {3581#(= 0 main_~i~0)} havoc #t~nondet1; {3581#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:16,705 INFO L280 TraceCheckUtils]: 19: Hoare triple {3581#(= 0 main_~i~0)} #t~post0 := ~i~0; {3582#(= |main_#t~post0| 0)} is VALID [2020-07-18 06:34:16,706 INFO L280 TraceCheckUtils]: 20: Hoare triple {3582#(= |main_#t~post0| 0)} ~i~0 := 1 + #t~post0; {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,707 INFO L280 TraceCheckUtils]: 21: Hoare triple {3583#(<= main_~i~0 1)} havoc #t~post0; {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,708 INFO L280 TraceCheckUtils]: 22: Hoare triple {3583#(<= main_~i~0 1)} assume !!(~i~0 < 5); {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,709 INFO L280 TraceCheckUtils]: 23: Hoare triple {3583#(<= main_~i~0 1)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,710 INFO L280 TraceCheckUtils]: 24: Hoare triple {3583#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,710 INFO L280 TraceCheckUtils]: 25: Hoare triple {3583#(<= main_~i~0 1)} havoc #t~nondet1; {3583#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:16,711 INFO L280 TraceCheckUtils]: 26: Hoare triple {3583#(<= main_~i~0 1)} #t~post0 := ~i~0; {3584#(<= |main_#t~post0| 1)} is VALID [2020-07-18 06:34:16,712 INFO L280 TraceCheckUtils]: 27: Hoare triple {3584#(<= |main_#t~post0| 1)} ~i~0 := 1 + #t~post0; {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,713 INFO L280 TraceCheckUtils]: 28: Hoare triple {3585#(<= main_~i~0 2)} havoc #t~post0; {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,714 INFO L280 TraceCheckUtils]: 29: Hoare triple {3585#(<= main_~i~0 2)} assume !!(~i~0 < 5); {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,715 INFO L280 TraceCheckUtils]: 30: Hoare triple {3585#(<= main_~i~0 2)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,715 INFO L280 TraceCheckUtils]: 31: Hoare triple {3585#(<= main_~i~0 2)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,716 INFO L280 TraceCheckUtils]: 32: Hoare triple {3585#(<= main_~i~0 2)} havoc #t~nondet1; {3585#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:16,717 INFO L280 TraceCheckUtils]: 33: Hoare triple {3585#(<= main_~i~0 2)} #t~post0 := ~i~0; {3586#(<= |main_#t~post0| 2)} is VALID [2020-07-18 06:34:16,718 INFO L280 TraceCheckUtils]: 34: Hoare triple {3586#(<= |main_#t~post0| 2)} ~i~0 := 1 + #t~post0; {3587#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:16,719 INFO L280 TraceCheckUtils]: 35: Hoare triple {3587#(<= main_~i~0 3)} havoc #t~post0; {3587#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:16,720 INFO L280 TraceCheckUtils]: 36: Hoare triple {3587#(<= main_~i~0 3)} assume !(~i~0 < 5); {3575#false} is VALID [2020-07-18 06:34:16,720 INFO L280 TraceCheckUtils]: 37: Hoare triple {3575#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {3575#false} is VALID [2020-07-18 06:34:16,720 INFO L280 TraceCheckUtils]: 38: Hoare triple {3575#false} assume !!(0 == #t~mem2); {3575#false} is VALID [2020-07-18 06:34:16,721 INFO L280 TraceCheckUtils]: 39: Hoare triple {3575#false} havoc #t~mem2; {3575#false} is VALID [2020-07-18 06:34:16,721 INFO L280 TraceCheckUtils]: 40: Hoare triple {3575#false} ~i~0 := 0; {3575#false} is VALID [2020-07-18 06:34:16,721 INFO L280 TraceCheckUtils]: 41: Hoare triple {3575#false} assume !!(~i~0 < 5); {3575#false} is VALID [2020-07-18 06:34:16,721 INFO L280 TraceCheckUtils]: 42: Hoare triple {3575#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {3575#false} is VALID [2020-07-18 06:34:16,722 INFO L280 TraceCheckUtils]: 43: Hoare triple {3575#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {3575#false} is VALID [2020-07-18 06:34:16,722 INFO L280 TraceCheckUtils]: 44: Hoare triple {3575#false} havoc #t~nondet4; {3575#false} is VALID [2020-07-18 06:34:16,722 INFO L280 TraceCheckUtils]: 45: Hoare triple {3575#false} #t~post3 := ~i~0; {3575#false} is VALID [2020-07-18 06:34:16,722 INFO L280 TraceCheckUtils]: 46: Hoare triple {3575#false} ~i~0 := 1 + #t~post3; {3575#false} is VALID [2020-07-18 06:34:16,723 INFO L280 TraceCheckUtils]: 47: Hoare triple {3575#false} havoc #t~post3; {3575#false} is VALID [2020-07-18 06:34:16,723 INFO L280 TraceCheckUtils]: 48: Hoare triple {3575#false} assume !!(~i~0 < 5); {3575#false} is VALID [2020-07-18 06:34:16,723 INFO L280 TraceCheckUtils]: 49: Hoare triple {3575#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {3575#false} is VALID [2020-07-18 06:34:16,723 INFO L280 TraceCheckUtils]: 50: Hoare triple {3575#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {3575#false} is VALID [2020-07-18 06:34:16,724 INFO L280 TraceCheckUtils]: 51: Hoare triple {3575#false} havoc #t~nondet4; {3575#false} is VALID [2020-07-18 06:34:16,724 INFO L280 TraceCheckUtils]: 52: Hoare triple {3575#false} #t~post3 := ~i~0; {3575#false} is VALID [2020-07-18 06:34:16,724 INFO L280 TraceCheckUtils]: 53: Hoare triple {3575#false} ~i~0 := 1 + #t~post3; {3575#false} is VALID [2020-07-18 06:34:16,725 INFO L280 TraceCheckUtils]: 54: Hoare triple {3575#false} havoc #t~post3; {3575#false} is VALID [2020-07-18 06:34:16,725 INFO L280 TraceCheckUtils]: 55: Hoare triple {3575#false} assume !(~i~0 < 5); {3575#false} is VALID [2020-07-18 06:34:16,725 INFO L280 TraceCheckUtils]: 56: Hoare triple {3575#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {3575#false} is VALID [2020-07-18 06:34:16,726 INFO L280 TraceCheckUtils]: 57: Hoare triple {3575#false} assume !!(0 == #t~mem5); {3575#false} is VALID [2020-07-18 06:34:16,726 INFO L280 TraceCheckUtils]: 58: Hoare triple {3575#false} havoc #t~mem5; {3575#false} is VALID [2020-07-18 06:34:16,726 INFO L280 TraceCheckUtils]: 59: Hoare triple {3575#false} ~nc_A~0 := 0; {3575#false} is VALID [2020-07-18 06:34:16,726 INFO L280 TraceCheckUtils]: 60: Hoare triple {3575#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {3575#false} is VALID [2020-07-18 06:34:16,727 INFO L280 TraceCheckUtils]: 61: Hoare triple {3575#false} assume !(0 != #t~mem6); {3575#false} is VALID [2020-07-18 06:34:16,727 INFO L280 TraceCheckUtils]: 62: Hoare triple {3575#false} havoc #t~mem6; {3575#false} is VALID [2020-07-18 06:34:16,727 INFO L280 TraceCheckUtils]: 63: Hoare triple {3575#false} ~nc_B~0 := 0; {3575#false} is VALID [2020-07-18 06:34:16,727 INFO L280 TraceCheckUtils]: 64: Hoare triple {3575#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {3575#false} is VALID [2020-07-18 06:34:16,728 INFO L280 TraceCheckUtils]: 65: Hoare triple {3575#false} assume !(0 != #t~mem8); {3575#false} is VALID [2020-07-18 06:34:16,728 INFO L280 TraceCheckUtils]: 66: Hoare triple {3575#false} havoc #t~mem8; {3575#false} is VALID [2020-07-18 06:34:16,728 INFO L280 TraceCheckUtils]: 67: Hoare triple {3575#false} assume !!(~nc_B~0 >= ~nc_A~0); {3575#false} is VALID [2020-07-18 06:34:16,729 INFO L280 TraceCheckUtils]: 68: Hoare triple {3575#false} ~j~0 := 0; {3575#false} is VALID [2020-07-18 06:34:16,729 INFO L280 TraceCheckUtils]: 69: Hoare triple {3575#false} ~i~0 := ~j~0; {3575#false} is VALID [2020-07-18 06:34:16,729 INFO L280 TraceCheckUtils]: 70: Hoare triple {3575#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {3575#false} is VALID [2020-07-18 06:34:16,729 INFO L280 TraceCheckUtils]: 71: Hoare triple {3575#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {3575#false} is VALID [2020-07-18 06:34:16,730 INFO L263 TraceCheckUtils]: 72: Hoare triple {3575#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {3575#false} is VALID [2020-07-18 06:34:16,730 INFO L280 TraceCheckUtils]: 73: Hoare triple {3575#false} ~cond := #in~cond; {3575#false} is VALID [2020-07-18 06:34:16,730 INFO L280 TraceCheckUtils]: 74: Hoare triple {3575#false} assume 0 == ~cond; {3575#false} is VALID [2020-07-18 06:34:16,730 INFO L280 TraceCheckUtils]: 75: Hoare triple {3575#false} assume !false; {3575#false} is VALID [2020-07-18 06:34:16,736 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2020-07-18 06:34:16,737 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2020803216] [2020-07-18 06:34:16,737 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:16,737 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2020-07-18 06:34:16,738 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2098870642] [2020-07-18 06:34:16,738 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 76 [2020-07-18 06:34:16,739 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:16,739 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-18 06:34:16,814 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:16,814 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-18 06:34:16,814 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:16,815 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-18 06:34:16,815 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2020-07-18 06:34:16,815 INFO L87 Difference]: Start difference. First operand 100 states and 105 transitions. Second operand 10 states. [2020-07-18 06:34:17,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:17,563 INFO L93 Difference]: Finished difference Result 175 states and 185 transitions. [2020-07-18 06:34:17,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 06:34:17,563 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 76 [2020-07-18 06:34:17,563 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:17,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:17,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 175 transitions. [2020-07-18 06:34:17,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:17,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 175 transitions. [2020-07-18 06:34:17,571 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 175 transitions. [2020-07-18 06:34:17,758 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:17,761 INFO L225 Difference]: With dead ends: 175 [2020-07-18 06:34:17,762 INFO L226 Difference]: Without dead ends: 112 [2020-07-18 06:34:17,763 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2020-07-18 06:34:17,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2020-07-18 06:34:17,840 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 107. [2020-07-18 06:34:17,840 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:17,841 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand 107 states. [2020-07-18 06:34:17,841 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand 107 states. [2020-07-18 06:34:17,841 INFO L87 Difference]: Start difference. First operand 112 states. Second operand 107 states. [2020-07-18 06:34:17,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:17,844 INFO L93 Difference]: Finished difference Result 112 states and 117 transitions. [2020-07-18 06:34:17,844 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 117 transitions. [2020-07-18 06:34:17,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:17,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:17,845 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand 112 states. [2020-07-18 06:34:17,845 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 112 states. [2020-07-18 06:34:17,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:17,849 INFO L93 Difference]: Finished difference Result 112 states and 117 transitions. [2020-07-18 06:34:17,849 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 117 transitions. [2020-07-18 06:34:17,849 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:17,849 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:17,850 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:17,850 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:17,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 107 states. [2020-07-18 06:34:17,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 112 transitions. [2020-07-18 06:34:17,853 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 112 transitions. Word has length 76 [2020-07-18 06:34:17,853 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:17,854 INFO L479 AbstractCegarLoop]: Abstraction has 107 states and 112 transitions. [2020-07-18 06:34:17,854 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-18 06:34:17,854 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 107 states and 112 transitions. [2020-07-18 06:34:17,979 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:17,979 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 112 transitions. [2020-07-18 06:34:17,981 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2020-07-18 06:34:17,981 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:17,981 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:17,982 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-18 06:34:17,982 INFO L427 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:17,983 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:17,983 INFO L82 PathProgramCache]: Analyzing trace with hash 1633037998, now seen corresponding path program 5 times [2020-07-18 06:34:17,983 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:17,983 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1312126807] [2020-07-18 06:34:17,983 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:18,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:18,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:18,183 INFO L280 TraceCheckUtils]: 0: Hoare triple {4407#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4391#true} is VALID [2020-07-18 06:34:18,184 INFO L280 TraceCheckUtils]: 1: Hoare triple {4391#true} #valid := #valid[0 := 0]; {4391#true} is VALID [2020-07-18 06:34:18,184 INFO L280 TraceCheckUtils]: 2: Hoare triple {4391#true} assume 0 < #StackHeapBarrier; {4391#true} is VALID [2020-07-18 06:34:18,184 INFO L280 TraceCheckUtils]: 3: Hoare triple {4391#true} assume true; {4391#true} is VALID [2020-07-18 06:34:18,185 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4391#true} {4391#true} #186#return; {4391#true} is VALID [2020-07-18 06:34:18,186 INFO L263 TraceCheckUtils]: 0: Hoare triple {4391#true} call ULTIMATE.init(); {4407#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:18,186 INFO L280 TraceCheckUtils]: 1: Hoare triple {4407#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L280 TraceCheckUtils]: 2: Hoare triple {4391#true} #valid := #valid[0 := 0]; {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L280 TraceCheckUtils]: 3: Hoare triple {4391#true} assume 0 < #StackHeapBarrier; {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L280 TraceCheckUtils]: 4: Hoare triple {4391#true} assume true; {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {4391#true} {4391#true} #186#return; {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L263 TraceCheckUtils]: 6: Hoare triple {4391#true} call #t~ret14 := main(); {4391#true} is VALID [2020-07-18 06:34:18,187 INFO L280 TraceCheckUtils]: 7: Hoare triple {4391#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {4391#true} is VALID [2020-07-18 06:34:18,188 INFO L280 TraceCheckUtils]: 8: Hoare triple {4391#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {4391#true} is VALID [2020-07-18 06:34:18,188 INFO L280 TraceCheckUtils]: 9: Hoare triple {4391#true} havoc ~i~0; {4391#true} is VALID [2020-07-18 06:34:18,188 INFO L280 TraceCheckUtils]: 10: Hoare triple {4391#true} havoc ~j~0; {4391#true} is VALID [2020-07-18 06:34:18,188 INFO L280 TraceCheckUtils]: 11: Hoare triple {4391#true} havoc ~nc_A~0; {4391#true} is VALID [2020-07-18 06:34:18,189 INFO L280 TraceCheckUtils]: 12: Hoare triple {4391#true} havoc ~nc_B~0; {4391#true} is VALID [2020-07-18 06:34:18,189 INFO L280 TraceCheckUtils]: 13: Hoare triple {4391#true} ~found~0 := 0; {4391#true} is VALID [2020-07-18 06:34:18,190 INFO L280 TraceCheckUtils]: 14: Hoare triple {4391#true} ~i~0 := 0; {4398#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:18,193 INFO L280 TraceCheckUtils]: 15: Hoare triple {4398#(= 0 main_~i~0)} assume !!(~i~0 < 5); {4398#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:18,194 INFO L280 TraceCheckUtils]: 16: Hoare triple {4398#(= 0 main_~i~0)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {4398#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:18,195 INFO L280 TraceCheckUtils]: 17: Hoare triple {4398#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {4398#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:18,195 INFO L280 TraceCheckUtils]: 18: Hoare triple {4398#(= 0 main_~i~0)} havoc #t~nondet1; {4398#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:18,196 INFO L280 TraceCheckUtils]: 19: Hoare triple {4398#(= 0 main_~i~0)} #t~post0 := ~i~0; {4399#(= |main_#t~post0| 0)} is VALID [2020-07-18 06:34:18,196 INFO L280 TraceCheckUtils]: 20: Hoare triple {4399#(= |main_#t~post0| 0)} ~i~0 := 1 + #t~post0; {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,197 INFO L280 TraceCheckUtils]: 21: Hoare triple {4400#(<= main_~i~0 1)} havoc #t~post0; {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,197 INFO L280 TraceCheckUtils]: 22: Hoare triple {4400#(<= main_~i~0 1)} assume !!(~i~0 < 5); {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,198 INFO L280 TraceCheckUtils]: 23: Hoare triple {4400#(<= main_~i~0 1)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,198 INFO L280 TraceCheckUtils]: 24: Hoare triple {4400#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,198 INFO L280 TraceCheckUtils]: 25: Hoare triple {4400#(<= main_~i~0 1)} havoc #t~nondet1; {4400#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:18,199 INFO L280 TraceCheckUtils]: 26: Hoare triple {4400#(<= main_~i~0 1)} #t~post0 := ~i~0; {4401#(<= |main_#t~post0| 1)} is VALID [2020-07-18 06:34:18,199 INFO L280 TraceCheckUtils]: 27: Hoare triple {4401#(<= |main_#t~post0| 1)} ~i~0 := 1 + #t~post0; {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,200 INFO L280 TraceCheckUtils]: 28: Hoare triple {4402#(<= main_~i~0 2)} havoc #t~post0; {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,201 INFO L280 TraceCheckUtils]: 29: Hoare triple {4402#(<= main_~i~0 2)} assume !!(~i~0 < 5); {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,201 INFO L280 TraceCheckUtils]: 30: Hoare triple {4402#(<= main_~i~0 2)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,201 INFO L280 TraceCheckUtils]: 31: Hoare triple {4402#(<= main_~i~0 2)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,202 INFO L280 TraceCheckUtils]: 32: Hoare triple {4402#(<= main_~i~0 2)} havoc #t~nondet1; {4402#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:18,203 INFO L280 TraceCheckUtils]: 33: Hoare triple {4402#(<= main_~i~0 2)} #t~post0 := ~i~0; {4403#(<= |main_#t~post0| 2)} is VALID [2020-07-18 06:34:18,204 INFO L280 TraceCheckUtils]: 34: Hoare triple {4403#(<= |main_#t~post0| 2)} ~i~0 := 1 + #t~post0; {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,204 INFO L280 TraceCheckUtils]: 35: Hoare triple {4404#(<= main_~i~0 3)} havoc #t~post0; {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,205 INFO L280 TraceCheckUtils]: 36: Hoare triple {4404#(<= main_~i~0 3)} assume !!(~i~0 < 5); {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,205 INFO L280 TraceCheckUtils]: 37: Hoare triple {4404#(<= main_~i~0 3)} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,206 INFO L280 TraceCheckUtils]: 38: Hoare triple {4404#(<= main_~i~0 3)} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,206 INFO L280 TraceCheckUtils]: 39: Hoare triple {4404#(<= main_~i~0 3)} havoc #t~nondet1; {4404#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:18,206 INFO L280 TraceCheckUtils]: 40: Hoare triple {4404#(<= main_~i~0 3)} #t~post0 := ~i~0; {4405#(<= |main_#t~post0| 3)} is VALID [2020-07-18 06:34:18,207 INFO L280 TraceCheckUtils]: 41: Hoare triple {4405#(<= |main_#t~post0| 3)} ~i~0 := 1 + #t~post0; {4406#(<= main_~i~0 4)} is VALID [2020-07-18 06:34:18,207 INFO L280 TraceCheckUtils]: 42: Hoare triple {4406#(<= main_~i~0 4)} havoc #t~post0; {4406#(<= main_~i~0 4)} is VALID [2020-07-18 06:34:18,208 INFO L280 TraceCheckUtils]: 43: Hoare triple {4406#(<= main_~i~0 4)} assume !(~i~0 < 5); {4392#false} is VALID [2020-07-18 06:34:18,208 INFO L280 TraceCheckUtils]: 44: Hoare triple {4392#false} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {4392#false} is VALID [2020-07-18 06:34:18,208 INFO L280 TraceCheckUtils]: 45: Hoare triple {4392#false} assume !!(0 == #t~mem2); {4392#false} is VALID [2020-07-18 06:34:18,208 INFO L280 TraceCheckUtils]: 46: Hoare triple {4392#false} havoc #t~mem2; {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 47: Hoare triple {4392#false} ~i~0 := 0; {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 48: Hoare triple {4392#false} assume !!(~i~0 < 5); {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 49: Hoare triple {4392#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 50: Hoare triple {4392#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 51: Hoare triple {4392#false} havoc #t~nondet4; {4392#false} is VALID [2020-07-18 06:34:18,209 INFO L280 TraceCheckUtils]: 52: Hoare triple {4392#false} #t~post3 := ~i~0; {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 53: Hoare triple {4392#false} ~i~0 := 1 + #t~post3; {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 54: Hoare triple {4392#false} havoc #t~post3; {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 55: Hoare triple {4392#false} assume !!(~i~0 < 5); {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 56: Hoare triple {4392#false} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 57: Hoare triple {4392#false} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {4392#false} is VALID [2020-07-18 06:34:18,210 INFO L280 TraceCheckUtils]: 58: Hoare triple {4392#false} havoc #t~nondet4; {4392#false} is VALID [2020-07-18 06:34:18,211 INFO L280 TraceCheckUtils]: 59: Hoare triple {4392#false} #t~post3 := ~i~0; {4392#false} is VALID [2020-07-18 06:34:18,211 INFO L280 TraceCheckUtils]: 60: Hoare triple {4392#false} ~i~0 := 1 + #t~post3; {4392#false} is VALID [2020-07-18 06:34:18,211 INFO L280 TraceCheckUtils]: 61: Hoare triple {4392#false} havoc #t~post3; {4392#false} is VALID [2020-07-18 06:34:18,211 INFO L280 TraceCheckUtils]: 62: Hoare triple {4392#false} assume !(~i~0 < 5); {4392#false} is VALID [2020-07-18 06:34:18,211 INFO L280 TraceCheckUtils]: 63: Hoare triple {4392#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 64: Hoare triple {4392#false} assume !!(0 == #t~mem5); {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 65: Hoare triple {4392#false} havoc #t~mem5; {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 66: Hoare triple {4392#false} ~nc_A~0 := 0; {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 67: Hoare triple {4392#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 68: Hoare triple {4392#false} assume !(0 != #t~mem6); {4392#false} is VALID [2020-07-18 06:34:18,212 INFO L280 TraceCheckUtils]: 69: Hoare triple {4392#false} havoc #t~mem6; {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 70: Hoare triple {4392#false} ~nc_B~0 := 0; {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 71: Hoare triple {4392#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 72: Hoare triple {4392#false} assume !(0 != #t~mem8); {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 73: Hoare triple {4392#false} havoc #t~mem8; {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 74: Hoare triple {4392#false} assume !!(~nc_B~0 >= ~nc_A~0); {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 75: Hoare triple {4392#false} ~j~0 := 0; {4392#false} is VALID [2020-07-18 06:34:18,213 INFO L280 TraceCheckUtils]: 76: Hoare triple {4392#false} ~i~0 := ~j~0; {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L280 TraceCheckUtils]: 77: Hoare triple {4392#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L280 TraceCheckUtils]: 78: Hoare triple {4392#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L263 TraceCheckUtils]: 79: Hoare triple {4392#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L280 TraceCheckUtils]: 80: Hoare triple {4392#false} ~cond := #in~cond; {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L280 TraceCheckUtils]: 81: Hoare triple {4392#false} assume 0 == ~cond; {4392#false} is VALID [2020-07-18 06:34:18,214 INFO L280 TraceCheckUtils]: 82: Hoare triple {4392#false} assume !false; {4392#false} is VALID [2020-07-18 06:34:18,228 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 0 proven. 46 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2020-07-18 06:34:18,228 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1312126807] [2020-07-18 06:34:18,229 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:18,229 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-18 06:34:18,229 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [190126107] [2020-07-18 06:34:18,230 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 83 [2020-07-18 06:34:18,230 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:18,230 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 06:34:18,311 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:18,311 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 06:34:18,311 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:18,312 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 06:34:18,312 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:18,313 INFO L87 Difference]: Start difference. First operand 107 states and 112 transitions. Second operand 12 states. [2020-07-18 06:34:19,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:19,239 INFO L93 Difference]: Finished difference Result 177 states and 187 transitions. [2020-07-18 06:34:19,239 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-18 06:34:19,239 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 83 [2020-07-18 06:34:19,239 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:19,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:19,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2020-07-18 06:34:19,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:19,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2020-07-18 06:34:19,246 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 177 transitions. [2020-07-18 06:34:19,442 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:19,445 INFO L225 Difference]: With dead ends: 177 [2020-07-18 06:34:19,445 INFO L226 Difference]: Without dead ends: 114 [2020-07-18 06:34:19,446 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=125, Invalid=255, Unknown=0, NotChecked=0, Total=380 [2020-07-18 06:34:19,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2020-07-18 06:34:19,560 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 114. [2020-07-18 06:34:19,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:19,560 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand 114 states. [2020-07-18 06:34:19,560 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 114 states. [2020-07-18 06:34:19,560 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 114 states. [2020-07-18 06:34:19,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:19,564 INFO L93 Difference]: Finished difference Result 114 states and 119 transitions. [2020-07-18 06:34:19,565 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 119 transitions. [2020-07-18 06:34:19,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:19,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:19,565 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 114 states. [2020-07-18 06:34:19,565 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 114 states. [2020-07-18 06:34:19,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:19,569 INFO L93 Difference]: Finished difference Result 114 states and 119 transitions. [2020-07-18 06:34:19,569 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 119 transitions. [2020-07-18 06:34:19,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:19,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:19,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:19,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:19,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 114 states. [2020-07-18 06:34:19,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 119 transitions. [2020-07-18 06:34:19,573 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 119 transitions. Word has length 83 [2020-07-18 06:34:19,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:19,574 INFO L479 AbstractCegarLoop]: Abstraction has 114 states and 119 transitions. [2020-07-18 06:34:19,574 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 06:34:19,574 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 114 states and 119 transitions. [2020-07-18 06:34:19,700 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:19,700 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 119 transitions. [2020-07-18 06:34:19,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2020-07-18 06:34:19,702 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:19,702 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:19,703 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-18 06:34:19,703 INFO L427 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:19,703 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:19,703 INFO L82 PathProgramCache]: Analyzing trace with hash 2059478739, now seen corresponding path program 6 times [2020-07-18 06:34:19,704 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:19,704 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [436487227] [2020-07-18 06:34:19,704 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:19,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:19,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:19,843 INFO L280 TraceCheckUtils]: 0: Hoare triple {5248#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5236#true} is VALID [2020-07-18 06:34:19,844 INFO L280 TraceCheckUtils]: 1: Hoare triple {5236#true} #valid := #valid[0 := 0]; {5236#true} is VALID [2020-07-18 06:34:19,844 INFO L280 TraceCheckUtils]: 2: Hoare triple {5236#true} assume 0 < #StackHeapBarrier; {5236#true} is VALID [2020-07-18 06:34:19,844 INFO L280 TraceCheckUtils]: 3: Hoare triple {5236#true} assume true; {5236#true} is VALID [2020-07-18 06:34:19,844 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5236#true} {5236#true} #186#return; {5236#true} is VALID [2020-07-18 06:34:19,846 INFO L263 TraceCheckUtils]: 0: Hoare triple {5236#true} call ULTIMATE.init(); {5248#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:19,846 INFO L280 TraceCheckUtils]: 1: Hoare triple {5248#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5236#true} is VALID [2020-07-18 06:34:19,846 INFO L280 TraceCheckUtils]: 2: Hoare triple {5236#true} #valid := #valid[0 := 0]; {5236#true} is VALID [2020-07-18 06:34:19,846 INFO L280 TraceCheckUtils]: 3: Hoare triple {5236#true} assume 0 < #StackHeapBarrier; {5236#true} is VALID [2020-07-18 06:34:19,847 INFO L280 TraceCheckUtils]: 4: Hoare triple {5236#true} assume true; {5236#true} is VALID [2020-07-18 06:34:19,847 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5236#true} {5236#true} #186#return; {5236#true} is VALID [2020-07-18 06:34:19,847 INFO L263 TraceCheckUtils]: 6: Hoare triple {5236#true} call #t~ret14 := main(); {5236#true} is VALID [2020-07-18 06:34:19,847 INFO L280 TraceCheckUtils]: 7: Hoare triple {5236#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {5236#true} is VALID [2020-07-18 06:34:19,848 INFO L280 TraceCheckUtils]: 8: Hoare triple {5236#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {5236#true} is VALID [2020-07-18 06:34:19,848 INFO L280 TraceCheckUtils]: 9: Hoare triple {5236#true} havoc ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,848 INFO L280 TraceCheckUtils]: 10: Hoare triple {5236#true} havoc ~j~0; {5236#true} is VALID [2020-07-18 06:34:19,848 INFO L280 TraceCheckUtils]: 11: Hoare triple {5236#true} havoc ~nc_A~0; {5236#true} is VALID [2020-07-18 06:34:19,848 INFO L280 TraceCheckUtils]: 12: Hoare triple {5236#true} havoc ~nc_B~0; {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 13: Hoare triple {5236#true} ~found~0 := 0; {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 14: Hoare triple {5236#true} ~i~0 := 0; {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 15: Hoare triple {5236#true} assume !!(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 16: Hoare triple {5236#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 17: Hoare triple {5236#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {5236#true} is VALID [2020-07-18 06:34:19,849 INFO L280 TraceCheckUtils]: 18: Hoare triple {5236#true} havoc #t~nondet1; {5236#true} is VALID [2020-07-18 06:34:19,850 INFO L280 TraceCheckUtils]: 19: Hoare triple {5236#true} #t~post0 := ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,850 INFO L280 TraceCheckUtils]: 20: Hoare triple {5236#true} ~i~0 := 1 + #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,850 INFO L280 TraceCheckUtils]: 21: Hoare triple {5236#true} havoc #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,850 INFO L280 TraceCheckUtils]: 22: Hoare triple {5236#true} assume !!(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,850 INFO L280 TraceCheckUtils]: 23: Hoare triple {5236#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {5236#true} is VALID [2020-07-18 06:34:19,851 INFO L280 TraceCheckUtils]: 24: Hoare triple {5236#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {5236#true} is VALID [2020-07-18 06:34:19,851 INFO L280 TraceCheckUtils]: 25: Hoare triple {5236#true} havoc #t~nondet1; {5236#true} is VALID [2020-07-18 06:34:19,851 INFO L280 TraceCheckUtils]: 26: Hoare triple {5236#true} #t~post0 := ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,851 INFO L280 TraceCheckUtils]: 27: Hoare triple {5236#true} ~i~0 := 1 + #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,851 INFO L280 TraceCheckUtils]: 28: Hoare triple {5236#true} havoc #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,852 INFO L280 TraceCheckUtils]: 29: Hoare triple {5236#true} assume !!(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,852 INFO L280 TraceCheckUtils]: 30: Hoare triple {5236#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {5236#true} is VALID [2020-07-18 06:34:19,852 INFO L280 TraceCheckUtils]: 31: Hoare triple {5236#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {5236#true} is VALID [2020-07-18 06:34:19,852 INFO L280 TraceCheckUtils]: 32: Hoare triple {5236#true} havoc #t~nondet1; {5236#true} is VALID [2020-07-18 06:34:19,852 INFO L280 TraceCheckUtils]: 33: Hoare triple {5236#true} #t~post0 := ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,853 INFO L280 TraceCheckUtils]: 34: Hoare triple {5236#true} ~i~0 := 1 + #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,853 INFO L280 TraceCheckUtils]: 35: Hoare triple {5236#true} havoc #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,853 INFO L280 TraceCheckUtils]: 36: Hoare triple {5236#true} assume !!(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,853 INFO L280 TraceCheckUtils]: 37: Hoare triple {5236#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {5236#true} is VALID [2020-07-18 06:34:19,853 INFO L280 TraceCheckUtils]: 38: Hoare triple {5236#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {5236#true} is VALID [2020-07-18 06:34:19,854 INFO L280 TraceCheckUtils]: 39: Hoare triple {5236#true} havoc #t~nondet1; {5236#true} is VALID [2020-07-18 06:34:19,854 INFO L280 TraceCheckUtils]: 40: Hoare triple {5236#true} #t~post0 := ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,854 INFO L280 TraceCheckUtils]: 41: Hoare triple {5236#true} ~i~0 := 1 + #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,854 INFO L280 TraceCheckUtils]: 42: Hoare triple {5236#true} havoc #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,854 INFO L280 TraceCheckUtils]: 43: Hoare triple {5236#true} assume !!(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,855 INFO L280 TraceCheckUtils]: 44: Hoare triple {5236#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {5236#true} is VALID [2020-07-18 06:34:19,855 INFO L280 TraceCheckUtils]: 45: Hoare triple {5236#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {5236#true} is VALID [2020-07-18 06:34:19,855 INFO L280 TraceCheckUtils]: 46: Hoare triple {5236#true} havoc #t~nondet1; {5236#true} is VALID [2020-07-18 06:34:19,855 INFO L280 TraceCheckUtils]: 47: Hoare triple {5236#true} #t~post0 := ~i~0; {5236#true} is VALID [2020-07-18 06:34:19,856 INFO L280 TraceCheckUtils]: 48: Hoare triple {5236#true} ~i~0 := 1 + #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,856 INFO L280 TraceCheckUtils]: 49: Hoare triple {5236#true} havoc #t~post0; {5236#true} is VALID [2020-07-18 06:34:19,856 INFO L280 TraceCheckUtils]: 50: Hoare triple {5236#true} assume !(~i~0 < 5); {5236#true} is VALID [2020-07-18 06:34:19,856 INFO L280 TraceCheckUtils]: 51: Hoare triple {5236#true} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {5236#true} is VALID [2020-07-18 06:34:19,856 INFO L280 TraceCheckUtils]: 52: Hoare triple {5236#true} assume !!(0 == #t~mem2); {5236#true} is VALID [2020-07-18 06:34:19,857 INFO L280 TraceCheckUtils]: 53: Hoare triple {5236#true} havoc #t~mem2; {5236#true} is VALID [2020-07-18 06:34:19,858 INFO L280 TraceCheckUtils]: 54: Hoare triple {5236#true} ~i~0 := 0; {5243#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:19,858 INFO L280 TraceCheckUtils]: 55: Hoare triple {5243#(= 0 main_~i~0)} assume !!(~i~0 < 5); {5243#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:19,859 INFO L280 TraceCheckUtils]: 56: Hoare triple {5243#(= 0 main_~i~0)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {5243#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:19,860 INFO L280 TraceCheckUtils]: 57: Hoare triple {5243#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {5243#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:19,861 INFO L280 TraceCheckUtils]: 58: Hoare triple {5243#(= 0 main_~i~0)} havoc #t~nondet4; {5243#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:19,861 INFO L280 TraceCheckUtils]: 59: Hoare triple {5243#(= 0 main_~i~0)} #t~post3 := ~i~0; {5244#(= |main_#t~post3| 0)} is VALID [2020-07-18 06:34:19,862 INFO L280 TraceCheckUtils]: 60: Hoare triple {5244#(= |main_#t~post3| 0)} ~i~0 := 1 + #t~post3; {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,862 INFO L280 TraceCheckUtils]: 61: Hoare triple {5245#(<= main_~i~0 1)} havoc #t~post3; {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,863 INFO L280 TraceCheckUtils]: 62: Hoare triple {5245#(<= main_~i~0 1)} assume !!(~i~0 < 5); {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,863 INFO L280 TraceCheckUtils]: 63: Hoare triple {5245#(<= main_~i~0 1)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,864 INFO L280 TraceCheckUtils]: 64: Hoare triple {5245#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,865 INFO L280 TraceCheckUtils]: 65: Hoare triple {5245#(<= main_~i~0 1)} havoc #t~nondet4; {5245#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:19,865 INFO L280 TraceCheckUtils]: 66: Hoare triple {5245#(<= main_~i~0 1)} #t~post3 := ~i~0; {5246#(<= |main_#t~post3| 1)} is VALID [2020-07-18 06:34:19,867 INFO L280 TraceCheckUtils]: 67: Hoare triple {5246#(<= |main_#t~post3| 1)} ~i~0 := 1 + #t~post3; {5247#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:19,867 INFO L280 TraceCheckUtils]: 68: Hoare triple {5247#(<= main_~i~0 2)} havoc #t~post3; {5247#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:19,868 INFO L280 TraceCheckUtils]: 69: Hoare triple {5247#(<= main_~i~0 2)} assume !(~i~0 < 5); {5237#false} is VALID [2020-07-18 06:34:19,869 INFO L280 TraceCheckUtils]: 70: Hoare triple {5237#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {5237#false} is VALID [2020-07-18 06:34:19,869 INFO L280 TraceCheckUtils]: 71: Hoare triple {5237#false} assume !!(0 == #t~mem5); {5237#false} is VALID [2020-07-18 06:34:19,869 INFO L280 TraceCheckUtils]: 72: Hoare triple {5237#false} havoc #t~mem5; {5237#false} is VALID [2020-07-18 06:34:19,869 INFO L280 TraceCheckUtils]: 73: Hoare triple {5237#false} ~nc_A~0 := 0; {5237#false} is VALID [2020-07-18 06:34:19,869 INFO L280 TraceCheckUtils]: 74: Hoare triple {5237#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {5237#false} is VALID [2020-07-18 06:34:19,870 INFO L280 TraceCheckUtils]: 75: Hoare triple {5237#false} assume !(0 != #t~mem6); {5237#false} is VALID [2020-07-18 06:34:19,870 INFO L280 TraceCheckUtils]: 76: Hoare triple {5237#false} havoc #t~mem6; {5237#false} is VALID [2020-07-18 06:34:19,870 INFO L280 TraceCheckUtils]: 77: Hoare triple {5237#false} ~nc_B~0 := 0; {5237#false} is VALID [2020-07-18 06:34:19,870 INFO L280 TraceCheckUtils]: 78: Hoare triple {5237#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {5237#false} is VALID [2020-07-18 06:34:19,871 INFO L280 TraceCheckUtils]: 79: Hoare triple {5237#false} assume !(0 != #t~mem8); {5237#false} is VALID [2020-07-18 06:34:19,871 INFO L280 TraceCheckUtils]: 80: Hoare triple {5237#false} havoc #t~mem8; {5237#false} is VALID [2020-07-18 06:34:19,871 INFO L280 TraceCheckUtils]: 81: Hoare triple {5237#false} assume !!(~nc_B~0 >= ~nc_A~0); {5237#false} is VALID [2020-07-18 06:34:19,871 INFO L280 TraceCheckUtils]: 82: Hoare triple {5237#false} ~j~0 := 0; {5237#false} is VALID [2020-07-18 06:34:19,871 INFO L280 TraceCheckUtils]: 83: Hoare triple {5237#false} ~i~0 := ~j~0; {5237#false} is VALID [2020-07-18 06:34:19,872 INFO L280 TraceCheckUtils]: 84: Hoare triple {5237#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {5237#false} is VALID [2020-07-18 06:34:19,872 INFO L280 TraceCheckUtils]: 85: Hoare triple {5237#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {5237#false} is VALID [2020-07-18 06:34:19,872 INFO L263 TraceCheckUtils]: 86: Hoare triple {5237#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {5237#false} is VALID [2020-07-18 06:34:19,872 INFO L280 TraceCheckUtils]: 87: Hoare triple {5237#false} ~cond := #in~cond; {5237#false} is VALID [2020-07-18 06:34:19,872 INFO L280 TraceCheckUtils]: 88: Hoare triple {5237#false} assume 0 == ~cond; {5237#false} is VALID [2020-07-18 06:34:19,873 INFO L280 TraceCheckUtils]: 89: Hoare triple {5237#false} assume !false; {5237#false} is VALID [2020-07-18 06:34:19,877 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2020-07-18 06:34:19,877 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [436487227] [2020-07-18 06:34:19,877 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:19,878 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2020-07-18 06:34:19,878 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1885085885] [2020-07-18 06:34:19,878 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 90 [2020-07-18 06:34:19,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:19,879 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-18 06:34:19,941 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:19,942 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-18 06:34:19,942 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:19,942 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-18 06:34:19,943 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:19,943 INFO L87 Difference]: Start difference. First operand 114 states and 119 transitions. Second operand 8 states. [2020-07-18 06:34:20,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:20,705 INFO L93 Difference]: Finished difference Result 170 states and 179 transitions. [2020-07-18 06:34:20,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-18 06:34:20,706 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 90 [2020-07-18 06:34:20,706 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:20,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:20,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 156 transitions. [2020-07-18 06:34:20,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:20,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 156 transitions. [2020-07-18 06:34:20,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 156 transitions. [2020-07-18 06:34:20,885 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 156 edges. 156 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:20,889 INFO L225 Difference]: With dead ends: 170 [2020-07-18 06:34:20,889 INFO L226 Difference]: Without dead ends: 126 [2020-07-18 06:34:20,890 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=87, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:20,891 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2020-07-18 06:34:20,989 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 121. [2020-07-18 06:34:20,989 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:20,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand 121 states. [2020-07-18 06:34:20,990 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 121 states. [2020-07-18 06:34:20,990 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 121 states. [2020-07-18 06:34:20,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:20,995 INFO L93 Difference]: Finished difference Result 126 states and 131 transitions. [2020-07-18 06:34:20,995 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 131 transitions. [2020-07-18 06:34:20,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:20,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:20,995 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 126 states. [2020-07-18 06:34:20,995 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 126 states. [2020-07-18 06:34:20,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:20,999 INFO L93 Difference]: Finished difference Result 126 states and 131 transitions. [2020-07-18 06:34:20,999 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 131 transitions. [2020-07-18 06:34:21,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:21,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:21,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:21,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:21,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 121 states. [2020-07-18 06:34:21,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 126 transitions. [2020-07-18 06:34:21,004 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 126 transitions. Word has length 90 [2020-07-18 06:34:21,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:21,005 INFO L479 AbstractCegarLoop]: Abstraction has 121 states and 126 transitions. [2020-07-18 06:34:21,005 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-18 06:34:21,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 121 states and 126 transitions. [2020-07-18 06:34:21,144 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:21,144 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 126 transitions. [2020-07-18 06:34:21,145 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2020-07-18 06:34:21,146 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:21,146 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:21,146 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-18 06:34:21,146 INFO L427 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:21,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:21,147 INFO L82 PathProgramCache]: Analyzing trace with hash 2012961241, now seen corresponding path program 7 times [2020-07-18 06:34:21,147 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:21,147 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1874108950] [2020-07-18 06:34:21,147 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:21,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:21,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:21,312 INFO L280 TraceCheckUtils]: 0: Hoare triple {6107#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6093#true} is VALID [2020-07-18 06:34:21,312 INFO L280 TraceCheckUtils]: 1: Hoare triple {6093#true} #valid := #valid[0 := 0]; {6093#true} is VALID [2020-07-18 06:34:21,312 INFO L280 TraceCheckUtils]: 2: Hoare triple {6093#true} assume 0 < #StackHeapBarrier; {6093#true} is VALID [2020-07-18 06:34:21,312 INFO L280 TraceCheckUtils]: 3: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:21,312 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6093#true} {6093#true} #186#return; {6093#true} is VALID [2020-07-18 06:34:21,313 INFO L263 TraceCheckUtils]: 0: Hoare triple {6093#true} call ULTIMATE.init(); {6107#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:21,313 INFO L280 TraceCheckUtils]: 1: Hoare triple {6107#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6093#true} is VALID [2020-07-18 06:34:21,313 INFO L280 TraceCheckUtils]: 2: Hoare triple {6093#true} #valid := #valid[0 := 0]; {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 3: Hoare triple {6093#true} assume 0 < #StackHeapBarrier; {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 4: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6093#true} {6093#true} #186#return; {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L263 TraceCheckUtils]: 6: Hoare triple {6093#true} call #t~ret14 := main(); {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 7: Hoare triple {6093#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 8: Hoare triple {6093#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 9: Hoare triple {6093#true} havoc ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,314 INFO L280 TraceCheckUtils]: 10: Hoare triple {6093#true} havoc ~j~0; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 11: Hoare triple {6093#true} havoc ~nc_A~0; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 12: Hoare triple {6093#true} havoc ~nc_B~0; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 13: Hoare triple {6093#true} ~found~0 := 0; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 14: Hoare triple {6093#true} ~i~0 := 0; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 15: Hoare triple {6093#true} assume !!(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 16: Hoare triple {6093#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6093#true} is VALID [2020-07-18 06:34:21,315 INFO L280 TraceCheckUtils]: 17: Hoare triple {6093#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 18: Hoare triple {6093#true} havoc #t~nondet1; {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 19: Hoare triple {6093#true} #t~post0 := ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 20: Hoare triple {6093#true} ~i~0 := 1 + #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 21: Hoare triple {6093#true} havoc #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 22: Hoare triple {6093#true} assume !!(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 23: Hoare triple {6093#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 24: Hoare triple {6093#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6093#true} is VALID [2020-07-18 06:34:21,316 INFO L280 TraceCheckUtils]: 25: Hoare triple {6093#true} havoc #t~nondet1; {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 26: Hoare triple {6093#true} #t~post0 := ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 27: Hoare triple {6093#true} ~i~0 := 1 + #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 28: Hoare triple {6093#true} havoc #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 29: Hoare triple {6093#true} assume !!(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 30: Hoare triple {6093#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 31: Hoare triple {6093#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6093#true} is VALID [2020-07-18 06:34:21,317 INFO L280 TraceCheckUtils]: 32: Hoare triple {6093#true} havoc #t~nondet1; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 33: Hoare triple {6093#true} #t~post0 := ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 34: Hoare triple {6093#true} ~i~0 := 1 + #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 35: Hoare triple {6093#true} havoc #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 36: Hoare triple {6093#true} assume !!(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 37: Hoare triple {6093#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 38: Hoare triple {6093#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 39: Hoare triple {6093#true} havoc #t~nondet1; {6093#true} is VALID [2020-07-18 06:34:21,318 INFO L280 TraceCheckUtils]: 40: Hoare triple {6093#true} #t~post0 := ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 41: Hoare triple {6093#true} ~i~0 := 1 + #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 42: Hoare triple {6093#true} havoc #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 43: Hoare triple {6093#true} assume !!(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 44: Hoare triple {6093#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 45: Hoare triple {6093#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 46: Hoare triple {6093#true} havoc #t~nondet1; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 47: Hoare triple {6093#true} #t~post0 := ~i~0; {6093#true} is VALID [2020-07-18 06:34:21,319 INFO L280 TraceCheckUtils]: 48: Hoare triple {6093#true} ~i~0 := 1 + #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,320 INFO L280 TraceCheckUtils]: 49: Hoare triple {6093#true} havoc #t~post0; {6093#true} is VALID [2020-07-18 06:34:21,320 INFO L280 TraceCheckUtils]: 50: Hoare triple {6093#true} assume !(~i~0 < 5); {6093#true} is VALID [2020-07-18 06:34:21,320 INFO L280 TraceCheckUtils]: 51: Hoare triple {6093#true} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {6093#true} is VALID [2020-07-18 06:34:21,320 INFO L280 TraceCheckUtils]: 52: Hoare triple {6093#true} assume !!(0 == #t~mem2); {6093#true} is VALID [2020-07-18 06:34:21,320 INFO L280 TraceCheckUtils]: 53: Hoare triple {6093#true} havoc #t~mem2; {6093#true} is VALID [2020-07-18 06:34:21,321 INFO L280 TraceCheckUtils]: 54: Hoare triple {6093#true} ~i~0 := 0; {6100#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:21,321 INFO L280 TraceCheckUtils]: 55: Hoare triple {6100#(= 0 main_~i~0)} assume !!(~i~0 < 5); {6100#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:21,322 INFO L280 TraceCheckUtils]: 56: Hoare triple {6100#(= 0 main_~i~0)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {6100#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:21,322 INFO L280 TraceCheckUtils]: 57: Hoare triple {6100#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {6100#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:21,322 INFO L280 TraceCheckUtils]: 58: Hoare triple {6100#(= 0 main_~i~0)} havoc #t~nondet4; {6100#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:21,323 INFO L280 TraceCheckUtils]: 59: Hoare triple {6100#(= 0 main_~i~0)} #t~post3 := ~i~0; {6101#(= |main_#t~post3| 0)} is VALID [2020-07-18 06:34:21,323 INFO L280 TraceCheckUtils]: 60: Hoare triple {6101#(= |main_#t~post3| 0)} ~i~0 := 1 + #t~post3; {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,324 INFO L280 TraceCheckUtils]: 61: Hoare triple {6102#(<= main_~i~0 1)} havoc #t~post3; {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,324 INFO L280 TraceCheckUtils]: 62: Hoare triple {6102#(<= main_~i~0 1)} assume !!(~i~0 < 5); {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,324 INFO L280 TraceCheckUtils]: 63: Hoare triple {6102#(<= main_~i~0 1)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,325 INFO L280 TraceCheckUtils]: 64: Hoare triple {6102#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,325 INFO L280 TraceCheckUtils]: 65: Hoare triple {6102#(<= main_~i~0 1)} havoc #t~nondet4; {6102#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:21,326 INFO L280 TraceCheckUtils]: 66: Hoare triple {6102#(<= main_~i~0 1)} #t~post3 := ~i~0; {6103#(<= |main_#t~post3| 1)} is VALID [2020-07-18 06:34:21,327 INFO L280 TraceCheckUtils]: 67: Hoare triple {6103#(<= |main_#t~post3| 1)} ~i~0 := 1 + #t~post3; {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,328 INFO L280 TraceCheckUtils]: 68: Hoare triple {6104#(<= main_~i~0 2)} havoc #t~post3; {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,328 INFO L280 TraceCheckUtils]: 69: Hoare triple {6104#(<= main_~i~0 2)} assume !!(~i~0 < 5); {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,329 INFO L280 TraceCheckUtils]: 70: Hoare triple {6104#(<= main_~i~0 2)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,329 INFO L280 TraceCheckUtils]: 71: Hoare triple {6104#(<= main_~i~0 2)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,329 INFO L280 TraceCheckUtils]: 72: Hoare triple {6104#(<= main_~i~0 2)} havoc #t~nondet4; {6104#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:21,330 INFO L280 TraceCheckUtils]: 73: Hoare triple {6104#(<= main_~i~0 2)} #t~post3 := ~i~0; {6105#(<= |main_#t~post3| 2)} is VALID [2020-07-18 06:34:21,330 INFO L280 TraceCheckUtils]: 74: Hoare triple {6105#(<= |main_#t~post3| 2)} ~i~0 := 1 + #t~post3; {6106#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:21,331 INFO L280 TraceCheckUtils]: 75: Hoare triple {6106#(<= main_~i~0 3)} havoc #t~post3; {6106#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:21,331 INFO L280 TraceCheckUtils]: 76: Hoare triple {6106#(<= main_~i~0 3)} assume !(~i~0 < 5); {6094#false} is VALID [2020-07-18 06:34:21,332 INFO L280 TraceCheckUtils]: 77: Hoare triple {6094#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {6094#false} is VALID [2020-07-18 06:34:21,332 INFO L280 TraceCheckUtils]: 78: Hoare triple {6094#false} assume !!(0 == #t~mem5); {6094#false} is VALID [2020-07-18 06:34:21,332 INFO L280 TraceCheckUtils]: 79: Hoare triple {6094#false} havoc #t~mem5; {6094#false} is VALID [2020-07-18 06:34:21,332 INFO L280 TraceCheckUtils]: 80: Hoare triple {6094#false} ~nc_A~0 := 0; {6094#false} is VALID [2020-07-18 06:34:21,332 INFO L280 TraceCheckUtils]: 81: Hoare triple {6094#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 82: Hoare triple {6094#false} assume !(0 != #t~mem6); {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 83: Hoare triple {6094#false} havoc #t~mem6; {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 84: Hoare triple {6094#false} ~nc_B~0 := 0; {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 85: Hoare triple {6094#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 86: Hoare triple {6094#false} assume !(0 != #t~mem8); {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 87: Hoare triple {6094#false} havoc #t~mem8; {6094#false} is VALID [2020-07-18 06:34:21,333 INFO L280 TraceCheckUtils]: 88: Hoare triple {6094#false} assume !!(~nc_B~0 >= ~nc_A~0); {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 89: Hoare triple {6094#false} ~j~0 := 0; {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 90: Hoare triple {6094#false} ~i~0 := ~j~0; {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 91: Hoare triple {6094#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 92: Hoare triple {6094#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L263 TraceCheckUtils]: 93: Hoare triple {6094#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 94: Hoare triple {6094#false} ~cond := #in~cond; {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 95: Hoare triple {6094#false} assume 0 == ~cond; {6094#false} is VALID [2020-07-18 06:34:21,334 INFO L280 TraceCheckUtils]: 96: Hoare triple {6094#false} assume !false; {6094#false} is VALID [2020-07-18 06:34:21,339 INFO L134 CoverageAnalysis]: Checked inductivity of 99 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2020-07-18 06:34:21,339 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1874108950] [2020-07-18 06:34:21,339 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:21,340 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2020-07-18 06:34:21,340 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1137323754] [2020-07-18 06:34:21,340 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 97 [2020-07-18 06:34:21,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:21,341 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-18 06:34:21,416 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:21,416 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-18 06:34:21,416 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:21,417 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-18 06:34:21,417 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2020-07-18 06:34:21,418 INFO L87 Difference]: Start difference. First operand 121 states and 126 transitions. Second operand 10 states. [2020-07-18 06:34:22,393 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:22,394 INFO L93 Difference]: Finished difference Result 177 states and 186 transitions. [2020-07-18 06:34:22,394 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 06:34:22,394 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 97 [2020-07-18 06:34:22,395 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:22,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:22,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 163 transitions. [2020-07-18 06:34:22,405 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:22,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 163 transitions. [2020-07-18 06:34:22,412 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 163 transitions. [2020-07-18 06:34:22,594 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:22,597 INFO L225 Difference]: With dead ends: 177 [2020-07-18 06:34:22,597 INFO L226 Difference]: Without dead ends: 133 [2020-07-18 06:34:22,598 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2020-07-18 06:34:22,598 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2020-07-18 06:34:22,709 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 128. [2020-07-18 06:34:22,709 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:22,709 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand 128 states. [2020-07-18 06:34:22,709 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand 128 states. [2020-07-18 06:34:22,709 INFO L87 Difference]: Start difference. First operand 133 states. Second operand 128 states. [2020-07-18 06:34:22,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:22,721 INFO L93 Difference]: Finished difference Result 133 states and 138 transitions. [2020-07-18 06:34:22,722 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 138 transitions. [2020-07-18 06:34:22,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:22,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:22,723 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand 133 states. [2020-07-18 06:34:22,723 INFO L87 Difference]: Start difference. First operand 128 states. Second operand 133 states. [2020-07-18 06:34:22,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:22,728 INFO L93 Difference]: Finished difference Result 133 states and 138 transitions. [2020-07-18 06:34:22,728 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 138 transitions. [2020-07-18 06:34:22,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:22,728 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:22,729 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:22,729 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:22,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 128 states. [2020-07-18 06:34:22,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 133 transitions. [2020-07-18 06:34:22,734 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 133 transitions. Word has length 97 [2020-07-18 06:34:22,734 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:22,734 INFO L479 AbstractCegarLoop]: Abstraction has 128 states and 133 transitions. [2020-07-18 06:34:22,734 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-18 06:34:22,735 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 128 states and 133 transitions. [2020-07-18 06:34:22,891 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:22,892 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 133 transitions. [2020-07-18 06:34:22,893 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2020-07-18 06:34:22,893 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:22,893 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:22,893 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-18 06:34:22,894 INFO L427 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:22,894 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:22,894 INFO L82 PathProgramCache]: Analyzing trace with hash 1354290195, now seen corresponding path program 8 times [2020-07-18 06:34:22,894 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:22,895 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [143093215] [2020-07-18 06:34:22,895 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:22,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:23,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:23,189 INFO L280 TraceCheckUtils]: 0: Hoare triple {7014#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6998#true} is VALID [2020-07-18 06:34:23,189 INFO L280 TraceCheckUtils]: 1: Hoare triple {6998#true} #valid := #valid[0 := 0]; {6998#true} is VALID [2020-07-18 06:34:23,189 INFO L280 TraceCheckUtils]: 2: Hoare triple {6998#true} assume 0 < #StackHeapBarrier; {6998#true} is VALID [2020-07-18 06:34:23,190 INFO L280 TraceCheckUtils]: 3: Hoare triple {6998#true} assume true; {6998#true} is VALID [2020-07-18 06:34:23,190 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6998#true} {6998#true} #186#return; {6998#true} is VALID [2020-07-18 06:34:23,191 INFO L263 TraceCheckUtils]: 0: Hoare triple {6998#true} call ULTIMATE.init(); {7014#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:23,191 INFO L280 TraceCheckUtils]: 1: Hoare triple {7014#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6998#true} is VALID [2020-07-18 06:34:23,192 INFO L280 TraceCheckUtils]: 2: Hoare triple {6998#true} #valid := #valid[0 := 0]; {6998#true} is VALID [2020-07-18 06:34:23,192 INFO L280 TraceCheckUtils]: 3: Hoare triple {6998#true} assume 0 < #StackHeapBarrier; {6998#true} is VALID [2020-07-18 06:34:23,192 INFO L280 TraceCheckUtils]: 4: Hoare triple {6998#true} assume true; {6998#true} is VALID [2020-07-18 06:34:23,192 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6998#true} {6998#true} #186#return; {6998#true} is VALID [2020-07-18 06:34:23,193 INFO L263 TraceCheckUtils]: 6: Hoare triple {6998#true} call #t~ret14 := main(); {6998#true} is VALID [2020-07-18 06:34:23,193 INFO L280 TraceCheckUtils]: 7: Hoare triple {6998#true} SUMMARY for call ~#string_A~0.base, ~#string_A~0.offset := #Ultimate.allocOnStack(5); srcloc: mainENTRY {6998#true} is VALID [2020-07-18 06:34:23,193 INFO L280 TraceCheckUtils]: 8: Hoare triple {6998#true} SUMMARY for call ~#string_B~0.base, ~#string_B~0.offset := #Ultimate.allocOnStack(5); srcloc: L20 {6998#true} is VALID [2020-07-18 06:34:23,193 INFO L280 TraceCheckUtils]: 9: Hoare triple {6998#true} havoc ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,194 INFO L280 TraceCheckUtils]: 10: Hoare triple {6998#true} havoc ~j~0; {6998#true} is VALID [2020-07-18 06:34:23,194 INFO L280 TraceCheckUtils]: 11: Hoare triple {6998#true} havoc ~nc_A~0; {6998#true} is VALID [2020-07-18 06:34:23,194 INFO L280 TraceCheckUtils]: 12: Hoare triple {6998#true} havoc ~nc_B~0; {6998#true} is VALID [2020-07-18 06:34:23,194 INFO L280 TraceCheckUtils]: 13: Hoare triple {6998#true} ~found~0 := 0; {6998#true} is VALID [2020-07-18 06:34:23,195 INFO L280 TraceCheckUtils]: 14: Hoare triple {6998#true} ~i~0 := 0; {6998#true} is VALID [2020-07-18 06:34:23,195 INFO L280 TraceCheckUtils]: 15: Hoare triple {6998#true} assume !!(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,195 INFO L280 TraceCheckUtils]: 16: Hoare triple {6998#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6998#true} is VALID [2020-07-18 06:34:23,195 INFO L280 TraceCheckUtils]: 17: Hoare triple {6998#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6998#true} is VALID [2020-07-18 06:34:23,196 INFO L280 TraceCheckUtils]: 18: Hoare triple {6998#true} havoc #t~nondet1; {6998#true} is VALID [2020-07-18 06:34:23,196 INFO L280 TraceCheckUtils]: 19: Hoare triple {6998#true} #t~post0 := ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,196 INFO L280 TraceCheckUtils]: 20: Hoare triple {6998#true} ~i~0 := 1 + #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,196 INFO L280 TraceCheckUtils]: 21: Hoare triple {6998#true} havoc #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,197 INFO L280 TraceCheckUtils]: 22: Hoare triple {6998#true} assume !!(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,197 INFO L280 TraceCheckUtils]: 23: Hoare triple {6998#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6998#true} is VALID [2020-07-18 06:34:23,197 INFO L280 TraceCheckUtils]: 24: Hoare triple {6998#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6998#true} is VALID [2020-07-18 06:34:23,197 INFO L280 TraceCheckUtils]: 25: Hoare triple {6998#true} havoc #t~nondet1; {6998#true} is VALID [2020-07-18 06:34:23,198 INFO L280 TraceCheckUtils]: 26: Hoare triple {6998#true} #t~post0 := ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,198 INFO L280 TraceCheckUtils]: 27: Hoare triple {6998#true} ~i~0 := 1 + #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,198 INFO L280 TraceCheckUtils]: 28: Hoare triple {6998#true} havoc #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,198 INFO L280 TraceCheckUtils]: 29: Hoare triple {6998#true} assume !!(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,199 INFO L280 TraceCheckUtils]: 30: Hoare triple {6998#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6998#true} is VALID [2020-07-18 06:34:23,199 INFO L280 TraceCheckUtils]: 31: Hoare triple {6998#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6998#true} is VALID [2020-07-18 06:34:23,199 INFO L280 TraceCheckUtils]: 32: Hoare triple {6998#true} havoc #t~nondet1; {6998#true} is VALID [2020-07-18 06:34:23,199 INFO L280 TraceCheckUtils]: 33: Hoare triple {6998#true} #t~post0 := ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,199 INFO L280 TraceCheckUtils]: 34: Hoare triple {6998#true} ~i~0 := 1 + #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,200 INFO L280 TraceCheckUtils]: 35: Hoare triple {6998#true} havoc #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,200 INFO L280 TraceCheckUtils]: 36: Hoare triple {6998#true} assume !!(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,200 INFO L280 TraceCheckUtils]: 37: Hoare triple {6998#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6998#true} is VALID [2020-07-18 06:34:23,200 INFO L280 TraceCheckUtils]: 38: Hoare triple {6998#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6998#true} is VALID [2020-07-18 06:34:23,201 INFO L280 TraceCheckUtils]: 39: Hoare triple {6998#true} havoc #t~nondet1; {6998#true} is VALID [2020-07-18 06:34:23,201 INFO L280 TraceCheckUtils]: 40: Hoare triple {6998#true} #t~post0 := ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,201 INFO L280 TraceCheckUtils]: 41: Hoare triple {6998#true} ~i~0 := 1 + #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,201 INFO L280 TraceCheckUtils]: 42: Hoare triple {6998#true} havoc #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,201 INFO L280 TraceCheckUtils]: 43: Hoare triple {6998#true} assume !!(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,202 INFO L280 TraceCheckUtils]: 44: Hoare triple {6998#true} assume -128 <= #t~nondet1 && #t~nondet1 <= 127; {6998#true} is VALID [2020-07-18 06:34:23,202 INFO L280 TraceCheckUtils]: 45: Hoare triple {6998#true} SUMMARY for call write~int(#t~nondet1, ~#string_A~0.base, ~#string_A~0.offset + ~i~0, 1); srcloc: L25-1 {6998#true} is VALID [2020-07-18 06:34:23,202 INFO L280 TraceCheckUtils]: 46: Hoare triple {6998#true} havoc #t~nondet1; {6998#true} is VALID [2020-07-18 06:34:23,202 INFO L280 TraceCheckUtils]: 47: Hoare triple {6998#true} #t~post0 := ~i~0; {6998#true} is VALID [2020-07-18 06:34:23,203 INFO L280 TraceCheckUtils]: 48: Hoare triple {6998#true} ~i~0 := 1 + #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,205 INFO L280 TraceCheckUtils]: 49: Hoare triple {6998#true} havoc #t~post0; {6998#true} is VALID [2020-07-18 06:34:23,206 INFO L280 TraceCheckUtils]: 50: Hoare triple {6998#true} assume !(~i~0 < 5); {6998#true} is VALID [2020-07-18 06:34:23,206 INFO L280 TraceCheckUtils]: 51: Hoare triple {6998#true} SUMMARY for call #t~mem2 := read~int(~#string_A~0.base, 4 + ~#string_A~0.offset, 1); srcloc: L24-7 {6998#true} is VALID [2020-07-18 06:34:23,206 INFO L280 TraceCheckUtils]: 52: Hoare triple {6998#true} assume !!(0 == #t~mem2); {6998#true} is VALID [2020-07-18 06:34:23,206 INFO L280 TraceCheckUtils]: 53: Hoare triple {6998#true} havoc #t~mem2; {6998#true} is VALID [2020-07-18 06:34:23,209 INFO L280 TraceCheckUtils]: 54: Hoare triple {6998#true} ~i~0 := 0; {7005#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:23,210 INFO L280 TraceCheckUtils]: 55: Hoare triple {7005#(= 0 main_~i~0)} assume !!(~i~0 < 5); {7005#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:23,211 INFO L280 TraceCheckUtils]: 56: Hoare triple {7005#(= 0 main_~i~0)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {7005#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:23,211 INFO L280 TraceCheckUtils]: 57: Hoare triple {7005#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {7005#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:23,212 INFO L280 TraceCheckUtils]: 58: Hoare triple {7005#(= 0 main_~i~0)} havoc #t~nondet4; {7005#(= 0 main_~i~0)} is VALID [2020-07-18 06:34:23,212 INFO L280 TraceCheckUtils]: 59: Hoare triple {7005#(= 0 main_~i~0)} #t~post3 := ~i~0; {7006#(= |main_#t~post3| 0)} is VALID [2020-07-18 06:34:23,213 INFO L280 TraceCheckUtils]: 60: Hoare triple {7006#(= |main_#t~post3| 0)} ~i~0 := 1 + #t~post3; {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,213 INFO L280 TraceCheckUtils]: 61: Hoare triple {7007#(<= main_~i~0 1)} havoc #t~post3; {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,214 INFO L280 TraceCheckUtils]: 62: Hoare triple {7007#(<= main_~i~0 1)} assume !!(~i~0 < 5); {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,214 INFO L280 TraceCheckUtils]: 63: Hoare triple {7007#(<= main_~i~0 1)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,215 INFO L280 TraceCheckUtils]: 64: Hoare triple {7007#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,215 INFO L280 TraceCheckUtils]: 65: Hoare triple {7007#(<= main_~i~0 1)} havoc #t~nondet4; {7007#(<= main_~i~0 1)} is VALID [2020-07-18 06:34:23,216 INFO L280 TraceCheckUtils]: 66: Hoare triple {7007#(<= main_~i~0 1)} #t~post3 := ~i~0; {7008#(<= |main_#t~post3| 1)} is VALID [2020-07-18 06:34:23,218 INFO L280 TraceCheckUtils]: 67: Hoare triple {7008#(<= |main_#t~post3| 1)} ~i~0 := 1 + #t~post3; {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,218 INFO L280 TraceCheckUtils]: 68: Hoare triple {7009#(<= main_~i~0 2)} havoc #t~post3; {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,219 INFO L280 TraceCheckUtils]: 69: Hoare triple {7009#(<= main_~i~0 2)} assume !!(~i~0 < 5); {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,220 INFO L280 TraceCheckUtils]: 70: Hoare triple {7009#(<= main_~i~0 2)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,220 INFO L280 TraceCheckUtils]: 71: Hoare triple {7009#(<= main_~i~0 2)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,221 INFO L280 TraceCheckUtils]: 72: Hoare triple {7009#(<= main_~i~0 2)} havoc #t~nondet4; {7009#(<= main_~i~0 2)} is VALID [2020-07-18 06:34:23,222 INFO L280 TraceCheckUtils]: 73: Hoare triple {7009#(<= main_~i~0 2)} #t~post3 := ~i~0; {7010#(<= |main_#t~post3| 2)} is VALID [2020-07-18 06:34:23,223 INFO L280 TraceCheckUtils]: 74: Hoare triple {7010#(<= |main_#t~post3| 2)} ~i~0 := 1 + #t~post3; {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,223 INFO L280 TraceCheckUtils]: 75: Hoare triple {7011#(<= main_~i~0 3)} havoc #t~post3; {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,224 INFO L280 TraceCheckUtils]: 76: Hoare triple {7011#(<= main_~i~0 3)} assume !!(~i~0 < 5); {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,224 INFO L280 TraceCheckUtils]: 77: Hoare triple {7011#(<= main_~i~0 3)} assume -128 <= #t~nondet4 && #t~nondet4 <= 127; {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,225 INFO L280 TraceCheckUtils]: 78: Hoare triple {7011#(<= main_~i~0 3)} SUMMARY for call write~int(#t~nondet4, ~#string_B~0.base, ~#string_B~0.offset + ~i~0, 1); srcloc: L29-1 {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,225 INFO L280 TraceCheckUtils]: 79: Hoare triple {7011#(<= main_~i~0 3)} havoc #t~nondet4; {7011#(<= main_~i~0 3)} is VALID [2020-07-18 06:34:23,226 INFO L280 TraceCheckUtils]: 80: Hoare triple {7011#(<= main_~i~0 3)} #t~post3 := ~i~0; {7012#(<= |main_#t~post3| 3)} is VALID [2020-07-18 06:34:23,226 INFO L280 TraceCheckUtils]: 81: Hoare triple {7012#(<= |main_#t~post3| 3)} ~i~0 := 1 + #t~post3; {7013#(<= main_~i~0 4)} is VALID [2020-07-18 06:34:23,227 INFO L280 TraceCheckUtils]: 82: Hoare triple {7013#(<= main_~i~0 4)} havoc #t~post3; {7013#(<= main_~i~0 4)} is VALID [2020-07-18 06:34:23,228 INFO L280 TraceCheckUtils]: 83: Hoare triple {7013#(<= main_~i~0 4)} assume !(~i~0 < 5); {6999#false} is VALID [2020-07-18 06:34:23,228 INFO L280 TraceCheckUtils]: 84: Hoare triple {6999#false} SUMMARY for call #t~mem5 := read~int(~#string_B~0.base, 4 + ~#string_B~0.offset, 1); srcloc: L28-7 {6999#false} is VALID [2020-07-18 06:34:23,228 INFO L280 TraceCheckUtils]: 85: Hoare triple {6999#false} assume !!(0 == #t~mem5); {6999#false} is VALID [2020-07-18 06:34:23,228 INFO L280 TraceCheckUtils]: 86: Hoare triple {6999#false} havoc #t~mem5; {6999#false} is VALID [2020-07-18 06:34:23,228 INFO L280 TraceCheckUtils]: 87: Hoare triple {6999#false} ~nc_A~0 := 0; {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 88: Hoare triple {6999#false} SUMMARY for call #t~mem6 := read~int(~#string_A~0.base, ~#string_A~0.offset + ~nc_A~0, 1); srcloc: L33-5 {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 89: Hoare triple {6999#false} assume !(0 != #t~mem6); {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 90: Hoare triple {6999#false} havoc #t~mem6; {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 91: Hoare triple {6999#false} ~nc_B~0 := 0; {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 92: Hoare triple {6999#false} SUMMARY for call #t~mem8 := read~int(~#string_B~0.base, ~#string_B~0.offset + ~nc_B~0, 1); srcloc: L37-5 {6999#false} is VALID [2020-07-18 06:34:23,229 INFO L280 TraceCheckUtils]: 93: Hoare triple {6999#false} assume !(0 != #t~mem8); {6999#false} is VALID [2020-07-18 06:34:23,230 INFO L280 TraceCheckUtils]: 94: Hoare triple {6999#false} havoc #t~mem8; {6999#false} is VALID [2020-07-18 06:34:23,230 INFO L280 TraceCheckUtils]: 95: Hoare triple {6999#false} assume !!(~nc_B~0 >= ~nc_A~0); {6999#false} is VALID [2020-07-18 06:34:23,230 INFO L280 TraceCheckUtils]: 96: Hoare triple {6999#false} ~j~0 := 0; {6999#false} is VALID [2020-07-18 06:34:23,230 INFO L280 TraceCheckUtils]: 97: Hoare triple {6999#false} ~i~0 := ~j~0; {6999#false} is VALID [2020-07-18 06:34:23,230 INFO L280 TraceCheckUtils]: 98: Hoare triple {6999#false} assume !(~i~0 < ~nc_A~0 && ~j~0 < ~nc_B~0); {6999#false} is VALID [2020-07-18 06:34:23,231 INFO L280 TraceCheckUtils]: 99: Hoare triple {6999#false} ~found~0 := ~shiftLeft((if ~j~0 > ~nc_B~0 - 1 then 1 else 0), ~i~0); {6999#false} is VALID [2020-07-18 06:34:23,231 INFO L263 TraceCheckUtils]: 100: Hoare triple {6999#false} call __VERIFIER_assert((if 0 == ~found~0 || 1 == ~found~0 then 1 else 0)); {6999#false} is VALID [2020-07-18 06:34:23,231 INFO L280 TraceCheckUtils]: 101: Hoare triple {6999#false} ~cond := #in~cond; {6999#false} is VALID [2020-07-18 06:34:23,231 INFO L280 TraceCheckUtils]: 102: Hoare triple {6999#false} assume 0 == ~cond; {6999#false} is VALID [2020-07-18 06:34:23,231 INFO L280 TraceCheckUtils]: 103: Hoare triple {6999#false} assume !false; {6999#false} is VALID [2020-07-18 06:34:23,239 INFO L134 CoverageAnalysis]: Checked inductivity of 121 backedges. 0 proven. 46 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2020-07-18 06:34:23,240 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [143093215] [2020-07-18 06:34:23,240 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:23,240 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-18 06:34:23,240 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853525165] [2020-07-18 06:34:23,241 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 104 [2020-07-18 06:34:23,241 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:23,242 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 06:34:23,317 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:23,317 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 06:34:23,318 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:23,318 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 06:34:23,318 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:23,318 INFO L87 Difference]: Start difference. First operand 128 states and 133 transitions. Second operand 12 states. [2020-07-18 06:34:24,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:24,211 INFO L93 Difference]: Finished difference Result 179 states and 188 transitions. [2020-07-18 06:34:24,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-18 06:34:24,211 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 104 [2020-07-18 06:34:24,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:24,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:24,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 165 transitions. [2020-07-18 06:34:24,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:24,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 165 transitions. [2020-07-18 06:34:24,217 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 165 transitions. [2020-07-18 06:34:24,395 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:24,398 INFO L225 Difference]: With dead ends: 179 [2020-07-18 06:34:24,398 INFO L226 Difference]: Without dead ends: 135 [2020-07-18 06:34:24,399 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=125, Invalid=255, Unknown=0, NotChecked=0, Total=380 [2020-07-18 06:34:24,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2020-07-18 06:34:24,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 135. [2020-07-18 06:34:24,533 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:24,534 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand 135 states. [2020-07-18 06:34:24,534 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 135 states. [2020-07-18 06:34:24,534 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 135 states. [2020-07-18 06:34:24,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:24,539 INFO L93 Difference]: Finished difference Result 135 states and 140 transitions. [2020-07-18 06:34:24,539 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 140 transitions. [2020-07-18 06:34:24,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:24,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:24,540 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 135 states. [2020-07-18 06:34:24,540 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 135 states. [2020-07-18 06:34:24,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:24,544 INFO L93 Difference]: Finished difference Result 135 states and 140 transitions. [2020-07-18 06:34:24,545 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 140 transitions. [2020-07-18 06:34:24,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:24,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:24,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:24,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:24,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 135 states. [2020-07-18 06:34:24,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 135 states to 135 states and 140 transitions. [2020-07-18 06:34:24,550 INFO L78 Accepts]: Start accepts. Automaton has 135 states and 140 transitions. Word has length 104 [2020-07-18 06:34:24,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:24,551 INFO L479 AbstractCegarLoop]: Abstraction has 135 states and 140 transitions. [2020-07-18 06:34:24,551 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 06:34:24,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 135 states and 140 transitions. [2020-07-18 06:34:24,715 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:24,715 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 140 transitions. [2020-07-18 06:34:24,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2020-07-18 06:34:24,717 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:24,717 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:24,717 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-18 06:34:24,718 INFO L427 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:24,718 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:24,718 INFO L82 PathProgramCache]: Analyzing trace with hash 1908556953, now seen corresponding path program 9 times [2020-07-18 06:34:24,718 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:24,719 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2095576482] [2020-07-18 06:34:24,719 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:24,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 06:34:24,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 06:34:24,953 INFO L174 FreeRefinementEngine]: Strategy FIXED_PREFERENCES found a feasible trace [2020-07-18 06:34:24,953 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-18 06:34:24,954 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-18 06:34:25,062 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2020-07-18 06:34:25,062 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 06:34:25,062 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 06:34:25,062 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L5 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L5 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L20 has no Hoare annotation [2020-07-18 06:34:25,063 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L-1-1 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L5-1 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L5-3 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L20-1 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2020-07-18 06:34:25,064 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: L8-2 has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: L21 has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: L21-1 has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: L60-1 has no Hoare annotation [2020-07-18 06:34:25,065 WARN L170 areAnnotationChecker]: L21-2 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L20-14 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L21-3 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L20-15 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L20-16 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L24-6 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L24-6 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L24-6 has no Hoare annotation [2020-07-18 06:34:25,066 WARN L170 areAnnotationChecker]: L20-17 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L24-7 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2020-07-18 06:34:25,067 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L26-3 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L25-2 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L26-2 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L24-3 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L20-2 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L28-6 has no Hoare annotation [2020-07-18 06:34:25,068 WARN L170 areAnnotationChecker]: L28-6 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L28-6 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L24-4 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L20-3 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L28-7 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L24-5 has no Hoare annotation [2020-07-18 06:34:25,069 WARN L170 areAnnotationChecker]: L20-4 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L29-1 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L20-5 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L30-3 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L29-2 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L30-2 has no Hoare annotation [2020-07-18 06:34:25,070 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L28-3 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L20-6 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L33-5 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L33-5 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L28-4 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L20-7 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L33-6 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2020-07-18 06:34:25,071 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L28-5 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L20-8 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L37-5 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L37-5 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L33-2 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L33-4 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L20-9 has no Hoare annotation [2020-07-18 06:34:25,072 WARN L170 areAnnotationChecker]: L37-6 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L37-6 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L37-2 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L37-4 has no Hoare annotation [2020-07-18 06:34:25,073 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L20-10 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L43-1 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L34-2 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L20-11 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L46-8 has no Hoare annotation [2020-07-18 06:34:25,074 WARN L170 areAnnotationChecker]: L46-8 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L46-8 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L20-12 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L44-2 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2020-07-18 06:34:25,075 WARN L170 areAnnotationChecker]: L20-13 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-3 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-6 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2020-07-18 06:34:25,076 WARN L170 areAnnotationChecker]: L46-7 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L48-2 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2020-07-18 06:34:25,077 WARN L170 areAnnotationChecker]: L49-2 has no Hoare annotation [2020-07-18 06:34:25,078 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-18 06:34:25,083 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 18.07 06:34:25 BoogieIcfgContainer [2020-07-18 06:34:25,083 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-18 06:34:25,087 INFO L168 Benchmark]: Toolchain (without parser) took 16633.57 ms. Allocated memory was 137.9 MB in the beginning and 383.3 MB in the end (delta: 245.4 MB). Free memory was 103.4 MB in the beginning and 176.1 MB in the end (delta: -72.7 MB). Peak memory consumption was 172.7 MB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,088 INFO L168 Benchmark]: CDTParser took 0.26 ms. Allocated memory is still 137.9 MB. Free memory was 121.4 MB in the beginning and 121.1 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,089 INFO L168 Benchmark]: CACSL2BoogieTranslator took 413.74 ms. Allocated memory is still 137.9 MB. Free memory was 103.0 MB in the beginning and 91.7 MB in the end (delta: 11.3 MB). Peak memory consumption was 11.3 MB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,090 INFO L168 Benchmark]: Boogie Preprocessor took 148.37 ms. Allocated memory was 137.9 MB in the beginning and 201.9 MB in the end (delta: 64.0 MB). Free memory was 91.7 MB in the beginning and 178.7 MB in the end (delta: -87.0 MB). Peak memory consumption was 13.9 MB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,091 INFO L168 Benchmark]: RCFGBuilder took 788.73 ms. Allocated memory is still 201.9 MB. Free memory was 178.7 MB in the beginning and 138.9 MB in the end (delta: 39.8 MB). Peak memory consumption was 39.8 MB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,091 INFO L168 Benchmark]: TraceAbstraction took 15274.31 ms. Allocated memory was 201.9 MB in the beginning and 383.3 MB in the end (delta: 181.4 MB). Free memory was 138.2 MB in the beginning and 176.1 MB in the end (delta: -37.9 MB). Peak memory consumption was 143.5 MB. Max. memory is 7.1 GB. [2020-07-18 06:34:25,094 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.26 ms. Allocated memory is still 137.9 MB. Free memory was 121.4 MB in the beginning and 121.1 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 413.74 ms. Allocated memory is still 137.9 MB. Free memory was 103.0 MB in the beginning and 91.7 MB in the end (delta: 11.3 MB). Peak memory consumption was 11.3 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 148.37 ms. Allocated memory was 137.9 MB in the beginning and 201.9 MB in the end (delta: 64.0 MB). Free memory was 91.7 MB in the beginning and 178.7 MB in the end (delta: -87.0 MB). Peak memory consumption was 13.9 MB. Max. memory is 7.1 GB. * RCFGBuilder took 788.73 ms. Allocated memory is still 201.9 MB. Free memory was 178.7 MB in the beginning and 138.9 MB in the end (delta: 39.8 MB). Peak memory consumption was 39.8 MB. Max. memory is 7.1 GB. * TraceAbstraction took 15274.31 ms. Allocated memory was 201.9 MB in the beginning and 383.3 MB in the end (delta: 181.4 MB). Free memory was 138.2 MB in the beginning and 176.1 MB in the end (delta: -37.9 MB). Peak memory consumption was 143.5 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 9]: Unable to prove that call of __VERIFIER_error() unreachable Unable to prove that call of __VERIFIER_error() unreachable Reason: overapproximation of shiftLeft at line 58. Possible FailurePath: [L20] char string_A[5], string_B[5]; VAL [string_A={7:0}, string_B={6:0}] [L21] int i, j, nc_A, nc_B, found=0; VAL [found=0, string_A={7:0}, string_B={6:0}] [L24] i=0 VAL [found=0, i=0, string_A={7:0}, string_B={6:0}] [L24] COND TRUE i<5 VAL [found=0, i=0, string_A={7:0}, string_B={6:0}] [L25] string_A[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=0, found=0, i=0, string_A={7:0}, string_B={6:0}] [L24] i++ VAL [found=0, i=1, string_A={7:0}, string_B={6:0}] [L24] COND TRUE i<5 VAL [found=0, i=1, string_A={7:0}, string_B={6:0}] [L25] string_A[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=-2, found=0, i=1, string_A={7:0}, string_B={6:0}] [L24] i++ VAL [found=0, i=2, string_A={7:0}, string_B={6:0}] [L24] COND TRUE i<5 VAL [found=0, i=2, string_A={7:0}, string_B={6:0}] [L25] string_A[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=-3, found=0, i=2, string_A={7:0}, string_B={6:0}] [L24] i++ VAL [found=0, i=3, string_A={7:0}, string_B={6:0}] [L24] COND TRUE i<5 VAL [found=0, i=3, string_A={7:0}, string_B={6:0}] [L25] string_A[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=-4, found=0, i=3, string_A={7:0}, string_B={6:0}] [L24] i++ VAL [found=0, i=4, string_A={7:0}, string_B={6:0}] [L24] COND TRUE i<5 VAL [found=0, i=4, string_A={7:0}, string_B={6:0}] [L25] string_A[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=0, found=0, i=4, string_A={7:0}, string_B={6:0}] [L24] i++ VAL [found=0, i=5, string_A={7:0}, string_B={6:0}] [L24] COND FALSE !(i<5) VAL [found=0, i=5, string_A={7:0}, string_B={6:0}] [L26] EXPR string_A[5 -1] VAL [found=0, i=5, string_A={7:0}, string_A[5 -1]=0, string_B={6:0}] [L26] COND FALSE !(!(string_A[5 -1]=='\0')) VAL [found=0, i=5, string_A={7:0}, string_A[5 -1]=0, string_B={6:0}] [L28] i=0 VAL [found=0, i=0, string_A={7:0}, string_B={6:0}] [L28] COND TRUE i<5 VAL [found=0, i=0, string_A={7:0}, string_B={6:0}] [L29] string_B[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=0, found=0, i=0, string_A={7:0}, string_B={6:0}] [L28] i++ VAL [found=0, i=1, string_A={7:0}, string_B={6:0}] [L28] COND TRUE i<5 VAL [found=0, i=1, string_A={7:0}, string_B={6:0}] [L29] string_B[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=-7, found=0, i=1, string_A={7:0}, string_B={6:0}] [L28] i++ VAL [found=0, i=2, string_A={7:0}, string_B={6:0}] [L28] COND TRUE i<5 VAL [found=0, i=2, string_A={7:0}, string_B={6:0}] [L29] string_B[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=8, found=0, i=2, string_A={7:0}, string_B={6:0}] [L28] i++ VAL [found=0, i=3, string_A={7:0}, string_B={6:0}] [L28] COND TRUE i<5 VAL [found=0, i=3, string_A={7:0}, string_B={6:0}] [L29] string_B[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=-8, found=0, i=3, string_A={7:0}, string_B={6:0}] [L28] i++ VAL [found=0, i=4, string_A={7:0}, string_B={6:0}] [L28] COND TRUE i<5 VAL [found=0, i=4, string_A={7:0}, string_B={6:0}] [L29] string_B[i]=__VERIFIER_nondet_char() VAL [__VERIFIER_nondet_char()=0, found=0, i=4, string_A={7:0}, string_B={6:0}] [L28] i++ VAL [found=0, i=5, string_A={7:0}, string_B={6:0}] [L28] COND FALSE !(i<5) VAL [found=0, i=5, string_A={7:0}, string_B={6:0}] [L30] EXPR string_B[5 -1] VAL [found=0, i=5, string_A={7:0}, string_B={6:0}, string_B[5 -1]=0] [L30] COND FALSE !(!(string_B[5 -1]=='\0')) VAL [found=0, i=5, string_A={7:0}, string_B={6:0}, string_B[5 -1]=0] [L32] nc_A = 0 VAL [found=0, i=5, nc_A=0, string_A={7:0}, string_B={6:0}] [L33] EXPR string_A[nc_A] VAL [found=0, i=5, nc_A=0, string_A={7:0}, string_A[nc_A]=0, string_B={6:0}] [L33] COND FALSE !(string_A[nc_A]!='\0') VAL [found=0, i=5, nc_A=0, string_A={7:0}, string_A[nc_A]=0, string_B={6:0}] [L36] nc_B = 0 VAL [found=0, i=5, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}] [L37] EXPR string_B[nc_B] VAL [found=0, i=5, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}, string_B[nc_B]=0] [L37] COND FALSE !(string_B[nc_B]!='\0') VAL [found=0, i=5, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}, string_B[nc_B]=0] [L40] COND FALSE !(!(nc_B >= nc_A)) VAL [found=0, i=5, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}] [L43] EXPR j=0 VAL [found=0, i=5, j=0, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}] [L43] i=j=0 VAL [found=0, i=0, j=0, nc_A=0, nc_B=0, string_A={7:0}, string_B={6:0}] [L44] COND FALSE !((inc_B-1)<