/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 -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/ldv-regression/test25-2.c -------------------------------------------------------------------------------- This is Ultimate 0.1.25-8fc6572 [2020-07-10 19:02:34,769 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-10 19:02:34,772 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-10 19:02:34,795 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-10 19:02:34,795 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-10 19:02:34,797 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-10 19:02:34,799 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-10 19:02:34,809 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-10 19:02:34,811 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-10 19:02:34,812 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-10 19:02:34,813 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-10 19:02:34,814 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-10 19:02:34,814 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-10 19:02:34,817 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-10 19:02:34,820 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-10 19:02:34,822 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-10 19:02:34,824 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-10 19:02:34,827 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-10 19:02:34,828 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-10 19:02:34,835 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-10 19:02:34,841 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-10 19:02:34,842 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-10 19:02:34,843 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-10 19:02:34,844 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-10 19:02:34,847 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-10 19:02:34,847 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-10 19:02:34,847 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-10 19:02:34,850 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-10 19:02:34,851 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-10 19:02:34,853 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-10 19:02:34,853 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-10 19:02:34,854 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-10 19:02:34,856 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-10 19:02:34,857 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-10 19:02:34,859 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-10 19:02:34,860 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-10 19:02:34,863 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-10 19:02:34,863 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-10 19:02:34,863 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-10 19:02:34,864 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-10 19:02:34,866 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-10 19:02:34,866 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-10 19:02:34,895 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-10 19:02:34,895 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-10 19:02:34,896 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-10 19:02:34,897 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-10 19:02:34,897 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-10 19:02:34,897 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-10 19:02:34,897 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-10 19:02:34,900 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-10 19:02:34,901 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-10 19:02:34,901 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-10 19:02:34,901 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-10 19:02:34,901 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-10 19:02:34,901 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-10 19:02:34,902 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-10 19:02:34,902 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-10 19:02:34,902 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-10 19:02:34,902 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-10 19:02:34,902 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-10 19:02:34,903 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-10 19:02:34,903 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-10 19:02:34,903 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-10 19:02:34,905 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-10 19:02:34,905 INFO L138 SettingsManager]: * Use separate solver for trace checks=false [2020-07-10 19:02:35,186 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-10 19:02:35,203 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-10 19:02:35,206 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-10 19:02:35,208 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-10 19:02:35,209 INFO L275 PluginConnector]: CDTParser initialized [2020-07-10 19:02:35,209 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-regression/test25-2.c [2020-07-10 19:02:35,291 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3a639da68/94552e3aaa8c4a4bbeff75ae823e382b/FLAGb0ae871d2 [2020-07-10 19:02:35,815 INFO L306 CDTParser]: Found 1 translation units. [2020-07-10 19:02:35,816 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-regression/test25-2.c [2020-07-10 19:02:35,824 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3a639da68/94552e3aaa8c4a4bbeff75ae823e382b/FLAGb0ae871d2 [2020-07-10 19:02:36,144 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3a639da68/94552e3aaa8c4a4bbeff75ae823e382b [2020-07-10 19:02:36,155 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-10 19:02:36,157 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-10 19:02:36,158 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-10 19:02:36,158 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-10 19:02:36,161 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-10 19:02:36,163 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,166 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@323aba55 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36, skipping insertion in model container [2020-07-10 19:02:36,166 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,174 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-10 19:02:36,192 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-10 19:02:36,452 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 19:02:36,466 INFO L203 MainTranslator]: Completed pre-run [2020-07-10 19:02:36,609 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 19:02:36,635 INFO L208 MainTranslator]: Completed translation [2020-07-10 19:02:36,635 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36 WrapperNode [2020-07-10 19:02:36,635 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-10 19:02:36,636 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-10 19:02:36,636 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-10 19:02:36,637 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-10 19:02:36,651 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,652 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,663 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,664 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,690 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,696 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,698 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (1/1) ... [2020-07-10 19:02:36,700 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-10 19:02:36,701 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-10 19:02:36,701 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-10 19:02:36,701 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-10 19:02:36,702 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (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-10 19:02:36,772 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-10 19:02:36,772 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-10 19:02:36,773 INFO L138 BoogieDeclarations]: Found implementation of procedure check [2020-07-10 19:02:36,773 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-10 19:02:36,773 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-10 19:02:36,773 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-10 19:02:36,773 INFO L130 BoogieDeclarations]: Found specification of procedure check [2020-07-10 19:02:36,773 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-10 19:02:36,774 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-10 19:02:36,774 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-10 19:02:36,774 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-10 19:02:36,775 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-10 19:02:36,775 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-10 19:02:36,776 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-10 19:02:36,776 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-10 19:02:36,777 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-10 19:02:37,321 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-10 19:02:37,322 INFO L295 CfgBuilder]: Removed 2 assume(true) statements. [2020-07-10 19:02:37,327 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 07:02:37 BoogieIcfgContainer [2020-07-10 19:02:37,327 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-10 19:02:37,329 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-10 19:02:37,329 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-10 19:02:37,332 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-10 19:02:37,333 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.07 07:02:36" (1/3) ... [2020-07-10 19:02:37,334 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1a28e995 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 07:02:37, skipping insertion in model container [2020-07-10 19:02:37,334 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 07:02:36" (2/3) ... [2020-07-10 19:02:37,335 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1a28e995 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 07:02:37, skipping insertion in model container [2020-07-10 19:02:37,335 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 07:02:37" (3/3) ... [2020-07-10 19:02:37,337 INFO L109 eAbstractionObserver]: Analyzing ICFG test25-2.c [2020-07-10 19:02:37,349 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:AcceleratedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-10 19:02:37,359 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-10 19:02:37,376 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-10 19:02:37,403 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-10 19:02:37,404 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-10 19:02:37,404 INFO L377 AbstractCegarLoop]: Compute interpolants for AcceleratedInterpolation [2020-07-10 19:02:37,404 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-10 19:02:37,404 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-10 19:02:37,405 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-10 19:02:37,405 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-10 19:02:37,405 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-10 19:02:37,425 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states. [2020-07-10 19:02:37,438 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2020-07-10 19:02:37,438 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:37,440 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] [2020-07-10 19:02:37,440 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:37,448 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:37,448 INFO L82 PathProgramCache]: Analyzing trace with hash 144198137, now seen corresponding path program 1 times [2020-07-10 19:02:37,459 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:37,459 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [526515918] [2020-07-10 19:02:37,460 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:37,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:37,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:37,708 INFO L280 TraceCheckUtils]: 0: Hoare triple {96#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {80#true} is VALID [2020-07-10 19:02:37,708 INFO L280 TraceCheckUtils]: 1: Hoare triple {80#true} #valid := #valid[0 := 0]; {80#true} is VALID [2020-07-10 19:02:37,709 INFO L280 TraceCheckUtils]: 2: Hoare triple {80#true} assume 0 < #StackHeapBarrier; {80#true} is VALID [2020-07-10 19:02:37,710 INFO L280 TraceCheckUtils]: 3: Hoare triple {80#true} assume true; {80#true} is VALID [2020-07-10 19:02:37,711 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {80#true} {80#true} #110#return; {80#true} is VALID [2020-07-10 19:02:37,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:37,732 INFO L280 TraceCheckUtils]: 0: Hoare triple {80#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {80#true} is VALID [2020-07-10 19:02:37,733 INFO L280 TraceCheckUtils]: 1: Hoare triple {80#true} ~i := #in~i; {80#true} is VALID [2020-07-10 19:02:37,734 INFO L280 TraceCheckUtils]: 2: Hoare triple {80#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {80#true} is VALID [2020-07-10 19:02:37,734 INFO L280 TraceCheckUtils]: 3: Hoare triple {80#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {80#true} is VALID [2020-07-10 19:02:37,735 INFO L280 TraceCheckUtils]: 4: Hoare triple {80#true} #res := (if #t~mem1 == ~i then 1 else 0); {80#true} is VALID [2020-07-10 19:02:37,735 INFO L280 TraceCheckUtils]: 5: Hoare triple {80#true} havoc #t~mem0.base, #t~mem0.offset; {80#true} is VALID [2020-07-10 19:02:37,735 INFO L280 TraceCheckUtils]: 6: Hoare triple {80#true} havoc #t~mem1; {80#true} is VALID [2020-07-10 19:02:37,736 INFO L280 TraceCheckUtils]: 7: Hoare triple {80#true} assume true; {80#true} is VALID [2020-07-10 19:02:37,736 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {80#true} {81#false} #114#return; {81#false} is VALID [2020-07-10 19:02:37,739 INFO L263 TraceCheckUtils]: 0: Hoare triple {80#true} call ULTIMATE.init(); {96#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:37,739 INFO L280 TraceCheckUtils]: 1: Hoare triple {96#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {80#true} is VALID [2020-07-10 19:02:37,740 INFO L280 TraceCheckUtils]: 2: Hoare triple {80#true} #valid := #valid[0 := 0]; {80#true} is VALID [2020-07-10 19:02:37,740 INFO L280 TraceCheckUtils]: 3: Hoare triple {80#true} assume 0 < #StackHeapBarrier; {80#true} is VALID [2020-07-10 19:02:37,741 INFO L280 TraceCheckUtils]: 4: Hoare triple {80#true} assume true; {80#true} is VALID [2020-07-10 19:02:37,741 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {80#true} {80#true} #110#return; {80#true} is VALID [2020-07-10 19:02:37,741 INFO L263 TraceCheckUtils]: 6: Hoare triple {80#true} call #t~ret13 := main(); {80#true} is VALID [2020-07-10 19:02:37,742 INFO L280 TraceCheckUtils]: 7: Hoare triple {80#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {80#true} is VALID [2020-07-10 19:02:37,742 INFO L280 TraceCheckUtils]: 8: Hoare triple {80#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {80#true} is VALID [2020-07-10 19:02:37,743 INFO L280 TraceCheckUtils]: 9: Hoare triple {80#true} havoc ~i~0; {80#true} is VALID [2020-07-10 19:02:37,743 INFO L280 TraceCheckUtils]: 10: Hoare triple {80#true} havoc ~pa~0.base, ~pa~0.offset; {80#true} is VALID [2020-07-10 19:02:37,744 INFO L280 TraceCheckUtils]: 11: Hoare triple {80#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {80#true} is VALID [2020-07-10 19:02:37,744 INFO L280 TraceCheckUtils]: 12: Hoare triple {80#true} ~i~0 := #t~nondet2; {80#true} is VALID [2020-07-10 19:02:37,745 INFO L280 TraceCheckUtils]: 13: Hoare triple {80#true} havoc #t~nondet2; {80#true} is VALID [2020-07-10 19:02:37,745 INFO L280 TraceCheckUtils]: 14: Hoare triple {80#true} ~j~0 := 0; {80#true} is VALID [2020-07-10 19:02:37,747 INFO L280 TraceCheckUtils]: 15: Hoare triple {80#true} assume !true; {81#false} is VALID [2020-07-10 19:02:37,747 INFO L280 TraceCheckUtils]: 16: Hoare triple {81#false} assume ~i~0 >= 0 && ~i~0 < 10; {81#false} is VALID [2020-07-10 19:02:37,747 INFO L280 TraceCheckUtils]: 17: Hoare triple {81#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {81#false} is VALID [2020-07-10 19:02:37,748 INFO L280 TraceCheckUtils]: 18: Hoare triple {81#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {81#false} is VALID [2020-07-10 19:02:37,748 INFO L280 TraceCheckUtils]: 19: Hoare triple {81#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {81#false} is VALID [2020-07-10 19:02:37,749 INFO L280 TraceCheckUtils]: 20: Hoare triple {81#false} havoc #t~mem6.base, #t~mem6.offset; {81#false} is VALID [2020-07-10 19:02:37,749 INFO L280 TraceCheckUtils]: 21: Hoare triple {81#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {81#false} is VALID [2020-07-10 19:02:37,750 INFO L280 TraceCheckUtils]: 22: Hoare triple {81#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {81#false} is VALID [2020-07-10 19:02:37,750 INFO L280 TraceCheckUtils]: 23: Hoare triple {81#false} assume #t~mem8 > 0; {81#false} is VALID [2020-07-10 19:02:37,751 INFO L280 TraceCheckUtils]: 24: Hoare triple {81#false} havoc #t~mem7.base, #t~mem7.offset; {81#false} is VALID [2020-07-10 19:02:37,751 INFO L280 TraceCheckUtils]: 25: Hoare triple {81#false} havoc #t~mem8; {81#false} is VALID [2020-07-10 19:02:37,752 INFO L280 TraceCheckUtils]: 26: Hoare triple {81#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {81#false} is VALID [2020-07-10 19:02:37,752 INFO L280 TraceCheckUtils]: 27: Hoare triple {81#false} ~i~0 := #t~mem9 - 10; {81#false} is VALID [2020-07-10 19:02:37,752 INFO L280 TraceCheckUtils]: 28: Hoare triple {81#false} havoc #t~mem9; {81#false} is VALID [2020-07-10 19:02:37,753 INFO L280 TraceCheckUtils]: 29: Hoare triple {81#false} assume !true; {81#false} is VALID [2020-07-10 19:02:37,753 INFO L263 TraceCheckUtils]: 30: Hoare triple {81#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {80#true} is VALID [2020-07-10 19:02:37,754 INFO L280 TraceCheckUtils]: 31: Hoare triple {80#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {80#true} is VALID [2020-07-10 19:02:37,754 INFO L280 TraceCheckUtils]: 32: Hoare triple {80#true} ~i := #in~i; {80#true} is VALID [2020-07-10 19:02:37,755 INFO L280 TraceCheckUtils]: 33: Hoare triple {80#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {80#true} is VALID [2020-07-10 19:02:37,755 INFO L280 TraceCheckUtils]: 34: Hoare triple {80#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {80#true} is VALID [2020-07-10 19:02:37,755 INFO L280 TraceCheckUtils]: 35: Hoare triple {80#true} #res := (if #t~mem1 == ~i then 1 else 0); {80#true} is VALID [2020-07-10 19:02:37,756 INFO L280 TraceCheckUtils]: 36: Hoare triple {80#true} havoc #t~mem0.base, #t~mem0.offset; {80#true} is VALID [2020-07-10 19:02:37,756 INFO L280 TraceCheckUtils]: 37: Hoare triple {80#true} havoc #t~mem1; {80#true} is VALID [2020-07-10 19:02:37,757 INFO L280 TraceCheckUtils]: 38: Hoare triple {80#true} assume true; {80#true} is VALID [2020-07-10 19:02:37,757 INFO L275 TraceCheckUtils]: 39: Hoare quadruple {80#true} {81#false} #114#return; {81#false} is VALID [2020-07-10 19:02:37,757 INFO L280 TraceCheckUtils]: 40: Hoare triple {81#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {81#false} is VALID [2020-07-10 19:02:37,758 INFO L280 TraceCheckUtils]: 41: Hoare triple {81#false} assume 0 == #t~ret12; {81#false} is VALID [2020-07-10 19:02:37,758 INFO L280 TraceCheckUtils]: 42: Hoare triple {81#false} havoc #t~ret12; {81#false} is VALID [2020-07-10 19:02:37,759 INFO L280 TraceCheckUtils]: 43: Hoare triple {81#false} assume !false; {81#false} is VALID [2020-07-10 19:02:37,769 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-10 19:02:37,769 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:37,771 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [526515918] [2020-07-10 19:02:37,774 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:37,774 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-10 19:02:37,774 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1930451188] [2020-07-10 19:02:37,782 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 44 [2020-07-10 19:02:37,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:37,792 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-10 19:02:37,876 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:37,876 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-10 19:02:37,877 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:37,886 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-10 19:02:37,887 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-10 19:02:37,890 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 3 states. [2020-07-10 19:02:38,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:38,315 INFO L93 Difference]: Finished difference Result 124 states and 134 transitions. [2020-07-10 19:02:38,315 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-10 19:02:38,315 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 44 [2020-07-10 19:02:38,316 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:38,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-10 19:02:38,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 134 transitions. [2020-07-10 19:02:38,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-10 19:02:38,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 134 transitions. [2020-07-10 19:02:38,343 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 134 transitions. [2020-07-10 19:02:38,520 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:38,545 INFO L225 Difference]: With dead ends: 124 [2020-07-10 19:02:38,545 INFO L226 Difference]: Without dead ends: 60 [2020-07-10 19:02:38,550 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 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-10 19:02:38,572 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2020-07-10 19:02:38,643 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2020-07-10 19:02:38,644 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:38,644 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand 60 states. [2020-07-10 19:02:38,645 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand 60 states. [2020-07-10 19:02:38,645 INFO L87 Difference]: Start difference. First operand 60 states. Second operand 60 states. [2020-07-10 19:02:38,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:38,651 INFO L93 Difference]: Finished difference Result 60 states and 61 transitions. [2020-07-10 19:02:38,652 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 61 transitions. [2020-07-10 19:02:38,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:38,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:38,653 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand 60 states. [2020-07-10 19:02:38,654 INFO L87 Difference]: Start difference. First operand 60 states. Second operand 60 states. [2020-07-10 19:02:38,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:38,660 INFO L93 Difference]: Finished difference Result 60 states and 61 transitions. [2020-07-10 19:02:38,660 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 61 transitions. [2020-07-10 19:02:38,661 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:38,661 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:38,661 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:38,661 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:38,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2020-07-10 19:02:38,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 61 transitions. [2020-07-10 19:02:38,668 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 61 transitions. Word has length 44 [2020-07-10 19:02:38,668 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:38,669 INFO L479 AbstractCegarLoop]: Abstraction has 60 states and 61 transitions. [2020-07-10 19:02:38,669 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-10 19:02:38,669 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 60 states and 61 transitions. [2020-07-10 19:02:38,760 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:38,761 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 61 transitions. [2020-07-10 19:02:38,763 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2020-07-10 19:02:38,763 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:38,763 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] [2020-07-10 19:02:38,763 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-10 19:02:38,764 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:38,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:38,764 INFO L82 PathProgramCache]: Analyzing trace with hash 608042528, now seen corresponding path program 1 times [2020-07-10 19:02:38,765 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:38,765 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [133648942] [2020-07-10 19:02:38,765 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:38,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:38,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:38,888 INFO L280 TraceCheckUtils]: 0: Hoare triple {604#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {587#true} is VALID [2020-07-10 19:02:38,889 INFO L280 TraceCheckUtils]: 1: Hoare triple {587#true} #valid := #valid[0 := 0]; {587#true} is VALID [2020-07-10 19:02:38,889 INFO L280 TraceCheckUtils]: 2: Hoare triple {587#true} assume 0 < #StackHeapBarrier; {587#true} is VALID [2020-07-10 19:02:38,889 INFO L280 TraceCheckUtils]: 3: Hoare triple {587#true} assume true; {587#true} is VALID [2020-07-10 19:02:38,890 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {587#true} {587#true} #110#return; {587#true} is VALID [2020-07-10 19:02:38,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:38,906 INFO L280 TraceCheckUtils]: 0: Hoare triple {587#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {587#true} is VALID [2020-07-10 19:02:38,906 INFO L280 TraceCheckUtils]: 1: Hoare triple {587#true} ~i := #in~i; {587#true} is VALID [2020-07-10 19:02:38,907 INFO L280 TraceCheckUtils]: 2: Hoare triple {587#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {587#true} is VALID [2020-07-10 19:02:38,907 INFO L280 TraceCheckUtils]: 3: Hoare triple {587#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {587#true} is VALID [2020-07-10 19:02:38,907 INFO L280 TraceCheckUtils]: 4: Hoare triple {587#true} #res := (if #t~mem1 == ~i then 1 else 0); {587#true} is VALID [2020-07-10 19:02:38,908 INFO L280 TraceCheckUtils]: 5: Hoare triple {587#true} havoc #t~mem0.base, #t~mem0.offset; {587#true} is VALID [2020-07-10 19:02:38,908 INFO L280 TraceCheckUtils]: 6: Hoare triple {587#true} havoc #t~mem1; {587#true} is VALID [2020-07-10 19:02:38,908 INFO L280 TraceCheckUtils]: 7: Hoare triple {587#true} assume true; {587#true} is VALID [2020-07-10 19:02:38,909 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {587#true} {588#false} #114#return; {588#false} is VALID [2020-07-10 19:02:38,910 INFO L263 TraceCheckUtils]: 0: Hoare triple {587#true} call ULTIMATE.init(); {604#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:38,911 INFO L280 TraceCheckUtils]: 1: Hoare triple {604#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {587#true} is VALID [2020-07-10 19:02:38,911 INFO L280 TraceCheckUtils]: 2: Hoare triple {587#true} #valid := #valid[0 := 0]; {587#true} is VALID [2020-07-10 19:02:38,912 INFO L280 TraceCheckUtils]: 3: Hoare triple {587#true} assume 0 < #StackHeapBarrier; {587#true} is VALID [2020-07-10 19:02:38,912 INFO L280 TraceCheckUtils]: 4: Hoare triple {587#true} assume true; {587#true} is VALID [2020-07-10 19:02:38,912 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {587#true} {587#true} #110#return; {587#true} is VALID [2020-07-10 19:02:38,912 INFO L263 TraceCheckUtils]: 6: Hoare triple {587#true} call #t~ret13 := main(); {587#true} is VALID [2020-07-10 19:02:38,913 INFO L280 TraceCheckUtils]: 7: Hoare triple {587#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {587#true} is VALID [2020-07-10 19:02:38,913 INFO L280 TraceCheckUtils]: 8: Hoare triple {587#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {587#true} is VALID [2020-07-10 19:02:38,913 INFO L280 TraceCheckUtils]: 9: Hoare triple {587#true} havoc ~i~0; {587#true} is VALID [2020-07-10 19:02:38,914 INFO L280 TraceCheckUtils]: 10: Hoare triple {587#true} havoc ~pa~0.base, ~pa~0.offset; {587#true} is VALID [2020-07-10 19:02:38,917 INFO L280 TraceCheckUtils]: 11: Hoare triple {587#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {587#true} is VALID [2020-07-10 19:02:38,918 INFO L280 TraceCheckUtils]: 12: Hoare triple {587#true} ~i~0 := #t~nondet2; {587#true} is VALID [2020-07-10 19:02:38,918 INFO L280 TraceCheckUtils]: 13: Hoare triple {587#true} havoc #t~nondet2; {587#true} is VALID [2020-07-10 19:02:38,920 INFO L280 TraceCheckUtils]: 14: Hoare triple {587#true} ~j~0 := 0; {594#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:38,921 INFO L280 TraceCheckUtils]: 15: Hoare triple {594#(= 0 main_~j~0)} assume !(~j~0 < 10); {588#false} is VALID [2020-07-10 19:02:38,921 INFO L280 TraceCheckUtils]: 16: Hoare triple {588#false} assume ~i~0 >= 0 && ~i~0 < 10; {588#false} is VALID [2020-07-10 19:02:38,921 INFO L280 TraceCheckUtils]: 17: Hoare triple {588#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {588#false} is VALID [2020-07-10 19:02:38,922 INFO L280 TraceCheckUtils]: 18: Hoare triple {588#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {588#false} is VALID [2020-07-10 19:02:38,922 INFO L280 TraceCheckUtils]: 19: Hoare triple {588#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {588#false} is VALID [2020-07-10 19:02:38,922 INFO L280 TraceCheckUtils]: 20: Hoare triple {588#false} havoc #t~mem6.base, #t~mem6.offset; {588#false} is VALID [2020-07-10 19:02:38,923 INFO L280 TraceCheckUtils]: 21: Hoare triple {588#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {588#false} is VALID [2020-07-10 19:02:38,923 INFO L280 TraceCheckUtils]: 22: Hoare triple {588#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {588#false} is VALID [2020-07-10 19:02:38,924 INFO L280 TraceCheckUtils]: 23: Hoare triple {588#false} assume #t~mem8 > 0; {588#false} is VALID [2020-07-10 19:02:38,924 INFO L280 TraceCheckUtils]: 24: Hoare triple {588#false} havoc #t~mem7.base, #t~mem7.offset; {588#false} is VALID [2020-07-10 19:02:38,924 INFO L280 TraceCheckUtils]: 25: Hoare triple {588#false} havoc #t~mem8; {588#false} is VALID [2020-07-10 19:02:38,925 INFO L280 TraceCheckUtils]: 26: Hoare triple {588#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {588#false} is VALID [2020-07-10 19:02:38,925 INFO L280 TraceCheckUtils]: 27: Hoare triple {588#false} ~i~0 := #t~mem9 - 10; {588#false} is VALID [2020-07-10 19:02:38,925 INFO L280 TraceCheckUtils]: 28: Hoare triple {588#false} havoc #t~mem9; {588#false} is VALID [2020-07-10 19:02:38,926 INFO L280 TraceCheckUtils]: 29: Hoare triple {588#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {588#false} is VALID [2020-07-10 19:02:38,926 INFO L280 TraceCheckUtils]: 30: Hoare triple {588#false} assume !(~i~0 < #t~mem10); {588#false} is VALID [2020-07-10 19:02:38,927 INFO L280 TraceCheckUtils]: 31: Hoare triple {588#false} havoc #t~mem10; {588#false} is VALID [2020-07-10 19:02:38,931 INFO L263 TraceCheckUtils]: 32: Hoare triple {588#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {587#true} is VALID [2020-07-10 19:02:38,931 INFO L280 TraceCheckUtils]: 33: Hoare triple {587#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {587#true} is VALID [2020-07-10 19:02:38,931 INFO L280 TraceCheckUtils]: 34: Hoare triple {587#true} ~i := #in~i; {587#true} is VALID [2020-07-10 19:02:38,932 INFO L280 TraceCheckUtils]: 35: Hoare triple {587#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {587#true} is VALID [2020-07-10 19:02:38,932 INFO L280 TraceCheckUtils]: 36: Hoare triple {587#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {587#true} is VALID [2020-07-10 19:02:38,932 INFO L280 TraceCheckUtils]: 37: Hoare triple {587#true} #res := (if #t~mem1 == ~i then 1 else 0); {587#true} is VALID [2020-07-10 19:02:38,933 INFO L280 TraceCheckUtils]: 38: Hoare triple {587#true} havoc #t~mem0.base, #t~mem0.offset; {587#true} is VALID [2020-07-10 19:02:38,934 INFO L280 TraceCheckUtils]: 39: Hoare triple {587#true} havoc #t~mem1; {587#true} is VALID [2020-07-10 19:02:38,935 INFO L280 TraceCheckUtils]: 40: Hoare triple {587#true} assume true; {587#true} is VALID [2020-07-10 19:02:38,936 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {587#true} {588#false} #114#return; {588#false} is VALID [2020-07-10 19:02:38,936 INFO L280 TraceCheckUtils]: 42: Hoare triple {588#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {588#false} is VALID [2020-07-10 19:02:38,936 INFO L280 TraceCheckUtils]: 43: Hoare triple {588#false} assume 0 == #t~ret12; {588#false} is VALID [2020-07-10 19:02:38,937 INFO L280 TraceCheckUtils]: 44: Hoare triple {588#false} havoc #t~ret12; {588#false} is VALID [2020-07-10 19:02:38,937 INFO L280 TraceCheckUtils]: 45: Hoare triple {588#false} assume !false; {588#false} is VALID [2020-07-10 19:02:38,943 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-10 19:02:38,943 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:38,944 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [133648942] [2020-07-10 19:02:38,945 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:38,945 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-10 19:02:38,946 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1422268354] [2020-07-10 19:02:38,948 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 46 [2020-07-10 19:02:38,950 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:38,951 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-10 19:02:39,016 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:39,016 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-10 19:02:39,017 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:39,017 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-10 19:02:39,017 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-10 19:02:39,017 INFO L87 Difference]: Start difference. First operand 60 states and 61 transitions. Second operand 4 states. [2020-07-10 19:02:39,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:39,410 INFO L93 Difference]: Finished difference Result 104 states and 106 transitions. [2020-07-10 19:02:39,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-10 19:02:39,410 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 46 [2020-07-10 19:02:39,410 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:39,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-10 19:02:39,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 106 transitions. [2020-07-10 19:02:39,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-10 19:02:39,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 106 transitions. [2020-07-10 19:02:39,427 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 106 transitions. [2020-07-10 19:02:39,566 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:39,570 INFO L225 Difference]: With dead ends: 104 [2020-07-10 19:02:39,570 INFO L226 Difference]: Without dead ends: 69 [2020-07-10 19:02:39,572 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 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-10 19:02:39,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2020-07-10 19:02:39,625 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 61. [2020-07-10 19:02:39,625 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:39,625 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 61 states. [2020-07-10 19:02:39,625 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 61 states. [2020-07-10 19:02:39,626 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 61 states. [2020-07-10 19:02:39,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:39,629 INFO L93 Difference]: Finished difference Result 69 states and 70 transitions. [2020-07-10 19:02:39,630 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 70 transitions. [2020-07-10 19:02:39,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:39,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:39,631 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 69 states. [2020-07-10 19:02:39,631 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 69 states. [2020-07-10 19:02:39,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:39,635 INFO L93 Difference]: Finished difference Result 69 states and 70 transitions. [2020-07-10 19:02:39,635 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 70 transitions. [2020-07-10 19:02:39,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:39,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:39,637 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:39,637 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:39,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2020-07-10 19:02:39,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 62 transitions. [2020-07-10 19:02:39,640 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 62 transitions. Word has length 46 [2020-07-10 19:02:39,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:39,640 INFO L479 AbstractCegarLoop]: Abstraction has 61 states and 62 transitions. [2020-07-10 19:02:39,640 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-10 19:02:39,641 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 61 states and 62 transitions. [2020-07-10 19:02:39,708 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-10 19:02:39,708 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 62 transitions. [2020-07-10 19:02:39,710 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2020-07-10 19:02:39,710 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:39,710 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, 1] [2020-07-10 19:02:39,710 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-10 19:02:39,711 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:39,711 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:39,711 INFO L82 PathProgramCache]: Analyzing trace with hash 1644606330, now seen corresponding path program 1 times [2020-07-10 19:02:39,711 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:39,712 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [626771040] [2020-07-10 19:02:39,712 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:39,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:39,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:39,909 INFO L280 TraceCheckUtils]: 0: Hoare triple {1094#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1075#true} is VALID [2020-07-10 19:02:39,910 INFO L280 TraceCheckUtils]: 1: Hoare triple {1075#true} #valid := #valid[0 := 0]; {1075#true} is VALID [2020-07-10 19:02:39,911 INFO L280 TraceCheckUtils]: 2: Hoare triple {1075#true} assume 0 < #StackHeapBarrier; {1075#true} is VALID [2020-07-10 19:02:39,912 INFO L280 TraceCheckUtils]: 3: Hoare triple {1075#true} assume true; {1075#true} is VALID [2020-07-10 19:02:39,912 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1075#true} {1075#true} #110#return; {1075#true} is VALID [2020-07-10 19:02:39,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:39,934 INFO L280 TraceCheckUtils]: 0: Hoare triple {1075#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {1075#true} is VALID [2020-07-10 19:02:39,935 INFO L280 TraceCheckUtils]: 1: Hoare triple {1075#true} ~i := #in~i; {1075#true} is VALID [2020-07-10 19:02:39,935 INFO L280 TraceCheckUtils]: 2: Hoare triple {1075#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {1075#true} is VALID [2020-07-10 19:02:39,935 INFO L280 TraceCheckUtils]: 3: Hoare triple {1075#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {1075#true} is VALID [2020-07-10 19:02:39,936 INFO L280 TraceCheckUtils]: 4: Hoare triple {1075#true} #res := (if #t~mem1 == ~i then 1 else 0); {1075#true} is VALID [2020-07-10 19:02:39,936 INFO L280 TraceCheckUtils]: 5: Hoare triple {1075#true} havoc #t~mem0.base, #t~mem0.offset; {1075#true} is VALID [2020-07-10 19:02:39,936 INFO L280 TraceCheckUtils]: 6: Hoare triple {1075#true} havoc #t~mem1; {1075#true} is VALID [2020-07-10 19:02:39,937 INFO L280 TraceCheckUtils]: 7: Hoare triple {1075#true} assume true; {1075#true} is VALID [2020-07-10 19:02:39,937 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {1075#true} {1076#false} #114#return; {1076#false} is VALID [2020-07-10 19:02:39,940 INFO L263 TraceCheckUtils]: 0: Hoare triple {1075#true} call ULTIMATE.init(); {1094#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:39,940 INFO L280 TraceCheckUtils]: 1: Hoare triple {1094#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1075#true} is VALID [2020-07-10 19:02:39,940 INFO L280 TraceCheckUtils]: 2: Hoare triple {1075#true} #valid := #valid[0 := 0]; {1075#true} is VALID [2020-07-10 19:02:39,941 INFO L280 TraceCheckUtils]: 3: Hoare triple {1075#true} assume 0 < #StackHeapBarrier; {1075#true} is VALID [2020-07-10 19:02:39,941 INFO L280 TraceCheckUtils]: 4: Hoare triple {1075#true} assume true; {1075#true} is VALID [2020-07-10 19:02:39,941 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1075#true} {1075#true} #110#return; {1075#true} is VALID [2020-07-10 19:02:39,941 INFO L263 TraceCheckUtils]: 6: Hoare triple {1075#true} call #t~ret13 := main(); {1075#true} is VALID [2020-07-10 19:02:39,941 INFO L280 TraceCheckUtils]: 7: Hoare triple {1075#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 8: Hoare triple {1075#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 9: Hoare triple {1075#true} havoc ~i~0; {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 10: Hoare triple {1075#true} havoc ~pa~0.base, ~pa~0.offset; {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 11: Hoare triple {1075#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 12: Hoare triple {1075#true} ~i~0 := #t~nondet2; {1075#true} is VALID [2020-07-10 19:02:39,942 INFO L280 TraceCheckUtils]: 13: Hoare triple {1075#true} havoc #t~nondet2; {1075#true} is VALID [2020-07-10 19:02:39,943 INFO L280 TraceCheckUtils]: 14: Hoare triple {1075#true} ~j~0 := 0; {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,944 INFO L280 TraceCheckUtils]: 15: Hoare triple {1082#(= 0 main_~j~0)} assume !!(~j~0 < 10); {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,944 INFO L280 TraceCheckUtils]: 16: Hoare triple {1082#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,945 INFO L280 TraceCheckUtils]: 17: Hoare triple {1082#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,945 INFO L280 TraceCheckUtils]: 18: Hoare triple {1082#(= 0 main_~j~0)} havoc #t~nondet4; {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,946 INFO L280 TraceCheckUtils]: 19: Hoare triple {1082#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,946 INFO L280 TraceCheckUtils]: 20: Hoare triple {1082#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,947 INFO L280 TraceCheckUtils]: 21: Hoare triple {1082#(= 0 main_~j~0)} havoc #t~nondet5; {1082#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:39,947 INFO L280 TraceCheckUtils]: 22: Hoare triple {1082#(= 0 main_~j~0)} #t~post3 := ~j~0; {1083#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:39,948 INFO L280 TraceCheckUtils]: 23: Hoare triple {1083#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {1084#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:39,948 INFO L280 TraceCheckUtils]: 24: Hoare triple {1084#(<= main_~j~0 1)} havoc #t~post3; {1084#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:39,949 INFO L280 TraceCheckUtils]: 25: Hoare triple {1084#(<= main_~j~0 1)} assume !(~j~0 < 10); {1076#false} is VALID [2020-07-10 19:02:39,949 INFO L280 TraceCheckUtils]: 26: Hoare triple {1076#false} assume ~i~0 >= 0 && ~i~0 < 10; {1076#false} is VALID [2020-07-10 19:02:39,950 INFO L280 TraceCheckUtils]: 27: Hoare triple {1076#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {1076#false} is VALID [2020-07-10 19:02:39,950 INFO L280 TraceCheckUtils]: 28: Hoare triple {1076#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {1076#false} is VALID [2020-07-10 19:02:39,950 INFO L280 TraceCheckUtils]: 29: Hoare triple {1076#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {1076#false} is VALID [2020-07-10 19:02:39,950 INFO L280 TraceCheckUtils]: 30: Hoare triple {1076#false} havoc #t~mem6.base, #t~mem6.offset; {1076#false} is VALID [2020-07-10 19:02:39,950 INFO L280 TraceCheckUtils]: 31: Hoare triple {1076#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {1076#false} is VALID [2020-07-10 19:02:39,951 INFO L280 TraceCheckUtils]: 32: Hoare triple {1076#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {1076#false} is VALID [2020-07-10 19:02:39,951 INFO L280 TraceCheckUtils]: 33: Hoare triple {1076#false} assume #t~mem8 > 0; {1076#false} is VALID [2020-07-10 19:02:39,951 INFO L280 TraceCheckUtils]: 34: Hoare triple {1076#false} havoc #t~mem7.base, #t~mem7.offset; {1076#false} is VALID [2020-07-10 19:02:39,951 INFO L280 TraceCheckUtils]: 35: Hoare triple {1076#false} havoc #t~mem8; {1076#false} is VALID [2020-07-10 19:02:39,951 INFO L280 TraceCheckUtils]: 36: Hoare triple {1076#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {1076#false} is VALID [2020-07-10 19:02:39,952 INFO L280 TraceCheckUtils]: 37: Hoare triple {1076#false} ~i~0 := #t~mem9 - 10; {1076#false} is VALID [2020-07-10 19:02:39,952 INFO L280 TraceCheckUtils]: 38: Hoare triple {1076#false} havoc #t~mem9; {1076#false} is VALID [2020-07-10 19:02:39,952 INFO L280 TraceCheckUtils]: 39: Hoare triple {1076#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {1076#false} is VALID [2020-07-10 19:02:39,953 INFO L280 TraceCheckUtils]: 40: Hoare triple {1076#false} assume !(~i~0 < #t~mem10); {1076#false} is VALID [2020-07-10 19:02:39,953 INFO L280 TraceCheckUtils]: 41: Hoare triple {1076#false} havoc #t~mem10; {1076#false} is VALID [2020-07-10 19:02:39,953 INFO L263 TraceCheckUtils]: 42: Hoare triple {1076#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {1075#true} is VALID [2020-07-10 19:02:39,953 INFO L280 TraceCheckUtils]: 43: Hoare triple {1075#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {1075#true} is VALID [2020-07-10 19:02:39,954 INFO L280 TraceCheckUtils]: 44: Hoare triple {1075#true} ~i := #in~i; {1075#true} is VALID [2020-07-10 19:02:39,954 INFO L280 TraceCheckUtils]: 45: Hoare triple {1075#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {1075#true} is VALID [2020-07-10 19:02:39,954 INFO L280 TraceCheckUtils]: 46: Hoare triple {1075#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {1075#true} is VALID [2020-07-10 19:02:39,954 INFO L280 TraceCheckUtils]: 47: Hoare triple {1075#true} #res := (if #t~mem1 == ~i then 1 else 0); {1075#true} is VALID [2020-07-10 19:02:39,955 INFO L280 TraceCheckUtils]: 48: Hoare triple {1075#true} havoc #t~mem0.base, #t~mem0.offset; {1075#true} is VALID [2020-07-10 19:02:39,955 INFO L280 TraceCheckUtils]: 49: Hoare triple {1075#true} havoc #t~mem1; {1075#true} is VALID [2020-07-10 19:02:39,955 INFO L280 TraceCheckUtils]: 50: Hoare triple {1075#true} assume true; {1075#true} is VALID [2020-07-10 19:02:39,955 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {1075#true} {1076#false} #114#return; {1076#false} is VALID [2020-07-10 19:02:39,956 INFO L280 TraceCheckUtils]: 52: Hoare triple {1076#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {1076#false} is VALID [2020-07-10 19:02:39,956 INFO L280 TraceCheckUtils]: 53: Hoare triple {1076#false} assume 0 == #t~ret12; {1076#false} is VALID [2020-07-10 19:02:39,956 INFO L280 TraceCheckUtils]: 54: Hoare triple {1076#false} havoc #t~ret12; {1076#false} is VALID [2020-07-10 19:02:39,956 INFO L280 TraceCheckUtils]: 55: Hoare triple {1076#false} assume !false; {1076#false} is VALID [2020-07-10 19:02:39,960 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-10 19:02:39,960 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:39,960 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [626771040] [2020-07-10 19:02:39,961 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:39,961 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-10 19:02:39,961 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1373263881] [2020-07-10 19:02:39,962 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 56 [2020-07-10 19:02:39,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:39,962 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-10 19:02:40,018 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:40,018 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-10 19:02:40,018 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:40,019 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-10 19:02:40,019 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-10 19:02:40,019 INFO L87 Difference]: Start difference. First operand 61 states and 62 transitions. Second operand 6 states. [2020-07-10 19:02:40,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:40,524 INFO L93 Difference]: Finished difference Result 114 states and 116 transitions. [2020-07-10 19:02:40,524 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-10 19:02:40,524 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 56 [2020-07-10 19:02:40,525 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:40,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-10 19:02:40,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 116 transitions. [2020-07-10 19:02:40,529 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-10 19:02:40,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 116 transitions. [2020-07-10 19:02:40,533 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 116 transitions. [2020-07-10 19:02:40,649 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:40,653 INFO L225 Difference]: With dead ends: 114 [2020-07-10 19:02:40,653 INFO L226 Difference]: Without dead ends: 79 [2020-07-10 19:02:40,654 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 5 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-10 19:02:40,655 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2020-07-10 19:02:40,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 71. [2020-07-10 19:02:40,726 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:40,726 INFO L82 GeneralOperation]: Start isEquivalent. First operand 79 states. Second operand 71 states. [2020-07-10 19:02:40,726 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand 71 states. [2020-07-10 19:02:40,726 INFO L87 Difference]: Start difference. First operand 79 states. Second operand 71 states. [2020-07-10 19:02:40,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:40,730 INFO L93 Difference]: Finished difference Result 79 states and 80 transitions. [2020-07-10 19:02:40,730 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 80 transitions. [2020-07-10 19:02:40,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:40,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:40,731 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand 79 states. [2020-07-10 19:02:40,731 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 79 states. [2020-07-10 19:02:40,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:40,735 INFO L93 Difference]: Finished difference Result 79 states and 80 transitions. [2020-07-10 19:02:40,736 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 80 transitions. [2020-07-10 19:02:40,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:40,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:40,737 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:40,737 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:40,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 71 states. [2020-07-10 19:02:40,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 72 transitions. [2020-07-10 19:02:40,740 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 72 transitions. Word has length 56 [2020-07-10 19:02:40,741 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:40,741 INFO L479 AbstractCegarLoop]: Abstraction has 71 states and 72 transitions. [2020-07-10 19:02:40,741 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-10 19:02:40,741 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 71 states and 72 transitions. [2020-07-10 19:02:40,812 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:40,813 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 72 transitions. [2020-07-10 19:02:40,815 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2020-07-10 19:02:40,815 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:40,815 INFO L422 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1] [2020-07-10 19:02:40,815 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-10 19:02:40,816 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:40,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:40,816 INFO L82 PathProgramCache]: Analyzing trace with hash 278397012, now seen corresponding path program 2 times [2020-07-10 19:02:40,816 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:40,817 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [895459614] [2020-07-10 19:02:40,817 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:40,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:40,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:40,994 INFO L280 TraceCheckUtils]: 0: Hoare triple {1650#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1629#true} is VALID [2020-07-10 19:02:40,994 INFO L280 TraceCheckUtils]: 1: Hoare triple {1629#true} #valid := #valid[0 := 0]; {1629#true} is VALID [2020-07-10 19:02:40,994 INFO L280 TraceCheckUtils]: 2: Hoare triple {1629#true} assume 0 < #StackHeapBarrier; {1629#true} is VALID [2020-07-10 19:02:40,995 INFO L280 TraceCheckUtils]: 3: Hoare triple {1629#true} assume true; {1629#true} is VALID [2020-07-10 19:02:40,995 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1629#true} {1629#true} #110#return; {1629#true} is VALID [2020-07-10 19:02:40,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:41,003 INFO L280 TraceCheckUtils]: 0: Hoare triple {1629#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {1629#true} is VALID [2020-07-10 19:02:41,003 INFO L280 TraceCheckUtils]: 1: Hoare triple {1629#true} ~i := #in~i; {1629#true} is VALID [2020-07-10 19:02:41,003 INFO L280 TraceCheckUtils]: 2: Hoare triple {1629#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {1629#true} is VALID [2020-07-10 19:02:41,004 INFO L280 TraceCheckUtils]: 3: Hoare triple {1629#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {1629#true} is VALID [2020-07-10 19:02:41,004 INFO L280 TraceCheckUtils]: 4: Hoare triple {1629#true} #res := (if #t~mem1 == ~i then 1 else 0); {1629#true} is VALID [2020-07-10 19:02:41,004 INFO L280 TraceCheckUtils]: 5: Hoare triple {1629#true} havoc #t~mem0.base, #t~mem0.offset; {1629#true} is VALID [2020-07-10 19:02:41,005 INFO L280 TraceCheckUtils]: 6: Hoare triple {1629#true} havoc #t~mem1; {1629#true} is VALID [2020-07-10 19:02:41,005 INFO L280 TraceCheckUtils]: 7: Hoare triple {1629#true} assume true; {1629#true} is VALID [2020-07-10 19:02:41,005 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {1629#true} {1630#false} #114#return; {1630#false} is VALID [2020-07-10 19:02:41,017 INFO L263 TraceCheckUtils]: 0: Hoare triple {1629#true} call ULTIMATE.init(); {1650#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:41,017 INFO L280 TraceCheckUtils]: 1: Hoare triple {1650#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1629#true} is VALID [2020-07-10 19:02:41,018 INFO L280 TraceCheckUtils]: 2: Hoare triple {1629#true} #valid := #valid[0 := 0]; {1629#true} is VALID [2020-07-10 19:02:41,018 INFO L280 TraceCheckUtils]: 3: Hoare triple {1629#true} assume 0 < #StackHeapBarrier; {1629#true} is VALID [2020-07-10 19:02:41,018 INFO L280 TraceCheckUtils]: 4: Hoare triple {1629#true} assume true; {1629#true} is VALID [2020-07-10 19:02:41,019 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1629#true} {1629#true} #110#return; {1629#true} is VALID [2020-07-10 19:02:41,019 INFO L263 TraceCheckUtils]: 6: Hoare triple {1629#true} call #t~ret13 := main(); {1629#true} is VALID [2020-07-10 19:02:41,019 INFO L280 TraceCheckUtils]: 7: Hoare triple {1629#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {1629#true} is VALID [2020-07-10 19:02:41,019 INFO L280 TraceCheckUtils]: 8: Hoare triple {1629#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {1629#true} is VALID [2020-07-10 19:02:41,020 INFO L280 TraceCheckUtils]: 9: Hoare triple {1629#true} havoc ~i~0; {1629#true} is VALID [2020-07-10 19:02:41,020 INFO L280 TraceCheckUtils]: 10: Hoare triple {1629#true} havoc ~pa~0.base, ~pa~0.offset; {1629#true} is VALID [2020-07-10 19:02:41,020 INFO L280 TraceCheckUtils]: 11: Hoare triple {1629#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1629#true} is VALID [2020-07-10 19:02:41,020 INFO L280 TraceCheckUtils]: 12: Hoare triple {1629#true} ~i~0 := #t~nondet2; {1629#true} is VALID [2020-07-10 19:02:41,021 INFO L280 TraceCheckUtils]: 13: Hoare triple {1629#true} havoc #t~nondet2; {1629#true} is VALID [2020-07-10 19:02:41,021 INFO L280 TraceCheckUtils]: 14: Hoare triple {1629#true} ~j~0 := 0; {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,022 INFO L280 TraceCheckUtils]: 15: Hoare triple {1636#(= 0 main_~j~0)} assume !!(~j~0 < 10); {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,023 INFO L280 TraceCheckUtils]: 16: Hoare triple {1636#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,024 INFO L280 TraceCheckUtils]: 17: Hoare triple {1636#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,024 INFO L280 TraceCheckUtils]: 18: Hoare triple {1636#(= 0 main_~j~0)} havoc #t~nondet4; {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,025 INFO L280 TraceCheckUtils]: 19: Hoare triple {1636#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,025 INFO L280 TraceCheckUtils]: 20: Hoare triple {1636#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,026 INFO L280 TraceCheckUtils]: 21: Hoare triple {1636#(= 0 main_~j~0)} havoc #t~nondet5; {1636#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:41,027 INFO L280 TraceCheckUtils]: 22: Hoare triple {1636#(= 0 main_~j~0)} #t~post3 := ~j~0; {1637#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:41,028 INFO L280 TraceCheckUtils]: 23: Hoare triple {1637#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,028 INFO L280 TraceCheckUtils]: 24: Hoare triple {1638#(<= main_~j~0 1)} havoc #t~post3; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,029 INFO L280 TraceCheckUtils]: 25: Hoare triple {1638#(<= main_~j~0 1)} assume !!(~j~0 < 10); {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,030 INFO L280 TraceCheckUtils]: 26: Hoare triple {1638#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,030 INFO L280 TraceCheckUtils]: 27: Hoare triple {1638#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,031 INFO L280 TraceCheckUtils]: 28: Hoare triple {1638#(<= main_~j~0 1)} havoc #t~nondet4; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,032 INFO L280 TraceCheckUtils]: 29: Hoare triple {1638#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,032 INFO L280 TraceCheckUtils]: 30: Hoare triple {1638#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,033 INFO L280 TraceCheckUtils]: 31: Hoare triple {1638#(<= main_~j~0 1)} havoc #t~nondet5; {1638#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:41,034 INFO L280 TraceCheckUtils]: 32: Hoare triple {1638#(<= main_~j~0 1)} #t~post3 := ~j~0; {1639#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:41,035 INFO L280 TraceCheckUtils]: 33: Hoare triple {1639#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {1640#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:41,035 INFO L280 TraceCheckUtils]: 34: Hoare triple {1640#(<= main_~j~0 2)} havoc #t~post3; {1640#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:41,036 INFO L280 TraceCheckUtils]: 35: Hoare triple {1640#(<= main_~j~0 2)} assume !(~j~0 < 10); {1630#false} is VALID [2020-07-10 19:02:41,036 INFO L280 TraceCheckUtils]: 36: Hoare triple {1630#false} assume ~i~0 >= 0 && ~i~0 < 10; {1630#false} is VALID [2020-07-10 19:02:41,037 INFO L280 TraceCheckUtils]: 37: Hoare triple {1630#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {1630#false} is VALID [2020-07-10 19:02:41,037 INFO L280 TraceCheckUtils]: 38: Hoare triple {1630#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {1630#false} is VALID [2020-07-10 19:02:41,037 INFO L280 TraceCheckUtils]: 39: Hoare triple {1630#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {1630#false} is VALID [2020-07-10 19:02:41,037 INFO L280 TraceCheckUtils]: 40: Hoare triple {1630#false} havoc #t~mem6.base, #t~mem6.offset; {1630#false} is VALID [2020-07-10 19:02:41,038 INFO L280 TraceCheckUtils]: 41: Hoare triple {1630#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {1630#false} is VALID [2020-07-10 19:02:41,038 INFO L280 TraceCheckUtils]: 42: Hoare triple {1630#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {1630#false} is VALID [2020-07-10 19:02:41,038 INFO L280 TraceCheckUtils]: 43: Hoare triple {1630#false} assume #t~mem8 > 0; {1630#false} is VALID [2020-07-10 19:02:41,038 INFO L280 TraceCheckUtils]: 44: Hoare triple {1630#false} havoc #t~mem7.base, #t~mem7.offset; {1630#false} is VALID [2020-07-10 19:02:41,039 INFO L280 TraceCheckUtils]: 45: Hoare triple {1630#false} havoc #t~mem8; {1630#false} is VALID [2020-07-10 19:02:41,039 INFO L280 TraceCheckUtils]: 46: Hoare triple {1630#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {1630#false} is VALID [2020-07-10 19:02:41,039 INFO L280 TraceCheckUtils]: 47: Hoare triple {1630#false} ~i~0 := #t~mem9 - 10; {1630#false} is VALID [2020-07-10 19:02:41,039 INFO L280 TraceCheckUtils]: 48: Hoare triple {1630#false} havoc #t~mem9; {1630#false} is VALID [2020-07-10 19:02:41,040 INFO L280 TraceCheckUtils]: 49: Hoare triple {1630#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {1630#false} is VALID [2020-07-10 19:02:41,040 INFO L280 TraceCheckUtils]: 50: Hoare triple {1630#false} assume !(~i~0 < #t~mem10); {1630#false} is VALID [2020-07-10 19:02:41,040 INFO L280 TraceCheckUtils]: 51: Hoare triple {1630#false} havoc #t~mem10; {1630#false} is VALID [2020-07-10 19:02:41,040 INFO L263 TraceCheckUtils]: 52: Hoare triple {1630#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {1629#true} is VALID [2020-07-10 19:02:41,041 INFO L280 TraceCheckUtils]: 53: Hoare triple {1629#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {1629#true} is VALID [2020-07-10 19:02:41,041 INFO L280 TraceCheckUtils]: 54: Hoare triple {1629#true} ~i := #in~i; {1629#true} is VALID [2020-07-10 19:02:41,041 INFO L280 TraceCheckUtils]: 55: Hoare triple {1629#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {1629#true} is VALID [2020-07-10 19:02:41,041 INFO L280 TraceCheckUtils]: 56: Hoare triple {1629#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {1629#true} is VALID [2020-07-10 19:02:41,042 INFO L280 TraceCheckUtils]: 57: Hoare triple {1629#true} #res := (if #t~mem1 == ~i then 1 else 0); {1629#true} is VALID [2020-07-10 19:02:41,042 INFO L280 TraceCheckUtils]: 58: Hoare triple {1629#true} havoc #t~mem0.base, #t~mem0.offset; {1629#true} is VALID [2020-07-10 19:02:41,042 INFO L280 TraceCheckUtils]: 59: Hoare triple {1629#true} havoc #t~mem1; {1629#true} is VALID [2020-07-10 19:02:41,042 INFO L280 TraceCheckUtils]: 60: Hoare triple {1629#true} assume true; {1629#true} is VALID [2020-07-10 19:02:41,043 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {1629#true} {1630#false} #114#return; {1630#false} is VALID [2020-07-10 19:02:41,043 INFO L280 TraceCheckUtils]: 62: Hoare triple {1630#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {1630#false} is VALID [2020-07-10 19:02:41,043 INFO L280 TraceCheckUtils]: 63: Hoare triple {1630#false} assume 0 == #t~ret12; {1630#false} is VALID [2020-07-10 19:02:41,043 INFO L280 TraceCheckUtils]: 64: Hoare triple {1630#false} havoc #t~ret12; {1630#false} is VALID [2020-07-10 19:02:41,044 INFO L280 TraceCheckUtils]: 65: Hoare triple {1630#false} assume !false; {1630#false} is VALID [2020-07-10 19:02:41,047 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-10 19:02:41,048 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:41,048 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [895459614] [2020-07-10 19:02:41,048 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:41,049 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-10 19:02:41,049 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1915123007] [2020-07-10 19:02:41,049 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 66 [2020-07-10 19:02:41,050 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:41,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-10 19:02:41,122 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:41,123 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-10 19:02:41,123 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:41,123 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-10 19:02:41,124 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-10 19:02:41,124 INFO L87 Difference]: Start difference. First operand 71 states and 72 transitions. Second operand 8 states. [2020-07-10 19:02:41,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:41,764 INFO L93 Difference]: Finished difference Result 124 states and 126 transitions. [2020-07-10 19:02:41,764 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-10 19:02:41,764 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 66 [2020-07-10 19:02:41,765 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:41,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 19:02:41,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 126 transitions. [2020-07-10 19:02:41,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-10 19:02:41,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 126 transitions. [2020-07-10 19:02:41,773 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 126 transitions. [2020-07-10 19:02:41,910 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-10 19:02:41,913 INFO L225 Difference]: With dead ends: 124 [2020-07-10 19:02:41,914 INFO L226 Difference]: Without dead ends: 89 [2020-07-10 19:02:41,915 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 5 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-10 19:02:41,915 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2020-07-10 19:02:41,986 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 81. [2020-07-10 19:02:41,987 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:41,987 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand 81 states. [2020-07-10 19:02:41,987 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 81 states. [2020-07-10 19:02:41,987 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 81 states. [2020-07-10 19:02:41,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:41,994 INFO L93 Difference]: Finished difference Result 89 states and 90 transitions. [2020-07-10 19:02:41,994 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 90 transitions. [2020-07-10 19:02:41,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:41,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:41,995 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 89 states. [2020-07-10 19:02:41,996 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 89 states. [2020-07-10 19:02:42,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:42,001 INFO L93 Difference]: Finished difference Result 89 states and 90 transitions. [2020-07-10 19:02:42,001 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 90 transitions. [2020-07-10 19:02:42,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:42,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:42,002 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:42,003 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:42,003 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2020-07-10 19:02:42,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 82 transitions. [2020-07-10 19:02:42,007 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 82 transitions. Word has length 66 [2020-07-10 19:02:42,008 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:42,008 INFO L479 AbstractCegarLoop]: Abstraction has 81 states and 82 transitions. [2020-07-10 19:02:42,018 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-10 19:02:42,018 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 81 states and 82 transitions. [2020-07-10 19:02:42,096 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-10 19:02:42,096 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 82 transitions. [2020-07-10 19:02:42,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2020-07-10 19:02:42,097 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:42,098 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 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, 1, 1, 1, 1, 1] [2020-07-10 19:02:42,098 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-10 19:02:42,098 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:42,098 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:42,099 INFO L82 PathProgramCache]: Analyzing trace with hash 767198382, now seen corresponding path program 3 times [2020-07-10 19:02:42,099 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:42,099 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [756022132] [2020-07-10 19:02:42,099 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:42,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:42,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:42,289 INFO L280 TraceCheckUtils]: 0: Hoare triple {2272#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2249#true} is VALID [2020-07-10 19:02:42,290 INFO L280 TraceCheckUtils]: 1: Hoare triple {2249#true} #valid := #valid[0 := 0]; {2249#true} is VALID [2020-07-10 19:02:42,290 INFO L280 TraceCheckUtils]: 2: Hoare triple {2249#true} assume 0 < #StackHeapBarrier; {2249#true} is VALID [2020-07-10 19:02:42,291 INFO L280 TraceCheckUtils]: 3: Hoare triple {2249#true} assume true; {2249#true} is VALID [2020-07-10 19:02:42,291 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2249#true} {2249#true} #110#return; {2249#true} is VALID [2020-07-10 19:02:42,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:42,297 INFO L280 TraceCheckUtils]: 0: Hoare triple {2249#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {2249#true} is VALID [2020-07-10 19:02:42,298 INFO L280 TraceCheckUtils]: 1: Hoare triple {2249#true} ~i := #in~i; {2249#true} is VALID [2020-07-10 19:02:42,298 INFO L280 TraceCheckUtils]: 2: Hoare triple {2249#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {2249#true} is VALID [2020-07-10 19:02:42,298 INFO L280 TraceCheckUtils]: 3: Hoare triple {2249#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {2249#true} is VALID [2020-07-10 19:02:42,299 INFO L280 TraceCheckUtils]: 4: Hoare triple {2249#true} #res := (if #t~mem1 == ~i then 1 else 0); {2249#true} is VALID [2020-07-10 19:02:42,299 INFO L280 TraceCheckUtils]: 5: Hoare triple {2249#true} havoc #t~mem0.base, #t~mem0.offset; {2249#true} is VALID [2020-07-10 19:02:42,299 INFO L280 TraceCheckUtils]: 6: Hoare triple {2249#true} havoc #t~mem1; {2249#true} is VALID [2020-07-10 19:02:42,299 INFO L280 TraceCheckUtils]: 7: Hoare triple {2249#true} assume true; {2249#true} is VALID [2020-07-10 19:02:42,300 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {2249#true} {2250#false} #114#return; {2250#false} is VALID [2020-07-10 19:02:42,301 INFO L263 TraceCheckUtils]: 0: Hoare triple {2249#true} call ULTIMATE.init(); {2272#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:42,301 INFO L280 TraceCheckUtils]: 1: Hoare triple {2272#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2249#true} is VALID [2020-07-10 19:02:42,302 INFO L280 TraceCheckUtils]: 2: Hoare triple {2249#true} #valid := #valid[0 := 0]; {2249#true} is VALID [2020-07-10 19:02:42,302 INFO L280 TraceCheckUtils]: 3: Hoare triple {2249#true} assume 0 < #StackHeapBarrier; {2249#true} is VALID [2020-07-10 19:02:42,302 INFO L280 TraceCheckUtils]: 4: Hoare triple {2249#true} assume true; {2249#true} is VALID [2020-07-10 19:02:42,302 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2249#true} {2249#true} #110#return; {2249#true} is VALID [2020-07-10 19:02:42,303 INFO L263 TraceCheckUtils]: 6: Hoare triple {2249#true} call #t~ret13 := main(); {2249#true} is VALID [2020-07-10 19:02:42,303 INFO L280 TraceCheckUtils]: 7: Hoare triple {2249#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {2249#true} is VALID [2020-07-10 19:02:42,303 INFO L280 TraceCheckUtils]: 8: Hoare triple {2249#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {2249#true} is VALID [2020-07-10 19:02:42,303 INFO L280 TraceCheckUtils]: 9: Hoare triple {2249#true} havoc ~i~0; {2249#true} is VALID [2020-07-10 19:02:42,304 INFO L280 TraceCheckUtils]: 10: Hoare triple {2249#true} havoc ~pa~0.base, ~pa~0.offset; {2249#true} is VALID [2020-07-10 19:02:42,304 INFO L280 TraceCheckUtils]: 11: Hoare triple {2249#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {2249#true} is VALID [2020-07-10 19:02:42,304 INFO L280 TraceCheckUtils]: 12: Hoare triple {2249#true} ~i~0 := #t~nondet2; {2249#true} is VALID [2020-07-10 19:02:42,304 INFO L280 TraceCheckUtils]: 13: Hoare triple {2249#true} havoc #t~nondet2; {2249#true} is VALID [2020-07-10 19:02:42,305 INFO L280 TraceCheckUtils]: 14: Hoare triple {2249#true} ~j~0 := 0; {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,306 INFO L280 TraceCheckUtils]: 15: Hoare triple {2256#(= 0 main_~j~0)} assume !!(~j~0 < 10); {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,306 INFO L280 TraceCheckUtils]: 16: Hoare triple {2256#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,307 INFO L280 TraceCheckUtils]: 17: Hoare triple {2256#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,308 INFO L280 TraceCheckUtils]: 18: Hoare triple {2256#(= 0 main_~j~0)} havoc #t~nondet4; {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,309 INFO L280 TraceCheckUtils]: 19: Hoare triple {2256#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,309 INFO L280 TraceCheckUtils]: 20: Hoare triple {2256#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,310 INFO L280 TraceCheckUtils]: 21: Hoare triple {2256#(= 0 main_~j~0)} havoc #t~nondet5; {2256#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:42,311 INFO L280 TraceCheckUtils]: 22: Hoare triple {2256#(= 0 main_~j~0)} #t~post3 := ~j~0; {2257#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:42,311 INFO L280 TraceCheckUtils]: 23: Hoare triple {2257#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,312 INFO L280 TraceCheckUtils]: 24: Hoare triple {2258#(<= main_~j~0 1)} havoc #t~post3; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,313 INFO L280 TraceCheckUtils]: 25: Hoare triple {2258#(<= main_~j~0 1)} assume !!(~j~0 < 10); {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,313 INFO L280 TraceCheckUtils]: 26: Hoare triple {2258#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,314 INFO L280 TraceCheckUtils]: 27: Hoare triple {2258#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,315 INFO L280 TraceCheckUtils]: 28: Hoare triple {2258#(<= main_~j~0 1)} havoc #t~nondet4; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,315 INFO L280 TraceCheckUtils]: 29: Hoare triple {2258#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,316 INFO L280 TraceCheckUtils]: 30: Hoare triple {2258#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,316 INFO L280 TraceCheckUtils]: 31: Hoare triple {2258#(<= main_~j~0 1)} havoc #t~nondet5; {2258#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:42,318 INFO L280 TraceCheckUtils]: 32: Hoare triple {2258#(<= main_~j~0 1)} #t~post3 := ~j~0; {2259#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:42,318 INFO L280 TraceCheckUtils]: 33: Hoare triple {2259#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,319 INFO L280 TraceCheckUtils]: 34: Hoare triple {2260#(<= main_~j~0 2)} havoc #t~post3; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,320 INFO L280 TraceCheckUtils]: 35: Hoare triple {2260#(<= main_~j~0 2)} assume !!(~j~0 < 10); {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,321 INFO L280 TraceCheckUtils]: 36: Hoare triple {2260#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,321 INFO L280 TraceCheckUtils]: 37: Hoare triple {2260#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,322 INFO L280 TraceCheckUtils]: 38: Hoare triple {2260#(<= main_~j~0 2)} havoc #t~nondet4; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,322 INFO L280 TraceCheckUtils]: 39: Hoare triple {2260#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,323 INFO L280 TraceCheckUtils]: 40: Hoare triple {2260#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,324 INFO L280 TraceCheckUtils]: 41: Hoare triple {2260#(<= main_~j~0 2)} havoc #t~nondet5; {2260#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:42,324 INFO L280 TraceCheckUtils]: 42: Hoare triple {2260#(<= main_~j~0 2)} #t~post3 := ~j~0; {2261#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:42,325 INFO L280 TraceCheckUtils]: 43: Hoare triple {2261#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {2262#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:42,327 INFO L280 TraceCheckUtils]: 44: Hoare triple {2262#(<= main_~j~0 3)} havoc #t~post3; {2262#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:42,333 INFO L280 TraceCheckUtils]: 45: Hoare triple {2262#(<= main_~j~0 3)} assume !(~j~0 < 10); {2250#false} is VALID [2020-07-10 19:02:42,333 INFO L280 TraceCheckUtils]: 46: Hoare triple {2250#false} assume ~i~0 >= 0 && ~i~0 < 10; {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 47: Hoare triple {2250#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 48: Hoare triple {2250#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 49: Hoare triple {2250#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 50: Hoare triple {2250#false} havoc #t~mem6.base, #t~mem6.offset; {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 51: Hoare triple {2250#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {2250#false} is VALID [2020-07-10 19:02:42,334 INFO L280 TraceCheckUtils]: 52: Hoare triple {2250#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {2250#false} is VALID [2020-07-10 19:02:42,335 INFO L280 TraceCheckUtils]: 53: Hoare triple {2250#false} assume #t~mem8 > 0; {2250#false} is VALID [2020-07-10 19:02:42,335 INFO L280 TraceCheckUtils]: 54: Hoare triple {2250#false} havoc #t~mem7.base, #t~mem7.offset; {2250#false} is VALID [2020-07-10 19:02:42,335 INFO L280 TraceCheckUtils]: 55: Hoare triple {2250#false} havoc #t~mem8; {2250#false} is VALID [2020-07-10 19:02:42,335 INFO L280 TraceCheckUtils]: 56: Hoare triple {2250#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {2250#false} is VALID [2020-07-10 19:02:42,335 INFO L280 TraceCheckUtils]: 57: Hoare triple {2250#false} ~i~0 := #t~mem9 - 10; {2250#false} is VALID [2020-07-10 19:02:42,336 INFO L280 TraceCheckUtils]: 58: Hoare triple {2250#false} havoc #t~mem9; {2250#false} is VALID [2020-07-10 19:02:42,336 INFO L280 TraceCheckUtils]: 59: Hoare triple {2250#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {2250#false} is VALID [2020-07-10 19:02:42,336 INFO L280 TraceCheckUtils]: 60: Hoare triple {2250#false} assume !(~i~0 < #t~mem10); {2250#false} is VALID [2020-07-10 19:02:42,336 INFO L280 TraceCheckUtils]: 61: Hoare triple {2250#false} havoc #t~mem10; {2250#false} is VALID [2020-07-10 19:02:42,337 INFO L263 TraceCheckUtils]: 62: Hoare triple {2250#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {2249#true} is VALID [2020-07-10 19:02:42,337 INFO L280 TraceCheckUtils]: 63: Hoare triple {2249#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {2249#true} is VALID [2020-07-10 19:02:42,337 INFO L280 TraceCheckUtils]: 64: Hoare triple {2249#true} ~i := #in~i; {2249#true} is VALID [2020-07-10 19:02:42,337 INFO L280 TraceCheckUtils]: 65: Hoare triple {2249#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {2249#true} is VALID [2020-07-10 19:02:42,337 INFO L280 TraceCheckUtils]: 66: Hoare triple {2249#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {2249#true} is VALID [2020-07-10 19:02:42,338 INFO L280 TraceCheckUtils]: 67: Hoare triple {2249#true} #res := (if #t~mem1 == ~i then 1 else 0); {2249#true} is VALID [2020-07-10 19:02:42,338 INFO L280 TraceCheckUtils]: 68: Hoare triple {2249#true} havoc #t~mem0.base, #t~mem0.offset; {2249#true} is VALID [2020-07-10 19:02:42,338 INFO L280 TraceCheckUtils]: 69: Hoare triple {2249#true} havoc #t~mem1; {2249#true} is VALID [2020-07-10 19:02:42,338 INFO L280 TraceCheckUtils]: 70: Hoare triple {2249#true} assume true; {2249#true} is VALID [2020-07-10 19:02:42,339 INFO L275 TraceCheckUtils]: 71: Hoare quadruple {2249#true} {2250#false} #114#return; {2250#false} is VALID [2020-07-10 19:02:42,339 INFO L280 TraceCheckUtils]: 72: Hoare triple {2250#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {2250#false} is VALID [2020-07-10 19:02:42,339 INFO L280 TraceCheckUtils]: 73: Hoare triple {2250#false} assume 0 == #t~ret12; {2250#false} is VALID [2020-07-10 19:02:42,339 INFO L280 TraceCheckUtils]: 74: Hoare triple {2250#false} havoc #t~ret12; {2250#false} is VALID [2020-07-10 19:02:42,340 INFO L280 TraceCheckUtils]: 75: Hoare triple {2250#false} assume !false; {2250#false} is VALID [2020-07-10 19:02:42,343 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-10 19:02:42,344 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:42,344 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [756022132] [2020-07-10 19:02:42,344 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:42,345 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-10 19:02:42,345 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [197218762] [2020-07-10 19:02:42,345 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 76 [2020-07-10 19:02:42,346 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:42,346 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-10 19:02:42,432 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-10 19:02:42,432 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-10 19:02:42,432 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:42,433 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-10 19:02:42,433 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2020-07-10 19:02:42,433 INFO L87 Difference]: Start difference. First operand 81 states and 82 transitions. Second operand 10 states. [2020-07-10 19:02:43,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:43,240 INFO L93 Difference]: Finished difference Result 134 states and 136 transitions. [2020-07-10 19:02:43,241 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-10 19:02:43,241 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 76 [2020-07-10 19:02:43,241 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:43,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 19:02:43,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 136 transitions. [2020-07-10 19:02:43,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-10 19:02:43,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 136 transitions. [2020-07-10 19:02:43,248 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 136 transitions. [2020-07-10 19:02:43,422 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:43,424 INFO L225 Difference]: With dead ends: 134 [2020-07-10 19:02:43,424 INFO L226 Difference]: Without dead ends: 99 [2020-07-10 19:02:43,425 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 5 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-10 19:02:43,426 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2020-07-10 19:02:43,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 91. [2020-07-10 19:02:43,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:43,504 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand 91 states. [2020-07-10 19:02:43,504 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 91 states. [2020-07-10 19:02:43,504 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 91 states. [2020-07-10 19:02:43,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:43,507 INFO L93 Difference]: Finished difference Result 99 states and 100 transitions. [2020-07-10 19:02:43,507 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 100 transitions. [2020-07-10 19:02:43,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:43,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:43,508 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 99 states. [2020-07-10 19:02:43,508 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 99 states. [2020-07-10 19:02:43,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:43,512 INFO L93 Difference]: Finished difference Result 99 states and 100 transitions. [2020-07-10 19:02:43,512 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 100 transitions. [2020-07-10 19:02:43,512 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:43,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:43,513 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:43,513 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:43,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 91 states. [2020-07-10 19:02:43,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 92 transitions. [2020-07-10 19:02:43,516 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 92 transitions. Word has length 76 [2020-07-10 19:02:43,517 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:43,517 INFO L479 AbstractCegarLoop]: Abstraction has 91 states and 92 transitions. [2020-07-10 19:02:43,517 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-10 19:02:43,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 91 states and 92 transitions. [2020-07-10 19:02:43,620 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:43,620 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 92 transitions. [2020-07-10 19:02:43,622 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2020-07-10 19:02:43,622 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:43,622 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 4, 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, 1, 1, 1, 1, 1] [2020-07-10 19:02:43,622 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-10 19:02:43,623 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:43,623 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:43,623 INFO L82 PathProgramCache]: Analyzing trace with hash 216981640, now seen corresponding path program 4 times [2020-07-10 19:02:43,623 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:43,623 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1124806697] [2020-07-10 19:02:43,624 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:43,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:43,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:43,930 INFO L280 TraceCheckUtils]: 0: Hoare triple {2960#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2935#true} is VALID [2020-07-10 19:02:43,930 INFO L280 TraceCheckUtils]: 1: Hoare triple {2935#true} #valid := #valid[0 := 0]; {2935#true} is VALID [2020-07-10 19:02:43,930 INFO L280 TraceCheckUtils]: 2: Hoare triple {2935#true} assume 0 < #StackHeapBarrier; {2935#true} is VALID [2020-07-10 19:02:43,931 INFO L280 TraceCheckUtils]: 3: Hoare triple {2935#true} assume true; {2935#true} is VALID [2020-07-10 19:02:43,931 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2935#true} {2935#true} #110#return; {2935#true} is VALID [2020-07-10 19:02:43,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:43,942 INFO L280 TraceCheckUtils]: 0: Hoare triple {2935#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {2935#true} is VALID [2020-07-10 19:02:43,942 INFO L280 TraceCheckUtils]: 1: Hoare triple {2935#true} ~i := #in~i; {2935#true} is VALID [2020-07-10 19:02:43,943 INFO L280 TraceCheckUtils]: 2: Hoare triple {2935#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {2935#true} is VALID [2020-07-10 19:02:43,943 INFO L280 TraceCheckUtils]: 3: Hoare triple {2935#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {2935#true} is VALID [2020-07-10 19:02:43,943 INFO L280 TraceCheckUtils]: 4: Hoare triple {2935#true} #res := (if #t~mem1 == ~i then 1 else 0); {2935#true} is VALID [2020-07-10 19:02:43,943 INFO L280 TraceCheckUtils]: 5: Hoare triple {2935#true} havoc #t~mem0.base, #t~mem0.offset; {2935#true} is VALID [2020-07-10 19:02:43,944 INFO L280 TraceCheckUtils]: 6: Hoare triple {2935#true} havoc #t~mem1; {2935#true} is VALID [2020-07-10 19:02:43,944 INFO L280 TraceCheckUtils]: 7: Hoare triple {2935#true} assume true; {2935#true} is VALID [2020-07-10 19:02:43,944 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {2935#true} {2936#false} #114#return; {2936#false} is VALID [2020-07-10 19:02:43,949 INFO L263 TraceCheckUtils]: 0: Hoare triple {2935#true} call ULTIMATE.init(); {2960#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:43,949 INFO L280 TraceCheckUtils]: 1: Hoare triple {2960#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2935#true} is VALID [2020-07-10 19:02:43,950 INFO L280 TraceCheckUtils]: 2: Hoare triple {2935#true} #valid := #valid[0 := 0]; {2935#true} is VALID [2020-07-10 19:02:43,950 INFO L280 TraceCheckUtils]: 3: Hoare triple {2935#true} assume 0 < #StackHeapBarrier; {2935#true} is VALID [2020-07-10 19:02:43,950 INFO L280 TraceCheckUtils]: 4: Hoare triple {2935#true} assume true; {2935#true} is VALID [2020-07-10 19:02:43,950 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2935#true} {2935#true} #110#return; {2935#true} is VALID [2020-07-10 19:02:43,950 INFO L263 TraceCheckUtils]: 6: Hoare triple {2935#true} call #t~ret13 := main(); {2935#true} is VALID [2020-07-10 19:02:43,951 INFO L280 TraceCheckUtils]: 7: Hoare triple {2935#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {2935#true} is VALID [2020-07-10 19:02:43,951 INFO L280 TraceCheckUtils]: 8: Hoare triple {2935#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {2935#true} is VALID [2020-07-10 19:02:43,951 INFO L280 TraceCheckUtils]: 9: Hoare triple {2935#true} havoc ~i~0; {2935#true} is VALID [2020-07-10 19:02:43,951 INFO L280 TraceCheckUtils]: 10: Hoare triple {2935#true} havoc ~pa~0.base, ~pa~0.offset; {2935#true} is VALID [2020-07-10 19:02:43,952 INFO L280 TraceCheckUtils]: 11: Hoare triple {2935#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {2935#true} is VALID [2020-07-10 19:02:43,952 INFO L280 TraceCheckUtils]: 12: Hoare triple {2935#true} ~i~0 := #t~nondet2; {2935#true} is VALID [2020-07-10 19:02:43,952 INFO L280 TraceCheckUtils]: 13: Hoare triple {2935#true} havoc #t~nondet2; {2935#true} is VALID [2020-07-10 19:02:43,955 INFO L280 TraceCheckUtils]: 14: Hoare triple {2935#true} ~j~0 := 0; {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,956 INFO L280 TraceCheckUtils]: 15: Hoare triple {2942#(= 0 main_~j~0)} assume !!(~j~0 < 10); {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,957 INFO L280 TraceCheckUtils]: 16: Hoare triple {2942#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,957 INFO L280 TraceCheckUtils]: 17: Hoare triple {2942#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,958 INFO L280 TraceCheckUtils]: 18: Hoare triple {2942#(= 0 main_~j~0)} havoc #t~nondet4; {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,959 INFO L280 TraceCheckUtils]: 19: Hoare triple {2942#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,959 INFO L280 TraceCheckUtils]: 20: Hoare triple {2942#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,960 INFO L280 TraceCheckUtils]: 21: Hoare triple {2942#(= 0 main_~j~0)} havoc #t~nondet5; {2942#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:43,961 INFO L280 TraceCheckUtils]: 22: Hoare triple {2942#(= 0 main_~j~0)} #t~post3 := ~j~0; {2943#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:43,961 INFO L280 TraceCheckUtils]: 23: Hoare triple {2943#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,962 INFO L280 TraceCheckUtils]: 24: Hoare triple {2944#(<= main_~j~0 1)} havoc #t~post3; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,962 INFO L280 TraceCheckUtils]: 25: Hoare triple {2944#(<= main_~j~0 1)} assume !!(~j~0 < 10); {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,963 INFO L280 TraceCheckUtils]: 26: Hoare triple {2944#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,963 INFO L280 TraceCheckUtils]: 27: Hoare triple {2944#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,964 INFO L280 TraceCheckUtils]: 28: Hoare triple {2944#(<= main_~j~0 1)} havoc #t~nondet4; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,964 INFO L280 TraceCheckUtils]: 29: Hoare triple {2944#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,964 INFO L280 TraceCheckUtils]: 30: Hoare triple {2944#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,965 INFO L280 TraceCheckUtils]: 31: Hoare triple {2944#(<= main_~j~0 1)} havoc #t~nondet5; {2944#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:43,972 INFO L280 TraceCheckUtils]: 32: Hoare triple {2944#(<= main_~j~0 1)} #t~post3 := ~j~0; {2945#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:43,976 INFO L280 TraceCheckUtils]: 33: Hoare triple {2945#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,977 INFO L280 TraceCheckUtils]: 34: Hoare triple {2946#(<= main_~j~0 2)} havoc #t~post3; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,977 INFO L280 TraceCheckUtils]: 35: Hoare triple {2946#(<= main_~j~0 2)} assume !!(~j~0 < 10); {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,977 INFO L280 TraceCheckUtils]: 36: Hoare triple {2946#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,978 INFO L280 TraceCheckUtils]: 37: Hoare triple {2946#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,978 INFO L280 TraceCheckUtils]: 38: Hoare triple {2946#(<= main_~j~0 2)} havoc #t~nondet4; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,979 INFO L280 TraceCheckUtils]: 39: Hoare triple {2946#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,979 INFO L280 TraceCheckUtils]: 40: Hoare triple {2946#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,980 INFO L280 TraceCheckUtils]: 41: Hoare triple {2946#(<= main_~j~0 2)} havoc #t~nondet5; {2946#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:43,980 INFO L280 TraceCheckUtils]: 42: Hoare triple {2946#(<= main_~j~0 2)} #t~post3 := ~j~0; {2947#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:43,981 INFO L280 TraceCheckUtils]: 43: Hoare triple {2947#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,981 INFO L280 TraceCheckUtils]: 44: Hoare triple {2948#(<= main_~j~0 3)} havoc #t~post3; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,982 INFO L280 TraceCheckUtils]: 45: Hoare triple {2948#(<= main_~j~0 3)} assume !!(~j~0 < 10); {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,982 INFO L280 TraceCheckUtils]: 46: Hoare triple {2948#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,982 INFO L280 TraceCheckUtils]: 47: Hoare triple {2948#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,983 INFO L280 TraceCheckUtils]: 48: Hoare triple {2948#(<= main_~j~0 3)} havoc #t~nondet4; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,984 INFO L280 TraceCheckUtils]: 49: Hoare triple {2948#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,985 INFO L280 TraceCheckUtils]: 50: Hoare triple {2948#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,985 INFO L280 TraceCheckUtils]: 51: Hoare triple {2948#(<= main_~j~0 3)} havoc #t~nondet5; {2948#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:43,986 INFO L280 TraceCheckUtils]: 52: Hoare triple {2948#(<= main_~j~0 3)} #t~post3 := ~j~0; {2949#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:43,986 INFO L280 TraceCheckUtils]: 53: Hoare triple {2949#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {2950#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:43,987 INFO L280 TraceCheckUtils]: 54: Hoare triple {2950#(<= main_~j~0 4)} havoc #t~post3; {2950#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:43,987 INFO L280 TraceCheckUtils]: 55: Hoare triple {2950#(<= main_~j~0 4)} assume !(~j~0 < 10); {2936#false} is VALID [2020-07-10 19:02:43,987 INFO L280 TraceCheckUtils]: 56: Hoare triple {2936#false} assume ~i~0 >= 0 && ~i~0 < 10; {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 57: Hoare triple {2936#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 58: Hoare triple {2936#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 59: Hoare triple {2936#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 60: Hoare triple {2936#false} havoc #t~mem6.base, #t~mem6.offset; {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 61: Hoare triple {2936#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {2936#false} is VALID [2020-07-10 19:02:43,988 INFO L280 TraceCheckUtils]: 62: Hoare triple {2936#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 63: Hoare triple {2936#false} assume #t~mem8 > 0; {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 64: Hoare triple {2936#false} havoc #t~mem7.base, #t~mem7.offset; {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 65: Hoare triple {2936#false} havoc #t~mem8; {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 66: Hoare triple {2936#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 67: Hoare triple {2936#false} ~i~0 := #t~mem9 - 10; {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 68: Hoare triple {2936#false} havoc #t~mem9; {2936#false} is VALID [2020-07-10 19:02:43,989 INFO L280 TraceCheckUtils]: 69: Hoare triple {2936#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {2936#false} is VALID [2020-07-10 19:02:43,990 INFO L280 TraceCheckUtils]: 70: Hoare triple {2936#false} assume !(~i~0 < #t~mem10); {2936#false} is VALID [2020-07-10 19:02:43,990 INFO L280 TraceCheckUtils]: 71: Hoare triple {2936#false} havoc #t~mem10; {2936#false} is VALID [2020-07-10 19:02:43,990 INFO L263 TraceCheckUtils]: 72: Hoare triple {2936#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {2935#true} is VALID [2020-07-10 19:02:43,990 INFO L280 TraceCheckUtils]: 73: Hoare triple {2935#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {2935#true} is VALID [2020-07-10 19:02:43,991 INFO L280 TraceCheckUtils]: 74: Hoare triple {2935#true} ~i := #in~i; {2935#true} is VALID [2020-07-10 19:02:43,991 INFO L280 TraceCheckUtils]: 75: Hoare triple {2935#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {2935#true} is VALID [2020-07-10 19:02:43,991 INFO L280 TraceCheckUtils]: 76: Hoare triple {2935#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {2935#true} is VALID [2020-07-10 19:02:43,991 INFO L280 TraceCheckUtils]: 77: Hoare triple {2935#true} #res := (if #t~mem1 == ~i then 1 else 0); {2935#true} is VALID [2020-07-10 19:02:43,991 INFO L280 TraceCheckUtils]: 78: Hoare triple {2935#true} havoc #t~mem0.base, #t~mem0.offset; {2935#true} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 79: Hoare triple {2935#true} havoc #t~mem1; {2935#true} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 80: Hoare triple {2935#true} assume true; {2935#true} is VALID [2020-07-10 19:02:43,992 INFO L275 TraceCheckUtils]: 81: Hoare quadruple {2935#true} {2936#false} #114#return; {2936#false} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 82: Hoare triple {2936#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {2936#false} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 83: Hoare triple {2936#false} assume 0 == #t~ret12; {2936#false} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 84: Hoare triple {2936#false} havoc #t~ret12; {2936#false} is VALID [2020-07-10 19:02:43,992 INFO L280 TraceCheckUtils]: 85: Hoare triple {2936#false} assume !false; {2936#false} is VALID [2020-07-10 19:02:43,997 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-10 19:02:43,997 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:43,997 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1124806697] [2020-07-10 19:02:43,997 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:43,998 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2020-07-10 19:02:43,998 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1772989021] [2020-07-10 19:02:43,998 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 86 [2020-07-10 19:02:43,999 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:43,999 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-10 19:02:44,095 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:44,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-10 19:02:44,095 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:44,096 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-10 19:02:44,096 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2020-07-10 19:02:44,096 INFO L87 Difference]: Start difference. First operand 91 states and 92 transitions. Second operand 12 states. [2020-07-10 19:02:44,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:44,971 INFO L93 Difference]: Finished difference Result 144 states and 146 transitions. [2020-07-10 19:02:44,971 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-10 19:02:44,971 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 86 [2020-07-10 19:02:44,972 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:44,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-10 19:02:44,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 146 transitions. [2020-07-10 19:02:44,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-10 19:02:44,979 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 146 transitions. [2020-07-10 19:02:44,979 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 146 transitions. [2020-07-10 19:02:45,145 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:45,148 INFO L225 Difference]: With dead ends: 144 [2020-07-10 19:02:45,148 INFO L226 Difference]: Without dead ends: 109 [2020-07-10 19:02:45,149 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 5 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-10 19:02:45,150 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2020-07-10 19:02:45,235 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 101. [2020-07-10 19:02:45,235 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:45,235 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand 101 states. [2020-07-10 19:02:45,235 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 101 states. [2020-07-10 19:02:45,236 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 101 states. [2020-07-10 19:02:45,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:45,239 INFO L93 Difference]: Finished difference Result 109 states and 110 transitions. [2020-07-10 19:02:45,240 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 110 transitions. [2020-07-10 19:02:45,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:45,240 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:45,240 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 109 states. [2020-07-10 19:02:45,240 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 109 states. [2020-07-10 19:02:45,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:45,243 INFO L93 Difference]: Finished difference Result 109 states and 110 transitions. [2020-07-10 19:02:45,244 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 110 transitions. [2020-07-10 19:02:45,244 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:45,244 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:45,244 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:45,244 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:45,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2020-07-10 19:02:45,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 102 transitions. [2020-07-10 19:02:45,248 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 102 transitions. Word has length 86 [2020-07-10 19:02:45,248 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:45,248 INFO L479 AbstractCegarLoop]: Abstraction has 101 states and 102 transitions. [2020-07-10 19:02:45,248 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-10 19:02:45,248 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 101 states and 102 transitions. [2020-07-10 19:02:45,385 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:45,386 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 102 transitions. [2020-07-10 19:02:45,387 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2020-07-10 19:02:45,387 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:45,387 INFO L422 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1] [2020-07-10 19:02:45,388 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-10 19:02:45,388 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:45,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:45,388 INFO L82 PathProgramCache]: Analyzing trace with hash -1855081502, now seen corresponding path program 5 times [2020-07-10 19:02:45,388 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:45,389 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1125880232] [2020-07-10 19:02:45,389 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:45,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:45,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:45,713 INFO L280 TraceCheckUtils]: 0: Hoare triple {3714#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3687#true} is VALID [2020-07-10 19:02:45,713 INFO L280 TraceCheckUtils]: 1: Hoare triple {3687#true} #valid := #valid[0 := 0]; {3687#true} is VALID [2020-07-10 19:02:45,713 INFO L280 TraceCheckUtils]: 2: Hoare triple {3687#true} assume 0 < #StackHeapBarrier; {3687#true} is VALID [2020-07-10 19:02:45,714 INFO L280 TraceCheckUtils]: 3: Hoare triple {3687#true} assume true; {3687#true} is VALID [2020-07-10 19:02:45,714 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3687#true} {3687#true} #110#return; {3687#true} is VALID [2020-07-10 19:02:45,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:45,724 INFO L280 TraceCheckUtils]: 0: Hoare triple {3687#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {3687#true} is VALID [2020-07-10 19:02:45,725 INFO L280 TraceCheckUtils]: 1: Hoare triple {3687#true} ~i := #in~i; {3687#true} is VALID [2020-07-10 19:02:45,725 INFO L280 TraceCheckUtils]: 2: Hoare triple {3687#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {3687#true} is VALID [2020-07-10 19:02:45,725 INFO L280 TraceCheckUtils]: 3: Hoare triple {3687#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {3687#true} is VALID [2020-07-10 19:02:45,725 INFO L280 TraceCheckUtils]: 4: Hoare triple {3687#true} #res := (if #t~mem1 == ~i then 1 else 0); {3687#true} is VALID [2020-07-10 19:02:45,726 INFO L280 TraceCheckUtils]: 5: Hoare triple {3687#true} havoc #t~mem0.base, #t~mem0.offset; {3687#true} is VALID [2020-07-10 19:02:45,726 INFO L280 TraceCheckUtils]: 6: Hoare triple {3687#true} havoc #t~mem1; {3687#true} is VALID [2020-07-10 19:02:45,726 INFO L280 TraceCheckUtils]: 7: Hoare triple {3687#true} assume true; {3687#true} is VALID [2020-07-10 19:02:45,726 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {3687#true} {3688#false} #114#return; {3688#false} is VALID [2020-07-10 19:02:45,728 INFO L263 TraceCheckUtils]: 0: Hoare triple {3687#true} call ULTIMATE.init(); {3714#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:45,728 INFO L280 TraceCheckUtils]: 1: Hoare triple {3714#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3687#true} is VALID [2020-07-10 19:02:45,728 INFO L280 TraceCheckUtils]: 2: Hoare triple {3687#true} #valid := #valid[0 := 0]; {3687#true} is VALID [2020-07-10 19:02:45,728 INFO L280 TraceCheckUtils]: 3: Hoare triple {3687#true} assume 0 < #StackHeapBarrier; {3687#true} is VALID [2020-07-10 19:02:45,728 INFO L280 TraceCheckUtils]: 4: Hoare triple {3687#true} assume true; {3687#true} is VALID [2020-07-10 19:02:45,729 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3687#true} {3687#true} #110#return; {3687#true} is VALID [2020-07-10 19:02:45,729 INFO L263 TraceCheckUtils]: 6: Hoare triple {3687#true} call #t~ret13 := main(); {3687#true} is VALID [2020-07-10 19:02:45,729 INFO L280 TraceCheckUtils]: 7: Hoare triple {3687#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {3687#true} is VALID [2020-07-10 19:02:45,729 INFO L280 TraceCheckUtils]: 8: Hoare triple {3687#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {3687#true} is VALID [2020-07-10 19:02:45,730 INFO L280 TraceCheckUtils]: 9: Hoare triple {3687#true} havoc ~i~0; {3687#true} is VALID [2020-07-10 19:02:45,730 INFO L280 TraceCheckUtils]: 10: Hoare triple {3687#true} havoc ~pa~0.base, ~pa~0.offset; {3687#true} is VALID [2020-07-10 19:02:45,730 INFO L280 TraceCheckUtils]: 11: Hoare triple {3687#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {3687#true} is VALID [2020-07-10 19:02:45,730 INFO L280 TraceCheckUtils]: 12: Hoare triple {3687#true} ~i~0 := #t~nondet2; {3687#true} is VALID [2020-07-10 19:02:45,730 INFO L280 TraceCheckUtils]: 13: Hoare triple {3687#true} havoc #t~nondet2; {3687#true} is VALID [2020-07-10 19:02:45,731 INFO L280 TraceCheckUtils]: 14: Hoare triple {3687#true} ~j~0 := 0; {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,732 INFO L280 TraceCheckUtils]: 15: Hoare triple {3694#(= 0 main_~j~0)} assume !!(~j~0 < 10); {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,733 INFO L280 TraceCheckUtils]: 16: Hoare triple {3694#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,733 INFO L280 TraceCheckUtils]: 17: Hoare triple {3694#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,734 INFO L280 TraceCheckUtils]: 18: Hoare triple {3694#(= 0 main_~j~0)} havoc #t~nondet4; {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,735 INFO L280 TraceCheckUtils]: 19: Hoare triple {3694#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,735 INFO L280 TraceCheckUtils]: 20: Hoare triple {3694#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,736 INFO L280 TraceCheckUtils]: 21: Hoare triple {3694#(= 0 main_~j~0)} havoc #t~nondet5; {3694#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:45,737 INFO L280 TraceCheckUtils]: 22: Hoare triple {3694#(= 0 main_~j~0)} #t~post3 := ~j~0; {3695#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:45,737 INFO L280 TraceCheckUtils]: 23: Hoare triple {3695#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,738 INFO L280 TraceCheckUtils]: 24: Hoare triple {3696#(<= main_~j~0 1)} havoc #t~post3; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,739 INFO L280 TraceCheckUtils]: 25: Hoare triple {3696#(<= main_~j~0 1)} assume !!(~j~0 < 10); {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,739 INFO L280 TraceCheckUtils]: 26: Hoare triple {3696#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,740 INFO L280 TraceCheckUtils]: 27: Hoare triple {3696#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,740 INFO L280 TraceCheckUtils]: 28: Hoare triple {3696#(<= main_~j~0 1)} havoc #t~nondet4; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,741 INFO L280 TraceCheckUtils]: 29: Hoare triple {3696#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,741 INFO L280 TraceCheckUtils]: 30: Hoare triple {3696#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,742 INFO L280 TraceCheckUtils]: 31: Hoare triple {3696#(<= main_~j~0 1)} havoc #t~nondet5; {3696#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:45,742 INFO L280 TraceCheckUtils]: 32: Hoare triple {3696#(<= main_~j~0 1)} #t~post3 := ~j~0; {3697#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:45,743 INFO L280 TraceCheckUtils]: 33: Hoare triple {3697#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,744 INFO L280 TraceCheckUtils]: 34: Hoare triple {3698#(<= main_~j~0 2)} havoc #t~post3; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,744 INFO L280 TraceCheckUtils]: 35: Hoare triple {3698#(<= main_~j~0 2)} assume !!(~j~0 < 10); {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,745 INFO L280 TraceCheckUtils]: 36: Hoare triple {3698#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,746 INFO L280 TraceCheckUtils]: 37: Hoare triple {3698#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,748 INFO L280 TraceCheckUtils]: 38: Hoare triple {3698#(<= main_~j~0 2)} havoc #t~nondet4; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,749 INFO L280 TraceCheckUtils]: 39: Hoare triple {3698#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,766 INFO L280 TraceCheckUtils]: 40: Hoare triple {3698#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,770 INFO L280 TraceCheckUtils]: 41: Hoare triple {3698#(<= main_~j~0 2)} havoc #t~nondet5; {3698#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:45,773 INFO L280 TraceCheckUtils]: 42: Hoare triple {3698#(<= main_~j~0 2)} #t~post3 := ~j~0; {3699#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:45,774 INFO L280 TraceCheckUtils]: 43: Hoare triple {3699#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,775 INFO L280 TraceCheckUtils]: 44: Hoare triple {3700#(<= main_~j~0 3)} havoc #t~post3; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,775 INFO L280 TraceCheckUtils]: 45: Hoare triple {3700#(<= main_~j~0 3)} assume !!(~j~0 < 10); {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,776 INFO L280 TraceCheckUtils]: 46: Hoare triple {3700#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,776 INFO L280 TraceCheckUtils]: 47: Hoare triple {3700#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,777 INFO L280 TraceCheckUtils]: 48: Hoare triple {3700#(<= main_~j~0 3)} havoc #t~nondet4; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,777 INFO L280 TraceCheckUtils]: 49: Hoare triple {3700#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,778 INFO L280 TraceCheckUtils]: 50: Hoare triple {3700#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,778 INFO L280 TraceCheckUtils]: 51: Hoare triple {3700#(<= main_~j~0 3)} havoc #t~nondet5; {3700#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:45,779 INFO L280 TraceCheckUtils]: 52: Hoare triple {3700#(<= main_~j~0 3)} #t~post3 := ~j~0; {3701#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:45,779 INFO L280 TraceCheckUtils]: 53: Hoare triple {3701#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,780 INFO L280 TraceCheckUtils]: 54: Hoare triple {3702#(<= main_~j~0 4)} havoc #t~post3; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,780 INFO L280 TraceCheckUtils]: 55: Hoare triple {3702#(<= main_~j~0 4)} assume !!(~j~0 < 10); {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,781 INFO L280 TraceCheckUtils]: 56: Hoare triple {3702#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,782 INFO L280 TraceCheckUtils]: 57: Hoare triple {3702#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,783 INFO L280 TraceCheckUtils]: 58: Hoare triple {3702#(<= main_~j~0 4)} havoc #t~nondet4; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,783 INFO L280 TraceCheckUtils]: 59: Hoare triple {3702#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,784 INFO L280 TraceCheckUtils]: 60: Hoare triple {3702#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,784 INFO L280 TraceCheckUtils]: 61: Hoare triple {3702#(<= main_~j~0 4)} havoc #t~nondet5; {3702#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:45,785 INFO L280 TraceCheckUtils]: 62: Hoare triple {3702#(<= main_~j~0 4)} #t~post3 := ~j~0; {3703#(<= |main_#t~post3| 4)} is VALID [2020-07-10 19:02:45,786 INFO L280 TraceCheckUtils]: 63: Hoare triple {3703#(<= |main_#t~post3| 4)} ~j~0 := 1 + #t~post3; {3704#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:45,786 INFO L280 TraceCheckUtils]: 64: Hoare triple {3704#(<= main_~j~0 5)} havoc #t~post3; {3704#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:45,787 INFO L280 TraceCheckUtils]: 65: Hoare triple {3704#(<= main_~j~0 5)} assume !(~j~0 < 10); {3688#false} is VALID [2020-07-10 19:02:45,787 INFO L280 TraceCheckUtils]: 66: Hoare triple {3688#false} assume ~i~0 >= 0 && ~i~0 < 10; {3688#false} is VALID [2020-07-10 19:02:45,788 INFO L280 TraceCheckUtils]: 67: Hoare triple {3688#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {3688#false} is VALID [2020-07-10 19:02:45,788 INFO L280 TraceCheckUtils]: 68: Hoare triple {3688#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {3688#false} is VALID [2020-07-10 19:02:45,788 INFO L280 TraceCheckUtils]: 69: Hoare triple {3688#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {3688#false} is VALID [2020-07-10 19:02:45,788 INFO L280 TraceCheckUtils]: 70: Hoare triple {3688#false} havoc #t~mem6.base, #t~mem6.offset; {3688#false} is VALID [2020-07-10 19:02:45,788 INFO L280 TraceCheckUtils]: 71: Hoare triple {3688#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 72: Hoare triple {3688#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 73: Hoare triple {3688#false} assume #t~mem8 > 0; {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 74: Hoare triple {3688#false} havoc #t~mem7.base, #t~mem7.offset; {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 75: Hoare triple {3688#false} havoc #t~mem8; {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 76: Hoare triple {3688#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {3688#false} is VALID [2020-07-10 19:02:45,789 INFO L280 TraceCheckUtils]: 77: Hoare triple {3688#false} ~i~0 := #t~mem9 - 10; {3688#false} is VALID [2020-07-10 19:02:45,790 INFO L280 TraceCheckUtils]: 78: Hoare triple {3688#false} havoc #t~mem9; {3688#false} is VALID [2020-07-10 19:02:45,790 INFO L280 TraceCheckUtils]: 79: Hoare triple {3688#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {3688#false} is VALID [2020-07-10 19:02:45,790 INFO L280 TraceCheckUtils]: 80: Hoare triple {3688#false} assume !(~i~0 < #t~mem10); {3688#false} is VALID [2020-07-10 19:02:45,790 INFO L280 TraceCheckUtils]: 81: Hoare triple {3688#false} havoc #t~mem10; {3688#false} is VALID [2020-07-10 19:02:45,790 INFO L263 TraceCheckUtils]: 82: Hoare triple {3688#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 83: Hoare triple {3687#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 84: Hoare triple {3687#true} ~i := #in~i; {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 85: Hoare triple {3687#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 86: Hoare triple {3687#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 87: Hoare triple {3687#true} #res := (if #t~mem1 == ~i then 1 else 0); {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 88: Hoare triple {3687#true} havoc #t~mem0.base, #t~mem0.offset; {3687#true} is VALID [2020-07-10 19:02:45,791 INFO L280 TraceCheckUtils]: 89: Hoare triple {3687#true} havoc #t~mem1; {3687#true} is VALID [2020-07-10 19:02:45,792 INFO L280 TraceCheckUtils]: 90: Hoare triple {3687#true} assume true; {3687#true} is VALID [2020-07-10 19:02:45,792 INFO L275 TraceCheckUtils]: 91: Hoare quadruple {3687#true} {3688#false} #114#return; {3688#false} is VALID [2020-07-10 19:02:45,792 INFO L280 TraceCheckUtils]: 92: Hoare triple {3688#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {3688#false} is VALID [2020-07-10 19:02:45,792 INFO L280 TraceCheckUtils]: 93: Hoare triple {3688#false} assume 0 == #t~ret12; {3688#false} is VALID [2020-07-10 19:02:45,792 INFO L280 TraceCheckUtils]: 94: Hoare triple {3688#false} havoc #t~ret12; {3688#false} is VALID [2020-07-10 19:02:45,792 INFO L280 TraceCheckUtils]: 95: Hoare triple {3688#false} assume !false; {3688#false} is VALID [2020-07-10 19:02:45,797 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-10 19:02:45,797 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:45,798 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1125880232] [2020-07-10 19:02:45,798 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:45,798 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2020-07-10 19:02:45,798 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [850016786] [2020-07-10 19:02:45,799 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 96 [2020-07-10 19:02:45,799 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:45,799 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-10 19:02:45,908 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:45,908 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-10 19:02:45,909 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:45,909 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-10 19:02:45,910 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2020-07-10 19:02:45,910 INFO L87 Difference]: Start difference. First operand 101 states and 102 transitions. Second operand 14 states. [2020-07-10 19:02:46,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:46,929 INFO L93 Difference]: Finished difference Result 154 states and 156 transitions. [2020-07-10 19:02:46,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2020-07-10 19:02:46,929 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 96 [2020-07-10 19:02:46,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:46,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-10 19:02:46,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 156 transitions. [2020-07-10 19:02:46,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-10 19:02:46,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 156 transitions. [2020-07-10 19:02:46,943 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 156 transitions. [2020-07-10 19:02:47,116 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-10 19:02:47,119 INFO L225 Difference]: With dead ends: 154 [2020-07-10 19:02:47,119 INFO L226 Difference]: Without dead ends: 119 [2020-07-10 19:02:47,120 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=180, Invalid=372, Unknown=0, NotChecked=0, Total=552 [2020-07-10 19:02:47,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2020-07-10 19:02:47,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 111. [2020-07-10 19:02:47,219 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:47,219 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand 111 states. [2020-07-10 19:02:47,219 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 111 states. [2020-07-10 19:02:47,220 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 111 states. [2020-07-10 19:02:47,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:47,223 INFO L93 Difference]: Finished difference Result 119 states and 120 transitions. [2020-07-10 19:02:47,224 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 120 transitions. [2020-07-10 19:02:47,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:47,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:47,224 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 119 states. [2020-07-10 19:02:47,224 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 119 states. [2020-07-10 19:02:47,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:47,228 INFO L93 Difference]: Finished difference Result 119 states and 120 transitions. [2020-07-10 19:02:47,228 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 120 transitions. [2020-07-10 19:02:47,229 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:47,229 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:47,229 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:47,229 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:47,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 111 states. [2020-07-10 19:02:47,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 112 transitions. [2020-07-10 19:02:47,233 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 112 transitions. Word has length 96 [2020-07-10 19:02:47,233 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:47,233 INFO L479 AbstractCegarLoop]: Abstraction has 111 states and 112 transitions. [2020-07-10 19:02:47,233 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-10 19:02:47,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 111 states and 112 transitions. [2020-07-10 19:02:47,349 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-10 19:02:47,349 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 112 transitions. [2020-07-10 19:02:47,350 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 107 [2020-07-10 19:02:47,351 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:47,351 INFO L422 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 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-10 19:02:47,351 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-10 19:02:47,351 INFO L427 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:47,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:47,352 INFO L82 PathProgramCache]: Analyzing trace with hash -400056644, now seen corresponding path program 6 times [2020-07-10 19:02:47,352 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:47,352 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1902993686] [2020-07-10 19:02:47,352 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:47,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:47,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:47,694 INFO L280 TraceCheckUtils]: 0: Hoare triple {4534#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4505#true} is VALID [2020-07-10 19:02:47,695 INFO L280 TraceCheckUtils]: 1: Hoare triple {4505#true} #valid := #valid[0 := 0]; {4505#true} is VALID [2020-07-10 19:02:47,695 INFO L280 TraceCheckUtils]: 2: Hoare triple {4505#true} assume 0 < #StackHeapBarrier; {4505#true} is VALID [2020-07-10 19:02:47,695 INFO L280 TraceCheckUtils]: 3: Hoare triple {4505#true} assume true; {4505#true} is VALID [2020-07-10 19:02:47,695 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4505#true} {4505#true} #110#return; {4505#true} is VALID [2020-07-10 19:02:47,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:47,702 INFO L280 TraceCheckUtils]: 0: Hoare triple {4505#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {4505#true} is VALID [2020-07-10 19:02:47,703 INFO L280 TraceCheckUtils]: 1: Hoare triple {4505#true} ~i := #in~i; {4505#true} is VALID [2020-07-10 19:02:47,703 INFO L280 TraceCheckUtils]: 2: Hoare triple {4505#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {4505#true} is VALID [2020-07-10 19:02:47,703 INFO L280 TraceCheckUtils]: 3: Hoare triple {4505#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {4505#true} is VALID [2020-07-10 19:02:47,703 INFO L280 TraceCheckUtils]: 4: Hoare triple {4505#true} #res := (if #t~mem1 == ~i then 1 else 0); {4505#true} is VALID [2020-07-10 19:02:47,703 INFO L280 TraceCheckUtils]: 5: Hoare triple {4505#true} havoc #t~mem0.base, #t~mem0.offset; {4505#true} is VALID [2020-07-10 19:02:47,704 INFO L280 TraceCheckUtils]: 6: Hoare triple {4505#true} havoc #t~mem1; {4505#true} is VALID [2020-07-10 19:02:47,704 INFO L280 TraceCheckUtils]: 7: Hoare triple {4505#true} assume true; {4505#true} is VALID [2020-07-10 19:02:47,704 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {4505#true} {4506#false} #114#return; {4506#false} is VALID [2020-07-10 19:02:47,705 INFO L263 TraceCheckUtils]: 0: Hoare triple {4505#true} call ULTIMATE.init(); {4534#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:47,705 INFO L280 TraceCheckUtils]: 1: Hoare triple {4534#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4505#true} is VALID [2020-07-10 19:02:47,706 INFO L280 TraceCheckUtils]: 2: Hoare triple {4505#true} #valid := #valid[0 := 0]; {4505#true} is VALID [2020-07-10 19:02:47,706 INFO L280 TraceCheckUtils]: 3: Hoare triple {4505#true} assume 0 < #StackHeapBarrier; {4505#true} is VALID [2020-07-10 19:02:47,706 INFO L280 TraceCheckUtils]: 4: Hoare triple {4505#true} assume true; {4505#true} is VALID [2020-07-10 19:02:47,706 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {4505#true} {4505#true} #110#return; {4505#true} is VALID [2020-07-10 19:02:47,706 INFO L263 TraceCheckUtils]: 6: Hoare triple {4505#true} call #t~ret13 := main(); {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 7: Hoare triple {4505#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 8: Hoare triple {4505#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 9: Hoare triple {4505#true} havoc ~i~0; {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 10: Hoare triple {4505#true} havoc ~pa~0.base, ~pa~0.offset; {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 11: Hoare triple {4505#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {4505#true} is VALID [2020-07-10 19:02:47,707 INFO L280 TraceCheckUtils]: 12: Hoare triple {4505#true} ~i~0 := #t~nondet2; {4505#true} is VALID [2020-07-10 19:02:47,708 INFO L280 TraceCheckUtils]: 13: Hoare triple {4505#true} havoc #t~nondet2; {4505#true} is VALID [2020-07-10 19:02:47,708 INFO L280 TraceCheckUtils]: 14: Hoare triple {4505#true} ~j~0 := 0; {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,709 INFO L280 TraceCheckUtils]: 15: Hoare triple {4512#(= 0 main_~j~0)} assume !!(~j~0 < 10); {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,710 INFO L280 TraceCheckUtils]: 16: Hoare triple {4512#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,710 INFO L280 TraceCheckUtils]: 17: Hoare triple {4512#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,711 INFO L280 TraceCheckUtils]: 18: Hoare triple {4512#(= 0 main_~j~0)} havoc #t~nondet4; {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,712 INFO L280 TraceCheckUtils]: 19: Hoare triple {4512#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,712 INFO L280 TraceCheckUtils]: 20: Hoare triple {4512#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,713 INFO L280 TraceCheckUtils]: 21: Hoare triple {4512#(= 0 main_~j~0)} havoc #t~nondet5; {4512#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:47,714 INFO L280 TraceCheckUtils]: 22: Hoare triple {4512#(= 0 main_~j~0)} #t~post3 := ~j~0; {4513#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:47,715 INFO L280 TraceCheckUtils]: 23: Hoare triple {4513#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,716 INFO L280 TraceCheckUtils]: 24: Hoare triple {4514#(<= main_~j~0 1)} havoc #t~post3; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,716 INFO L280 TraceCheckUtils]: 25: Hoare triple {4514#(<= main_~j~0 1)} assume !!(~j~0 < 10); {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,717 INFO L280 TraceCheckUtils]: 26: Hoare triple {4514#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,717 INFO L280 TraceCheckUtils]: 27: Hoare triple {4514#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,718 INFO L280 TraceCheckUtils]: 28: Hoare triple {4514#(<= main_~j~0 1)} havoc #t~nondet4; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,719 INFO L280 TraceCheckUtils]: 29: Hoare triple {4514#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,719 INFO L280 TraceCheckUtils]: 30: Hoare triple {4514#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,720 INFO L280 TraceCheckUtils]: 31: Hoare triple {4514#(<= main_~j~0 1)} havoc #t~nondet5; {4514#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:47,720 INFO L280 TraceCheckUtils]: 32: Hoare triple {4514#(<= main_~j~0 1)} #t~post3 := ~j~0; {4515#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:47,721 INFO L280 TraceCheckUtils]: 33: Hoare triple {4515#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,722 INFO L280 TraceCheckUtils]: 34: Hoare triple {4516#(<= main_~j~0 2)} havoc #t~post3; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,722 INFO L280 TraceCheckUtils]: 35: Hoare triple {4516#(<= main_~j~0 2)} assume !!(~j~0 < 10); {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,723 INFO L280 TraceCheckUtils]: 36: Hoare triple {4516#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,723 INFO L280 TraceCheckUtils]: 37: Hoare triple {4516#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,724 INFO L280 TraceCheckUtils]: 38: Hoare triple {4516#(<= main_~j~0 2)} havoc #t~nondet4; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,724 INFO L280 TraceCheckUtils]: 39: Hoare triple {4516#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,725 INFO L280 TraceCheckUtils]: 40: Hoare triple {4516#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,725 INFO L280 TraceCheckUtils]: 41: Hoare triple {4516#(<= main_~j~0 2)} havoc #t~nondet5; {4516#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:47,726 INFO L280 TraceCheckUtils]: 42: Hoare triple {4516#(<= main_~j~0 2)} #t~post3 := ~j~0; {4517#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:47,727 INFO L280 TraceCheckUtils]: 43: Hoare triple {4517#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,727 INFO L280 TraceCheckUtils]: 44: Hoare triple {4518#(<= main_~j~0 3)} havoc #t~post3; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,728 INFO L280 TraceCheckUtils]: 45: Hoare triple {4518#(<= main_~j~0 3)} assume !!(~j~0 < 10); {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,729 INFO L280 TraceCheckUtils]: 46: Hoare triple {4518#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,729 INFO L280 TraceCheckUtils]: 47: Hoare triple {4518#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,730 INFO L280 TraceCheckUtils]: 48: Hoare triple {4518#(<= main_~j~0 3)} havoc #t~nondet4; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,730 INFO L280 TraceCheckUtils]: 49: Hoare triple {4518#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,731 INFO L280 TraceCheckUtils]: 50: Hoare triple {4518#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,731 INFO L280 TraceCheckUtils]: 51: Hoare triple {4518#(<= main_~j~0 3)} havoc #t~nondet5; {4518#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:47,732 INFO L280 TraceCheckUtils]: 52: Hoare triple {4518#(<= main_~j~0 3)} #t~post3 := ~j~0; {4519#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:47,733 INFO L280 TraceCheckUtils]: 53: Hoare triple {4519#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,733 INFO L280 TraceCheckUtils]: 54: Hoare triple {4520#(<= main_~j~0 4)} havoc #t~post3; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,734 INFO L280 TraceCheckUtils]: 55: Hoare triple {4520#(<= main_~j~0 4)} assume !!(~j~0 < 10); {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,735 INFO L280 TraceCheckUtils]: 56: Hoare triple {4520#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,735 INFO L280 TraceCheckUtils]: 57: Hoare triple {4520#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,736 INFO L280 TraceCheckUtils]: 58: Hoare triple {4520#(<= main_~j~0 4)} havoc #t~nondet4; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,736 INFO L280 TraceCheckUtils]: 59: Hoare triple {4520#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,737 INFO L280 TraceCheckUtils]: 60: Hoare triple {4520#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,737 INFO L280 TraceCheckUtils]: 61: Hoare triple {4520#(<= main_~j~0 4)} havoc #t~nondet5; {4520#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:47,738 INFO L280 TraceCheckUtils]: 62: Hoare triple {4520#(<= main_~j~0 4)} #t~post3 := ~j~0; {4521#(<= |main_#t~post3| 4)} is VALID [2020-07-10 19:02:47,739 INFO L280 TraceCheckUtils]: 63: Hoare triple {4521#(<= |main_#t~post3| 4)} ~j~0 := 1 + #t~post3; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,739 INFO L280 TraceCheckUtils]: 64: Hoare triple {4522#(<= main_~j~0 5)} havoc #t~post3; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,740 INFO L280 TraceCheckUtils]: 65: Hoare triple {4522#(<= main_~j~0 5)} assume !!(~j~0 < 10); {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,740 INFO L280 TraceCheckUtils]: 66: Hoare triple {4522#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,741 INFO L280 TraceCheckUtils]: 67: Hoare triple {4522#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,742 INFO L280 TraceCheckUtils]: 68: Hoare triple {4522#(<= main_~j~0 5)} havoc #t~nondet4; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,742 INFO L280 TraceCheckUtils]: 69: Hoare triple {4522#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,743 INFO L280 TraceCheckUtils]: 70: Hoare triple {4522#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,743 INFO L280 TraceCheckUtils]: 71: Hoare triple {4522#(<= main_~j~0 5)} havoc #t~nondet5; {4522#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:47,744 INFO L280 TraceCheckUtils]: 72: Hoare triple {4522#(<= main_~j~0 5)} #t~post3 := ~j~0; {4523#(<= |main_#t~post3| 5)} is VALID [2020-07-10 19:02:47,745 INFO L280 TraceCheckUtils]: 73: Hoare triple {4523#(<= |main_#t~post3| 5)} ~j~0 := 1 + #t~post3; {4524#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:47,746 INFO L280 TraceCheckUtils]: 74: Hoare triple {4524#(<= main_~j~0 6)} havoc #t~post3; {4524#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:47,746 INFO L280 TraceCheckUtils]: 75: Hoare triple {4524#(<= main_~j~0 6)} assume !(~j~0 < 10); {4506#false} is VALID [2020-07-10 19:02:47,747 INFO L280 TraceCheckUtils]: 76: Hoare triple {4506#false} assume ~i~0 >= 0 && ~i~0 < 10; {4506#false} is VALID [2020-07-10 19:02:47,747 INFO L280 TraceCheckUtils]: 77: Hoare triple {4506#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {4506#false} is VALID [2020-07-10 19:02:47,747 INFO L280 TraceCheckUtils]: 78: Hoare triple {4506#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {4506#false} is VALID [2020-07-10 19:02:47,748 INFO L280 TraceCheckUtils]: 79: Hoare triple {4506#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {4506#false} is VALID [2020-07-10 19:02:47,748 INFO L280 TraceCheckUtils]: 80: Hoare triple {4506#false} havoc #t~mem6.base, #t~mem6.offset; {4506#false} is VALID [2020-07-10 19:02:47,748 INFO L280 TraceCheckUtils]: 81: Hoare triple {4506#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {4506#false} is VALID [2020-07-10 19:02:47,748 INFO L280 TraceCheckUtils]: 82: Hoare triple {4506#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {4506#false} is VALID [2020-07-10 19:02:47,749 INFO L280 TraceCheckUtils]: 83: Hoare triple {4506#false} assume #t~mem8 > 0; {4506#false} is VALID [2020-07-10 19:02:47,749 INFO L280 TraceCheckUtils]: 84: Hoare triple {4506#false} havoc #t~mem7.base, #t~mem7.offset; {4506#false} is VALID [2020-07-10 19:02:47,749 INFO L280 TraceCheckUtils]: 85: Hoare triple {4506#false} havoc #t~mem8; {4506#false} is VALID [2020-07-10 19:02:47,749 INFO L280 TraceCheckUtils]: 86: Hoare triple {4506#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {4506#false} is VALID [2020-07-10 19:02:47,749 INFO L280 TraceCheckUtils]: 87: Hoare triple {4506#false} ~i~0 := #t~mem9 - 10; {4506#false} is VALID [2020-07-10 19:02:47,750 INFO L280 TraceCheckUtils]: 88: Hoare triple {4506#false} havoc #t~mem9; {4506#false} is VALID [2020-07-10 19:02:47,750 INFO L280 TraceCheckUtils]: 89: Hoare triple {4506#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {4506#false} is VALID [2020-07-10 19:02:47,750 INFO L280 TraceCheckUtils]: 90: Hoare triple {4506#false} assume !(~i~0 < #t~mem10); {4506#false} is VALID [2020-07-10 19:02:47,750 INFO L280 TraceCheckUtils]: 91: Hoare triple {4506#false} havoc #t~mem10; {4506#false} is VALID [2020-07-10 19:02:47,756 INFO L263 TraceCheckUtils]: 92: Hoare triple {4506#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {4505#true} is VALID [2020-07-10 19:02:47,756 INFO L280 TraceCheckUtils]: 93: Hoare triple {4505#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {4505#true} is VALID [2020-07-10 19:02:47,757 INFO L280 TraceCheckUtils]: 94: Hoare triple {4505#true} ~i := #in~i; {4505#true} is VALID [2020-07-10 19:02:47,757 INFO L280 TraceCheckUtils]: 95: Hoare triple {4505#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {4505#true} is VALID [2020-07-10 19:02:47,757 INFO L280 TraceCheckUtils]: 96: Hoare triple {4505#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {4505#true} is VALID [2020-07-10 19:02:47,757 INFO L280 TraceCheckUtils]: 97: Hoare triple {4505#true} #res := (if #t~mem1 == ~i then 1 else 0); {4505#true} is VALID [2020-07-10 19:02:47,757 INFO L280 TraceCheckUtils]: 98: Hoare triple {4505#true} havoc #t~mem0.base, #t~mem0.offset; {4505#true} is VALID [2020-07-10 19:02:47,758 INFO L280 TraceCheckUtils]: 99: Hoare triple {4505#true} havoc #t~mem1; {4505#true} is VALID [2020-07-10 19:02:47,758 INFO L280 TraceCheckUtils]: 100: Hoare triple {4505#true} assume true; {4505#true} is VALID [2020-07-10 19:02:47,758 INFO L275 TraceCheckUtils]: 101: Hoare quadruple {4505#true} {4506#false} #114#return; {4506#false} is VALID [2020-07-10 19:02:47,758 INFO L280 TraceCheckUtils]: 102: Hoare triple {4506#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {4506#false} is VALID [2020-07-10 19:02:47,758 INFO L280 TraceCheckUtils]: 103: Hoare triple {4506#false} assume 0 == #t~ret12; {4506#false} is VALID [2020-07-10 19:02:47,759 INFO L280 TraceCheckUtils]: 104: Hoare triple {4506#false} havoc #t~ret12; {4506#false} is VALID [2020-07-10 19:02:47,759 INFO L280 TraceCheckUtils]: 105: Hoare triple {4506#false} assume !false; {4506#false} is VALID [2020-07-10 19:02:47,769 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-10 19:02:47,769 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:47,769 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1902993686] [2020-07-10 19:02:47,769 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:47,770 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2020-07-10 19:02:47,770 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2126603379] [2020-07-10 19:02:47,770 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 106 [2020-07-10 19:02:47,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:47,771 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2020-07-10 19:02:47,892 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:47,892 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2020-07-10 19:02:47,892 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:47,893 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2020-07-10 19:02:47,893 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2020-07-10 19:02:47,893 INFO L87 Difference]: Start difference. First operand 111 states and 112 transitions. Second operand 16 states. [2020-07-10 19:02:49,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:49,138 INFO L93 Difference]: Finished difference Result 164 states and 166 transitions. [2020-07-10 19:02:49,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2020-07-10 19:02:49,138 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 106 [2020-07-10 19:02:49,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:49,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-10 19:02:49,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 166 transitions. [2020-07-10 19:02:49,147 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-10 19:02:49,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 166 transitions. [2020-07-10 19:02:49,155 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 166 transitions. [2020-07-10 19:02:49,366 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:49,372 INFO L225 Difference]: With dead ends: 164 [2020-07-10 19:02:49,372 INFO L226 Difference]: Without dead ends: 129 [2020-07-10 19:02:49,373 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=245, Invalid=511, Unknown=0, NotChecked=0, Total=756 [2020-07-10 19:02:49,374 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2020-07-10 19:02:49,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 121. [2020-07-10 19:02:49,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:49,478 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand 121 states. [2020-07-10 19:02:49,478 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand 121 states. [2020-07-10 19:02:49,478 INFO L87 Difference]: Start difference. First operand 129 states. Second operand 121 states. [2020-07-10 19:02:49,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:49,483 INFO L93 Difference]: Finished difference Result 129 states and 130 transitions. [2020-07-10 19:02:49,483 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 130 transitions. [2020-07-10 19:02:49,484 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:49,484 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:49,484 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 129 states. [2020-07-10 19:02:49,484 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 129 states. [2020-07-10 19:02:49,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:49,487 INFO L93 Difference]: Finished difference Result 129 states and 130 transitions. [2020-07-10 19:02:49,488 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 130 transitions. [2020-07-10 19:02:49,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:49,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:49,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:49,488 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:49,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 121 states. [2020-07-10 19:02:49,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 122 transitions. [2020-07-10 19:02:49,492 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 122 transitions. Word has length 106 [2020-07-10 19:02:49,493 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:49,493 INFO L479 AbstractCegarLoop]: Abstraction has 121 states and 122 transitions. [2020-07-10 19:02:49,493 INFO L480 AbstractCegarLoop]: Interpolant automaton has 16 states. [2020-07-10 19:02:49,493 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 121 states and 122 transitions. [2020-07-10 19:02:49,629 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:49,630 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 122 transitions. [2020-07-10 19:02:49,631 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2020-07-10 19:02:49,632 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:49,632 INFO L422 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 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-10 19:02:49,632 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-10 19:02:49,633 INFO L427 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:49,633 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:49,633 INFO L82 PathProgramCache]: Analyzing trace with hash -1044037354, now seen corresponding path program 7 times [2020-07-10 19:02:49,633 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:49,634 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [742053426] [2020-07-10 19:02:49,634 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:49,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:49,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:49,945 INFO L280 TraceCheckUtils]: 0: Hoare triple {5420#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5389#true} is VALID [2020-07-10 19:02:49,946 INFO L280 TraceCheckUtils]: 1: Hoare triple {5389#true} #valid := #valid[0 := 0]; {5389#true} is VALID [2020-07-10 19:02:49,946 INFO L280 TraceCheckUtils]: 2: Hoare triple {5389#true} assume 0 < #StackHeapBarrier; {5389#true} is VALID [2020-07-10 19:02:49,946 INFO L280 TraceCheckUtils]: 3: Hoare triple {5389#true} assume true; {5389#true} is VALID [2020-07-10 19:02:49,946 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5389#true} {5389#true} #110#return; {5389#true} is VALID [2020-07-10 19:02:49,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:49,951 INFO L280 TraceCheckUtils]: 0: Hoare triple {5389#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {5389#true} is VALID [2020-07-10 19:02:49,952 INFO L280 TraceCheckUtils]: 1: Hoare triple {5389#true} ~i := #in~i; {5389#true} is VALID [2020-07-10 19:02:49,952 INFO L280 TraceCheckUtils]: 2: Hoare triple {5389#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {5389#true} is VALID [2020-07-10 19:02:49,952 INFO L280 TraceCheckUtils]: 3: Hoare triple {5389#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {5389#true} is VALID [2020-07-10 19:02:49,952 INFO L280 TraceCheckUtils]: 4: Hoare triple {5389#true} #res := (if #t~mem1 == ~i then 1 else 0); {5389#true} is VALID [2020-07-10 19:02:49,952 INFO L280 TraceCheckUtils]: 5: Hoare triple {5389#true} havoc #t~mem0.base, #t~mem0.offset; {5389#true} is VALID [2020-07-10 19:02:49,953 INFO L280 TraceCheckUtils]: 6: Hoare triple {5389#true} havoc #t~mem1; {5389#true} is VALID [2020-07-10 19:02:49,953 INFO L280 TraceCheckUtils]: 7: Hoare triple {5389#true} assume true; {5389#true} is VALID [2020-07-10 19:02:49,953 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {5389#true} {5390#false} #114#return; {5390#false} is VALID [2020-07-10 19:02:49,955 INFO L263 TraceCheckUtils]: 0: Hoare triple {5389#true} call ULTIMATE.init(); {5420#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:49,955 INFO L280 TraceCheckUtils]: 1: Hoare triple {5420#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5389#true} is VALID [2020-07-10 19:02:49,955 INFO L280 TraceCheckUtils]: 2: Hoare triple {5389#true} #valid := #valid[0 := 0]; {5389#true} is VALID [2020-07-10 19:02:49,956 INFO L280 TraceCheckUtils]: 3: Hoare triple {5389#true} assume 0 < #StackHeapBarrier; {5389#true} is VALID [2020-07-10 19:02:49,956 INFO L280 TraceCheckUtils]: 4: Hoare triple {5389#true} assume true; {5389#true} is VALID [2020-07-10 19:02:49,956 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5389#true} {5389#true} #110#return; {5389#true} is VALID [2020-07-10 19:02:49,956 INFO L263 TraceCheckUtils]: 6: Hoare triple {5389#true} call #t~ret13 := main(); {5389#true} is VALID [2020-07-10 19:02:49,957 INFO L280 TraceCheckUtils]: 7: Hoare triple {5389#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {5389#true} is VALID [2020-07-10 19:02:49,957 INFO L280 TraceCheckUtils]: 8: Hoare triple {5389#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {5389#true} is VALID [2020-07-10 19:02:49,957 INFO L280 TraceCheckUtils]: 9: Hoare triple {5389#true} havoc ~i~0; {5389#true} is VALID [2020-07-10 19:02:49,957 INFO L280 TraceCheckUtils]: 10: Hoare triple {5389#true} havoc ~pa~0.base, ~pa~0.offset; {5389#true} is VALID [2020-07-10 19:02:49,957 INFO L280 TraceCheckUtils]: 11: Hoare triple {5389#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {5389#true} is VALID [2020-07-10 19:02:49,958 INFO L280 TraceCheckUtils]: 12: Hoare triple {5389#true} ~i~0 := #t~nondet2; {5389#true} is VALID [2020-07-10 19:02:49,958 INFO L280 TraceCheckUtils]: 13: Hoare triple {5389#true} havoc #t~nondet2; {5389#true} is VALID [2020-07-10 19:02:49,959 INFO L280 TraceCheckUtils]: 14: Hoare triple {5389#true} ~j~0 := 0; {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,959 INFO L280 TraceCheckUtils]: 15: Hoare triple {5396#(= 0 main_~j~0)} assume !!(~j~0 < 10); {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,960 INFO L280 TraceCheckUtils]: 16: Hoare triple {5396#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,960 INFO L280 TraceCheckUtils]: 17: Hoare triple {5396#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,961 INFO L280 TraceCheckUtils]: 18: Hoare triple {5396#(= 0 main_~j~0)} havoc #t~nondet4; {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,961 INFO L280 TraceCheckUtils]: 19: Hoare triple {5396#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,962 INFO L280 TraceCheckUtils]: 20: Hoare triple {5396#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,962 INFO L280 TraceCheckUtils]: 21: Hoare triple {5396#(= 0 main_~j~0)} havoc #t~nondet5; {5396#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:49,964 INFO L280 TraceCheckUtils]: 22: Hoare triple {5396#(= 0 main_~j~0)} #t~post3 := ~j~0; {5397#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:49,964 INFO L280 TraceCheckUtils]: 23: Hoare triple {5397#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,965 INFO L280 TraceCheckUtils]: 24: Hoare triple {5398#(<= main_~j~0 1)} havoc #t~post3; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,966 INFO L280 TraceCheckUtils]: 25: Hoare triple {5398#(<= main_~j~0 1)} assume !!(~j~0 < 10); {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,967 INFO L280 TraceCheckUtils]: 26: Hoare triple {5398#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,967 INFO L280 TraceCheckUtils]: 27: Hoare triple {5398#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,968 INFO L280 TraceCheckUtils]: 28: Hoare triple {5398#(<= main_~j~0 1)} havoc #t~nondet4; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,969 INFO L280 TraceCheckUtils]: 29: Hoare triple {5398#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,969 INFO L280 TraceCheckUtils]: 30: Hoare triple {5398#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,970 INFO L280 TraceCheckUtils]: 31: Hoare triple {5398#(<= main_~j~0 1)} havoc #t~nondet5; {5398#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:49,970 INFO L280 TraceCheckUtils]: 32: Hoare triple {5398#(<= main_~j~0 1)} #t~post3 := ~j~0; {5399#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:49,971 INFO L280 TraceCheckUtils]: 33: Hoare triple {5399#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,972 INFO L280 TraceCheckUtils]: 34: Hoare triple {5400#(<= main_~j~0 2)} havoc #t~post3; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,973 INFO L280 TraceCheckUtils]: 35: Hoare triple {5400#(<= main_~j~0 2)} assume !!(~j~0 < 10); {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,973 INFO L280 TraceCheckUtils]: 36: Hoare triple {5400#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,974 INFO L280 TraceCheckUtils]: 37: Hoare triple {5400#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,974 INFO L280 TraceCheckUtils]: 38: Hoare triple {5400#(<= main_~j~0 2)} havoc #t~nondet4; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,975 INFO L280 TraceCheckUtils]: 39: Hoare triple {5400#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,975 INFO L280 TraceCheckUtils]: 40: Hoare triple {5400#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,976 INFO L280 TraceCheckUtils]: 41: Hoare triple {5400#(<= main_~j~0 2)} havoc #t~nondet5; {5400#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:49,976 INFO L280 TraceCheckUtils]: 42: Hoare triple {5400#(<= main_~j~0 2)} #t~post3 := ~j~0; {5401#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:49,977 INFO L280 TraceCheckUtils]: 43: Hoare triple {5401#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,978 INFO L280 TraceCheckUtils]: 44: Hoare triple {5402#(<= main_~j~0 3)} havoc #t~post3; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,979 INFO L280 TraceCheckUtils]: 45: Hoare triple {5402#(<= main_~j~0 3)} assume !!(~j~0 < 10); {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,980 INFO L280 TraceCheckUtils]: 46: Hoare triple {5402#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,980 INFO L280 TraceCheckUtils]: 47: Hoare triple {5402#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,981 INFO L280 TraceCheckUtils]: 48: Hoare triple {5402#(<= main_~j~0 3)} havoc #t~nondet4; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,981 INFO L280 TraceCheckUtils]: 49: Hoare triple {5402#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,982 INFO L280 TraceCheckUtils]: 50: Hoare triple {5402#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,982 INFO L280 TraceCheckUtils]: 51: Hoare triple {5402#(<= main_~j~0 3)} havoc #t~nondet5; {5402#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:49,983 INFO L280 TraceCheckUtils]: 52: Hoare triple {5402#(<= main_~j~0 3)} #t~post3 := ~j~0; {5403#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:49,983 INFO L280 TraceCheckUtils]: 53: Hoare triple {5403#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,984 INFO L280 TraceCheckUtils]: 54: Hoare triple {5404#(<= main_~j~0 4)} havoc #t~post3; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,985 INFO L280 TraceCheckUtils]: 55: Hoare triple {5404#(<= main_~j~0 4)} assume !!(~j~0 < 10); {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,985 INFO L280 TraceCheckUtils]: 56: Hoare triple {5404#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,986 INFO L280 TraceCheckUtils]: 57: Hoare triple {5404#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,986 INFO L280 TraceCheckUtils]: 58: Hoare triple {5404#(<= main_~j~0 4)} havoc #t~nondet4; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,987 INFO L280 TraceCheckUtils]: 59: Hoare triple {5404#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,988 INFO L280 TraceCheckUtils]: 60: Hoare triple {5404#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,988 INFO L280 TraceCheckUtils]: 61: Hoare triple {5404#(<= main_~j~0 4)} havoc #t~nondet5; {5404#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:49,989 INFO L280 TraceCheckUtils]: 62: Hoare triple {5404#(<= main_~j~0 4)} #t~post3 := ~j~0; {5405#(<= |main_#t~post3| 4)} is VALID [2020-07-10 19:02:49,990 INFO L280 TraceCheckUtils]: 63: Hoare triple {5405#(<= |main_#t~post3| 4)} ~j~0 := 1 + #t~post3; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,990 INFO L280 TraceCheckUtils]: 64: Hoare triple {5406#(<= main_~j~0 5)} havoc #t~post3; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,991 INFO L280 TraceCheckUtils]: 65: Hoare triple {5406#(<= main_~j~0 5)} assume !!(~j~0 < 10); {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,991 INFO L280 TraceCheckUtils]: 66: Hoare triple {5406#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,992 INFO L280 TraceCheckUtils]: 67: Hoare triple {5406#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,992 INFO L280 TraceCheckUtils]: 68: Hoare triple {5406#(<= main_~j~0 5)} havoc #t~nondet4; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,993 INFO L280 TraceCheckUtils]: 69: Hoare triple {5406#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,994 INFO L280 TraceCheckUtils]: 70: Hoare triple {5406#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,994 INFO L280 TraceCheckUtils]: 71: Hoare triple {5406#(<= main_~j~0 5)} havoc #t~nondet5; {5406#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:49,995 INFO L280 TraceCheckUtils]: 72: Hoare triple {5406#(<= main_~j~0 5)} #t~post3 := ~j~0; {5407#(<= |main_#t~post3| 5)} is VALID [2020-07-10 19:02:49,996 INFO L280 TraceCheckUtils]: 73: Hoare triple {5407#(<= |main_#t~post3| 5)} ~j~0 := 1 + #t~post3; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:49,996 INFO L280 TraceCheckUtils]: 74: Hoare triple {5408#(<= main_~j~0 6)} havoc #t~post3; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:49,997 INFO L280 TraceCheckUtils]: 75: Hoare triple {5408#(<= main_~j~0 6)} assume !!(~j~0 < 10); {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:49,998 INFO L280 TraceCheckUtils]: 76: Hoare triple {5408#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:49,999 INFO L280 TraceCheckUtils]: 77: Hoare triple {5408#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:49,999 INFO L280 TraceCheckUtils]: 78: Hoare triple {5408#(<= main_~j~0 6)} havoc #t~nondet4; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:50,000 INFO L280 TraceCheckUtils]: 79: Hoare triple {5408#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:50,000 INFO L280 TraceCheckUtils]: 80: Hoare triple {5408#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:50,001 INFO L280 TraceCheckUtils]: 81: Hoare triple {5408#(<= main_~j~0 6)} havoc #t~nondet5; {5408#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:50,002 INFO L280 TraceCheckUtils]: 82: Hoare triple {5408#(<= main_~j~0 6)} #t~post3 := ~j~0; {5409#(<= |main_#t~post3| 6)} is VALID [2020-07-10 19:02:50,003 INFO L280 TraceCheckUtils]: 83: Hoare triple {5409#(<= |main_#t~post3| 6)} ~j~0 := 1 + #t~post3; {5410#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:50,004 INFO L280 TraceCheckUtils]: 84: Hoare triple {5410#(<= main_~j~0 7)} havoc #t~post3; {5410#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:50,005 INFO L280 TraceCheckUtils]: 85: Hoare triple {5410#(<= main_~j~0 7)} assume !(~j~0 < 10); {5390#false} is VALID [2020-07-10 19:02:50,005 INFO L280 TraceCheckUtils]: 86: Hoare triple {5390#false} assume ~i~0 >= 0 && ~i~0 < 10; {5390#false} is VALID [2020-07-10 19:02:50,005 INFO L280 TraceCheckUtils]: 87: Hoare triple {5390#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {5390#false} is VALID [2020-07-10 19:02:50,005 INFO L280 TraceCheckUtils]: 88: Hoare triple {5390#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {5390#false} is VALID [2020-07-10 19:02:50,006 INFO L280 TraceCheckUtils]: 89: Hoare triple {5390#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {5390#false} is VALID [2020-07-10 19:02:50,006 INFO L280 TraceCheckUtils]: 90: Hoare triple {5390#false} havoc #t~mem6.base, #t~mem6.offset; {5390#false} is VALID [2020-07-10 19:02:50,006 INFO L280 TraceCheckUtils]: 91: Hoare triple {5390#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {5390#false} is VALID [2020-07-10 19:02:50,006 INFO L280 TraceCheckUtils]: 92: Hoare triple {5390#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 93: Hoare triple {5390#false} assume #t~mem8 > 0; {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 94: Hoare triple {5390#false} havoc #t~mem7.base, #t~mem7.offset; {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 95: Hoare triple {5390#false} havoc #t~mem8; {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 96: Hoare triple {5390#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 97: Hoare triple {5390#false} ~i~0 := #t~mem9 - 10; {5390#false} is VALID [2020-07-10 19:02:50,007 INFO L280 TraceCheckUtils]: 98: Hoare triple {5390#false} havoc #t~mem9; {5390#false} is VALID [2020-07-10 19:02:50,008 INFO L280 TraceCheckUtils]: 99: Hoare triple {5390#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {5390#false} is VALID [2020-07-10 19:02:50,008 INFO L280 TraceCheckUtils]: 100: Hoare triple {5390#false} assume !(~i~0 < #t~mem10); {5390#false} is VALID [2020-07-10 19:02:50,008 INFO L280 TraceCheckUtils]: 101: Hoare triple {5390#false} havoc #t~mem10; {5390#false} is VALID [2020-07-10 19:02:50,009 INFO L263 TraceCheckUtils]: 102: Hoare triple {5390#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {5389#true} is VALID [2020-07-10 19:02:50,009 INFO L280 TraceCheckUtils]: 103: Hoare triple {5389#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {5389#true} is VALID [2020-07-10 19:02:50,010 INFO L280 TraceCheckUtils]: 104: Hoare triple {5389#true} ~i := #in~i; {5389#true} is VALID [2020-07-10 19:02:50,010 INFO L280 TraceCheckUtils]: 105: Hoare triple {5389#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {5389#true} is VALID [2020-07-10 19:02:50,010 INFO L280 TraceCheckUtils]: 106: Hoare triple {5389#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {5389#true} is VALID [2020-07-10 19:02:50,010 INFO L280 TraceCheckUtils]: 107: Hoare triple {5389#true} #res := (if #t~mem1 == ~i then 1 else 0); {5389#true} is VALID [2020-07-10 19:02:50,011 INFO L280 TraceCheckUtils]: 108: Hoare triple {5389#true} havoc #t~mem0.base, #t~mem0.offset; {5389#true} is VALID [2020-07-10 19:02:50,011 INFO L280 TraceCheckUtils]: 109: Hoare triple {5389#true} havoc #t~mem1; {5389#true} is VALID [2020-07-10 19:02:50,011 INFO L280 TraceCheckUtils]: 110: Hoare triple {5389#true} assume true; {5389#true} is VALID [2020-07-10 19:02:50,011 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {5389#true} {5390#false} #114#return; {5390#false} is VALID [2020-07-10 19:02:50,011 INFO L280 TraceCheckUtils]: 112: Hoare triple {5390#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {5390#false} is VALID [2020-07-10 19:02:50,012 INFO L280 TraceCheckUtils]: 113: Hoare triple {5390#false} assume 0 == #t~ret12; {5390#false} is VALID [2020-07-10 19:02:50,012 INFO L280 TraceCheckUtils]: 114: Hoare triple {5390#false} havoc #t~ret12; {5390#false} is VALID [2020-07-10 19:02:50,012 INFO L280 TraceCheckUtils]: 115: Hoare triple {5390#false} assume !false; {5390#false} is VALID [2020-07-10 19:02:50,024 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-10 19:02:50,025 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:50,025 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [742053426] [2020-07-10 19:02:50,025 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:50,025 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2020-07-10 19:02:50,030 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [752754580] [2020-07-10 19:02:50,031 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 116 [2020-07-10 19:02:50,031 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:50,031 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2020-07-10 19:02:50,149 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:50,150 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2020-07-10 19:02:50,150 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:50,150 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2020-07-10 19:02:50,150 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2020-07-10 19:02:50,151 INFO L87 Difference]: Start difference. First operand 121 states and 122 transitions. Second operand 18 states. [2020-07-10 19:02:51,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:51,037 INFO L93 Difference]: Finished difference Result 174 states and 176 transitions. [2020-07-10 19:02:51,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2020-07-10 19:02:51,038 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 116 [2020-07-10 19:02:51,038 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:51,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-10 19:02:51,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 176 transitions. [2020-07-10 19:02:51,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-10 19:02:51,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 176 transitions. [2020-07-10 19:02:51,045 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 176 transitions. [2020-07-10 19:02:51,256 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:51,260 INFO L225 Difference]: With dead ends: 174 [2020-07-10 19:02:51,260 INFO L226 Difference]: Without dead ends: 139 [2020-07-10 19:02:51,261 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 146 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=320, Invalid=672, Unknown=0, NotChecked=0, Total=992 [2020-07-10 19:02:51,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2020-07-10 19:02:51,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 131. [2020-07-10 19:02:51,372 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:51,372 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand 131 states. [2020-07-10 19:02:51,372 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand 131 states. [2020-07-10 19:02:51,372 INFO L87 Difference]: Start difference. First operand 139 states. Second operand 131 states. [2020-07-10 19:02:51,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:51,377 INFO L93 Difference]: Finished difference Result 139 states and 140 transitions. [2020-07-10 19:02:51,377 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 140 transitions. [2020-07-10 19:02:51,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:51,377 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:51,378 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 139 states. [2020-07-10 19:02:51,378 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 139 states. [2020-07-10 19:02:51,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:51,382 INFO L93 Difference]: Finished difference Result 139 states and 140 transitions. [2020-07-10 19:02:51,382 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 140 transitions. [2020-07-10 19:02:51,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:51,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:51,383 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:51,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:51,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 131 states. [2020-07-10 19:02:51,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 132 transitions. [2020-07-10 19:02:51,387 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 132 transitions. Word has length 116 [2020-07-10 19:02:51,387 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:51,388 INFO L479 AbstractCegarLoop]: Abstraction has 131 states and 132 transitions. [2020-07-10 19:02:51,388 INFO L480 AbstractCegarLoop]: Interpolant automaton has 18 states. [2020-07-10 19:02:51,388 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 131 states and 132 transitions. [2020-07-10 19:02:51,539 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:51,540 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 132 transitions. [2020-07-10 19:02:51,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2020-07-10 19:02:51,542 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:51,542 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 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-10 19:02:51,543 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-10 19:02:51,543 INFO L427 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:51,543 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:51,543 INFO L82 PathProgramCache]: Analyzing trace with hash 212286192, now seen corresponding path program 8 times [2020-07-10 19:02:51,544 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:51,544 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1290405225] [2020-07-10 19:02:51,544 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:51,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:51,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:51,882 INFO L280 TraceCheckUtils]: 0: Hoare triple {6372#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6339#true} is VALID [2020-07-10 19:02:51,882 INFO L280 TraceCheckUtils]: 1: Hoare triple {6339#true} #valid := #valid[0 := 0]; {6339#true} is VALID [2020-07-10 19:02:51,882 INFO L280 TraceCheckUtils]: 2: Hoare triple {6339#true} assume 0 < #StackHeapBarrier; {6339#true} is VALID [2020-07-10 19:02:51,883 INFO L280 TraceCheckUtils]: 3: Hoare triple {6339#true} assume true; {6339#true} is VALID [2020-07-10 19:02:51,883 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6339#true} {6339#true} #110#return; {6339#true} is VALID [2020-07-10 19:02:51,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:51,890 INFO L280 TraceCheckUtils]: 0: Hoare triple {6339#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {6339#true} is VALID [2020-07-10 19:02:51,890 INFO L280 TraceCheckUtils]: 1: Hoare triple {6339#true} ~i := #in~i; {6339#true} is VALID [2020-07-10 19:02:51,890 INFO L280 TraceCheckUtils]: 2: Hoare triple {6339#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {6339#true} is VALID [2020-07-10 19:02:51,891 INFO L280 TraceCheckUtils]: 3: Hoare triple {6339#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {6339#true} is VALID [2020-07-10 19:02:51,891 INFO L280 TraceCheckUtils]: 4: Hoare triple {6339#true} #res := (if #t~mem1 == ~i then 1 else 0); {6339#true} is VALID [2020-07-10 19:02:51,891 INFO L280 TraceCheckUtils]: 5: Hoare triple {6339#true} havoc #t~mem0.base, #t~mem0.offset; {6339#true} is VALID [2020-07-10 19:02:51,891 INFO L280 TraceCheckUtils]: 6: Hoare triple {6339#true} havoc #t~mem1; {6339#true} is VALID [2020-07-10 19:02:51,892 INFO L280 TraceCheckUtils]: 7: Hoare triple {6339#true} assume true; {6339#true} is VALID [2020-07-10 19:02:51,892 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {6339#true} {6340#false} #114#return; {6340#false} is VALID [2020-07-10 19:02:51,893 INFO L263 TraceCheckUtils]: 0: Hoare triple {6339#true} call ULTIMATE.init(); {6372#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:51,894 INFO L280 TraceCheckUtils]: 1: Hoare triple {6372#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6339#true} is VALID [2020-07-10 19:02:51,894 INFO L280 TraceCheckUtils]: 2: Hoare triple {6339#true} #valid := #valid[0 := 0]; {6339#true} is VALID [2020-07-10 19:02:51,894 INFO L280 TraceCheckUtils]: 3: Hoare triple {6339#true} assume 0 < #StackHeapBarrier; {6339#true} is VALID [2020-07-10 19:02:51,895 INFO L280 TraceCheckUtils]: 4: Hoare triple {6339#true} assume true; {6339#true} is VALID [2020-07-10 19:02:51,895 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6339#true} {6339#true} #110#return; {6339#true} is VALID [2020-07-10 19:02:51,895 INFO L263 TraceCheckUtils]: 6: Hoare triple {6339#true} call #t~ret13 := main(); {6339#true} is VALID [2020-07-10 19:02:51,895 INFO L280 TraceCheckUtils]: 7: Hoare triple {6339#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {6339#true} is VALID [2020-07-10 19:02:51,896 INFO L280 TraceCheckUtils]: 8: Hoare triple {6339#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {6339#true} is VALID [2020-07-10 19:02:51,896 INFO L280 TraceCheckUtils]: 9: Hoare triple {6339#true} havoc ~i~0; {6339#true} is VALID [2020-07-10 19:02:51,896 INFO L280 TraceCheckUtils]: 10: Hoare triple {6339#true} havoc ~pa~0.base, ~pa~0.offset; {6339#true} is VALID [2020-07-10 19:02:51,896 INFO L280 TraceCheckUtils]: 11: Hoare triple {6339#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {6339#true} is VALID [2020-07-10 19:02:51,897 INFO L280 TraceCheckUtils]: 12: Hoare triple {6339#true} ~i~0 := #t~nondet2; {6339#true} is VALID [2020-07-10 19:02:51,897 INFO L280 TraceCheckUtils]: 13: Hoare triple {6339#true} havoc #t~nondet2; {6339#true} is VALID [2020-07-10 19:02:51,898 INFO L280 TraceCheckUtils]: 14: Hoare triple {6339#true} ~j~0 := 0; {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,899 INFO L280 TraceCheckUtils]: 15: Hoare triple {6346#(= 0 main_~j~0)} assume !!(~j~0 < 10); {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,899 INFO L280 TraceCheckUtils]: 16: Hoare triple {6346#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,900 INFO L280 TraceCheckUtils]: 17: Hoare triple {6346#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,901 INFO L280 TraceCheckUtils]: 18: Hoare triple {6346#(= 0 main_~j~0)} havoc #t~nondet4; {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,902 INFO L280 TraceCheckUtils]: 19: Hoare triple {6346#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,902 INFO L280 TraceCheckUtils]: 20: Hoare triple {6346#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,903 INFO L280 TraceCheckUtils]: 21: Hoare triple {6346#(= 0 main_~j~0)} havoc #t~nondet5; {6346#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:51,904 INFO L280 TraceCheckUtils]: 22: Hoare triple {6346#(= 0 main_~j~0)} #t~post3 := ~j~0; {6347#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:51,905 INFO L280 TraceCheckUtils]: 23: Hoare triple {6347#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,906 INFO L280 TraceCheckUtils]: 24: Hoare triple {6348#(<= main_~j~0 1)} havoc #t~post3; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,906 INFO L280 TraceCheckUtils]: 25: Hoare triple {6348#(<= main_~j~0 1)} assume !!(~j~0 < 10); {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,907 INFO L280 TraceCheckUtils]: 26: Hoare triple {6348#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,908 INFO L280 TraceCheckUtils]: 27: Hoare triple {6348#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,908 INFO L280 TraceCheckUtils]: 28: Hoare triple {6348#(<= main_~j~0 1)} havoc #t~nondet4; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,909 INFO L280 TraceCheckUtils]: 29: Hoare triple {6348#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,910 INFO L280 TraceCheckUtils]: 30: Hoare triple {6348#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,910 INFO L280 TraceCheckUtils]: 31: Hoare triple {6348#(<= main_~j~0 1)} havoc #t~nondet5; {6348#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:51,911 INFO L280 TraceCheckUtils]: 32: Hoare triple {6348#(<= main_~j~0 1)} #t~post3 := ~j~0; {6349#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:51,912 INFO L280 TraceCheckUtils]: 33: Hoare triple {6349#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,913 INFO L280 TraceCheckUtils]: 34: Hoare triple {6350#(<= main_~j~0 2)} havoc #t~post3; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,913 INFO L280 TraceCheckUtils]: 35: Hoare triple {6350#(<= main_~j~0 2)} assume !!(~j~0 < 10); {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,914 INFO L280 TraceCheckUtils]: 36: Hoare triple {6350#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,914 INFO L280 TraceCheckUtils]: 37: Hoare triple {6350#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,915 INFO L280 TraceCheckUtils]: 38: Hoare triple {6350#(<= main_~j~0 2)} havoc #t~nondet4; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,916 INFO L280 TraceCheckUtils]: 39: Hoare triple {6350#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,916 INFO L280 TraceCheckUtils]: 40: Hoare triple {6350#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,917 INFO L280 TraceCheckUtils]: 41: Hoare triple {6350#(<= main_~j~0 2)} havoc #t~nondet5; {6350#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:51,917 INFO L280 TraceCheckUtils]: 42: Hoare triple {6350#(<= main_~j~0 2)} #t~post3 := ~j~0; {6351#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:51,918 INFO L280 TraceCheckUtils]: 43: Hoare triple {6351#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,919 INFO L280 TraceCheckUtils]: 44: Hoare triple {6352#(<= main_~j~0 3)} havoc #t~post3; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,920 INFO L280 TraceCheckUtils]: 45: Hoare triple {6352#(<= main_~j~0 3)} assume !!(~j~0 < 10); {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,921 INFO L280 TraceCheckUtils]: 46: Hoare triple {6352#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,921 INFO L280 TraceCheckUtils]: 47: Hoare triple {6352#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,922 INFO L280 TraceCheckUtils]: 48: Hoare triple {6352#(<= main_~j~0 3)} havoc #t~nondet4; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,923 INFO L280 TraceCheckUtils]: 49: Hoare triple {6352#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,923 INFO L280 TraceCheckUtils]: 50: Hoare triple {6352#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,924 INFO L280 TraceCheckUtils]: 51: Hoare triple {6352#(<= main_~j~0 3)} havoc #t~nondet5; {6352#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:51,925 INFO L280 TraceCheckUtils]: 52: Hoare triple {6352#(<= main_~j~0 3)} #t~post3 := ~j~0; {6353#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:51,926 INFO L280 TraceCheckUtils]: 53: Hoare triple {6353#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,927 INFO L280 TraceCheckUtils]: 54: Hoare triple {6354#(<= main_~j~0 4)} havoc #t~post3; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,928 INFO L280 TraceCheckUtils]: 55: Hoare triple {6354#(<= main_~j~0 4)} assume !!(~j~0 < 10); {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,928 INFO L280 TraceCheckUtils]: 56: Hoare triple {6354#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,930 INFO L280 TraceCheckUtils]: 57: Hoare triple {6354#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,930 INFO L280 TraceCheckUtils]: 58: Hoare triple {6354#(<= main_~j~0 4)} havoc #t~nondet4; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,931 INFO L280 TraceCheckUtils]: 59: Hoare triple {6354#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,932 INFO L280 TraceCheckUtils]: 60: Hoare triple {6354#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,932 INFO L280 TraceCheckUtils]: 61: Hoare triple {6354#(<= main_~j~0 4)} havoc #t~nondet5; {6354#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:51,933 INFO L280 TraceCheckUtils]: 62: Hoare triple {6354#(<= main_~j~0 4)} #t~post3 := ~j~0; {6355#(<= |main_#t~post3| 4)} is VALID [2020-07-10 19:02:51,934 INFO L280 TraceCheckUtils]: 63: Hoare triple {6355#(<= |main_#t~post3| 4)} ~j~0 := 1 + #t~post3; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,935 INFO L280 TraceCheckUtils]: 64: Hoare triple {6356#(<= main_~j~0 5)} havoc #t~post3; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,935 INFO L280 TraceCheckUtils]: 65: Hoare triple {6356#(<= main_~j~0 5)} assume !!(~j~0 < 10); {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,936 INFO L280 TraceCheckUtils]: 66: Hoare triple {6356#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,937 INFO L280 TraceCheckUtils]: 67: Hoare triple {6356#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,938 INFO L280 TraceCheckUtils]: 68: Hoare triple {6356#(<= main_~j~0 5)} havoc #t~nondet4; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,938 INFO L280 TraceCheckUtils]: 69: Hoare triple {6356#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,939 INFO L280 TraceCheckUtils]: 70: Hoare triple {6356#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,941 INFO L280 TraceCheckUtils]: 71: Hoare triple {6356#(<= main_~j~0 5)} havoc #t~nondet5; {6356#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:51,955 INFO L280 TraceCheckUtils]: 72: Hoare triple {6356#(<= main_~j~0 5)} #t~post3 := ~j~0; {6357#(<= |main_#t~post3| 5)} is VALID [2020-07-10 19:02:51,957 INFO L280 TraceCheckUtils]: 73: Hoare triple {6357#(<= |main_#t~post3| 5)} ~j~0 := 1 + #t~post3; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,960 INFO L280 TraceCheckUtils]: 74: Hoare triple {6358#(<= main_~j~0 6)} havoc #t~post3; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,961 INFO L280 TraceCheckUtils]: 75: Hoare triple {6358#(<= main_~j~0 6)} assume !!(~j~0 < 10); {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,962 INFO L280 TraceCheckUtils]: 76: Hoare triple {6358#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,963 INFO L280 TraceCheckUtils]: 77: Hoare triple {6358#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,964 INFO L280 TraceCheckUtils]: 78: Hoare triple {6358#(<= main_~j~0 6)} havoc #t~nondet4; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,965 INFO L280 TraceCheckUtils]: 79: Hoare triple {6358#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,966 INFO L280 TraceCheckUtils]: 80: Hoare triple {6358#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,967 INFO L280 TraceCheckUtils]: 81: Hoare triple {6358#(<= main_~j~0 6)} havoc #t~nondet5; {6358#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:51,969 INFO L280 TraceCheckUtils]: 82: Hoare triple {6358#(<= main_~j~0 6)} #t~post3 := ~j~0; {6359#(<= |main_#t~post3| 6)} is VALID [2020-07-10 19:02:51,970 INFO L280 TraceCheckUtils]: 83: Hoare triple {6359#(<= |main_#t~post3| 6)} ~j~0 := 1 + #t~post3; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,971 INFO L280 TraceCheckUtils]: 84: Hoare triple {6360#(<= main_~j~0 7)} havoc #t~post3; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,972 INFO L280 TraceCheckUtils]: 85: Hoare triple {6360#(<= main_~j~0 7)} assume !!(~j~0 < 10); {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,972 INFO L280 TraceCheckUtils]: 86: Hoare triple {6360#(<= main_~j~0 7)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,973 INFO L280 TraceCheckUtils]: 87: Hoare triple {6360#(<= main_~j~0 7)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,974 INFO L280 TraceCheckUtils]: 88: Hoare triple {6360#(<= main_~j~0 7)} havoc #t~nondet4; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,974 INFO L280 TraceCheckUtils]: 89: Hoare triple {6360#(<= main_~j~0 7)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,975 INFO L280 TraceCheckUtils]: 90: Hoare triple {6360#(<= main_~j~0 7)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,976 INFO L280 TraceCheckUtils]: 91: Hoare triple {6360#(<= main_~j~0 7)} havoc #t~nondet5; {6360#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:51,977 INFO L280 TraceCheckUtils]: 92: Hoare triple {6360#(<= main_~j~0 7)} #t~post3 := ~j~0; {6361#(<= |main_#t~post3| 7)} is VALID [2020-07-10 19:02:51,978 INFO L280 TraceCheckUtils]: 93: Hoare triple {6361#(<= |main_#t~post3| 7)} ~j~0 := 1 + #t~post3; {6362#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:51,978 INFO L280 TraceCheckUtils]: 94: Hoare triple {6362#(<= main_~j~0 8)} havoc #t~post3; {6362#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:51,979 INFO L280 TraceCheckUtils]: 95: Hoare triple {6362#(<= main_~j~0 8)} assume !(~j~0 < 10); {6340#false} is VALID [2020-07-10 19:02:51,979 INFO L280 TraceCheckUtils]: 96: Hoare triple {6340#false} assume ~i~0 >= 0 && ~i~0 < 10; {6340#false} is VALID [2020-07-10 19:02:51,980 INFO L280 TraceCheckUtils]: 97: Hoare triple {6340#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {6340#false} is VALID [2020-07-10 19:02:51,980 INFO L280 TraceCheckUtils]: 98: Hoare triple {6340#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {6340#false} is VALID [2020-07-10 19:02:51,980 INFO L280 TraceCheckUtils]: 99: Hoare triple {6340#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {6340#false} is VALID [2020-07-10 19:02:51,980 INFO L280 TraceCheckUtils]: 100: Hoare triple {6340#false} havoc #t~mem6.base, #t~mem6.offset; {6340#false} is VALID [2020-07-10 19:02:51,980 INFO L280 TraceCheckUtils]: 101: Hoare triple {6340#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {6340#false} is VALID [2020-07-10 19:02:51,981 INFO L280 TraceCheckUtils]: 102: Hoare triple {6340#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {6340#false} is VALID [2020-07-10 19:02:51,981 INFO L280 TraceCheckUtils]: 103: Hoare triple {6340#false} assume #t~mem8 > 0; {6340#false} is VALID [2020-07-10 19:02:51,981 INFO L280 TraceCheckUtils]: 104: Hoare triple {6340#false} havoc #t~mem7.base, #t~mem7.offset; {6340#false} is VALID [2020-07-10 19:02:51,981 INFO L280 TraceCheckUtils]: 105: Hoare triple {6340#false} havoc #t~mem8; {6340#false} is VALID [2020-07-10 19:02:51,981 INFO L280 TraceCheckUtils]: 106: Hoare triple {6340#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {6340#false} is VALID [2020-07-10 19:02:51,982 INFO L280 TraceCheckUtils]: 107: Hoare triple {6340#false} ~i~0 := #t~mem9 - 10; {6340#false} is VALID [2020-07-10 19:02:51,982 INFO L280 TraceCheckUtils]: 108: Hoare triple {6340#false} havoc #t~mem9; {6340#false} is VALID [2020-07-10 19:02:51,982 INFO L280 TraceCheckUtils]: 109: Hoare triple {6340#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {6340#false} is VALID [2020-07-10 19:02:51,982 INFO L280 TraceCheckUtils]: 110: Hoare triple {6340#false} assume !(~i~0 < #t~mem10); {6340#false} is VALID [2020-07-10 19:02:51,983 INFO L280 TraceCheckUtils]: 111: Hoare triple {6340#false} havoc #t~mem10; {6340#false} is VALID [2020-07-10 19:02:51,983 INFO L263 TraceCheckUtils]: 112: Hoare triple {6340#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {6339#true} is VALID [2020-07-10 19:02:51,983 INFO L280 TraceCheckUtils]: 113: Hoare triple {6339#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {6339#true} is VALID [2020-07-10 19:02:51,983 INFO L280 TraceCheckUtils]: 114: Hoare triple {6339#true} ~i := #in~i; {6339#true} is VALID [2020-07-10 19:02:51,983 INFO L280 TraceCheckUtils]: 115: Hoare triple {6339#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {6339#true} is VALID [2020-07-10 19:02:51,984 INFO L280 TraceCheckUtils]: 116: Hoare triple {6339#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {6339#true} is VALID [2020-07-10 19:02:51,984 INFO L280 TraceCheckUtils]: 117: Hoare triple {6339#true} #res := (if #t~mem1 == ~i then 1 else 0); {6339#true} is VALID [2020-07-10 19:02:51,984 INFO L280 TraceCheckUtils]: 118: Hoare triple {6339#true} havoc #t~mem0.base, #t~mem0.offset; {6339#true} is VALID [2020-07-10 19:02:51,984 INFO L280 TraceCheckUtils]: 119: Hoare triple {6339#true} havoc #t~mem1; {6339#true} is VALID [2020-07-10 19:02:51,984 INFO L280 TraceCheckUtils]: 120: Hoare triple {6339#true} assume true; {6339#true} is VALID [2020-07-10 19:02:51,985 INFO L275 TraceCheckUtils]: 121: Hoare quadruple {6339#true} {6340#false} #114#return; {6340#false} is VALID [2020-07-10 19:02:51,985 INFO L280 TraceCheckUtils]: 122: Hoare triple {6340#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {6340#false} is VALID [2020-07-10 19:02:51,985 INFO L280 TraceCheckUtils]: 123: Hoare triple {6340#false} assume 0 == #t~ret12; {6340#false} is VALID [2020-07-10 19:02:51,985 INFO L280 TraceCheckUtils]: 124: Hoare triple {6340#false} havoc #t~ret12; {6340#false} is VALID [2020-07-10 19:02:51,985 INFO L280 TraceCheckUtils]: 125: Hoare triple {6340#false} assume !false; {6340#false} is VALID [2020-07-10 19:02:52,000 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-10 19:02:52,001 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:52,001 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1290405225] [2020-07-10 19:02:52,001 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:52,002 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2020-07-10 19:02:52,002 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [859410852] [2020-07-10 19:02:52,002 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 126 [2020-07-10 19:02:52,003 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:52,003 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2020-07-10 19:02:52,141 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-10 19:02:52,141 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2020-07-10 19:02:52,141 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:52,142 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2020-07-10 19:02:52,142 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=279, Unknown=0, NotChecked=0, Total=380 [2020-07-10 19:02:52,142 INFO L87 Difference]: Start difference. First operand 131 states and 132 transitions. Second operand 20 states. [2020-07-10 19:02:53,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:53,847 INFO L93 Difference]: Finished difference Result 184 states and 186 transitions. [2020-07-10 19:02:53,847 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2020-07-10 19:02:53,847 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 126 [2020-07-10 19:02:53,847 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:53,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-10 19:02:53,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 186 transitions. [2020-07-10 19:02:53,852 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-10 19:02:53,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 186 transitions. [2020-07-10 19:02:53,856 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 186 transitions. [2020-07-10 19:02:54,061 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 186 edges. 186 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:54,063 INFO L225 Difference]: With dead ends: 184 [2020-07-10 19:02:54,064 INFO L226 Difference]: Without dead ends: 149 [2020-07-10 19:02:54,065 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 191 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=405, Invalid=855, Unknown=0, NotChecked=0, Total=1260 [2020-07-10 19:02:54,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2020-07-10 19:02:54,190 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 141. [2020-07-10 19:02:54,190 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:54,190 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand 141 states. [2020-07-10 19:02:54,190 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 141 states. [2020-07-10 19:02:54,191 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 141 states. [2020-07-10 19:02:54,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:54,194 INFO L93 Difference]: Finished difference Result 149 states and 150 transitions. [2020-07-10 19:02:54,194 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 150 transitions. [2020-07-10 19:02:54,195 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:54,195 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:54,195 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand 149 states. [2020-07-10 19:02:54,195 INFO L87 Difference]: Start difference. First operand 141 states. Second operand 149 states. [2020-07-10 19:02:54,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:54,198 INFO L93 Difference]: Finished difference Result 149 states and 150 transitions. [2020-07-10 19:02:54,199 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 150 transitions. [2020-07-10 19:02:54,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:54,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:54,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:54,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:54,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 141 states. [2020-07-10 19:02:54,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 142 transitions. [2020-07-10 19:02:54,203 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 142 transitions. Word has length 126 [2020-07-10 19:02:54,203 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:54,203 INFO L479 AbstractCegarLoop]: Abstraction has 141 states and 142 transitions. [2020-07-10 19:02:54,203 INFO L480 AbstractCegarLoop]: Interpolant automaton has 20 states. [2020-07-10 19:02:54,203 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 141 states and 142 transitions. [2020-07-10 19:02:54,384 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:54,384 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 142 transitions. [2020-07-10 19:02:54,386 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 137 [2020-07-10 19:02:54,387 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:54,387 INFO L422 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 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-10 19:02:54,387 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-10 19:02:54,388 INFO L427 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:54,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:54,388 INFO L82 PathProgramCache]: Analyzing trace with hash 786836554, now seen corresponding path program 9 times [2020-07-10 19:02:54,389 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:54,389 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [604682909] [2020-07-10 19:02:54,389 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:54,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:54,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:54,927 INFO L280 TraceCheckUtils]: 0: Hoare triple {7390#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {7355#true} is VALID [2020-07-10 19:02:54,927 INFO L280 TraceCheckUtils]: 1: Hoare triple {7355#true} #valid := #valid[0 := 0]; {7355#true} is VALID [2020-07-10 19:02:54,928 INFO L280 TraceCheckUtils]: 2: Hoare triple {7355#true} assume 0 < #StackHeapBarrier; {7355#true} is VALID [2020-07-10 19:02:54,928 INFO L280 TraceCheckUtils]: 3: Hoare triple {7355#true} assume true; {7355#true} is VALID [2020-07-10 19:02:54,929 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {7355#true} {7355#true} #110#return; {7355#true} is VALID [2020-07-10 19:02:54,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:02:54,936 INFO L280 TraceCheckUtils]: 0: Hoare triple {7355#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {7355#true} is VALID [2020-07-10 19:02:54,937 INFO L280 TraceCheckUtils]: 1: Hoare triple {7355#true} ~i := #in~i; {7355#true} is VALID [2020-07-10 19:02:54,937 INFO L280 TraceCheckUtils]: 2: Hoare triple {7355#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {7355#true} is VALID [2020-07-10 19:02:54,937 INFO L280 TraceCheckUtils]: 3: Hoare triple {7355#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {7355#true} is VALID [2020-07-10 19:02:54,938 INFO L280 TraceCheckUtils]: 4: Hoare triple {7355#true} #res := (if #t~mem1 == ~i then 1 else 0); {7355#true} is VALID [2020-07-10 19:02:54,938 INFO L280 TraceCheckUtils]: 5: Hoare triple {7355#true} havoc #t~mem0.base, #t~mem0.offset; {7355#true} is VALID [2020-07-10 19:02:54,938 INFO L280 TraceCheckUtils]: 6: Hoare triple {7355#true} havoc #t~mem1; {7355#true} is VALID [2020-07-10 19:02:54,939 INFO L280 TraceCheckUtils]: 7: Hoare triple {7355#true} assume true; {7355#true} is VALID [2020-07-10 19:02:54,939 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {7355#true} {7356#false} #114#return; {7356#false} is VALID [2020-07-10 19:02:54,940 INFO L263 TraceCheckUtils]: 0: Hoare triple {7355#true} call ULTIMATE.init(); {7390#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:02:54,941 INFO L280 TraceCheckUtils]: 1: Hoare triple {7390#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {7355#true} is VALID [2020-07-10 19:02:54,941 INFO L280 TraceCheckUtils]: 2: Hoare triple {7355#true} #valid := #valid[0 := 0]; {7355#true} is VALID [2020-07-10 19:02:54,942 INFO L280 TraceCheckUtils]: 3: Hoare triple {7355#true} assume 0 < #StackHeapBarrier; {7355#true} is VALID [2020-07-10 19:02:54,942 INFO L280 TraceCheckUtils]: 4: Hoare triple {7355#true} assume true; {7355#true} is VALID [2020-07-10 19:02:54,942 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {7355#true} {7355#true} #110#return; {7355#true} is VALID [2020-07-10 19:02:54,943 INFO L263 TraceCheckUtils]: 6: Hoare triple {7355#true} call #t~ret13 := main(); {7355#true} is VALID [2020-07-10 19:02:54,943 INFO L280 TraceCheckUtils]: 7: Hoare triple {7355#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {7355#true} is VALID [2020-07-10 19:02:54,943 INFO L280 TraceCheckUtils]: 8: Hoare triple {7355#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {7355#true} is VALID [2020-07-10 19:02:54,944 INFO L280 TraceCheckUtils]: 9: Hoare triple {7355#true} havoc ~i~0; {7355#true} is VALID [2020-07-10 19:02:54,944 INFO L280 TraceCheckUtils]: 10: Hoare triple {7355#true} havoc ~pa~0.base, ~pa~0.offset; {7355#true} is VALID [2020-07-10 19:02:54,944 INFO L280 TraceCheckUtils]: 11: Hoare triple {7355#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {7355#true} is VALID [2020-07-10 19:02:54,945 INFO L280 TraceCheckUtils]: 12: Hoare triple {7355#true} ~i~0 := #t~nondet2; {7355#true} is VALID [2020-07-10 19:02:54,945 INFO L280 TraceCheckUtils]: 13: Hoare triple {7355#true} havoc #t~nondet2; {7355#true} is VALID [2020-07-10 19:02:54,946 INFO L280 TraceCheckUtils]: 14: Hoare triple {7355#true} ~j~0 := 0; {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,947 INFO L280 TraceCheckUtils]: 15: Hoare triple {7362#(= 0 main_~j~0)} assume !!(~j~0 < 10); {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,948 INFO L280 TraceCheckUtils]: 16: Hoare triple {7362#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,948 INFO L280 TraceCheckUtils]: 17: Hoare triple {7362#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,949 INFO L280 TraceCheckUtils]: 18: Hoare triple {7362#(= 0 main_~j~0)} havoc #t~nondet4; {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,950 INFO L280 TraceCheckUtils]: 19: Hoare triple {7362#(= 0 main_~j~0)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,951 INFO L280 TraceCheckUtils]: 20: Hoare triple {7362#(= 0 main_~j~0)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,952 INFO L280 TraceCheckUtils]: 21: Hoare triple {7362#(= 0 main_~j~0)} havoc #t~nondet5; {7362#(= 0 main_~j~0)} is VALID [2020-07-10 19:02:54,953 INFO L280 TraceCheckUtils]: 22: Hoare triple {7362#(= 0 main_~j~0)} #t~post3 := ~j~0; {7363#(= |main_#t~post3| 0)} is VALID [2020-07-10 19:02:54,954 INFO L280 TraceCheckUtils]: 23: Hoare triple {7363#(= |main_#t~post3| 0)} ~j~0 := 1 + #t~post3; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,955 INFO L280 TraceCheckUtils]: 24: Hoare triple {7364#(<= main_~j~0 1)} havoc #t~post3; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,955 INFO L280 TraceCheckUtils]: 25: Hoare triple {7364#(<= main_~j~0 1)} assume !!(~j~0 < 10); {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,956 INFO L280 TraceCheckUtils]: 26: Hoare triple {7364#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,957 INFO L280 TraceCheckUtils]: 27: Hoare triple {7364#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,957 INFO L280 TraceCheckUtils]: 28: Hoare triple {7364#(<= main_~j~0 1)} havoc #t~nondet4; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,958 INFO L280 TraceCheckUtils]: 29: Hoare triple {7364#(<= main_~j~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,959 INFO L280 TraceCheckUtils]: 30: Hoare triple {7364#(<= main_~j~0 1)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,959 INFO L280 TraceCheckUtils]: 31: Hoare triple {7364#(<= main_~j~0 1)} havoc #t~nondet5; {7364#(<= main_~j~0 1)} is VALID [2020-07-10 19:02:54,960 INFO L280 TraceCheckUtils]: 32: Hoare triple {7364#(<= main_~j~0 1)} #t~post3 := ~j~0; {7365#(<= |main_#t~post3| 1)} is VALID [2020-07-10 19:02:54,961 INFO L280 TraceCheckUtils]: 33: Hoare triple {7365#(<= |main_#t~post3| 1)} ~j~0 := 1 + #t~post3; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,961 INFO L280 TraceCheckUtils]: 34: Hoare triple {7366#(<= main_~j~0 2)} havoc #t~post3; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,962 INFO L280 TraceCheckUtils]: 35: Hoare triple {7366#(<= main_~j~0 2)} assume !!(~j~0 < 10); {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,963 INFO L280 TraceCheckUtils]: 36: Hoare triple {7366#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,963 INFO L280 TraceCheckUtils]: 37: Hoare triple {7366#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,964 INFO L280 TraceCheckUtils]: 38: Hoare triple {7366#(<= main_~j~0 2)} havoc #t~nondet4; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,964 INFO L280 TraceCheckUtils]: 39: Hoare triple {7366#(<= main_~j~0 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,965 INFO L280 TraceCheckUtils]: 40: Hoare triple {7366#(<= main_~j~0 2)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,966 INFO L280 TraceCheckUtils]: 41: Hoare triple {7366#(<= main_~j~0 2)} havoc #t~nondet5; {7366#(<= main_~j~0 2)} is VALID [2020-07-10 19:02:54,967 INFO L280 TraceCheckUtils]: 42: Hoare triple {7366#(<= main_~j~0 2)} #t~post3 := ~j~0; {7367#(<= |main_#t~post3| 2)} is VALID [2020-07-10 19:02:54,968 INFO L280 TraceCheckUtils]: 43: Hoare triple {7367#(<= |main_#t~post3| 2)} ~j~0 := 1 + #t~post3; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,968 INFO L280 TraceCheckUtils]: 44: Hoare triple {7368#(<= main_~j~0 3)} havoc #t~post3; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,969 INFO L280 TraceCheckUtils]: 45: Hoare triple {7368#(<= main_~j~0 3)} assume !!(~j~0 < 10); {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,969 INFO L280 TraceCheckUtils]: 46: Hoare triple {7368#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,970 INFO L280 TraceCheckUtils]: 47: Hoare triple {7368#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,970 INFO L280 TraceCheckUtils]: 48: Hoare triple {7368#(<= main_~j~0 3)} havoc #t~nondet4; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,971 INFO L280 TraceCheckUtils]: 49: Hoare triple {7368#(<= main_~j~0 3)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,972 INFO L280 TraceCheckUtils]: 50: Hoare triple {7368#(<= main_~j~0 3)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,972 INFO L280 TraceCheckUtils]: 51: Hoare triple {7368#(<= main_~j~0 3)} havoc #t~nondet5; {7368#(<= main_~j~0 3)} is VALID [2020-07-10 19:02:54,973 INFO L280 TraceCheckUtils]: 52: Hoare triple {7368#(<= main_~j~0 3)} #t~post3 := ~j~0; {7369#(<= |main_#t~post3| 3)} is VALID [2020-07-10 19:02:54,973 INFO L280 TraceCheckUtils]: 53: Hoare triple {7369#(<= |main_#t~post3| 3)} ~j~0 := 1 + #t~post3; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,974 INFO L280 TraceCheckUtils]: 54: Hoare triple {7370#(<= main_~j~0 4)} havoc #t~post3; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,975 INFO L280 TraceCheckUtils]: 55: Hoare triple {7370#(<= main_~j~0 4)} assume !!(~j~0 < 10); {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,975 INFO L280 TraceCheckUtils]: 56: Hoare triple {7370#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,976 INFO L280 TraceCheckUtils]: 57: Hoare triple {7370#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,976 INFO L280 TraceCheckUtils]: 58: Hoare triple {7370#(<= main_~j~0 4)} havoc #t~nondet4; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,977 INFO L280 TraceCheckUtils]: 59: Hoare triple {7370#(<= main_~j~0 4)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,977 INFO L280 TraceCheckUtils]: 60: Hoare triple {7370#(<= main_~j~0 4)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,978 INFO L280 TraceCheckUtils]: 61: Hoare triple {7370#(<= main_~j~0 4)} havoc #t~nondet5; {7370#(<= main_~j~0 4)} is VALID [2020-07-10 19:02:54,979 INFO L280 TraceCheckUtils]: 62: Hoare triple {7370#(<= main_~j~0 4)} #t~post3 := ~j~0; {7371#(<= |main_#t~post3| 4)} is VALID [2020-07-10 19:02:54,979 INFO L280 TraceCheckUtils]: 63: Hoare triple {7371#(<= |main_#t~post3| 4)} ~j~0 := 1 + #t~post3; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,980 INFO L280 TraceCheckUtils]: 64: Hoare triple {7372#(<= main_~j~0 5)} havoc #t~post3; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,981 INFO L280 TraceCheckUtils]: 65: Hoare triple {7372#(<= main_~j~0 5)} assume !!(~j~0 < 10); {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,981 INFO L280 TraceCheckUtils]: 66: Hoare triple {7372#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,982 INFO L280 TraceCheckUtils]: 67: Hoare triple {7372#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,982 INFO L280 TraceCheckUtils]: 68: Hoare triple {7372#(<= main_~j~0 5)} havoc #t~nondet4; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,983 INFO L280 TraceCheckUtils]: 69: Hoare triple {7372#(<= main_~j~0 5)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,983 INFO L280 TraceCheckUtils]: 70: Hoare triple {7372#(<= main_~j~0 5)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,984 INFO L280 TraceCheckUtils]: 71: Hoare triple {7372#(<= main_~j~0 5)} havoc #t~nondet5; {7372#(<= main_~j~0 5)} is VALID [2020-07-10 19:02:54,985 INFO L280 TraceCheckUtils]: 72: Hoare triple {7372#(<= main_~j~0 5)} #t~post3 := ~j~0; {7373#(<= |main_#t~post3| 5)} is VALID [2020-07-10 19:02:54,986 INFO L280 TraceCheckUtils]: 73: Hoare triple {7373#(<= |main_#t~post3| 5)} ~j~0 := 1 + #t~post3; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,986 INFO L280 TraceCheckUtils]: 74: Hoare triple {7374#(<= main_~j~0 6)} havoc #t~post3; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,987 INFO L280 TraceCheckUtils]: 75: Hoare triple {7374#(<= main_~j~0 6)} assume !!(~j~0 < 10); {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,988 INFO L280 TraceCheckUtils]: 76: Hoare triple {7374#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,988 INFO L280 TraceCheckUtils]: 77: Hoare triple {7374#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,989 INFO L280 TraceCheckUtils]: 78: Hoare triple {7374#(<= main_~j~0 6)} havoc #t~nondet4; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,990 INFO L280 TraceCheckUtils]: 79: Hoare triple {7374#(<= main_~j~0 6)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,990 INFO L280 TraceCheckUtils]: 80: Hoare triple {7374#(<= main_~j~0 6)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,991 INFO L280 TraceCheckUtils]: 81: Hoare triple {7374#(<= main_~j~0 6)} havoc #t~nondet5; {7374#(<= main_~j~0 6)} is VALID [2020-07-10 19:02:54,992 INFO L280 TraceCheckUtils]: 82: Hoare triple {7374#(<= main_~j~0 6)} #t~post3 := ~j~0; {7375#(<= |main_#t~post3| 6)} is VALID [2020-07-10 19:02:54,993 INFO L280 TraceCheckUtils]: 83: Hoare triple {7375#(<= |main_#t~post3| 6)} ~j~0 := 1 + #t~post3; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,994 INFO L280 TraceCheckUtils]: 84: Hoare triple {7376#(<= main_~j~0 7)} havoc #t~post3; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,995 INFO L280 TraceCheckUtils]: 85: Hoare triple {7376#(<= main_~j~0 7)} assume !!(~j~0 < 10); {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,996 INFO L280 TraceCheckUtils]: 86: Hoare triple {7376#(<= main_~j~0 7)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,996 INFO L280 TraceCheckUtils]: 87: Hoare triple {7376#(<= main_~j~0 7)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,997 INFO L280 TraceCheckUtils]: 88: Hoare triple {7376#(<= main_~j~0 7)} havoc #t~nondet4; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,998 INFO L280 TraceCheckUtils]: 89: Hoare triple {7376#(<= main_~j~0 7)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,999 INFO L280 TraceCheckUtils]: 90: Hoare triple {7376#(<= main_~j~0 7)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:54,999 INFO L280 TraceCheckUtils]: 91: Hoare triple {7376#(<= main_~j~0 7)} havoc #t~nondet5; {7376#(<= main_~j~0 7)} is VALID [2020-07-10 19:02:55,000 INFO L280 TraceCheckUtils]: 92: Hoare triple {7376#(<= main_~j~0 7)} #t~post3 := ~j~0; {7377#(<= |main_#t~post3| 7)} is VALID [2020-07-10 19:02:55,001 INFO L280 TraceCheckUtils]: 93: Hoare triple {7377#(<= |main_#t~post3| 7)} ~j~0 := 1 + #t~post3; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,002 INFO L280 TraceCheckUtils]: 94: Hoare triple {7378#(<= main_~j~0 8)} havoc #t~post3; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,003 INFO L280 TraceCheckUtils]: 95: Hoare triple {7378#(<= main_~j~0 8)} assume !!(~j~0 < 10); {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,004 INFO L280 TraceCheckUtils]: 96: Hoare triple {7378#(<= main_~j~0 8)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,005 INFO L280 TraceCheckUtils]: 97: Hoare triple {7378#(<= main_~j~0 8)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,005 INFO L280 TraceCheckUtils]: 98: Hoare triple {7378#(<= main_~j~0 8)} havoc #t~nondet4; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,006 INFO L280 TraceCheckUtils]: 99: Hoare triple {7378#(<= main_~j~0 8)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,007 INFO L280 TraceCheckUtils]: 100: Hoare triple {7378#(<= main_~j~0 8)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,008 INFO L280 TraceCheckUtils]: 101: Hoare triple {7378#(<= main_~j~0 8)} havoc #t~nondet5; {7378#(<= main_~j~0 8)} is VALID [2020-07-10 19:02:55,008 INFO L280 TraceCheckUtils]: 102: Hoare triple {7378#(<= main_~j~0 8)} #t~post3 := ~j~0; {7379#(<= |main_#t~post3| 8)} is VALID [2020-07-10 19:02:55,010 INFO L280 TraceCheckUtils]: 103: Hoare triple {7379#(<= |main_#t~post3| 8)} ~j~0 := 1 + #t~post3; {7380#(<= main_~j~0 9)} is VALID [2020-07-10 19:02:55,010 INFO L280 TraceCheckUtils]: 104: Hoare triple {7380#(<= main_~j~0 9)} havoc #t~post3; {7380#(<= main_~j~0 9)} is VALID [2020-07-10 19:02:55,011 INFO L280 TraceCheckUtils]: 105: Hoare triple {7380#(<= main_~j~0 9)} assume !(~j~0 < 10); {7356#false} is VALID [2020-07-10 19:02:55,011 INFO L280 TraceCheckUtils]: 106: Hoare triple {7356#false} assume ~i~0 >= 0 && ~i~0 < 10; {7356#false} is VALID [2020-07-10 19:02:55,012 INFO L280 TraceCheckUtils]: 107: Hoare triple {7356#false} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {7356#false} is VALID [2020-07-10 19:02:55,012 INFO L280 TraceCheckUtils]: 108: Hoare triple {7356#false} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {7356#false} is VALID [2020-07-10 19:02:55,012 INFO L280 TraceCheckUtils]: 109: Hoare triple {7356#false} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {7356#false} is VALID [2020-07-10 19:02:55,013 INFO L280 TraceCheckUtils]: 110: Hoare triple {7356#false} havoc #t~mem6.base, #t~mem6.offset; {7356#false} is VALID [2020-07-10 19:02:55,013 INFO L280 TraceCheckUtils]: 111: Hoare triple {7356#false} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {7356#false} is VALID [2020-07-10 19:02:55,013 INFO L280 TraceCheckUtils]: 112: Hoare triple {7356#false} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {7356#false} is VALID [2020-07-10 19:02:55,013 INFO L280 TraceCheckUtils]: 113: Hoare triple {7356#false} assume #t~mem8 > 0; {7356#false} is VALID [2020-07-10 19:02:55,014 INFO L280 TraceCheckUtils]: 114: Hoare triple {7356#false} havoc #t~mem7.base, #t~mem7.offset; {7356#false} is VALID [2020-07-10 19:02:55,014 INFO L280 TraceCheckUtils]: 115: Hoare triple {7356#false} havoc #t~mem8; {7356#false} is VALID [2020-07-10 19:02:55,014 INFO L280 TraceCheckUtils]: 116: Hoare triple {7356#false} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {7356#false} is VALID [2020-07-10 19:02:55,014 INFO L280 TraceCheckUtils]: 117: Hoare triple {7356#false} ~i~0 := #t~mem9 - 10; {7356#false} is VALID [2020-07-10 19:02:55,015 INFO L280 TraceCheckUtils]: 118: Hoare triple {7356#false} havoc #t~mem9; {7356#false} is VALID [2020-07-10 19:02:55,015 INFO L280 TraceCheckUtils]: 119: Hoare triple {7356#false} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {7356#false} is VALID [2020-07-10 19:02:55,015 INFO L280 TraceCheckUtils]: 120: Hoare triple {7356#false} assume !(~i~0 < #t~mem10); {7356#false} is VALID [2020-07-10 19:02:55,015 INFO L280 TraceCheckUtils]: 121: Hoare triple {7356#false} havoc #t~mem10; {7356#false} is VALID [2020-07-10 19:02:55,016 INFO L263 TraceCheckUtils]: 122: Hoare triple {7356#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {7355#true} is VALID [2020-07-10 19:02:55,016 INFO L280 TraceCheckUtils]: 123: Hoare triple {7355#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {7355#true} is VALID [2020-07-10 19:02:55,016 INFO L280 TraceCheckUtils]: 124: Hoare triple {7355#true} ~i := #in~i; {7355#true} is VALID [2020-07-10 19:02:55,016 INFO L280 TraceCheckUtils]: 125: Hoare triple {7355#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {7355#true} is VALID [2020-07-10 19:02:55,017 INFO L280 TraceCheckUtils]: 126: Hoare triple {7355#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {7355#true} is VALID [2020-07-10 19:02:55,017 INFO L280 TraceCheckUtils]: 127: Hoare triple {7355#true} #res := (if #t~mem1 == ~i then 1 else 0); {7355#true} is VALID [2020-07-10 19:02:55,017 INFO L280 TraceCheckUtils]: 128: Hoare triple {7355#true} havoc #t~mem0.base, #t~mem0.offset; {7355#true} is VALID [2020-07-10 19:02:55,017 INFO L280 TraceCheckUtils]: 129: Hoare triple {7355#true} havoc #t~mem1; {7355#true} is VALID [2020-07-10 19:02:55,018 INFO L280 TraceCheckUtils]: 130: Hoare triple {7355#true} assume true; {7355#true} is VALID [2020-07-10 19:02:55,018 INFO L275 TraceCheckUtils]: 131: Hoare quadruple {7355#true} {7356#false} #114#return; {7356#false} is VALID [2020-07-10 19:02:55,018 INFO L280 TraceCheckUtils]: 132: Hoare triple {7356#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {7356#false} is VALID [2020-07-10 19:02:55,018 INFO L280 TraceCheckUtils]: 133: Hoare triple {7356#false} assume 0 == #t~ret12; {7356#false} is VALID [2020-07-10 19:02:55,019 INFO L280 TraceCheckUtils]: 134: Hoare triple {7356#false} havoc #t~ret12; {7356#false} is VALID [2020-07-10 19:02:55,019 INFO L280 TraceCheckUtils]: 135: Hoare triple {7356#false} assume !false; {7356#false} is VALID [2020-07-10 19:02:55,058 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-10 19:02:55,058 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:02:55,059 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [604682909] [2020-07-10 19:02:55,059 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:02:55,059 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2020-07-10 19:02:55,059 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [762657332] [2020-07-10 19:02:55,060 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2020-07-10 19:02:55,060 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:02:55,060 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2020-07-10 19:02:55,209 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:55,209 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2020-07-10 19:02:55,210 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:02:55,210 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2020-07-10 19:02:55,210 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=122, Invalid=340, Unknown=0, NotChecked=0, Total=462 [2020-07-10 19:02:55,210 INFO L87 Difference]: Start difference. First operand 141 states and 142 transitions. Second operand 22 states. [2020-07-10 19:02:56,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:56,999 INFO L93 Difference]: Finished difference Result 186 states and 188 transitions. [2020-07-10 19:02:57,000 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2020-07-10 19:02:57,000 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 136 [2020-07-10 19:02:57,000 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:02:57,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2020-07-10 19:02:57,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 188 transitions. [2020-07-10 19:02:57,003 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2020-07-10 19:02:57,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 188 transitions. [2020-07-10 19:02:57,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 188 transitions. [2020-07-10 19:02:57,208 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:57,210 INFO L225 Difference]: With dead ends: 186 [2020-07-10 19:02:57,211 INFO L226 Difference]: Without dead ends: 151 [2020-07-10 19:02:57,212 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 242 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=500, Invalid=1060, Unknown=0, NotChecked=0, Total=1560 [2020-07-10 19:02:57,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states. [2020-07-10 19:02:57,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 151. [2020-07-10 19:02:57,337 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:02:57,337 INFO L82 GeneralOperation]: Start isEquivalent. First operand 151 states. Second operand 151 states. [2020-07-10 19:02:57,338 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand 151 states. [2020-07-10 19:02:57,338 INFO L87 Difference]: Start difference. First operand 151 states. Second operand 151 states. [2020-07-10 19:02:57,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:57,344 INFO L93 Difference]: Finished difference Result 151 states and 152 transitions. [2020-07-10 19:02:57,344 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 152 transitions. [2020-07-10 19:02:57,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:57,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:57,346 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand 151 states. [2020-07-10 19:02:57,346 INFO L87 Difference]: Start difference. First operand 151 states. Second operand 151 states. [2020-07-10 19:02:57,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:02:57,352 INFO L93 Difference]: Finished difference Result 151 states and 152 transitions. [2020-07-10 19:02:57,352 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 152 transitions. [2020-07-10 19:02:57,353 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:02:57,353 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:02:57,353 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:02:57,353 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:02:57,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 151 states. [2020-07-10 19:02:57,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 152 transitions. [2020-07-10 19:02:57,359 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 152 transitions. Word has length 136 [2020-07-10 19:02:57,361 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:02:57,361 INFO L479 AbstractCegarLoop]: Abstraction has 151 states and 152 transitions. [2020-07-10 19:02:57,362 INFO L480 AbstractCegarLoop]: Interpolant automaton has 22 states. [2020-07-10 19:02:57,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 151 states and 152 transitions. [2020-07-10 19:02:57,577 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:02:57,578 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 152 transitions. [2020-07-10 19:02:57,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 147 [2020-07-10 19:02:57,581 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:02:57,581 INFO L422 BasicCegarLoop]: trace histogram [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 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-10 19:02:57,582 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-10 19:02:57,582 INFO L427 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:02:57,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:02:57,582 INFO L82 PathProgramCache]: Analyzing trace with hash -1068321500, now seen corresponding path program 10 times [2020-07-10 19:02:57,583 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:02:57,584 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2128505601] [2020-07-10 19:02:57,584 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:02:58,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:03:08,380 WARN L193 SmtUtils]: Spent 232.00 ms on a formula simplification. DAG size of input: 190 DAG size of output: 11 [2020-07-10 19:03:09,802 WARN L193 SmtUtils]: Spent 267.00 ms on a formula simplification. DAG size of input: 275 DAG size of output: 8 [2020-07-10 19:03:10,751 WARN L193 SmtUtils]: Spent 285.00 ms on a formula simplification. DAG size of input: 278 DAG size of output: 8 [2020-07-10 19:03:12,222 WARN L193 SmtUtils]: Spent 325.00 ms on a formula simplification. DAG size of input: 360 DAG size of output: 8 [2020-07-10 19:03:13,760 WARN L193 SmtUtils]: Spent 601.00 ms on a formula simplification. DAG size of input: 362 DAG size of output: 11 [2020-07-10 19:03:15,661 WARN L193 SmtUtils]: Spent 649.00 ms on a formula simplification. DAG size of input: 444 DAG size of output: 8 [2020-07-10 19:03:17,520 WARN L193 SmtUtils]: Spent 566.00 ms on a formula simplification. DAG size of input: 446 DAG size of output: 8 [2020-07-10 19:03:22,916 WARN L193 SmtUtils]: Spent 3.17 s on a formula simplification. DAG size of input: 859 DAG size of output: 8 [2020-07-10 19:03:23,365 WARN L193 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 25 [2020-07-10 19:03:23,595 WARN L193 SmtUtils]: Spent 120.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 33 [2020-07-10 19:03:24,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:03:24,122 INFO L280 TraceCheckUtils]: 0: Hoare triple {8448#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8405#true} is VALID [2020-07-10 19:03:24,123 INFO L280 TraceCheckUtils]: 1: Hoare triple {8405#true} #valid := #valid[0 := 0]; {8405#true} is VALID [2020-07-10 19:03:24,123 INFO L280 TraceCheckUtils]: 2: Hoare triple {8405#true} assume 0 < #StackHeapBarrier; {8405#true} is VALID [2020-07-10 19:03:24,123 INFO L280 TraceCheckUtils]: 3: Hoare triple {8405#true} assume true; {8405#true} is VALID [2020-07-10 19:03:24,124 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {8405#true} {8405#true} #110#return; {8405#true} is VALID [2020-07-10 19:03:24,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 19:03:24,131 INFO L280 TraceCheckUtils]: 0: Hoare triple {8405#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {8405#true} is VALID [2020-07-10 19:03:24,131 INFO L280 TraceCheckUtils]: 1: Hoare triple {8405#true} ~i := #in~i; {8405#true} is VALID [2020-07-10 19:03:24,131 INFO L280 TraceCheckUtils]: 2: Hoare triple {8405#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {8405#true} is VALID [2020-07-10 19:03:24,131 INFO L280 TraceCheckUtils]: 3: Hoare triple {8405#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {8405#true} is VALID [2020-07-10 19:03:24,132 INFO L280 TraceCheckUtils]: 4: Hoare triple {8405#true} #res := (if #t~mem1 == ~i then 1 else 0); {8405#true} is VALID [2020-07-10 19:03:24,132 INFO L280 TraceCheckUtils]: 5: Hoare triple {8405#true} havoc #t~mem0.base, #t~mem0.offset; {8405#true} is VALID [2020-07-10 19:03:24,132 INFO L280 TraceCheckUtils]: 6: Hoare triple {8405#true} havoc #t~mem1; {8405#true} is VALID [2020-07-10 19:03:24,132 INFO L280 TraceCheckUtils]: 7: Hoare triple {8405#true} assume true; {8405#true} is VALID [2020-07-10 19:03:24,132 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {8405#true} {8406#false} #114#return; {8406#false} is VALID [2020-07-10 19:03:24,133 INFO L263 TraceCheckUtils]: 0: Hoare triple {8405#true} call ULTIMATE.init(); {8448#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 19:03:24,133 INFO L280 TraceCheckUtils]: 1: Hoare triple {8448#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L280 TraceCheckUtils]: 2: Hoare triple {8405#true} #valid := #valid[0 := 0]; {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L280 TraceCheckUtils]: 3: Hoare triple {8405#true} assume 0 < #StackHeapBarrier; {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L280 TraceCheckUtils]: 4: Hoare triple {8405#true} assume true; {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {8405#true} {8405#true} #110#return; {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L263 TraceCheckUtils]: 6: Hoare triple {8405#true} call #t~ret13 := main(); {8405#true} is VALID [2020-07-10 19:03:24,134 INFO L280 TraceCheckUtils]: 7: Hoare triple {8405#true} SUMMARY for call ~#cont~0.base, ~#cont~0.offset := #Ultimate.allocOnStack(4); srcloc: mainENTRY {8405#true} is VALID [2020-07-10 19:03:24,135 INFO L280 TraceCheckUtils]: 8: Hoare triple {8405#true} SUMMARY for call ~#array~0.base, ~#array~0.offset := #Ultimate.allocOnStack(80); srcloc: L22 {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,136 INFO L280 TraceCheckUtils]: 9: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc ~i~0; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,136 INFO L280 TraceCheckUtils]: 10: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc ~pa~0.base, ~pa~0.offset; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,137 INFO L280 TraceCheckUtils]: 11: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,137 INFO L280 TraceCheckUtils]: 12: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} ~i~0 := #t~nondet2; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,138 INFO L280 TraceCheckUtils]: 13: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc #t~nondet2; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,138 INFO L280 TraceCheckUtils]: 14: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} ~j~0 := 0; {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,139 INFO L280 TraceCheckUtils]: 15: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} assume !!(~j~0 < 10); {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,140 INFO L280 TraceCheckUtils]: 16: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,141 INFO L280 TraceCheckUtils]: 17: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,141 INFO L280 TraceCheckUtils]: 18: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} havoc #t~nondet4; {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,142 INFO L280 TraceCheckUtils]: 19: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,143 INFO L280 TraceCheckUtils]: 20: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,143 INFO L280 TraceCheckUtils]: 21: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} havoc #t~nondet5; {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} is VALID [2020-07-10 19:03:24,144 INFO L280 TraceCheckUtils]: 22: Hoare triple {8413#(and (= 0 |main_~#array~0.offset|) (= 0 main_~j~0))} #t~post3 := ~j~0; {8414#(and (= |main_#t~post3| 0) (= 0 |main_~#array~0.offset|))} is VALID [2020-07-10 19:03:24,145 INFO L280 TraceCheckUtils]: 23: Hoare triple {8414#(and (= |main_#t~post3| 0) (= 0 |main_~#array~0.offset|))} ~j~0 := 1 + #t~post3; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,145 INFO L280 TraceCheckUtils]: 24: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} havoc #t~post3; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,146 INFO L280 TraceCheckUtils]: 25: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} assume !!(~j~0 < 10); {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,147 INFO L280 TraceCheckUtils]: 26: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,148 INFO L280 TraceCheckUtils]: 27: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,149 INFO L280 TraceCheckUtils]: 28: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} havoc #t~nondet4; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,149 INFO L280 TraceCheckUtils]: 29: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,150 INFO L280 TraceCheckUtils]: 30: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,151 INFO L280 TraceCheckUtils]: 31: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} havoc #t~nondet5; {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} is VALID [2020-07-10 19:03:24,152 INFO L280 TraceCheckUtils]: 32: Hoare triple {8415#(and (<= main_~j~0 1) (= 0 |main_~#array~0.offset|) (<= 1 main_~j~0))} #t~post3 := ~j~0; {8416#(and (= 0 |main_~#array~0.offset|) (= 8 (* 8 |main_#t~post3|)))} is VALID [2020-07-10 19:03:24,153 INFO L280 TraceCheckUtils]: 33: Hoare triple {8416#(and (= 0 |main_~#array~0.offset|) (= 8 (* 8 |main_#t~post3|)))} ~j~0 := 1 + #t~post3; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,154 INFO L280 TraceCheckUtils]: 34: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} havoc #t~post3; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,155 INFO L280 TraceCheckUtils]: 35: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} assume !!(~j~0 < 10); {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,156 INFO L280 TraceCheckUtils]: 36: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,157 INFO L280 TraceCheckUtils]: 37: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,158 INFO L280 TraceCheckUtils]: 38: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} havoc #t~nondet4; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,159 INFO L280 TraceCheckUtils]: 39: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,159 INFO L280 TraceCheckUtils]: 40: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,160 INFO L280 TraceCheckUtils]: 41: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} havoc #t~nondet5; {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} is VALID [2020-07-10 19:03:24,167 INFO L280 TraceCheckUtils]: 42: Hoare triple {8417#(and (= 0 |main_~#array~0.offset|) (<= 2 main_~j~0) (<= main_~j~0 2))} #t~post3 := ~j~0; {8418#(and (= 0 |main_~#array~0.offset|) (<= 2 |main_#t~post3|) (<= |main_#t~post3| 2))} is VALID [2020-07-10 19:03:24,169 INFO L280 TraceCheckUtils]: 43: Hoare triple {8418#(and (= 0 |main_~#array~0.offset|) (<= 2 |main_#t~post3|) (<= |main_#t~post3| 2))} ~j~0 := 1 + #t~post3; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,170 INFO L280 TraceCheckUtils]: 44: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} havoc #t~post3; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,171 INFO L280 TraceCheckUtils]: 45: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} assume !!(~j~0 < 10); {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,172 INFO L280 TraceCheckUtils]: 46: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,174 INFO L280 TraceCheckUtils]: 47: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,174 INFO L280 TraceCheckUtils]: 48: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} havoc #t~nondet4; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,175 INFO L280 TraceCheckUtils]: 49: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,176 INFO L280 TraceCheckUtils]: 50: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,178 INFO L280 TraceCheckUtils]: 51: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} havoc #t~nondet5; {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} is VALID [2020-07-10 19:03:24,179 INFO L280 TraceCheckUtils]: 52: Hoare triple {8419#(and (= 0 |main_~#array~0.offset|) (= 24 (* 8 main_~j~0)))} #t~post3 := ~j~0; {8420#(and (<= (* 8 |main_#t~post3|) 24) (= 0 |main_~#array~0.offset|) (<= 3 |main_#t~post3|))} is VALID [2020-07-10 19:03:24,180 INFO L280 TraceCheckUtils]: 53: Hoare triple {8420#(and (<= (* 8 |main_#t~post3|) 24) (= 0 |main_~#array~0.offset|) (<= 3 |main_#t~post3|))} ~j~0 := 1 + #t~post3; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,182 INFO L280 TraceCheckUtils]: 54: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} havoc #t~post3; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,183 INFO L280 TraceCheckUtils]: 55: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} assume !!(~j~0 < 10); {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,184 INFO L280 TraceCheckUtils]: 56: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,185 INFO L280 TraceCheckUtils]: 57: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,186 INFO L280 TraceCheckUtils]: 58: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} havoc #t~nondet4; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,187 INFO L280 TraceCheckUtils]: 59: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,188 INFO L280 TraceCheckUtils]: 60: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,189 INFO L280 TraceCheckUtils]: 61: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} havoc #t~nondet5; {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} is VALID [2020-07-10 19:03:24,190 INFO L280 TraceCheckUtils]: 62: Hoare triple {8421#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 32) (<= 4 main_~j~0))} #t~post3 := ~j~0; {8422#(and (= 0 |main_~#array~0.offset|) (<= (* 8 |main_#t~post3|) 32) (<= 4 |main_#t~post3|))} is VALID [2020-07-10 19:03:24,191 INFO L280 TraceCheckUtils]: 63: Hoare triple {8422#(and (= 0 |main_~#array~0.offset|) (<= (* 8 |main_#t~post3|) 32) (<= 4 |main_#t~post3|))} ~j~0 := 1 + #t~post3; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,192 INFO L280 TraceCheckUtils]: 64: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} havoc #t~post3; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,193 INFO L280 TraceCheckUtils]: 65: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} assume !!(~j~0 < 10); {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,194 INFO L280 TraceCheckUtils]: 66: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,195 INFO L280 TraceCheckUtils]: 67: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,196 INFO L280 TraceCheckUtils]: 68: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} havoc #t~nondet4; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,197 INFO L280 TraceCheckUtils]: 69: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,198 INFO L280 TraceCheckUtils]: 70: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,199 INFO L280 TraceCheckUtils]: 71: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} havoc #t~nondet5; {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} is VALID [2020-07-10 19:03:24,200 INFO L280 TraceCheckUtils]: 72: Hoare triple {8423#(and (= 0 |main_~#array~0.offset|) (<= 5 main_~j~0) (<= main_~j~0 5))} #t~post3 := ~j~0; {8424#(and (<= |main_#t~post3| 5) (= 0 |main_~#array~0.offset|) (<= 5 |main_#t~post3|))} is VALID [2020-07-10 19:03:24,201 INFO L280 TraceCheckUtils]: 73: Hoare triple {8424#(and (<= |main_#t~post3| 5) (= 0 |main_~#array~0.offset|) (<= 5 |main_#t~post3|))} ~j~0 := 1 + #t~post3; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,202 INFO L280 TraceCheckUtils]: 74: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} havoc #t~post3; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,202 INFO L280 TraceCheckUtils]: 75: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} assume !!(~j~0 < 10); {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,203 INFO L280 TraceCheckUtils]: 76: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,205 INFO L280 TraceCheckUtils]: 77: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,206 INFO L280 TraceCheckUtils]: 78: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} havoc #t~nondet4; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,206 INFO L280 TraceCheckUtils]: 79: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,208 INFO L280 TraceCheckUtils]: 80: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,208 INFO L280 TraceCheckUtils]: 81: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} havoc #t~nondet5; {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} is VALID [2020-07-10 19:03:24,209 INFO L280 TraceCheckUtils]: 82: Hoare triple {8425#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 6) (<= 6 main_~j~0))} #t~post3 := ~j~0; {8426#(and (= 0 |main_~#array~0.offset|) (<= 6 |main_#t~post3|) (<= |main_#t~post3| 6))} is VALID [2020-07-10 19:03:24,211 INFO L280 TraceCheckUtils]: 83: Hoare triple {8426#(and (= 0 |main_~#array~0.offset|) (<= 6 |main_#t~post3|) (<= |main_#t~post3| 6))} ~j~0 := 1 + #t~post3; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,212 INFO L280 TraceCheckUtils]: 84: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} havoc #t~post3; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,212 INFO L280 TraceCheckUtils]: 85: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} assume !!(~j~0 < 10); {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,213 INFO L280 TraceCheckUtils]: 86: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,214 INFO L280 TraceCheckUtils]: 87: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,215 INFO L280 TraceCheckUtils]: 88: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} havoc #t~nondet4; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,216 INFO L280 TraceCheckUtils]: 89: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,218 INFO L280 TraceCheckUtils]: 90: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,218 INFO L280 TraceCheckUtils]: 91: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} havoc #t~nondet5; {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} is VALID [2020-07-10 19:03:24,219 INFO L280 TraceCheckUtils]: 92: Hoare triple {8427#(and (= 0 |main_~#array~0.offset|) (<= (* 8 main_~j~0) 56) (<= 7 main_~j~0))} #t~post3 := ~j~0; {8428#(and (= 0 |main_~#array~0.offset|) (<= 7 |main_#t~post3|) (<= |main_#t~post3| 7))} is VALID [2020-07-10 19:03:24,220 INFO L280 TraceCheckUtils]: 93: Hoare triple {8428#(and (= 0 |main_~#array~0.offset|) (<= 7 |main_#t~post3|) (<= |main_#t~post3| 7))} ~j~0 := 1 + #t~post3; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,221 INFO L280 TraceCheckUtils]: 94: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} havoc #t~post3; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,222 INFO L280 TraceCheckUtils]: 95: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} assume !!(~j~0 < 10); {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,223 INFO L280 TraceCheckUtils]: 96: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,224 INFO L280 TraceCheckUtils]: 97: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,225 INFO L280 TraceCheckUtils]: 98: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} havoc #t~nondet4; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,226 INFO L280 TraceCheckUtils]: 99: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,227 INFO L280 TraceCheckUtils]: 100: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,228 INFO L280 TraceCheckUtils]: 101: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} havoc #t~nondet5; {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} is VALID [2020-07-10 19:03:24,229 INFO L280 TraceCheckUtils]: 102: Hoare triple {8429#(and (= 0 |main_~#array~0.offset|) (<= main_~j~0 8) (<= 8 main_~j~0))} #t~post3 := ~j~0; {8430#(and (= 0 |main_~#array~0.offset|) (<= 8 |main_#t~post3|) (<= |main_#t~post3| 8))} is VALID [2020-07-10 19:03:24,230 INFO L280 TraceCheckUtils]: 103: Hoare triple {8430#(and (= 0 |main_~#array~0.offset|) (<= 8 |main_#t~post3|) (<= |main_#t~post3| 8))} ~j~0 := 1 + #t~post3; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,230 INFO L280 TraceCheckUtils]: 104: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc #t~post3; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,231 INFO L280 TraceCheckUtils]: 105: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume !!(~j~0 < 10); {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,232 INFO L280 TraceCheckUtils]: 106: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,232 INFO L280 TraceCheckUtils]: 107: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} SUMMARY for call write~int(#t~nondet4, ~#array~0.base, ~#array~0.offset + 8 * ~j~0, 4); srcloc: L28-1 {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,233 INFO L280 TraceCheckUtils]: 108: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc #t~nondet4; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,234 INFO L280 TraceCheckUtils]: 109: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,234 INFO L280 TraceCheckUtils]: 110: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} SUMMARY for call write~int(#t~nondet5, ~#array~0.base, 4 + (~#array~0.offset + 8 * ~j~0), 4); srcloc: L29-1 {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,235 INFO L280 TraceCheckUtils]: 111: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc #t~nondet5; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,236 INFO L280 TraceCheckUtils]: 112: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} #t~post3 := ~j~0; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,236 INFO L280 TraceCheckUtils]: 113: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} ~j~0 := 1 + #t~post3; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,237 INFO L280 TraceCheckUtils]: 114: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} havoc #t~post3; {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,237 INFO L280 TraceCheckUtils]: 115: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume !(~j~0 < 10); {8412#(= 0 |main_~#array~0.offset|)} is VALID [2020-07-10 19:03:24,239 INFO L280 TraceCheckUtils]: 116: Hoare triple {8412#(= 0 |main_~#array~0.offset|)} assume ~i~0 >= 0 && ~i~0 < 10; {8431#(or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1))))} is VALID [2020-07-10 19:03:24,241 INFO L280 TraceCheckUtils]: 117: Hoare triple {8431#(or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1))))} SUMMARY for call write~$Pointer$(~#array~0.base, ~#array~0.offset + 8 * ~i~0, ~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33 {8432#(and (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)))) (= |main_~#array~0.base| (select (select |#memory_$Pointer$.base| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset|) (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)))} is VALID [2020-07-10 19:03:24,242 INFO L280 TraceCheckUtils]: 118: Hoare triple {8432#(and (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)))) (= |main_~#array~0.base| (select (select |#memory_$Pointer$.base| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset|) (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)))} SUMMARY for call #t~mem6.base, #t~mem6.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L33-1 {8433#(and (= (+ (* 8 main_~i~0) |main_~#array~0.offset|) |main_#t~mem6.offset|) (= (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|) |main_#t~mem6.offset|) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)))) (= |main_~#array~0.base| |main_#t~mem6.base|))} is VALID [2020-07-10 19:03:24,244 INFO L280 TraceCheckUtils]: 119: Hoare triple {8433#(and (= (+ (* 8 main_~i~0) |main_~#array~0.offset|) |main_#t~mem6.offset|) (= (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|) |main_#t~mem6.offset|) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)))) (= |main_~#array~0.base| |main_#t~mem6.base|))} ~pa~0.base, ~pa~0.offset := #t~mem6.base, 4 + #t~mem6.offset; {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} is VALID [2020-07-10 19:03:24,246 INFO L280 TraceCheckUtils]: 120: Hoare triple {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} havoc #t~mem6.base, #t~mem6.offset; {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} is VALID [2020-07-10 19:03:24,247 INFO L280 TraceCheckUtils]: 121: Hoare triple {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~#cont~0.base, ~#cont~0.offset, 4); srcloc: L35 {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} is VALID [2020-07-10 19:03:24,249 INFO L280 TraceCheckUtils]: 122: Hoare triple {8434#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (+ (* 8 main_~i~0) |main_~#array~0.offset| 4) main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base)) (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))))} SUMMARY for call #t~mem8 := read~int(#t~mem7.base, 4 + #t~mem7.offset, 4); srcloc: L35-1 {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} is VALID [2020-07-10 19:03:24,250 INFO L280 TraceCheckUtils]: 123: Hoare triple {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} assume #t~mem8 > 0; {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} is VALID [2020-07-10 19:03:24,252 INFO L280 TraceCheckUtils]: 124: Hoare triple {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} havoc #t~mem7.base, #t~mem7.offset; {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} is VALID [2020-07-10 19:03:24,253 INFO L280 TraceCheckUtils]: 125: Hoare triple {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} havoc #t~mem8; {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} is VALID [2020-07-10 19:03:24,255 INFO L280 TraceCheckUtils]: 126: Hoare triple {8435#(and (or (not (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|))) (and (= 0 (select (select |#memory_$Pointer$.offset| |main_~#cont~0.base|) |main_~#cont~0.offset|)) (= 4 main_~pa~0.offset) (= |main_~#array~0.base| main_~pa~0.base))) (or (= 0 (+ (* 8 main_~i~0) |main_~#array~0.offset|)) (and (= 0 |main_~#array~0.offset|) (< 0 (+ (* 8 main_~i~0) |main_~#array~0.offset| 1)) (= (select (select |#memory_int| |main_~#array~0.base|) (+ (* main_~i~0 8) |main_~#array~0.offset| 4)) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset)))))} SUMMARY for call #t~mem9 := read~int(~#array~0.base, 4 + (~#array~0.offset + 8 * ~i~0), 4); srcloc: L36 {8436#(= (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset) |main_#t~mem9|)} is VALID [2020-07-10 19:03:24,256 INFO L280 TraceCheckUtils]: 127: Hoare triple {8436#(= (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset) |main_#t~mem9|)} ~i~0 := #t~mem9 - 10; {8437#(<= (+ main_~i~0 10) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset))} is VALID [2020-07-10 19:03:24,257 INFO L280 TraceCheckUtils]: 128: Hoare triple {8437#(<= (+ main_~i~0 10) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset))} havoc #t~mem9; {8437#(<= (+ main_~i~0 10) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset))} is VALID [2020-07-10 19:03:24,258 INFO L280 TraceCheckUtils]: 129: Hoare triple {8437#(<= (+ main_~i~0 10) (select (select |#memory_int| main_~pa~0.base) main_~pa~0.offset))} SUMMARY for call #t~mem10 := read~int(~pa~0.base, ~pa~0.offset, 4); srcloc: L37-5 {8438#(<= (+ main_~i~0 10) |main_#t~mem10|)} is VALID [2020-07-10 19:03:24,259 INFO L280 TraceCheckUtils]: 130: Hoare triple {8438#(<= (+ main_~i~0 10) |main_#t~mem10|)} assume !(~i~0 < #t~mem10); {8406#false} is VALID [2020-07-10 19:03:24,259 INFO L280 TraceCheckUtils]: 131: Hoare triple {8406#false} havoc #t~mem10; {8406#false} is VALID [2020-07-10 19:03:24,259 INFO L263 TraceCheckUtils]: 132: Hoare triple {8406#false} call #t~ret12 := check(~#cont~0.base, ~#cont~0.offset, ~i~0); {8405#true} is VALID [2020-07-10 19:03:24,260 INFO L280 TraceCheckUtils]: 133: Hoare triple {8405#true} ~pc.base, ~pc.offset := #in~pc.base, #in~pc.offset; {8405#true} is VALID [2020-07-10 19:03:24,260 INFO L280 TraceCheckUtils]: 134: Hoare triple {8405#true} ~i := #in~i; {8405#true} is VALID [2020-07-10 19:03:24,260 INFO L280 TraceCheckUtils]: 135: Hoare triple {8405#true} SUMMARY for call #t~mem0.base, #t~mem0.offset := read~$Pointer$(~pc.base, ~pc.offset, 4); srcloc: L17 {8405#true} is VALID [2020-07-10 19:03:24,260 INFO L280 TraceCheckUtils]: 136: Hoare triple {8405#true} SUMMARY for call #t~mem1 := read~int(#t~mem0.base, 4 + #t~mem0.offset, 4); srcloc: L17-1 {8405#true} is VALID [2020-07-10 19:03:24,260 INFO L280 TraceCheckUtils]: 137: Hoare triple {8405#true} #res := (if #t~mem1 == ~i then 1 else 0); {8405#true} is VALID [2020-07-10 19:03:24,261 INFO L280 TraceCheckUtils]: 138: Hoare triple {8405#true} havoc #t~mem0.base, #t~mem0.offset; {8405#true} is VALID [2020-07-10 19:03:24,261 INFO L280 TraceCheckUtils]: 139: Hoare triple {8405#true} havoc #t~mem1; {8405#true} is VALID [2020-07-10 19:03:24,261 INFO L280 TraceCheckUtils]: 140: Hoare triple {8405#true} assume true; {8405#true} is VALID [2020-07-10 19:03:24,261 INFO L275 TraceCheckUtils]: 141: Hoare quadruple {8405#true} {8406#false} #114#return; {8406#false} is VALID [2020-07-10 19:03:24,261 INFO L280 TraceCheckUtils]: 142: Hoare triple {8406#false} assume -2147483648 <= #t~ret12 && #t~ret12 <= 2147483647; {8406#false} is VALID [2020-07-10 19:03:24,262 INFO L280 TraceCheckUtils]: 143: Hoare triple {8406#false} assume 0 == #t~ret12; {8406#false} is VALID [2020-07-10 19:03:24,262 INFO L280 TraceCheckUtils]: 144: Hoare triple {8406#false} havoc #t~ret12; {8406#false} is VALID [2020-07-10 19:03:24,262 INFO L280 TraceCheckUtils]: 145: Hoare triple {8406#false} assume !false; {8406#false} is VALID [2020-07-10 19:03:24,347 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-10 19:03:24,347 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-10 19:03:24,347 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2128505601] [2020-07-10 19:03:24,348 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 19:03:24,348 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [30] imperfect sequences [] total 30 [2020-07-10 19:03:24,348 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [669148780] [2020-07-10 19:03:24,349 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 146 [2020-07-10 19:03:24,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 19:03:24,349 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2020-07-10 19:03:24,554 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:03:24,554 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2020-07-10 19:03:24,555 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-10 19:03:24,555 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2020-07-10 19:03:24,555 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=790, Unknown=0, NotChecked=0, Total=870 [2020-07-10 19:03:24,556 INFO L87 Difference]: Start difference. First operand 151 states and 152 transitions. Second operand 30 states. [2020-07-10 19:03:31,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:03:31,541 INFO L93 Difference]: Finished difference Result 172 states and 173 transitions. [2020-07-10 19:03:31,541 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 40 states. [2020-07-10 19:03:31,541 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 146 [2020-07-10 19:03:31,542 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 19:03:31,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-10 19:03:31,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 172 transitions. [2020-07-10 19:03:31,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-10 19:03:31,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 172 transitions. [2020-07-10 19:03:31,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 40 states and 172 transitions. [2020-07-10 19:03:31,788 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:03:31,792 INFO L225 Difference]: With dead ends: 172 [2020-07-10 19:03:31,792 INFO L226 Difference]: Without dead ends: 156 [2020-07-10 19:03:31,794 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 7 SyntacticMatches, 1 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 593 ImplicationChecksByTransitivity, 12.0s TimeCoverageRelationStatistics Valid=231, Invalid=2849, Unknown=0, NotChecked=0, Total=3080 [2020-07-10 19:03:31,794 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2020-07-10 19:03:32,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 153. [2020-07-10 19:03:32,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 19:03:32,070 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand 153 states. [2020-07-10 19:03:32,070 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand 153 states. [2020-07-10 19:03:32,071 INFO L87 Difference]: Start difference. First operand 156 states. Second operand 153 states. [2020-07-10 19:03:32,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:03:32,076 INFO L93 Difference]: Finished difference Result 156 states and 157 transitions. [2020-07-10 19:03:32,076 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 157 transitions. [2020-07-10 19:03:32,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:03:32,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:03:32,078 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 156 states. [2020-07-10 19:03:32,078 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 156 states. [2020-07-10 19:03:32,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 19:03:32,083 INFO L93 Difference]: Finished difference Result 156 states and 157 transitions. [2020-07-10 19:03:32,083 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 157 transitions. [2020-07-10 19:03:32,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 19:03:32,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 19:03:32,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 19:03:32,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 19:03:32,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 153 states. [2020-07-10 19:03:32,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 154 transitions. [2020-07-10 19:03:32,090 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 154 transitions. Word has length 146 [2020-07-10 19:03:32,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 19:03:32,091 INFO L479 AbstractCegarLoop]: Abstraction has 153 states and 154 transitions. [2020-07-10 19:03:32,091 INFO L480 AbstractCegarLoop]: Interpolant automaton has 30 states. [2020-07-10 19:03:32,091 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 153 states and 154 transitions. [2020-07-10 19:03:32,323 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 19:03:32,323 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 154 transitions. [2020-07-10 19:03:32,325 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 153 [2020-07-10 19:03:32,325 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 19:03:32,326 INFO L422 BasicCegarLoop]: trace histogram [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 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, 1, 1] [2020-07-10 19:03:32,326 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2020-07-10 19:03:32,326 INFO L427 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 19:03:32,326 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 19:03:32,327 INFO L82 PathProgramCache]: Analyzing trace with hash 1165083452, now seen corresponding path program 1 times [2020-07-10 19:03:32,327 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-10 19:03:32,327 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1839491430] [2020-07-10 19:03:32,327 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 19:03:32,360 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2020-07-10 19:03:32,360 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.NullPointerException at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolation.generateMetaTrace(AcceleratedInterpolation.java:442) at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolation.acceleratedInterpolationCore(AcceleratedInterpolation.java:277) at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolation.(AcceleratedInterpolation.java:184) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModulePreferences.construct(IpTcStrategyModulePreferences.java:144) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:57) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:242) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:166) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:75) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:508) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:436) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:370) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResult.iterate(CegarLoopResult.java:142) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterateNew(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:127) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:120) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:317) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2020-07-10 19:03:32,366 INFO L168 Benchmark]: Toolchain (without parser) took 56210.12 ms. Allocated memory was 137.9 MB in the beginning and 745.5 MB in the end (delta: 607.6 MB). Free memory was 101.7 MB in the beginning and 233.6 MB in the end (delta: -131.8 MB). Peak memory consumption was 475.8 MB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,367 INFO L168 Benchmark]: CDTParser took 0.28 ms. Allocated memory is still 137.9 MB. Free memory was 120.0 MB in the beginning and 119.8 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,367 INFO L168 Benchmark]: CACSL2BoogieTranslator took 477.92 ms. Allocated memory was 137.9 MB in the beginning and 203.4 MB in the end (delta: 65.5 MB). Free memory was 101.5 MB in the beginning and 181.5 MB in the end (delta: -79.9 MB). Peak memory consumption was 23.7 MB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,368 INFO L168 Benchmark]: Boogie Preprocessor took 64.21 ms. Allocated memory is still 203.4 MB. Free memory was 181.5 MB in the beginning and 179.4 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,368 INFO L168 Benchmark]: RCFGBuilder took 626.57 ms. Allocated memory is still 203.4 MB. Free memory was 179.4 MB in the beginning and 145.2 MB in the end (delta: 34.3 MB). Peak memory consumption was 34.3 MB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,369 INFO L168 Benchmark]: TraceAbstraction took 55035.19 ms. Allocated memory was 203.4 MB in the beginning and 745.5 MB in the end (delta: 542.1 MB). Free memory was 145.2 MB in the beginning and 233.6 MB in the end (delta: -88.4 MB). Peak memory consumption was 453.7 MB. Max. memory is 7.1 GB. [2020-07-10 19:03:32,372 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.28 ms. Allocated memory is still 137.9 MB. Free memory was 120.0 MB in the beginning and 119.8 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 477.92 ms. Allocated memory was 137.9 MB in the beginning and 203.4 MB in the end (delta: 65.5 MB). Free memory was 101.5 MB in the beginning and 181.5 MB in the end (delta: -79.9 MB). Peak memory consumption was 23.7 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 64.21 ms. Allocated memory is still 203.4 MB. Free memory was 181.5 MB in the beginning and 179.4 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. * RCFGBuilder took 626.57 ms. Allocated memory is still 203.4 MB. Free memory was 179.4 MB in the beginning and 145.2 MB in the end (delta: 34.3 MB). Peak memory consumption was 34.3 MB. Max. memory is 7.1 GB. * TraceAbstraction took 55035.19 ms. Allocated memory was 203.4 MB in the beginning and 745.5 MB in the end (delta: 542.1 MB). Free memory was 145.2 MB in the beginning and 233.6 MB in the end (delta: -88.4 MB). Peak memory consumption was 453.7 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: NullPointerException: null de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: NullPointerException: null: de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolation.generateMetaTrace(AcceleratedInterpolation.java:442) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...