java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf -i ../../../trunk/examples/svcomp/reducercommutativity/avg05_true-unreach-call_true-termination.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-370d6ab [2018-11-14 16:01:38,201 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-14 16:01:38,203 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-14 16:01:38,220 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-14 16:01:38,220 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-14 16:01:38,222 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-14 16:01:38,223 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-14 16:01:38,225 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-14 16:01:38,226 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-14 16:01:38,227 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-14 16:01:38,228 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-14 16:01:38,229 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-14 16:01:38,230 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-14 16:01:38,231 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-14 16:01:38,232 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-14 16:01:38,233 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-14 16:01:38,234 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-14 16:01:38,238 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-14 16:01:38,240 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-14 16:01:38,244 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-14 16:01:38,245 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-14 16:01:38,249 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-14 16:01:38,255 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-14 16:01:38,255 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-14 16:01:38,255 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-14 16:01:38,257 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-14 16:01:38,258 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-14 16:01:38,258 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-14 16:01:38,261 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-14 16:01:38,263 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-14 16:01:38,263 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-14 16:01:38,264 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-14 16:01:38,264 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-14 16:01:38,264 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-14 16:01:38,267 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-14 16:01:38,268 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-14 16:01:38,268 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-14 16:01:38,294 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-14 16:01:38,295 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-14 16:01:38,296 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-14 16:01:38,300 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-14 16:01:38,301 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-14 16:01:38,301 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-14 16:01:38,301 INFO L133 SettingsManager]: * Use SBE=true [2018-11-14 16:01:38,302 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-14 16:01:38,302 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-14 16:01:38,302 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-14 16:01:38,302 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-14 16:01:38,302 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-14 16:01:38,303 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-14 16:01:38,304 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-14 16:01:38,304 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-14 16:01:38,304 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-14 16:01:38,304 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-14 16:01:38,305 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-14 16:01:38,305 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-14 16:01:38,305 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-14 16:01:38,305 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-14 16:01:38,305 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-14 16:01:38,307 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-14 16:01:38,307 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 16:01:38,307 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-14 16:01:38,307 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-14 16:01:38,308 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-14 16:01:38,308 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-14 16:01:38,308 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-14 16:01:38,308 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-14 16:01:38,308 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-14 16:01:38,309 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-14 16:01:38,382 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-14 16:01:38,400 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-14 16:01:38,405 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-14 16:01:38,406 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-14 16:01:38,407 INFO L276 PluginConnector]: CDTParser initialized [2018-11-14 16:01:38,408 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/reducercommutativity/avg05_true-unreach-call_true-termination.i [2018-11-14 16:01:38,482 INFO L218 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8509d6813/53e383218ba741b0a2a09181065bea15/FLAG8b13a85f2 [2018-11-14 16:01:38,922 INFO L298 CDTParser]: Found 1 translation units. [2018-11-14 16:01:38,923 INFO L158 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/reducercommutativity/avg05_true-unreach-call_true-termination.i [2018-11-14 16:01:38,929 INFO L346 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8509d6813/53e383218ba741b0a2a09181065bea15/FLAG8b13a85f2 [2018-11-14 16:01:38,943 INFO L354 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8509d6813/53e383218ba741b0a2a09181065bea15 [2018-11-14 16:01:38,953 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-14 16:01:38,954 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-14 16:01:38,955 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-14 16:01:38,955 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-14 16:01:38,959 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-14 16:01:38,961 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 04:01:38" (1/1) ... [2018-11-14 16:01:38,964 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@43f1baf4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:38, skipping insertion in model container [2018-11-14 16:01:38,964 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 04:01:38" (1/1) ... [2018-11-14 16:01:38,975 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-14 16:01:38,997 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-14 16:01:39,237 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 16:01:39,256 INFO L191 MainTranslator]: Completed pre-run [2018-11-14 16:01:39,290 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 16:01:39,308 INFO L195 MainTranslator]: Completed translation [2018-11-14 16:01:39,309 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39 WrapperNode [2018-11-14 16:01:39,309 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-14 16:01:39,310 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-14 16:01:39,310 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-14 16:01:39,310 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-14 16:01:39,322 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,322 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,334 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,334 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,350 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,357 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,360 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (1/1) ... [2018-11-14 16:01:39,362 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-14 16:01:39,363 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-14 16:01:39,363 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-14 16:01:39,363 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-14 16:01:39,364 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (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 [2018-11-14 16:01:39,490 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-14 16:01:39,490 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-14 16:01:39,490 INFO L138 BoogieDeclarations]: Found implementation of procedure avg [2018-11-14 16:01:39,491 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-14 16:01:39,491 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-14 16:01:39,491 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-11-14 16:01:39,491 INFO L130 BoogieDeclarations]: Found specification of procedure avg [2018-11-14 16:01:39,491 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-14 16:01:39,491 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-14 16:01:39,492 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-14 16:01:39,492 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-14 16:01:39,492 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-14 16:01:39,492 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-14 16:01:39,492 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-14 16:01:39,493 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~intINTTYPE4 [2018-11-14 16:01:40,289 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-14 16:01:40,291 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 04:01:40 BoogieIcfgContainer [2018-11-14 16:01:40,291 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-14 16:01:40,292 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-14 16:01:40,294 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-14 16:01:40,297 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-14 16:01:40,298 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.11 04:01:38" (1/3) ... [2018-11-14 16:01:40,298 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f01684f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 04:01:40, skipping insertion in model container [2018-11-14 16:01:40,299 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 04:01:39" (2/3) ... [2018-11-14 16:01:40,299 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f01684f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 04:01:40, skipping insertion in model container [2018-11-14 16:01:40,299 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 04:01:40" (3/3) ... [2018-11-14 16:01:40,301 INFO L112 eAbstractionObserver]: Analyzing ICFG avg05_true-unreach-call_true-termination.i [2018-11-14 16:01:40,310 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-14 16:01:40,318 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-14 16:01:40,334 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-14 16:01:40,368 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-14 16:01:40,369 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-14 16:01:40,369 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-14 16:01:40,369 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-14 16:01:40,369 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-14 16:01:40,371 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-14 16:01:40,371 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-14 16:01:40,371 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-14 16:01:40,371 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-14 16:01:40,390 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states. [2018-11-14 16:01:40,398 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-14 16:01:40,398 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:40,399 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 16:01:40,401 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:40,407 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:40,407 INFO L82 PathProgramCache]: Analyzing trace with hash -1401494287, now seen corresponding path program 1 times [2018-11-14 16:01:40,411 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:40,412 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:40,434 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 16:01:40,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:40,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:40,550 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:40,772 INFO L256 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2018-11-14 16:01:40,777 INFO L273 TraceCheckUtils]: 1: Hoare triple {37#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {37#true} is VALID [2018-11-14 16:01:40,777 INFO L273 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2018-11-14 16:01:40,778 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #69#return; {37#true} is VALID [2018-11-14 16:01:40,779 INFO L256 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret12 := main(); {37#true} is VALID [2018-11-14 16:01:40,779 INFO L273 TraceCheckUtils]: 5: Hoare triple {37#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {37#true} is VALID [2018-11-14 16:01:40,792 INFO L273 TraceCheckUtils]: 6: Hoare triple {37#true} assume !true; {38#false} is VALID [2018-11-14 16:01:40,793 INFO L256 TraceCheckUtils]: 7: Hoare triple {38#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {38#false} is VALID [2018-11-14 16:01:40,793 INFO L273 TraceCheckUtils]: 8: Hoare triple {38#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {38#false} is VALID [2018-11-14 16:01:40,794 INFO L273 TraceCheckUtils]: 9: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 16:01:40,794 INFO L273 TraceCheckUtils]: 10: Hoare triple {38#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {38#false} is VALID [2018-11-14 16:01:40,794 INFO L273 TraceCheckUtils]: 11: Hoare triple {38#false} assume true; {38#false} is VALID [2018-11-14 16:01:40,795 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2018-11-14 16:01:40,795 INFO L273 TraceCheckUtils]: 13: Hoare triple {38#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {38#false} is VALID [2018-11-14 16:01:40,795 INFO L256 TraceCheckUtils]: 14: Hoare triple {38#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {38#false} is VALID [2018-11-14 16:01:40,796 INFO L273 TraceCheckUtils]: 15: Hoare triple {38#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {38#false} is VALID [2018-11-14 16:01:40,796 INFO L273 TraceCheckUtils]: 16: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 16:01:40,796 INFO L273 TraceCheckUtils]: 17: Hoare triple {38#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {38#false} is VALID [2018-11-14 16:01:40,797 INFO L273 TraceCheckUtils]: 18: Hoare triple {38#false} assume true; {38#false} is VALID [2018-11-14 16:01:40,797 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {38#false} {38#false} #75#return; {38#false} is VALID [2018-11-14 16:01:40,797 INFO L273 TraceCheckUtils]: 20: Hoare triple {38#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {38#false} is VALID [2018-11-14 16:01:40,798 INFO L273 TraceCheckUtils]: 21: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 16:01:40,798 INFO L273 TraceCheckUtils]: 22: Hoare triple {38#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {38#false} is VALID [2018-11-14 16:01:40,798 INFO L256 TraceCheckUtils]: 23: Hoare triple {38#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {38#false} is VALID [2018-11-14 16:01:40,799 INFO L273 TraceCheckUtils]: 24: Hoare triple {38#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {38#false} is VALID [2018-11-14 16:01:40,799 INFO L273 TraceCheckUtils]: 25: Hoare triple {38#false} assume !true; {38#false} is VALID [2018-11-14 16:01:40,799 INFO L273 TraceCheckUtils]: 26: Hoare triple {38#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {38#false} is VALID [2018-11-14 16:01:40,800 INFO L273 TraceCheckUtils]: 27: Hoare triple {38#false} assume true; {38#false} is VALID [2018-11-14 16:01:40,800 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {38#false} {38#false} #77#return; {38#false} is VALID [2018-11-14 16:01:40,800 INFO L273 TraceCheckUtils]: 29: Hoare triple {38#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {38#false} is VALID [2018-11-14 16:01:40,801 INFO L273 TraceCheckUtils]: 30: Hoare triple {38#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {38#false} is VALID [2018-11-14 16:01:40,801 INFO L273 TraceCheckUtils]: 31: Hoare triple {38#false} assume !false; {38#false} is VALID [2018-11-14 16:01:40,808 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-14 16:01:40,808 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-14 16:01:40,819 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 16:01:40,820 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-14 16:01:40,826 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 16:01:40,834 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:40,839 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-14 16:01:41,028 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:41,028 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-14 16:01:41,037 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-14 16:01:41,038 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 16:01:41,040 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 2 states. [2018-11-14 16:01:41,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:41,359 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2018-11-14 16:01:41,359 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-14 16:01:41,359 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 32 [2018-11-14 16:01:41,359 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:41,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 16:01:41,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 16:01:41,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 16:01:41,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 76 transitions. [2018-11-14 16:01:41,382 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 76 transitions. [2018-11-14 16:01:41,787 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:41,800 INFO L225 Difference]: With dead ends: 59 [2018-11-14 16:01:41,801 INFO L226 Difference]: Without dead ends: 29 [2018-11-14 16:01:41,804 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 16:01:41,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-14 16:01:41,970 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-14 16:01:41,970 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:41,971 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2018-11-14 16:01:41,972 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 16:01:41,972 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 16:01:41,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:41,987 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 16:01:41,987 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 16:01:41,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:41,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:41,993 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-14 16:01:41,993 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-14 16:01:42,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:42,003 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2018-11-14 16:01:42,003 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 16:01:42,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:42,008 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:42,008 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:42,008 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:42,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-14 16:01:42,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 33 transitions. [2018-11-14 16:01:42,018 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 33 transitions. Word has length 32 [2018-11-14 16:01:42,018 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:42,018 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 33 transitions. [2018-11-14 16:01:42,018 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-14 16:01:42,020 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2018-11-14 16:01:42,021 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2018-11-14 16:01:42,021 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:42,023 INFO L375 BasicCegarLoop]: trace histogram [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] [2018-11-14 16:01:42,025 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:42,025 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:42,026 INFO L82 PathProgramCache]: Analyzing trace with hash -741637549, now seen corresponding path program 1 times [2018-11-14 16:01:42,026 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:42,027 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:42,056 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 16:01:42,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:43,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:43,061 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:43,150 INFO L256 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2018-11-14 16:01:43,151 INFO L273 TraceCheckUtils]: 1: Hoare triple {308#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {308#true} is VALID [2018-11-14 16:01:43,151 INFO L273 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2018-11-14 16:01:43,151 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #69#return; {308#true} is VALID [2018-11-14 16:01:43,151 INFO L256 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret12 := main(); {308#true} is VALID [2018-11-14 16:01:43,170 INFO L273 TraceCheckUtils]: 5: Hoare triple {308#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {328#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:43,183 INFO L273 TraceCheckUtils]: 6: Hoare triple {328#(= main_~i~1 (_ bv0 32))} assume true; {328#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:43,198 INFO L273 TraceCheckUtils]: 7: Hoare triple {328#(= main_~i~1 (_ bv0 32))} assume !~bvslt32(~i~1, 5bv32); {309#false} is VALID [2018-11-14 16:01:43,198 INFO L256 TraceCheckUtils]: 8: Hoare triple {309#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {309#false} is VALID [2018-11-14 16:01:43,199 INFO L273 TraceCheckUtils]: 9: Hoare triple {309#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {309#false} is VALID [2018-11-14 16:01:43,199 INFO L273 TraceCheckUtils]: 10: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,199 INFO L273 TraceCheckUtils]: 11: Hoare triple {309#false} assume !~bvslt32(~i~0, 5bv32); {309#false} is VALID [2018-11-14 16:01:43,199 INFO L273 TraceCheckUtils]: 12: Hoare triple {309#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {309#false} is VALID [2018-11-14 16:01:43,200 INFO L273 TraceCheckUtils]: 13: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,200 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {309#false} {309#false} #73#return; {309#false} is VALID [2018-11-14 16:01:43,200 INFO L273 TraceCheckUtils]: 15: Hoare triple {309#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {309#false} is VALID [2018-11-14 16:01:43,201 INFO L256 TraceCheckUtils]: 16: Hoare triple {309#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {309#false} is VALID [2018-11-14 16:01:43,201 INFO L273 TraceCheckUtils]: 17: Hoare triple {309#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {309#false} is VALID [2018-11-14 16:01:43,201 INFO L273 TraceCheckUtils]: 18: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,202 INFO L273 TraceCheckUtils]: 19: Hoare triple {309#false} assume !~bvslt32(~i~0, 5bv32); {309#false} is VALID [2018-11-14 16:01:43,202 INFO L273 TraceCheckUtils]: 20: Hoare triple {309#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {309#false} is VALID [2018-11-14 16:01:43,202 INFO L273 TraceCheckUtils]: 21: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,203 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {309#false} {309#false} #75#return; {309#false} is VALID [2018-11-14 16:01:43,203 INFO L273 TraceCheckUtils]: 23: Hoare triple {309#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {309#false} is VALID [2018-11-14 16:01:43,203 INFO L273 TraceCheckUtils]: 24: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,204 INFO L273 TraceCheckUtils]: 25: Hoare triple {309#false} assume !~bvslt32(~i~2, 4bv32); {309#false} is VALID [2018-11-14 16:01:43,204 INFO L273 TraceCheckUtils]: 26: Hoare triple {309#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {309#false} is VALID [2018-11-14 16:01:43,204 INFO L256 TraceCheckUtils]: 27: Hoare triple {309#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {309#false} is VALID [2018-11-14 16:01:43,204 INFO L273 TraceCheckUtils]: 28: Hoare triple {309#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {309#false} is VALID [2018-11-14 16:01:43,205 INFO L273 TraceCheckUtils]: 29: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,205 INFO L273 TraceCheckUtils]: 30: Hoare triple {309#false} assume !~bvslt32(~i~0, 5bv32); {309#false} is VALID [2018-11-14 16:01:43,205 INFO L273 TraceCheckUtils]: 31: Hoare triple {309#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {309#false} is VALID [2018-11-14 16:01:43,206 INFO L273 TraceCheckUtils]: 32: Hoare triple {309#false} assume true; {309#false} is VALID [2018-11-14 16:01:43,206 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {309#false} {309#false} #77#return; {309#false} is VALID [2018-11-14 16:01:43,206 INFO L273 TraceCheckUtils]: 34: Hoare triple {309#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {309#false} is VALID [2018-11-14 16:01:43,207 INFO L273 TraceCheckUtils]: 35: Hoare triple {309#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {309#false} is VALID [2018-11-14 16:01:43,207 INFO L273 TraceCheckUtils]: 36: Hoare triple {309#false} assume !false; {309#false} is VALID [2018-11-14 16:01:43,210 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-14 16:01:43,210 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-14 16:01:43,220 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 16:01:43,220 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 16:01:43,223 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 16:01:43,224 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:43,224 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 16:01:43,368 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:43,368 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 16:01:43,369 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 16:01:43,369 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:43,369 INFO L87 Difference]: Start difference. First operand 29 states and 33 transitions. Second operand 3 states. [2018-11-14 16:01:43,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:43,784 INFO L93 Difference]: Finished difference Result 52 states and 60 transitions. [2018-11-14 16:01:43,784 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 16:01:43,784 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 37 [2018-11-14 16:01:43,785 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:43,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:43,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 16:01:43,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:43,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2018-11-14 16:01:43,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2018-11-14 16:01:44,166 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:44,169 INFO L225 Difference]: With dead ends: 52 [2018-11-14 16:01:44,169 INFO L226 Difference]: Without dead ends: 32 [2018-11-14 16:01:44,171 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:44,171 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-14 16:01:44,185 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2018-11-14 16:01:44,185 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:44,185 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 31 states. [2018-11-14 16:01:44,185 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 31 states. [2018-11-14 16:01:44,185 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 31 states. [2018-11-14 16:01:44,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:44,189 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 16:01:44,189 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 16:01:44,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:44,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:44,191 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 32 states. [2018-11-14 16:01:44,191 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 32 states. [2018-11-14 16:01:44,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:44,195 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2018-11-14 16:01:44,195 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2018-11-14 16:01:44,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:44,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:44,196 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:44,196 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:44,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-14 16:01:44,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2018-11-14 16:01:44,200 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 37 [2018-11-14 16:01:44,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:44,200 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2018-11-14 16:01:44,200 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 16:01:44,201 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2018-11-14 16:01:44,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 16:01:44,202 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:44,202 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 16:01:44,203 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:44,203 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:44,203 INFO L82 PathProgramCache]: Analyzing trace with hash 989317657, now seen corresponding path program 1 times [2018-11-14 16:01:44,204 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:44,204 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:44,226 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 16:01:44,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:45,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:45,072 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:45,188 INFO L256 TraceCheckUtils]: 0: Hoare triple {598#true} call ULTIMATE.init(); {598#true} is VALID [2018-11-14 16:01:45,189 INFO L273 TraceCheckUtils]: 1: Hoare triple {598#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {598#true} is VALID [2018-11-14 16:01:45,189 INFO L273 TraceCheckUtils]: 2: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,189 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {598#true} {598#true} #69#return; {598#true} is VALID [2018-11-14 16:01:45,189 INFO L256 TraceCheckUtils]: 4: Hoare triple {598#true} call #t~ret12 := main(); {598#true} is VALID [2018-11-14 16:01:45,190 INFO L273 TraceCheckUtils]: 5: Hoare triple {598#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {618#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:45,192 INFO L273 TraceCheckUtils]: 6: Hoare triple {618#(= main_~i~1 (_ bv0 32))} assume true; {618#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:45,193 INFO L273 TraceCheckUtils]: 7: Hoare triple {618#(= main_~i~1 (_ bv0 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {618#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:45,194 INFO L273 TraceCheckUtils]: 8: Hoare triple {618#(= main_~i~1 (_ bv0 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {628#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:45,195 INFO L273 TraceCheckUtils]: 9: Hoare triple {628#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} assume true; {628#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:45,208 INFO L273 TraceCheckUtils]: 10: Hoare triple {628#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} assume !~bvslt32(~i~1, 5bv32); {599#false} is VALID [2018-11-14 16:01:45,208 INFO L256 TraceCheckUtils]: 11: Hoare triple {599#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {599#false} is VALID [2018-11-14 16:01:45,209 INFO L273 TraceCheckUtils]: 12: Hoare triple {599#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {599#false} is VALID [2018-11-14 16:01:45,209 INFO L273 TraceCheckUtils]: 13: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,209 INFO L273 TraceCheckUtils]: 14: Hoare triple {599#false} assume !~bvslt32(~i~0, 5bv32); {599#false} is VALID [2018-11-14 16:01:45,210 INFO L273 TraceCheckUtils]: 15: Hoare triple {599#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {599#false} is VALID [2018-11-14 16:01:45,210 INFO L273 TraceCheckUtils]: 16: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,210 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {599#false} {599#false} #73#return; {599#false} is VALID [2018-11-14 16:01:45,211 INFO L273 TraceCheckUtils]: 18: Hoare triple {599#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {599#false} is VALID [2018-11-14 16:01:45,211 INFO L256 TraceCheckUtils]: 19: Hoare triple {599#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {599#false} is VALID [2018-11-14 16:01:45,211 INFO L273 TraceCheckUtils]: 20: Hoare triple {599#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {599#false} is VALID [2018-11-14 16:01:45,211 INFO L273 TraceCheckUtils]: 21: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,212 INFO L273 TraceCheckUtils]: 22: Hoare triple {599#false} assume !~bvslt32(~i~0, 5bv32); {599#false} is VALID [2018-11-14 16:01:45,212 INFO L273 TraceCheckUtils]: 23: Hoare triple {599#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {599#false} is VALID [2018-11-14 16:01:45,212 INFO L273 TraceCheckUtils]: 24: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,213 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {599#false} {599#false} #75#return; {599#false} is VALID [2018-11-14 16:01:45,213 INFO L273 TraceCheckUtils]: 26: Hoare triple {599#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {599#false} is VALID [2018-11-14 16:01:45,213 INFO L273 TraceCheckUtils]: 27: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,221 INFO L273 TraceCheckUtils]: 28: Hoare triple {599#false} assume !~bvslt32(~i~2, 4bv32); {599#false} is VALID [2018-11-14 16:01:45,221 INFO L273 TraceCheckUtils]: 29: Hoare triple {599#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {599#false} is VALID [2018-11-14 16:01:45,222 INFO L256 TraceCheckUtils]: 30: Hoare triple {599#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {599#false} is VALID [2018-11-14 16:01:45,222 INFO L273 TraceCheckUtils]: 31: Hoare triple {599#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {599#false} is VALID [2018-11-14 16:01:45,222 INFO L273 TraceCheckUtils]: 32: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,222 INFO L273 TraceCheckUtils]: 33: Hoare triple {599#false} assume !~bvslt32(~i~0, 5bv32); {599#false} is VALID [2018-11-14 16:01:45,225 INFO L273 TraceCheckUtils]: 34: Hoare triple {599#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {599#false} is VALID [2018-11-14 16:01:45,225 INFO L273 TraceCheckUtils]: 35: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,225 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {599#false} {599#false} #77#return; {599#false} is VALID [2018-11-14 16:01:45,226 INFO L273 TraceCheckUtils]: 37: Hoare triple {599#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {599#false} is VALID [2018-11-14 16:01:45,226 INFO L273 TraceCheckUtils]: 38: Hoare triple {599#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {599#false} is VALID [2018-11-14 16:01:45,226 INFO L273 TraceCheckUtils]: 39: Hoare triple {599#false} assume !false; {599#false} is VALID [2018-11-14 16:01:45,234 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-14 16:01:45,235 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-14 16:01:45,456 INFO L273 TraceCheckUtils]: 39: Hoare triple {599#false} assume !false; {599#false} is VALID [2018-11-14 16:01:45,457 INFO L273 TraceCheckUtils]: 38: Hoare triple {599#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {599#false} is VALID [2018-11-14 16:01:45,457 INFO L273 TraceCheckUtils]: 37: Hoare triple {599#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {599#false} is VALID [2018-11-14 16:01:45,458 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {598#true} {599#false} #77#return; {599#false} is VALID [2018-11-14 16:01:45,458 INFO L273 TraceCheckUtils]: 35: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,459 INFO L273 TraceCheckUtils]: 34: Hoare triple {598#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {598#true} is VALID [2018-11-14 16:01:45,459 INFO L273 TraceCheckUtils]: 33: Hoare triple {598#true} assume !~bvslt32(~i~0, 5bv32); {598#true} is VALID [2018-11-14 16:01:45,460 INFO L273 TraceCheckUtils]: 32: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,461 INFO L273 TraceCheckUtils]: 31: Hoare triple {598#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {598#true} is VALID [2018-11-14 16:01:45,461 INFO L256 TraceCheckUtils]: 30: Hoare triple {599#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {598#true} is VALID [2018-11-14 16:01:45,461 INFO L273 TraceCheckUtils]: 29: Hoare triple {599#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {599#false} is VALID [2018-11-14 16:01:45,462 INFO L273 TraceCheckUtils]: 28: Hoare triple {599#false} assume !~bvslt32(~i~2, 4bv32); {599#false} is VALID [2018-11-14 16:01:45,462 INFO L273 TraceCheckUtils]: 27: Hoare triple {599#false} assume true; {599#false} is VALID [2018-11-14 16:01:45,462 INFO L273 TraceCheckUtils]: 26: Hoare triple {599#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {599#false} is VALID [2018-11-14 16:01:45,463 INFO L268 TraceCheckUtils]: 25: Hoare quadruple {598#true} {599#false} #75#return; {599#false} is VALID [2018-11-14 16:01:45,463 INFO L273 TraceCheckUtils]: 24: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,463 INFO L273 TraceCheckUtils]: 23: Hoare triple {598#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {598#true} is VALID [2018-11-14 16:01:45,464 INFO L273 TraceCheckUtils]: 22: Hoare triple {598#true} assume !~bvslt32(~i~0, 5bv32); {598#true} is VALID [2018-11-14 16:01:45,464 INFO L273 TraceCheckUtils]: 21: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,464 INFO L273 TraceCheckUtils]: 20: Hoare triple {598#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {598#true} is VALID [2018-11-14 16:01:45,465 INFO L256 TraceCheckUtils]: 19: Hoare triple {599#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {598#true} is VALID [2018-11-14 16:01:45,465 INFO L273 TraceCheckUtils]: 18: Hoare triple {599#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {599#false} is VALID [2018-11-14 16:01:45,465 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {598#true} {599#false} #73#return; {599#false} is VALID [2018-11-14 16:01:45,465 INFO L273 TraceCheckUtils]: 16: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,466 INFO L273 TraceCheckUtils]: 15: Hoare triple {598#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {598#true} is VALID [2018-11-14 16:01:45,466 INFO L273 TraceCheckUtils]: 14: Hoare triple {598#true} assume !~bvslt32(~i~0, 5bv32); {598#true} is VALID [2018-11-14 16:01:45,466 INFO L273 TraceCheckUtils]: 13: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,467 INFO L273 TraceCheckUtils]: 12: Hoare triple {598#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {598#true} is VALID [2018-11-14 16:01:45,467 INFO L256 TraceCheckUtils]: 11: Hoare triple {599#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {598#true} is VALID [2018-11-14 16:01:45,479 INFO L273 TraceCheckUtils]: 10: Hoare triple {809#(bvslt main_~i~1 (_ bv5 32))} assume !~bvslt32(~i~1, 5bv32); {599#false} is VALID [2018-11-14 16:01:45,480 INFO L273 TraceCheckUtils]: 9: Hoare triple {809#(bvslt main_~i~1 (_ bv5 32))} assume true; {809#(bvslt main_~i~1 (_ bv5 32))} is VALID [2018-11-14 16:01:45,482 INFO L273 TraceCheckUtils]: 8: Hoare triple {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {809#(bvslt main_~i~1 (_ bv5 32))} is VALID [2018-11-14 16:01:45,482 INFO L273 TraceCheckUtils]: 7: Hoare triple {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:45,484 INFO L273 TraceCheckUtils]: 6: Hoare triple {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} assume true; {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:45,484 INFO L273 TraceCheckUtils]: 5: Hoare triple {598#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {816#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:45,485 INFO L256 TraceCheckUtils]: 4: Hoare triple {598#true} call #t~ret12 := main(); {598#true} is VALID [2018-11-14 16:01:45,485 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {598#true} {598#true} #69#return; {598#true} is VALID [2018-11-14 16:01:45,485 INFO L273 TraceCheckUtils]: 2: Hoare triple {598#true} assume true; {598#true} is VALID [2018-11-14 16:01:45,486 INFO L273 TraceCheckUtils]: 1: Hoare triple {598#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {598#true} is VALID [2018-11-14 16:01:45,486 INFO L256 TraceCheckUtils]: 0: Hoare triple {598#true} call ULTIMATE.init(); {598#true} is VALID [2018-11-14 16:01:45,489 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-14 16:01:45,496 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 16:01:45,497 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-14 16:01:45,497 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 40 [2018-11-14 16:01:45,501 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:45,501 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 16:01:45,820 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:45,820 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 16:01:45,820 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 16:01:45,821 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2018-11-14 16:01:45,821 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand 6 states. [2018-11-14 16:01:46,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:46,442 INFO L93 Difference]: Finished difference Result 60 states and 70 transitions. [2018-11-14 16:01:46,442 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-14 16:01:46,442 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 40 [2018-11-14 16:01:46,442 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:46,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:01:46,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2018-11-14 16:01:46,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:01:46,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2018-11-14 16:01:46,449 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 70 transitions. [2018-11-14 16:01:46,762 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:46,764 INFO L225 Difference]: With dead ends: 60 [2018-11-14 16:01:46,764 INFO L226 Difference]: Without dead ends: 40 [2018-11-14 16:01:46,765 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2018-11-14 16:01:46,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2018-11-14 16:01:46,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2018-11-14 16:01:46,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:46,781 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 40 states. [2018-11-14 16:01:46,781 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 40 states. [2018-11-14 16:01:46,781 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 40 states. [2018-11-14 16:01:46,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:46,784 INFO L93 Difference]: Finished difference Result 40 states and 44 transitions. [2018-11-14 16:01:46,785 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 44 transitions. [2018-11-14 16:01:46,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:46,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:46,786 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 40 states. [2018-11-14 16:01:46,786 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 40 states. [2018-11-14 16:01:46,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:46,789 INFO L93 Difference]: Finished difference Result 40 states and 44 transitions. [2018-11-14 16:01:46,789 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 44 transitions. [2018-11-14 16:01:46,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:46,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:46,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:46,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:46,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-14 16:01:46,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 44 transitions. [2018-11-14 16:01:46,794 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 44 transitions. Word has length 40 [2018-11-14 16:01:46,794 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:46,794 INFO L480 AbstractCegarLoop]: Abstraction has 40 states and 44 transitions. [2018-11-14 16:01:46,794 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 16:01:46,794 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 44 transitions. [2018-11-14 16:01:46,796 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2018-11-14 16:01:46,796 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:46,796 INFO L375 BasicCegarLoop]: trace histogram [5, 4, 4, 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] [2018-11-14 16:01:46,797 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:46,797 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:46,797 INFO L82 PathProgramCache]: Analyzing trace with hash -384166189, now seen corresponding path program 2 times [2018-11-14 16:01:46,798 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:46,798 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:46,819 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-14 16:01:47,089 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2018-11-14 16:01:47,089 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 16:01:47,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:47,149 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:47,306 INFO L256 TraceCheckUtils]: 0: Hoare triple {1061#true} call ULTIMATE.init(); {1061#true} is VALID [2018-11-14 16:01:47,307 INFO L273 TraceCheckUtils]: 1: Hoare triple {1061#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1061#true} is VALID [2018-11-14 16:01:47,307 INFO L273 TraceCheckUtils]: 2: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,307 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1061#true} {1061#true} #69#return; {1061#true} is VALID [2018-11-14 16:01:47,308 INFO L256 TraceCheckUtils]: 4: Hoare triple {1061#true} call #t~ret12 := main(); {1061#true} is VALID [2018-11-14 16:01:47,308 INFO L273 TraceCheckUtils]: 5: Hoare triple {1061#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {1061#true} is VALID [2018-11-14 16:01:47,308 INFO L273 TraceCheckUtils]: 6: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,309 INFO L273 TraceCheckUtils]: 7: Hoare triple {1061#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1061#true} is VALID [2018-11-14 16:01:47,309 INFO L273 TraceCheckUtils]: 8: Hoare triple {1061#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1061#true} is VALID [2018-11-14 16:01:47,309 INFO L273 TraceCheckUtils]: 9: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,309 INFO L273 TraceCheckUtils]: 10: Hoare triple {1061#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1061#true} is VALID [2018-11-14 16:01:47,310 INFO L273 TraceCheckUtils]: 11: Hoare triple {1061#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1061#true} is VALID [2018-11-14 16:01:47,310 INFO L273 TraceCheckUtils]: 12: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,310 INFO L273 TraceCheckUtils]: 13: Hoare triple {1061#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1061#true} is VALID [2018-11-14 16:01:47,311 INFO L273 TraceCheckUtils]: 14: Hoare triple {1061#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1061#true} is VALID [2018-11-14 16:01:47,311 INFO L273 TraceCheckUtils]: 15: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,311 INFO L273 TraceCheckUtils]: 16: Hoare triple {1061#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1061#true} is VALID [2018-11-14 16:01:47,311 INFO L273 TraceCheckUtils]: 17: Hoare triple {1061#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1061#true} is VALID [2018-11-14 16:01:47,311 INFO L273 TraceCheckUtils]: 18: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,312 INFO L273 TraceCheckUtils]: 19: Hoare triple {1061#true} assume !~bvslt32(~i~1, 5bv32); {1061#true} is VALID [2018-11-14 16:01:47,312 INFO L256 TraceCheckUtils]: 20: Hoare triple {1061#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1061#true} is VALID [2018-11-14 16:01:47,312 INFO L273 TraceCheckUtils]: 21: Hoare triple {1061#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1061#true} is VALID [2018-11-14 16:01:47,312 INFO L273 TraceCheckUtils]: 22: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,312 INFO L273 TraceCheckUtils]: 23: Hoare triple {1061#true} assume !~bvslt32(~i~0, 5bv32); {1061#true} is VALID [2018-11-14 16:01:47,313 INFO L273 TraceCheckUtils]: 24: Hoare triple {1061#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1061#true} is VALID [2018-11-14 16:01:47,313 INFO L273 TraceCheckUtils]: 25: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,313 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {1061#true} {1061#true} #73#return; {1061#true} is VALID [2018-11-14 16:01:47,313 INFO L273 TraceCheckUtils]: 27: Hoare triple {1061#true} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {1061#true} is VALID [2018-11-14 16:01:47,313 INFO L256 TraceCheckUtils]: 28: Hoare triple {1061#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1061#true} is VALID [2018-11-14 16:01:47,314 INFO L273 TraceCheckUtils]: 29: Hoare triple {1061#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1061#true} is VALID [2018-11-14 16:01:47,314 INFO L273 TraceCheckUtils]: 30: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,314 INFO L273 TraceCheckUtils]: 31: Hoare triple {1061#true} assume !~bvslt32(~i~0, 5bv32); {1061#true} is VALID [2018-11-14 16:01:47,314 INFO L273 TraceCheckUtils]: 32: Hoare triple {1061#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1061#true} is VALID [2018-11-14 16:01:47,315 INFO L273 TraceCheckUtils]: 33: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,315 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {1061#true} {1061#true} #75#return; {1061#true} is VALID [2018-11-14 16:01:47,315 INFO L273 TraceCheckUtils]: 35: Hoare triple {1061#true} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {1061#true} is VALID [2018-11-14 16:01:47,315 INFO L273 TraceCheckUtils]: 36: Hoare triple {1061#true} assume true; {1061#true} is VALID [2018-11-14 16:01:47,315 INFO L273 TraceCheckUtils]: 37: Hoare triple {1061#true} assume !~bvslt32(~i~2, 4bv32); {1061#true} is VALID [2018-11-14 16:01:47,316 INFO L273 TraceCheckUtils]: 38: Hoare triple {1061#true} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {1061#true} is VALID [2018-11-14 16:01:47,316 INFO L256 TraceCheckUtils]: 39: Hoare triple {1061#true} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1061#true} is VALID [2018-11-14 16:01:47,317 INFO L273 TraceCheckUtils]: 40: Hoare triple {1061#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1186#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:47,320 INFO L273 TraceCheckUtils]: 41: Hoare triple {1186#(= (_ bv0 32) avg_~i~0)} assume true; {1186#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:47,320 INFO L273 TraceCheckUtils]: 42: Hoare triple {1186#(= (_ bv0 32) avg_~i~0)} assume !~bvslt32(~i~0, 5bv32); {1062#false} is VALID [2018-11-14 16:01:47,321 INFO L273 TraceCheckUtils]: 43: Hoare triple {1062#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1062#false} is VALID [2018-11-14 16:01:47,321 INFO L273 TraceCheckUtils]: 44: Hoare triple {1062#false} assume true; {1062#false} is VALID [2018-11-14 16:01:47,321 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {1062#false} {1061#true} #77#return; {1062#false} is VALID [2018-11-14 16:01:47,322 INFO L273 TraceCheckUtils]: 46: Hoare triple {1062#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {1062#false} is VALID [2018-11-14 16:01:47,322 INFO L273 TraceCheckUtils]: 47: Hoare triple {1062#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1062#false} is VALID [2018-11-14 16:01:47,323 INFO L273 TraceCheckUtils]: 48: Hoare triple {1062#false} assume !false; {1062#false} is VALID [2018-11-14 16:01:47,326 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2018-11-14 16:01:47,326 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-14 16:01:47,336 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 16:01:47,336 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 16:01:47,336 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 16:01:47,337 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:47,337 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 16:01:47,567 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:47,567 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 16:01:47,568 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 16:01:47,568 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:47,568 INFO L87 Difference]: Start difference. First operand 40 states and 44 transitions. Second operand 3 states. [2018-11-14 16:01:47,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:47,917 INFO L93 Difference]: Finished difference Result 62 states and 72 transitions. [2018-11-14 16:01:47,918 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 16:01:47,918 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 49 [2018-11-14 16:01:47,918 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:47,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:47,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 16:01:47,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:47,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2018-11-14 16:01:47,924 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2018-11-14 16:01:48,307 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:48,310 INFO L225 Difference]: With dead ends: 62 [2018-11-14 16:01:48,310 INFO L226 Difference]: Without dead ends: 43 [2018-11-14 16:01:48,311 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:48,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2018-11-14 16:01:48,349 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2018-11-14 16:01:48,349 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:48,350 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand 42 states. [2018-11-14 16:01:48,350 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 42 states. [2018-11-14 16:01:48,350 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 42 states. [2018-11-14 16:01:48,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:48,353 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2018-11-14 16:01:48,353 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2018-11-14 16:01:48,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:48,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:48,355 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 43 states. [2018-11-14 16:01:48,355 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 43 states. [2018-11-14 16:01:48,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:48,358 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2018-11-14 16:01:48,358 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2018-11-14 16:01:48,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:48,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:48,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:48,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:48,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2018-11-14 16:01:48,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2018-11-14 16:01:48,362 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 46 transitions. Word has length 49 [2018-11-14 16:01:48,363 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:48,363 INFO L480 AbstractCegarLoop]: Abstraction has 42 states and 46 transitions. [2018-11-14 16:01:48,363 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 16:01:48,363 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2018-11-14 16:01:48,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-14 16:01:48,365 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:48,365 INFO L375 BasicCegarLoop]: trace histogram [6, 5, 4, 4, 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] [2018-11-14 16:01:48,369 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:48,369 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:48,369 INFO L82 PathProgramCache]: Analyzing trace with hash -1791434779, now seen corresponding path program 1 times [2018-11-14 16:01:48,370 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:48,370 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:48,404 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 16:01:49,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:49,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:49,351 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:49,462 INFO L256 TraceCheckUtils]: 0: Hoare triple {1437#true} call ULTIMATE.init(); {1437#true} is VALID [2018-11-14 16:01:49,462 INFO L273 TraceCheckUtils]: 1: Hoare triple {1437#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1437#true} is VALID [2018-11-14 16:01:49,463 INFO L273 TraceCheckUtils]: 2: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,463 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1437#true} {1437#true} #69#return; {1437#true} is VALID [2018-11-14 16:01:49,463 INFO L256 TraceCheckUtils]: 4: Hoare triple {1437#true} call #t~ret12 := main(); {1437#true} is VALID [2018-11-14 16:01:49,472 INFO L273 TraceCheckUtils]: 5: Hoare triple {1437#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {1457#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:49,474 INFO L273 TraceCheckUtils]: 6: Hoare triple {1457#(= main_~i~1 (_ bv0 32))} assume true; {1457#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:49,474 INFO L273 TraceCheckUtils]: 7: Hoare triple {1457#(= main_~i~1 (_ bv0 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1457#(= main_~i~1 (_ bv0 32))} is VALID [2018-11-14 16:01:49,475 INFO L273 TraceCheckUtils]: 8: Hoare triple {1457#(= main_~i~1 (_ bv0 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,478 INFO L273 TraceCheckUtils]: 9: Hoare triple {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} assume true; {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,478 INFO L273 TraceCheckUtils]: 10: Hoare triple {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,479 INFO L273 TraceCheckUtils]: 11: Hoare triple {1467#(= (bvadd main_~i~1 (_ bv4294967295 32)) (_ bv0 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,480 INFO L273 TraceCheckUtils]: 12: Hoare triple {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} assume true; {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,480 INFO L273 TraceCheckUtils]: 13: Hoare triple {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,481 INFO L273 TraceCheckUtils]: 14: Hoare triple {1477#(= (bvadd main_~i~1 (_ bv4294967294 32)) (_ bv0 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,482 INFO L273 TraceCheckUtils]: 15: Hoare triple {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} assume true; {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,484 INFO L273 TraceCheckUtils]: 16: Hoare triple {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,485 INFO L273 TraceCheckUtils]: 17: Hoare triple {1487#(= (bvadd main_~i~1 (_ bv4294967293 32)) (_ bv0 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1497#(= (bvadd main_~i~1 (_ bv4294967292 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,486 INFO L273 TraceCheckUtils]: 18: Hoare triple {1497#(= (bvadd main_~i~1 (_ bv4294967292 32)) (_ bv0 32))} assume true; {1497#(= (bvadd main_~i~1 (_ bv4294967292 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:49,486 INFO L273 TraceCheckUtils]: 19: Hoare triple {1497#(= (bvadd main_~i~1 (_ bv4294967292 32)) (_ bv0 32))} assume !~bvslt32(~i~1, 5bv32); {1438#false} is VALID [2018-11-14 16:01:49,487 INFO L256 TraceCheckUtils]: 20: Hoare triple {1438#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1438#false} is VALID [2018-11-14 16:01:49,487 INFO L273 TraceCheckUtils]: 21: Hoare triple {1438#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1438#false} is VALID [2018-11-14 16:01:49,487 INFO L273 TraceCheckUtils]: 22: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,487 INFO L273 TraceCheckUtils]: 23: Hoare triple {1438#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1438#false} is VALID [2018-11-14 16:01:49,488 INFO L273 TraceCheckUtils]: 24: Hoare triple {1438#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1438#false} is VALID [2018-11-14 16:01:49,488 INFO L273 TraceCheckUtils]: 25: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,488 INFO L273 TraceCheckUtils]: 26: Hoare triple {1438#false} assume !~bvslt32(~i~0, 5bv32); {1438#false} is VALID [2018-11-14 16:01:49,489 INFO L273 TraceCheckUtils]: 27: Hoare triple {1438#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1438#false} is VALID [2018-11-14 16:01:49,489 INFO L273 TraceCheckUtils]: 28: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,490 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {1438#false} {1438#false} #73#return; {1438#false} is VALID [2018-11-14 16:01:49,490 INFO L273 TraceCheckUtils]: 30: Hoare triple {1438#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,490 INFO L256 TraceCheckUtils]: 31: Hoare triple {1438#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1438#false} is VALID [2018-11-14 16:01:49,491 INFO L273 TraceCheckUtils]: 32: Hoare triple {1438#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1438#false} is VALID [2018-11-14 16:01:49,491 INFO L273 TraceCheckUtils]: 33: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,491 INFO L273 TraceCheckUtils]: 34: Hoare triple {1438#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1438#false} is VALID [2018-11-14 16:01:49,492 INFO L273 TraceCheckUtils]: 35: Hoare triple {1438#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1438#false} is VALID [2018-11-14 16:01:49,492 INFO L273 TraceCheckUtils]: 36: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,492 INFO L273 TraceCheckUtils]: 37: Hoare triple {1438#false} assume !~bvslt32(~i~0, 5bv32); {1438#false} is VALID [2018-11-14 16:01:49,492 INFO L273 TraceCheckUtils]: 38: Hoare triple {1438#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1438#false} is VALID [2018-11-14 16:01:49,493 INFO L273 TraceCheckUtils]: 39: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,493 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {1438#false} {1438#false} #75#return; {1438#false} is VALID [2018-11-14 16:01:49,493 INFO L273 TraceCheckUtils]: 41: Hoare triple {1438#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {1438#false} is VALID [2018-11-14 16:01:49,493 INFO L273 TraceCheckUtils]: 42: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,493 INFO L273 TraceCheckUtils]: 43: Hoare triple {1438#false} assume !~bvslt32(~i~2, 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,494 INFO L273 TraceCheckUtils]: 44: Hoare triple {1438#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,494 INFO L256 TraceCheckUtils]: 45: Hoare triple {1438#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1438#false} is VALID [2018-11-14 16:01:49,494 INFO L273 TraceCheckUtils]: 46: Hoare triple {1438#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1438#false} is VALID [2018-11-14 16:01:49,494 INFO L273 TraceCheckUtils]: 47: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,494 INFO L273 TraceCheckUtils]: 48: Hoare triple {1438#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1438#false} is VALID [2018-11-14 16:01:49,495 INFO L273 TraceCheckUtils]: 49: Hoare triple {1438#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1438#false} is VALID [2018-11-14 16:01:49,495 INFO L273 TraceCheckUtils]: 50: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,495 INFO L273 TraceCheckUtils]: 51: Hoare triple {1438#false} assume !~bvslt32(~i~0, 5bv32); {1438#false} is VALID [2018-11-14 16:01:49,495 INFO L273 TraceCheckUtils]: 52: Hoare triple {1438#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1438#false} is VALID [2018-11-14 16:01:49,495 INFO L273 TraceCheckUtils]: 53: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,496 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1438#false} {1438#false} #77#return; {1438#false} is VALID [2018-11-14 16:01:49,496 INFO L273 TraceCheckUtils]: 55: Hoare triple {1438#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {1438#false} is VALID [2018-11-14 16:01:49,496 INFO L273 TraceCheckUtils]: 56: Hoare triple {1438#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1438#false} is VALID [2018-11-14 16:01:49,496 INFO L273 TraceCheckUtils]: 57: Hoare triple {1438#false} assume !false; {1438#false} is VALID [2018-11-14 16:01:49,502 INFO L134 CoverageAnalysis]: Checked inductivity of 71 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2018-11-14 16:01:49,502 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-14 16:01:49,844 INFO L273 TraceCheckUtils]: 57: Hoare triple {1438#false} assume !false; {1438#false} is VALID [2018-11-14 16:01:49,844 INFO L273 TraceCheckUtils]: 56: Hoare triple {1438#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1438#false} is VALID [2018-11-14 16:01:49,844 INFO L273 TraceCheckUtils]: 55: Hoare triple {1438#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {1438#false} is VALID [2018-11-14 16:01:49,845 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {1437#true} {1438#false} #77#return; {1438#false} is VALID [2018-11-14 16:01:49,845 INFO L273 TraceCheckUtils]: 53: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,845 INFO L273 TraceCheckUtils]: 52: Hoare triple {1437#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1437#true} is VALID [2018-11-14 16:01:49,846 INFO L273 TraceCheckUtils]: 51: Hoare triple {1437#true} assume !~bvslt32(~i~0, 5bv32); {1437#true} is VALID [2018-11-14 16:01:49,846 INFO L273 TraceCheckUtils]: 50: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,846 INFO L273 TraceCheckUtils]: 49: Hoare triple {1437#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1437#true} is VALID [2018-11-14 16:01:49,846 INFO L273 TraceCheckUtils]: 48: Hoare triple {1437#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1437#true} is VALID [2018-11-14 16:01:49,846 INFO L273 TraceCheckUtils]: 47: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,847 INFO L273 TraceCheckUtils]: 46: Hoare triple {1437#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1437#true} is VALID [2018-11-14 16:01:49,847 INFO L256 TraceCheckUtils]: 45: Hoare triple {1438#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {1437#true} is VALID [2018-11-14 16:01:49,847 INFO L273 TraceCheckUtils]: 44: Hoare triple {1438#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,847 INFO L273 TraceCheckUtils]: 43: Hoare triple {1438#false} assume !~bvslt32(~i~2, 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,847 INFO L273 TraceCheckUtils]: 42: Hoare triple {1438#false} assume true; {1438#false} is VALID [2018-11-14 16:01:49,848 INFO L273 TraceCheckUtils]: 41: Hoare triple {1438#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {1438#false} is VALID [2018-11-14 16:01:49,848 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {1437#true} {1438#false} #75#return; {1438#false} is VALID [2018-11-14 16:01:49,848 INFO L273 TraceCheckUtils]: 39: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,848 INFO L273 TraceCheckUtils]: 38: Hoare triple {1437#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1437#true} is VALID [2018-11-14 16:01:49,848 INFO L273 TraceCheckUtils]: 37: Hoare triple {1437#true} assume !~bvslt32(~i~0, 5bv32); {1437#true} is VALID [2018-11-14 16:01:49,849 INFO L273 TraceCheckUtils]: 36: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,849 INFO L273 TraceCheckUtils]: 35: Hoare triple {1437#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1437#true} is VALID [2018-11-14 16:01:49,849 INFO L273 TraceCheckUtils]: 34: Hoare triple {1437#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1437#true} is VALID [2018-11-14 16:01:49,849 INFO L273 TraceCheckUtils]: 33: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,849 INFO L273 TraceCheckUtils]: 32: Hoare triple {1437#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1437#true} is VALID [2018-11-14 16:01:49,850 INFO L256 TraceCheckUtils]: 31: Hoare triple {1438#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {1437#true} is VALID [2018-11-14 16:01:49,850 INFO L273 TraceCheckUtils]: 30: Hoare triple {1438#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {1438#false} is VALID [2018-11-14 16:01:49,850 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {1437#true} {1438#false} #73#return; {1438#false} is VALID [2018-11-14 16:01:49,850 INFO L273 TraceCheckUtils]: 28: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,850 INFO L273 TraceCheckUtils]: 27: Hoare triple {1437#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {1437#true} is VALID [2018-11-14 16:01:49,851 INFO L273 TraceCheckUtils]: 26: Hoare triple {1437#true} assume !~bvslt32(~i~0, 5bv32); {1437#true} is VALID [2018-11-14 16:01:49,851 INFO L273 TraceCheckUtils]: 25: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,851 INFO L273 TraceCheckUtils]: 24: Hoare triple {1437#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1437#true} is VALID [2018-11-14 16:01:49,851 INFO L273 TraceCheckUtils]: 23: Hoare triple {1437#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1437#true} is VALID [2018-11-14 16:01:49,852 INFO L273 TraceCheckUtils]: 22: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,852 INFO L273 TraceCheckUtils]: 21: Hoare triple {1437#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1437#true} is VALID [2018-11-14 16:01:49,852 INFO L256 TraceCheckUtils]: 20: Hoare triple {1438#false} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {1437#true} is VALID [2018-11-14 16:01:49,853 INFO L273 TraceCheckUtils]: 19: Hoare triple {1732#(bvslt main_~i~1 (_ bv5 32))} assume !~bvslt32(~i~1, 5bv32); {1438#false} is VALID [2018-11-14 16:01:49,853 INFO L273 TraceCheckUtils]: 18: Hoare triple {1732#(bvslt main_~i~1 (_ bv5 32))} assume true; {1732#(bvslt main_~i~1 (_ bv5 32))} is VALID [2018-11-14 16:01:49,854 INFO L273 TraceCheckUtils]: 17: Hoare triple {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1732#(bvslt main_~i~1 (_ bv5 32))} is VALID [2018-11-14 16:01:49,855 INFO L273 TraceCheckUtils]: 16: Hoare triple {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,856 INFO L273 TraceCheckUtils]: 15: Hoare triple {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} assume true; {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,860 INFO L273 TraceCheckUtils]: 14: Hoare triple {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1739#(bvslt (bvadd main_~i~1 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,861 INFO L273 TraceCheckUtils]: 13: Hoare triple {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,861 INFO L273 TraceCheckUtils]: 12: Hoare triple {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} assume true; {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,864 INFO L273 TraceCheckUtils]: 11: Hoare triple {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1749#(bvslt (bvadd main_~i~1 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,866 INFO L273 TraceCheckUtils]: 10: Hoare triple {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,867 INFO L273 TraceCheckUtils]: 9: Hoare triple {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} assume true; {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,872 INFO L273 TraceCheckUtils]: 8: Hoare triple {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {1759#(bvslt (bvadd main_~i~1 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,874 INFO L273 TraceCheckUtils]: 7: Hoare triple {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,874 INFO L273 TraceCheckUtils]: 6: Hoare triple {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} assume true; {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,875 INFO L273 TraceCheckUtils]: 5: Hoare triple {1437#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {1769#(bvslt (bvadd main_~i~1 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:49,876 INFO L256 TraceCheckUtils]: 4: Hoare triple {1437#true} call #t~ret12 := main(); {1437#true} is VALID [2018-11-14 16:01:49,876 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1437#true} {1437#true} #69#return; {1437#true} is VALID [2018-11-14 16:01:49,876 INFO L273 TraceCheckUtils]: 2: Hoare triple {1437#true} assume true; {1437#true} is VALID [2018-11-14 16:01:49,877 INFO L273 TraceCheckUtils]: 1: Hoare triple {1437#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1437#true} is VALID [2018-11-14 16:01:49,877 INFO L256 TraceCheckUtils]: 0: Hoare triple {1437#true} call ULTIMATE.init(); {1437#true} is VALID [2018-11-14 16:01:49,881 INFO L134 CoverageAnalysis]: Checked inductivity of 71 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2018-11-14 16:01:49,885 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 16:01:49,886 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2018-11-14 16:01:49,886 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 58 [2018-11-14 16:01:49,889 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:49,889 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-14 16:01:50,212 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:50,212 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-14 16:01:50,213 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-14 16:01:50,213 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2018-11-14 16:01:50,213 INFO L87 Difference]: Start difference. First operand 42 states and 46 transitions. Second operand 12 states. [2018-11-14 16:01:51,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:51,667 INFO L93 Difference]: Finished difference Result 68 states and 76 transitions. [2018-11-14 16:01:51,667 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-14 16:01:51,667 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 58 [2018-11-14 16:01:51,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:51,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 16:01:51,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2018-11-14 16:01:51,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 16:01:51,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2018-11-14 16:01:51,673 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 72 transitions. [2018-11-14 16:01:51,998 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:52,002 INFO L225 Difference]: With dead ends: 68 [2018-11-14 16:01:52,002 INFO L226 Difference]: Without dead ends: 46 [2018-11-14 16:01:52,003 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2018-11-14 16:01:52,003 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2018-11-14 16:01:52,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2018-11-14 16:01:52,034 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:52,034 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand 45 states. [2018-11-14 16:01:52,034 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 45 states. [2018-11-14 16:01:52,034 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 45 states. [2018-11-14 16:01:52,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:52,037 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2018-11-14 16:01:52,037 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2018-11-14 16:01:52,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:52,038 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:52,038 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 46 states. [2018-11-14 16:01:52,038 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 46 states. [2018-11-14 16:01:52,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:52,041 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2018-11-14 16:01:52,041 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2018-11-14 16:01:52,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:52,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:52,042 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:52,042 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:52,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-14 16:01:52,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 49 transitions. [2018-11-14 16:01:52,045 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 49 transitions. Word has length 58 [2018-11-14 16:01:52,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:52,045 INFO L480 AbstractCegarLoop]: Abstraction has 45 states and 49 transitions. [2018-11-14 16:01:52,045 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-14 16:01:52,045 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 49 transitions. [2018-11-14 16:01:52,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2018-11-14 16:01:52,047 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:52,047 INFO L375 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 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] [2018-11-14 16:01:52,048 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:52,048 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:52,048 INFO L82 PathProgramCache]: Analyzing trace with hash -1011003425, now seen corresponding path program 2 times [2018-11-14 16:01:52,048 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:52,048 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:52,081 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-14 16:01:53,324 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 16:01:53,324 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 16:01:53,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:53,499 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:53,582 INFO L256 TraceCheckUtils]: 0: Hoare triple {2042#true} call ULTIMATE.init(); {2042#true} is VALID [2018-11-14 16:01:53,582 INFO L273 TraceCheckUtils]: 1: Hoare triple {2042#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {2042#true} is VALID [2018-11-14 16:01:53,583 INFO L273 TraceCheckUtils]: 2: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,583 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2042#true} {2042#true} #69#return; {2042#true} is VALID [2018-11-14 16:01:53,584 INFO L256 TraceCheckUtils]: 4: Hoare triple {2042#true} call #t~ret12 := main(); {2042#true} is VALID [2018-11-14 16:01:53,584 INFO L273 TraceCheckUtils]: 5: Hoare triple {2042#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {2042#true} is VALID [2018-11-14 16:01:53,584 INFO L273 TraceCheckUtils]: 6: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,584 INFO L273 TraceCheckUtils]: 7: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,585 INFO L273 TraceCheckUtils]: 8: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,585 INFO L273 TraceCheckUtils]: 9: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,585 INFO L273 TraceCheckUtils]: 10: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,585 INFO L273 TraceCheckUtils]: 11: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,586 INFO L273 TraceCheckUtils]: 12: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,586 INFO L273 TraceCheckUtils]: 13: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,586 INFO L273 TraceCheckUtils]: 14: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,586 INFO L273 TraceCheckUtils]: 15: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 16: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 17: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 18: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 19: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 20: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,587 INFO L273 TraceCheckUtils]: 21: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,588 INFO L273 TraceCheckUtils]: 22: Hoare triple {2042#true} assume !~bvslt32(~i~1, 5bv32); {2042#true} is VALID [2018-11-14 16:01:53,588 INFO L256 TraceCheckUtils]: 23: Hoare triple {2042#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2042#true} is VALID [2018-11-14 16:01:53,588 INFO L273 TraceCheckUtils]: 24: Hoare triple {2042#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2119#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:53,589 INFO L273 TraceCheckUtils]: 25: Hoare triple {2119#(= (_ bv0 32) avg_~i~0)} assume true; {2119#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:53,589 INFO L273 TraceCheckUtils]: 26: Hoare triple {2119#(= (_ bv0 32) avg_~i~0)} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2119#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:53,590 INFO L273 TraceCheckUtils]: 27: Hoare triple {2119#(= (_ bv0 32) avg_~i~0)} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2129#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:53,590 INFO L273 TraceCheckUtils]: 28: Hoare triple {2129#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume true; {2129#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:53,591 INFO L273 TraceCheckUtils]: 29: Hoare triple {2129#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !~bvslt32(~i~0, 5bv32); {2043#false} is VALID [2018-11-14 16:01:53,591 INFO L273 TraceCheckUtils]: 30: Hoare triple {2043#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2043#false} is VALID [2018-11-14 16:01:53,591 INFO L273 TraceCheckUtils]: 31: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,591 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2043#false} {2042#true} #73#return; {2043#false} is VALID [2018-11-14 16:01:53,592 INFO L273 TraceCheckUtils]: 33: Hoare triple {2043#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,592 INFO L256 TraceCheckUtils]: 34: Hoare triple {2043#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2043#false} is VALID [2018-11-14 16:01:53,592 INFO L273 TraceCheckUtils]: 35: Hoare triple {2043#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2043#false} is VALID [2018-11-14 16:01:53,592 INFO L273 TraceCheckUtils]: 36: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,593 INFO L273 TraceCheckUtils]: 37: Hoare triple {2043#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2043#false} is VALID [2018-11-14 16:01:53,593 INFO L273 TraceCheckUtils]: 38: Hoare triple {2043#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2043#false} is VALID [2018-11-14 16:01:53,593 INFO L273 TraceCheckUtils]: 39: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,594 INFO L273 TraceCheckUtils]: 40: Hoare triple {2043#false} assume !~bvslt32(~i~0, 5bv32); {2043#false} is VALID [2018-11-14 16:01:53,594 INFO L273 TraceCheckUtils]: 41: Hoare triple {2043#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2043#false} is VALID [2018-11-14 16:01:53,594 INFO L273 TraceCheckUtils]: 42: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,595 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {2043#false} {2043#false} #75#return; {2043#false} is VALID [2018-11-14 16:01:53,595 INFO L273 TraceCheckUtils]: 44: Hoare triple {2043#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {2043#false} is VALID [2018-11-14 16:01:53,595 INFO L273 TraceCheckUtils]: 45: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,595 INFO L273 TraceCheckUtils]: 46: Hoare triple {2043#false} assume !~bvslt32(~i~2, 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,596 INFO L273 TraceCheckUtils]: 47: Hoare triple {2043#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,596 INFO L256 TraceCheckUtils]: 48: Hoare triple {2043#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2043#false} is VALID [2018-11-14 16:01:53,596 INFO L273 TraceCheckUtils]: 49: Hoare triple {2043#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2043#false} is VALID [2018-11-14 16:01:53,596 INFO L273 TraceCheckUtils]: 50: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,597 INFO L273 TraceCheckUtils]: 51: Hoare triple {2043#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2043#false} is VALID [2018-11-14 16:01:53,597 INFO L273 TraceCheckUtils]: 52: Hoare triple {2043#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2043#false} is VALID [2018-11-14 16:01:53,597 INFO L273 TraceCheckUtils]: 53: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,598 INFO L273 TraceCheckUtils]: 54: Hoare triple {2043#false} assume !~bvslt32(~i~0, 5bv32); {2043#false} is VALID [2018-11-14 16:01:53,598 INFO L273 TraceCheckUtils]: 55: Hoare triple {2043#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2043#false} is VALID [2018-11-14 16:01:53,598 INFO L273 TraceCheckUtils]: 56: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,598 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {2043#false} {2043#false} #77#return; {2043#false} is VALID [2018-11-14 16:01:53,599 INFO L273 TraceCheckUtils]: 58: Hoare triple {2043#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {2043#false} is VALID [2018-11-14 16:01:53,599 INFO L273 TraceCheckUtils]: 59: Hoare triple {2043#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2043#false} is VALID [2018-11-14 16:01:53,599 INFO L273 TraceCheckUtils]: 60: Hoare triple {2043#false} assume !false; {2043#false} is VALID [2018-11-14 16:01:53,603 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 20 proven. 2 refuted. 0 times theorem prover too weak. 63 trivial. 0 not checked. [2018-11-14 16:01:53,603 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-14 16:01:53,776 INFO L273 TraceCheckUtils]: 60: Hoare triple {2043#false} assume !false; {2043#false} is VALID [2018-11-14 16:01:53,777 INFO L273 TraceCheckUtils]: 59: Hoare triple {2043#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2043#false} is VALID [2018-11-14 16:01:53,777 INFO L273 TraceCheckUtils]: 58: Hoare triple {2043#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {2043#false} is VALID [2018-11-14 16:01:53,777 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {2042#true} {2043#false} #77#return; {2043#false} is VALID [2018-11-14 16:01:53,778 INFO L273 TraceCheckUtils]: 56: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,778 INFO L273 TraceCheckUtils]: 55: Hoare triple {2042#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2042#true} is VALID [2018-11-14 16:01:53,778 INFO L273 TraceCheckUtils]: 54: Hoare triple {2042#true} assume !~bvslt32(~i~0, 5bv32); {2042#true} is VALID [2018-11-14 16:01:53,778 INFO L273 TraceCheckUtils]: 53: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,779 INFO L273 TraceCheckUtils]: 52: Hoare triple {2042#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2042#true} is VALID [2018-11-14 16:01:53,779 INFO L273 TraceCheckUtils]: 51: Hoare triple {2042#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2042#true} is VALID [2018-11-14 16:01:53,779 INFO L273 TraceCheckUtils]: 50: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,779 INFO L273 TraceCheckUtils]: 49: Hoare triple {2042#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2042#true} is VALID [2018-11-14 16:01:53,780 INFO L256 TraceCheckUtils]: 48: Hoare triple {2043#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2042#true} is VALID [2018-11-14 16:01:53,780 INFO L273 TraceCheckUtils]: 47: Hoare triple {2043#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,780 INFO L273 TraceCheckUtils]: 46: Hoare triple {2043#false} assume !~bvslt32(~i~2, 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,780 INFO L273 TraceCheckUtils]: 45: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,781 INFO L273 TraceCheckUtils]: 44: Hoare triple {2043#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {2043#false} is VALID [2018-11-14 16:01:53,781 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {2042#true} {2043#false} #75#return; {2043#false} is VALID [2018-11-14 16:01:53,781 INFO L273 TraceCheckUtils]: 42: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,782 INFO L273 TraceCheckUtils]: 41: Hoare triple {2042#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2042#true} is VALID [2018-11-14 16:01:53,782 INFO L273 TraceCheckUtils]: 40: Hoare triple {2042#true} assume !~bvslt32(~i~0, 5bv32); {2042#true} is VALID [2018-11-14 16:01:53,782 INFO L273 TraceCheckUtils]: 39: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,782 INFO L273 TraceCheckUtils]: 38: Hoare triple {2042#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2042#true} is VALID [2018-11-14 16:01:53,783 INFO L273 TraceCheckUtils]: 37: Hoare triple {2042#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2042#true} is VALID [2018-11-14 16:01:53,783 INFO L273 TraceCheckUtils]: 36: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,783 INFO L273 TraceCheckUtils]: 35: Hoare triple {2042#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2042#true} is VALID [2018-11-14 16:01:53,783 INFO L256 TraceCheckUtils]: 34: Hoare triple {2043#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2042#true} is VALID [2018-11-14 16:01:53,784 INFO L273 TraceCheckUtils]: 33: Hoare triple {2043#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {2043#false} is VALID [2018-11-14 16:01:53,784 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {2043#false} {2042#true} #73#return; {2043#false} is VALID [2018-11-14 16:01:53,784 INFO L273 TraceCheckUtils]: 31: Hoare triple {2043#false} assume true; {2043#false} is VALID [2018-11-14 16:01:53,784 INFO L273 TraceCheckUtils]: 30: Hoare triple {2043#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2043#false} is VALID [2018-11-14 16:01:53,785 INFO L273 TraceCheckUtils]: 29: Hoare triple {2325#(bvslt avg_~i~0 (_ bv5 32))} assume !~bvslt32(~i~0, 5bv32); {2043#false} is VALID [2018-11-14 16:01:53,787 INFO L273 TraceCheckUtils]: 28: Hoare triple {2325#(bvslt avg_~i~0 (_ bv5 32))} assume true; {2325#(bvslt avg_~i~0 (_ bv5 32))} is VALID [2018-11-14 16:01:53,787 INFO L273 TraceCheckUtils]: 27: Hoare triple {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2325#(bvslt avg_~i~0 (_ bv5 32))} is VALID [2018-11-14 16:01:53,789 INFO L273 TraceCheckUtils]: 26: Hoare triple {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:53,789 INFO L273 TraceCheckUtils]: 25: Hoare triple {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} assume true; {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:53,791 INFO L273 TraceCheckUtils]: 24: Hoare triple {2042#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2332#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:53,791 INFO L256 TraceCheckUtils]: 23: Hoare triple {2042#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2042#true} is VALID [2018-11-14 16:01:53,791 INFO L273 TraceCheckUtils]: 22: Hoare triple {2042#true} assume !~bvslt32(~i~1, 5bv32); {2042#true} is VALID [2018-11-14 16:01:53,791 INFO L273 TraceCheckUtils]: 21: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,791 INFO L273 TraceCheckUtils]: 20: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 19: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 18: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 17: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 16: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 15: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,792 INFO L273 TraceCheckUtils]: 14: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 13: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 12: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 11: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 10: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 9: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,793 INFO L273 TraceCheckUtils]: 8: Hoare triple {2042#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L273 TraceCheckUtils]: 7: Hoare triple {2042#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L273 TraceCheckUtils]: 6: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L273 TraceCheckUtils]: 5: Hoare triple {2042#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L256 TraceCheckUtils]: 4: Hoare triple {2042#true} call #t~ret12 := main(); {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2042#true} {2042#true} #69#return; {2042#true} is VALID [2018-11-14 16:01:53,794 INFO L273 TraceCheckUtils]: 2: Hoare triple {2042#true} assume true; {2042#true} is VALID [2018-11-14 16:01:53,795 INFO L273 TraceCheckUtils]: 1: Hoare triple {2042#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {2042#true} is VALID [2018-11-14 16:01:53,795 INFO L256 TraceCheckUtils]: 0: Hoare triple {2042#true} call ULTIMATE.init(); {2042#true} is VALID [2018-11-14 16:01:53,798 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 59 trivial. 0 not checked. [2018-11-14 16:01:53,805 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 16:01:53,805 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-14 16:01:53,806 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 61 [2018-11-14 16:01:53,806 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:53,807 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 16:01:54,085 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:54,085 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 16:01:54,085 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 16:01:54,085 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2018-11-14 16:01:54,086 INFO L87 Difference]: Start difference. First operand 45 states and 49 transitions. Second operand 6 states. [2018-11-14 16:01:54,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:54,823 INFO L93 Difference]: Finished difference Result 75 states and 87 transitions. [2018-11-14 16:01:54,823 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-14 16:01:54,823 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 61 [2018-11-14 16:01:54,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:54,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:01:54,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2018-11-14 16:01:54,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:01:54,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2018-11-14 16:01:54,828 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 71 transitions. [2018-11-14 16:01:55,194 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:55,197 INFO L225 Difference]: With dead ends: 75 [2018-11-14 16:01:55,197 INFO L226 Difference]: Without dead ends: 54 [2018-11-14 16:01:55,198 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2018-11-14 16:01:55,198 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-11-14 16:01:55,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2018-11-14 16:01:55,222 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:55,222 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand 54 states. [2018-11-14 16:01:55,222 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 54 states. [2018-11-14 16:01:55,223 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 54 states. [2018-11-14 16:01:55,226 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:55,226 INFO L93 Difference]: Finished difference Result 54 states and 58 transitions. [2018-11-14 16:01:55,226 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 58 transitions. [2018-11-14 16:01:55,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:55,227 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:55,227 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 54 states. [2018-11-14 16:01:55,227 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 54 states. [2018-11-14 16:01:55,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:55,230 INFO L93 Difference]: Finished difference Result 54 states and 58 transitions. [2018-11-14 16:01:55,230 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 58 transitions. [2018-11-14 16:01:55,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:55,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:55,231 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:55,231 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:55,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-14 16:01:55,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 58 transitions. [2018-11-14 16:01:55,234 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 58 transitions. Word has length 61 [2018-11-14 16:01:55,234 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:55,234 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 58 transitions. [2018-11-14 16:01:55,234 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 16:01:55,235 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 58 transitions. [2018-11-14 16:01:55,236 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2018-11-14 16:01:55,236 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:55,236 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 6, 5, 5, 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] [2018-11-14 16:01:55,236 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:55,237 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:55,237 INFO L82 PathProgramCache]: Analyzing trace with hash -1226686183, now seen corresponding path program 3 times [2018-11-14 16:01:55,237 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:55,237 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 8 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:55,282 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2018-11-14 16:01:56,241 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2018-11-14 16:01:56,241 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 16:01:56,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:56,360 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:56,448 INFO L256 TraceCheckUtils]: 0: Hoare triple {2698#true} call ULTIMATE.init(); {2698#true} is VALID [2018-11-14 16:01:56,448 INFO L273 TraceCheckUtils]: 1: Hoare triple {2698#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {2698#true} is VALID [2018-11-14 16:01:56,448 INFO L273 TraceCheckUtils]: 2: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2698#true} {2698#true} #69#return; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L256 TraceCheckUtils]: 4: Hoare triple {2698#true} call #t~ret12 := main(); {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L273 TraceCheckUtils]: 5: Hoare triple {2698#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L273 TraceCheckUtils]: 6: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L273 TraceCheckUtils]: 7: Hoare triple {2698#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L273 TraceCheckUtils]: 8: Hoare triple {2698#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2698#true} is VALID [2018-11-14 16:01:56,449 INFO L273 TraceCheckUtils]: 9: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 10: Hoare triple {2698#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 11: Hoare triple {2698#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 12: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 13: Hoare triple {2698#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 14: Hoare triple {2698#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 15: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,450 INFO L273 TraceCheckUtils]: 16: Hoare triple {2698#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 17: Hoare triple {2698#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 18: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 19: Hoare triple {2698#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 20: Hoare triple {2698#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 21: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 22: Hoare triple {2698#true} assume !~bvslt32(~i~1, 5bv32); {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L256 TraceCheckUtils]: 23: Hoare triple {2698#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {2698#true} is VALID [2018-11-14 16:01:56,451 INFO L273 TraceCheckUtils]: 24: Hoare triple {2698#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 25: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 26: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 27: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 28: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 29: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 30: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,452 INFO L273 TraceCheckUtils]: 31: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 32: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 33: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 34: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 35: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 36: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 37: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 38: Hoare triple {2698#true} assume !~bvslt32(~i~0, 5bv32); {2698#true} is VALID [2018-11-14 16:01:56,453 INFO L273 TraceCheckUtils]: 39: Hoare triple {2698#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L273 TraceCheckUtils]: 40: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {2698#true} {2698#true} #73#return; {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L273 TraceCheckUtils]: 42: Hoare triple {2698#true} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L256 TraceCheckUtils]: 43: Hoare triple {2698#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L273 TraceCheckUtils]: 44: Hoare triple {2698#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L273 TraceCheckUtils]: 45: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,454 INFO L273 TraceCheckUtils]: 46: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 47: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 48: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 49: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 50: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 51: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 52: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,455 INFO L273 TraceCheckUtils]: 53: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 54: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 55: Hoare triple {2698#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 56: Hoare triple {2698#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 57: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 58: Hoare triple {2698#true} assume !~bvslt32(~i~0, 5bv32); {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 59: Hoare triple {2698#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2698#true} is VALID [2018-11-14 16:01:56,456 INFO L273 TraceCheckUtils]: 60: Hoare triple {2698#true} assume true; {2698#true} is VALID [2018-11-14 16:01:56,457 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {2698#true} {2698#true} #75#return; {2698#true} is VALID [2018-11-14 16:01:56,457 INFO L273 TraceCheckUtils]: 62: Hoare triple {2698#true} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {2889#(= main_~i~2 (_ bv0 32))} is VALID [2018-11-14 16:01:56,458 INFO L273 TraceCheckUtils]: 63: Hoare triple {2889#(= main_~i~2 (_ bv0 32))} assume true; {2889#(= main_~i~2 (_ bv0 32))} is VALID [2018-11-14 16:01:56,458 INFO L273 TraceCheckUtils]: 64: Hoare triple {2889#(= main_~i~2 (_ bv0 32))} assume !~bvslt32(~i~2, 4bv32); {2699#false} is VALID [2018-11-14 16:01:56,458 INFO L273 TraceCheckUtils]: 65: Hoare triple {2699#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L256 TraceCheckUtils]: 66: Hoare triple {2699#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 67: Hoare triple {2699#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 68: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 69: Hoare triple {2699#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 70: Hoare triple {2699#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 71: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 72: Hoare triple {2699#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2699#false} is VALID [2018-11-14 16:01:56,459 INFO L273 TraceCheckUtils]: 73: Hoare triple {2699#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2699#false} is VALID [2018-11-14 16:01:56,460 INFO L273 TraceCheckUtils]: 74: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,460 INFO L273 TraceCheckUtils]: 75: Hoare triple {2699#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2699#false} is VALID [2018-11-14 16:01:56,460 INFO L273 TraceCheckUtils]: 76: Hoare triple {2699#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2699#false} is VALID [2018-11-14 16:01:56,460 INFO L273 TraceCheckUtils]: 77: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,461 INFO L273 TraceCheckUtils]: 78: Hoare triple {2699#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {2699#false} is VALID [2018-11-14 16:01:56,461 INFO L273 TraceCheckUtils]: 79: Hoare triple {2699#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {2699#false} is VALID [2018-11-14 16:01:56,461 INFO L273 TraceCheckUtils]: 80: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,461 INFO L273 TraceCheckUtils]: 81: Hoare triple {2699#false} assume !~bvslt32(~i~0, 5bv32); {2699#false} is VALID [2018-11-14 16:01:56,461 INFO L273 TraceCheckUtils]: 82: Hoare triple {2699#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {2699#false} is VALID [2018-11-14 16:01:56,462 INFO L273 TraceCheckUtils]: 83: Hoare triple {2699#false} assume true; {2699#false} is VALID [2018-11-14 16:01:56,462 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {2699#false} {2699#false} #77#return; {2699#false} is VALID [2018-11-14 16:01:56,462 INFO L273 TraceCheckUtils]: 85: Hoare triple {2699#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {2699#false} is VALID [2018-11-14 16:01:56,462 INFO L273 TraceCheckUtils]: 86: Hoare triple {2699#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2699#false} is VALID [2018-11-14 16:01:56,462 INFO L273 TraceCheckUtils]: 87: Hoare triple {2699#false} assume !false; {2699#false} is VALID [2018-11-14 16:01:56,466 INFO L134 CoverageAnalysis]: Checked inductivity of 328 backedges. 140 proven. 0 refuted. 0 times theorem prover too weak. 188 trivial. 0 not checked. [2018-11-14 16:01:56,467 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-14 16:01:56,472 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 16:01:56,472 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 16:01:56,473 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 88 [2018-11-14 16:01:56,473 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:56,473 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 16:01:56,716 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:56,716 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 16:01:56,716 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 16:01:56,716 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:56,716 INFO L87 Difference]: Start difference. First operand 54 states and 58 transitions. Second operand 3 states. [2018-11-14 16:01:57,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:57,068 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2018-11-14 16:01:57,068 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 16:01:57,068 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 88 [2018-11-14 16:01:57,069 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:01:57,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:57,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 16:01:57,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 16:01:57,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 50 transitions. [2018-11-14 16:01:57,072 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 50 transitions. [2018-11-14 16:01:57,314 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:57,316 INFO L225 Difference]: With dead ends: 81 [2018-11-14 16:01:57,316 INFO L226 Difference]: Without dead ends: 57 [2018-11-14 16:01:57,317 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 86 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 16:01:57,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2018-11-14 16:01:57,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 56. [2018-11-14 16:01:57,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:01:57,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand 56 states. [2018-11-14 16:01:57,386 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand 56 states. [2018-11-14 16:01:57,386 INFO L87 Difference]: Start difference. First operand 57 states. Second operand 56 states. [2018-11-14 16:01:57,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:57,388 INFO L93 Difference]: Finished difference Result 57 states and 61 transitions. [2018-11-14 16:01:57,389 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 61 transitions. [2018-11-14 16:01:57,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:57,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:57,389 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 57 states. [2018-11-14 16:01:57,389 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 57 states. [2018-11-14 16:01:57,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:01:57,392 INFO L93 Difference]: Finished difference Result 57 states and 61 transitions. [2018-11-14 16:01:57,392 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 61 transitions. [2018-11-14 16:01:57,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:01:57,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:01:57,393 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:01:57,393 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:01:57,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-14 16:01:57,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 60 transitions. [2018-11-14 16:01:57,395 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 60 transitions. Word has length 88 [2018-11-14 16:01:57,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:01:57,395 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 60 transitions. [2018-11-14 16:01:57,395 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 16:01:57,396 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2018-11-14 16:01:57,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2018-11-14 16:01:57,397 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:01:57,397 INFO L375 BasicCegarLoop]: trace histogram [15, 12, 12, 6, 5, 5, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 16:01:57,397 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:01:57,397 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:01:57,398 INFO L82 PathProgramCache]: Analyzing trace with hash -888096881, now seen corresponding path program 1 times [2018-11-14 16:01:57,398 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:01:57,398 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 9 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:01:57,415 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 16:01:58,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:58,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:01:58,425 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:01:58,560 INFO L256 TraceCheckUtils]: 0: Hoare triple {3264#true} call ULTIMATE.init(); {3264#true} is VALID [2018-11-14 16:01:58,560 INFO L273 TraceCheckUtils]: 1: Hoare triple {3264#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {3264#true} is VALID [2018-11-14 16:01:58,561 INFO L273 TraceCheckUtils]: 2: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,561 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3264#true} {3264#true} #69#return; {3264#true} is VALID [2018-11-14 16:01:58,561 INFO L256 TraceCheckUtils]: 4: Hoare triple {3264#true} call #t~ret12 := main(); {3264#true} is VALID [2018-11-14 16:01:58,561 INFO L273 TraceCheckUtils]: 5: Hoare triple {3264#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 6: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 7: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 8: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 9: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 10: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 11: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 12: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,562 INFO L273 TraceCheckUtils]: 13: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 14: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 15: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 16: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 17: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 18: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 19: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 20: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,563 INFO L273 TraceCheckUtils]: 21: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,564 INFO L273 TraceCheckUtils]: 22: Hoare triple {3264#true} assume !~bvslt32(~i~1, 5bv32); {3264#true} is VALID [2018-11-14 16:01:58,564 INFO L256 TraceCheckUtils]: 23: Hoare triple {3264#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3264#true} is VALID [2018-11-14 16:01:58,564 INFO L273 TraceCheckUtils]: 24: Hoare triple {3264#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3341#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:58,565 INFO L273 TraceCheckUtils]: 25: Hoare triple {3341#(= (_ bv0 32) avg_~i~0)} assume true; {3341#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:58,565 INFO L273 TraceCheckUtils]: 26: Hoare triple {3341#(= (_ bv0 32) avg_~i~0)} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3341#(= (_ bv0 32) avg_~i~0)} is VALID [2018-11-14 16:01:58,565 INFO L273 TraceCheckUtils]: 27: Hoare triple {3341#(= (_ bv0 32) avg_~i~0)} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,566 INFO L273 TraceCheckUtils]: 28: Hoare triple {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume true; {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,566 INFO L273 TraceCheckUtils]: 29: Hoare triple {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,567 INFO L273 TraceCheckUtils]: 30: Hoare triple {3351#(= (bvadd avg_~i~0 (_ bv4294967295 32)) (_ bv0 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,567 INFO L273 TraceCheckUtils]: 31: Hoare triple {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} assume true; {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,568 INFO L273 TraceCheckUtils]: 32: Hoare triple {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,568 INFO L273 TraceCheckUtils]: 33: Hoare triple {3361#(= (bvadd avg_~i~0 (_ bv4294967294 32)) (_ bv0 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,569 INFO L273 TraceCheckUtils]: 34: Hoare triple {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} assume true; {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,569 INFO L273 TraceCheckUtils]: 35: Hoare triple {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} is VALID [2018-11-14 16:01:58,570 INFO L273 TraceCheckUtils]: 36: Hoare triple {3371#(= (bvadd avg_~i~0 (_ bv4294967293 32)) (_ bv0 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3381#(= (_ bv4 32) avg_~i~0)} is VALID [2018-11-14 16:01:58,571 INFO L273 TraceCheckUtils]: 37: Hoare triple {3381#(= (_ bv4 32) avg_~i~0)} assume true; {3381#(= (_ bv4 32) avg_~i~0)} is VALID [2018-11-14 16:01:58,571 INFO L273 TraceCheckUtils]: 38: Hoare triple {3381#(= (_ bv4 32) avg_~i~0)} assume !~bvslt32(~i~0, 5bv32); {3265#false} is VALID [2018-11-14 16:01:58,572 INFO L273 TraceCheckUtils]: 39: Hoare triple {3265#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3265#false} is VALID [2018-11-14 16:01:58,572 INFO L273 TraceCheckUtils]: 40: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,572 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3265#false} {3264#true} #73#return; {3265#false} is VALID [2018-11-14 16:01:58,572 INFO L273 TraceCheckUtils]: 42: Hoare triple {3265#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,573 INFO L256 TraceCheckUtils]: 43: Hoare triple {3265#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3265#false} is VALID [2018-11-14 16:01:58,573 INFO L273 TraceCheckUtils]: 44: Hoare triple {3265#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3265#false} is VALID [2018-11-14 16:01:58,573 INFO L273 TraceCheckUtils]: 45: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,573 INFO L273 TraceCheckUtils]: 46: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,574 INFO L273 TraceCheckUtils]: 47: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,574 INFO L273 TraceCheckUtils]: 48: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,574 INFO L273 TraceCheckUtils]: 49: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,574 INFO L273 TraceCheckUtils]: 50: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,575 INFO L273 TraceCheckUtils]: 51: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,575 INFO L273 TraceCheckUtils]: 52: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,575 INFO L273 TraceCheckUtils]: 53: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,575 INFO L273 TraceCheckUtils]: 54: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,575 INFO L273 TraceCheckUtils]: 55: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L273 TraceCheckUtils]: 56: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L273 TraceCheckUtils]: 57: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L273 TraceCheckUtils]: 58: Hoare triple {3265#false} assume !~bvslt32(~i~0, 5bv32); {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L273 TraceCheckUtils]: 59: Hoare triple {3265#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L273 TraceCheckUtils]: 60: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,576 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3265#false} {3265#false} #75#return; {3265#false} is VALID [2018-11-14 16:01:58,577 INFO L273 TraceCheckUtils]: 62: Hoare triple {3265#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {3265#false} is VALID [2018-11-14 16:01:58,577 INFO L273 TraceCheckUtils]: 63: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,577 INFO L273 TraceCheckUtils]: 64: Hoare triple {3265#false} assume !!~bvslt32(~i~2, 4bv32);call #t~mem10 := read~intINTTYPE4(~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, ~i~2))), 4bv32);call write~intINTTYPE4(#t~mem10, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~2)), 4bv32);havoc #t~mem10; {3265#false} is VALID [2018-11-14 16:01:58,577 INFO L273 TraceCheckUtils]: 65: Hoare triple {3265#false} #t~post9 := ~i~2;~i~2 := ~bvadd32(1bv32, #t~post9);havoc #t~post9; {3265#false} is VALID [2018-11-14 16:01:58,577 INFO L273 TraceCheckUtils]: 66: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,578 INFO L273 TraceCheckUtils]: 67: Hoare triple {3265#false} assume !~bvslt32(~i~2, 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,578 INFO L273 TraceCheckUtils]: 68: Hoare triple {3265#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,578 INFO L256 TraceCheckUtils]: 69: Hoare triple {3265#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3265#false} is VALID [2018-11-14 16:01:58,578 INFO L273 TraceCheckUtils]: 70: Hoare triple {3265#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3265#false} is VALID [2018-11-14 16:01:58,578 INFO L273 TraceCheckUtils]: 71: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 72: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 73: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 74: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 75: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 76: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,579 INFO L273 TraceCheckUtils]: 77: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 78: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 79: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 80: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 81: Hoare triple {3265#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 82: Hoare triple {3265#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3265#false} is VALID [2018-11-14 16:01:58,580 INFO L273 TraceCheckUtils]: 83: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L273 TraceCheckUtils]: 84: Hoare triple {3265#false} assume !~bvslt32(~i~0, 5bv32); {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L273 TraceCheckUtils]: 85: Hoare triple {3265#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L273 TraceCheckUtils]: 86: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3265#false} {3265#false} #77#return; {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L273 TraceCheckUtils]: 88: Hoare triple {3265#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {3265#false} is VALID [2018-11-14 16:01:58,581 INFO L273 TraceCheckUtils]: 89: Hoare triple {3265#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3265#false} is VALID [2018-11-14 16:01:58,582 INFO L273 TraceCheckUtils]: 90: Hoare triple {3265#false} assume !false; {3265#false} is VALID [2018-11-14 16:01:58,591 INFO L134 CoverageAnalysis]: Checked inductivity of 330 backedges. 134 proven. 26 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2018-11-14 16:01:58,591 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-14 16:01:58,819 INFO L273 TraceCheckUtils]: 90: Hoare triple {3265#false} assume !false; {3265#false} is VALID [2018-11-14 16:01:58,819 INFO L273 TraceCheckUtils]: 89: Hoare triple {3265#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3265#false} is VALID [2018-11-14 16:01:58,819 INFO L273 TraceCheckUtils]: 88: Hoare triple {3265#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {3265#false} is VALID [2018-11-14 16:01:58,820 INFO L268 TraceCheckUtils]: 87: Hoare quadruple {3264#true} {3265#false} #77#return; {3265#false} is VALID [2018-11-14 16:01:58,820 INFO L273 TraceCheckUtils]: 86: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,820 INFO L273 TraceCheckUtils]: 85: Hoare triple {3264#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3264#true} is VALID [2018-11-14 16:01:58,820 INFO L273 TraceCheckUtils]: 84: Hoare triple {3264#true} assume !~bvslt32(~i~0, 5bv32); {3264#true} is VALID [2018-11-14 16:01:58,820 INFO L273 TraceCheckUtils]: 83: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 82: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 81: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 80: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 79: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 78: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,821 INFO L273 TraceCheckUtils]: 77: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 76: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 75: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 74: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 73: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 72: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 71: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L273 TraceCheckUtils]: 70: Hoare triple {3264#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3264#true} is VALID [2018-11-14 16:01:58,822 INFO L256 TraceCheckUtils]: 69: Hoare triple {3265#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {3264#true} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 68: Hoare triple {3265#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 67: Hoare triple {3265#false} assume !~bvslt32(~i~2, 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 66: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 65: Hoare triple {3265#false} #t~post9 := ~i~2;~i~2 := ~bvadd32(1bv32, #t~post9);havoc #t~post9; {3265#false} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 64: Hoare triple {3265#false} assume !!~bvslt32(~i~2, 4bv32);call #t~mem10 := read~intINTTYPE4(~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, ~i~2))), 4bv32);call write~intINTTYPE4(#t~mem10, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~2)), 4bv32);havoc #t~mem10; {3265#false} is VALID [2018-11-14 16:01:58,823 INFO L273 TraceCheckUtils]: 63: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,824 INFO L273 TraceCheckUtils]: 62: Hoare triple {3265#false} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {3265#false} is VALID [2018-11-14 16:01:58,824 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {3264#true} {3265#false} #75#return; {3265#false} is VALID [2018-11-14 16:01:58,824 INFO L273 TraceCheckUtils]: 60: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,824 INFO L273 TraceCheckUtils]: 59: Hoare triple {3264#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3264#true} is VALID [2018-11-14 16:01:58,824 INFO L273 TraceCheckUtils]: 58: Hoare triple {3264#true} assume !~bvslt32(~i~0, 5bv32); {3264#true} is VALID [2018-11-14 16:01:58,824 INFO L273 TraceCheckUtils]: 57: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 56: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 55: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 54: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 53: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 52: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 51: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 50: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,825 INFO L273 TraceCheckUtils]: 49: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L273 TraceCheckUtils]: 48: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L273 TraceCheckUtils]: 47: Hoare triple {3264#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L273 TraceCheckUtils]: 46: Hoare triple {3264#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L273 TraceCheckUtils]: 45: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L273 TraceCheckUtils]: 44: Hoare triple {3264#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3264#true} is VALID [2018-11-14 16:01:58,826 INFO L256 TraceCheckUtils]: 43: Hoare triple {3265#false} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {3264#true} is VALID [2018-11-14 16:01:58,827 INFO L273 TraceCheckUtils]: 42: Hoare triple {3265#false} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {3265#false} is VALID [2018-11-14 16:01:58,827 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {3265#false} {3264#true} #73#return; {3265#false} is VALID [2018-11-14 16:01:58,827 INFO L273 TraceCheckUtils]: 40: Hoare triple {3265#false} assume true; {3265#false} is VALID [2018-11-14 16:01:58,827 INFO L273 TraceCheckUtils]: 39: Hoare triple {3265#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {3265#false} is VALID [2018-11-14 16:01:58,844 INFO L273 TraceCheckUtils]: 38: Hoare triple {3703#(bvslt avg_~i~0 (_ bv5 32))} assume !~bvslt32(~i~0, 5bv32); {3265#false} is VALID [2018-11-14 16:01:58,858 INFO L273 TraceCheckUtils]: 37: Hoare triple {3703#(bvslt avg_~i~0 (_ bv5 32))} assume true; {3703#(bvslt avg_~i~0 (_ bv5 32))} is VALID [2018-11-14 16:01:58,874 INFO L273 TraceCheckUtils]: 36: Hoare triple {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3703#(bvslt avg_~i~0 (_ bv5 32))} is VALID [2018-11-14 16:01:58,883 INFO L273 TraceCheckUtils]: 35: Hoare triple {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,884 INFO L273 TraceCheckUtils]: 34: Hoare triple {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} assume true; {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,889 INFO L273 TraceCheckUtils]: 33: Hoare triple {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3710#(bvslt (bvadd avg_~i~0 (_ bv1 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,890 INFO L273 TraceCheckUtils]: 32: Hoare triple {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,890 INFO L273 TraceCheckUtils]: 31: Hoare triple {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} assume true; {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,894 INFO L273 TraceCheckUtils]: 30: Hoare triple {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3720#(bvslt (bvadd avg_~i~0 (_ bv2 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,895 INFO L273 TraceCheckUtils]: 29: Hoare triple {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,895 INFO L273 TraceCheckUtils]: 28: Hoare triple {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} assume true; {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,898 INFO L273 TraceCheckUtils]: 27: Hoare triple {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {3730#(bvslt (bvadd avg_~i~0 (_ bv3 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,899 INFO L273 TraceCheckUtils]: 26: Hoare triple {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,899 INFO L273 TraceCheckUtils]: 25: Hoare triple {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} assume true; {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,900 INFO L273 TraceCheckUtils]: 24: Hoare triple {3264#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {3740#(bvslt (bvadd avg_~i~0 (_ bv4 32)) (_ bv5 32))} is VALID [2018-11-14 16:01:58,900 INFO L256 TraceCheckUtils]: 23: Hoare triple {3264#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {3264#true} is VALID [2018-11-14 16:01:58,900 INFO L273 TraceCheckUtils]: 22: Hoare triple {3264#true} assume !~bvslt32(~i~1, 5bv32); {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 21: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 20: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 19: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 18: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 17: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 16: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 15: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,901 INFO L273 TraceCheckUtils]: 14: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 13: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 12: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 11: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 10: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 9: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 8: Hoare triple {3264#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 7: Hoare triple {3264#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {3264#true} is VALID [2018-11-14 16:01:58,902 INFO L273 TraceCheckUtils]: 6: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L273 TraceCheckUtils]: 5: Hoare triple {3264#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L256 TraceCheckUtils]: 4: Hoare triple {3264#true} call #t~ret12 := main(); {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3264#true} {3264#true} #69#return; {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L273 TraceCheckUtils]: 2: Hoare triple {3264#true} assume true; {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L273 TraceCheckUtils]: 1: Hoare triple {3264#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {3264#true} is VALID [2018-11-14 16:01:58,903 INFO L256 TraceCheckUtils]: 0: Hoare triple {3264#true} call ULTIMATE.init(); {3264#true} is VALID [2018-11-14 16:01:58,910 INFO L134 CoverageAnalysis]: Checked inductivity of 330 backedges. 0 proven. 164 refuted. 0 times theorem prover too weak. 166 trivial. 0 not checked. [2018-11-14 16:01:58,916 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 16:01:58,917 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2018-11-14 16:01:58,917 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 91 [2018-11-14 16:01:58,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:01:58,919 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-14 16:01:59,213 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:01:59,213 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-14 16:01:59,213 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-14 16:01:59,214 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2018-11-14 16:01:59,214 INFO L87 Difference]: Start difference. First operand 56 states and 60 transitions. Second operand 12 states. [2018-11-14 16:02:01,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:01,292 INFO L93 Difference]: Finished difference Result 92 states and 102 transitions. [2018-11-14 16:02:01,292 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-14 16:02:01,293 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 91 [2018-11-14 16:02:01,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:02:01,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 16:02:01,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 73 transitions. [2018-11-14 16:02:01,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-14 16:02:01,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 73 transitions. [2018-11-14 16:02:01,297 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 73 transitions. [2018-11-14 16:02:01,581 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:02:01,583 INFO L225 Difference]: With dead ends: 92 [2018-11-14 16:02:01,583 INFO L226 Difference]: Without dead ends: 60 [2018-11-14 16:02:01,584 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 181 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2018-11-14 16:02:01,584 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2018-11-14 16:02:01,603 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2018-11-14 16:02:01,603 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:02:01,603 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand 59 states. [2018-11-14 16:02:01,603 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand 59 states. [2018-11-14 16:02:01,604 INFO L87 Difference]: Start difference. First operand 60 states. Second operand 59 states. [2018-11-14 16:02:01,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:01,606 INFO L93 Difference]: Finished difference Result 60 states and 64 transitions. [2018-11-14 16:02:01,607 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 64 transitions. [2018-11-14 16:02:01,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:02:01,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:02:01,607 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 60 states. [2018-11-14 16:02:01,607 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 60 states. [2018-11-14 16:02:01,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:01,610 INFO L93 Difference]: Finished difference Result 60 states and 64 transitions. [2018-11-14 16:02:01,610 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 64 transitions. [2018-11-14 16:02:01,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:02:01,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:02:01,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:02:01,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:02:01,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 59 states. [2018-11-14 16:02:01,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 63 transitions. [2018-11-14 16:02:01,613 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 63 transitions. Word has length 91 [2018-11-14 16:02:01,613 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:02:01,613 INFO L480 AbstractCegarLoop]: Abstraction has 59 states and 63 transitions. [2018-11-14 16:02:01,614 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-14 16:02:01,614 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 63 transitions. [2018-11-14 16:02:01,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2018-11-14 16:02:01,615 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:02:01,615 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 6, 5, 5, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 16:02:01,615 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:02:01,615 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:02:01,616 INFO L82 PathProgramCache]: Analyzing trace with hash -581816051, now seen corresponding path program 2 times [2018-11-14 16:02:01,616 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:02:01,616 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 10 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:02:01,638 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-14 16:02:02,971 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 16:02:02,971 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 16:02:03,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 16:02:03,166 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 16:02:03,265 INFO L256 TraceCheckUtils]: 0: Hoare triple {4146#true} call ULTIMATE.init(); {4146#true} is VALID [2018-11-14 16:02:03,266 INFO L273 TraceCheckUtils]: 1: Hoare triple {4146#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {4146#true} is VALID [2018-11-14 16:02:03,266 INFO L273 TraceCheckUtils]: 2: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,266 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4146#true} {4146#true} #69#return; {4146#true} is VALID [2018-11-14 16:02:03,266 INFO L256 TraceCheckUtils]: 4: Hoare triple {4146#true} call #t~ret12 := main(); {4146#true} is VALID [2018-11-14 16:02:03,266 INFO L273 TraceCheckUtils]: 5: Hoare triple {4146#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,267 INFO L273 TraceCheckUtils]: 6: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,267 INFO L273 TraceCheckUtils]: 7: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,267 INFO L273 TraceCheckUtils]: 8: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,267 INFO L273 TraceCheckUtils]: 9: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,267 INFO L273 TraceCheckUtils]: 10: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,268 INFO L273 TraceCheckUtils]: 11: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,268 INFO L273 TraceCheckUtils]: 12: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,268 INFO L273 TraceCheckUtils]: 13: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,268 INFO L273 TraceCheckUtils]: 14: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,268 INFO L273 TraceCheckUtils]: 15: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,269 INFO L273 TraceCheckUtils]: 16: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,269 INFO L273 TraceCheckUtils]: 17: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,269 INFO L273 TraceCheckUtils]: 18: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,269 INFO L273 TraceCheckUtils]: 19: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,269 INFO L273 TraceCheckUtils]: 20: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 21: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 22: Hoare triple {4146#true} assume !~bvslt32(~i~1, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L256 TraceCheckUtils]: 23: Hoare triple {4146#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 24: Hoare triple {4146#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 25: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 26: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 27: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,270 INFO L273 TraceCheckUtils]: 28: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 29: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 30: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 31: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 32: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 33: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 34: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,271 INFO L273 TraceCheckUtils]: 35: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 36: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 37: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 38: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 39: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 40: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,272 INFO L273 TraceCheckUtils]: 41: Hoare triple {4146#true} assume !~bvslt32(~i~0, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,273 INFO L273 TraceCheckUtils]: 42: Hoare triple {4146#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4146#true} is VALID [2018-11-14 16:02:03,273 INFO L273 TraceCheckUtils]: 43: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,273 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4146#true} {4146#true} #73#return; {4146#true} is VALID [2018-11-14 16:02:03,273 INFO L273 TraceCheckUtils]: 45: Hoare triple {4146#true} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {4146#true} is VALID [2018-11-14 16:02:03,273 INFO L256 TraceCheckUtils]: 46: Hoare triple {4146#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 47: Hoare triple {4146#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 48: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 49: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 50: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 51: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,274 INFO L273 TraceCheckUtils]: 52: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 53: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 54: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 55: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 56: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 57: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,275 INFO L273 TraceCheckUtils]: 58: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 59: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 60: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 61: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 62: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 63: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,276 INFO L273 TraceCheckUtils]: 64: Hoare triple {4146#true} assume !~bvslt32(~i~0, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,277 INFO L273 TraceCheckUtils]: 65: Hoare triple {4146#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4146#true} is VALID [2018-11-14 16:02:03,277 INFO L273 TraceCheckUtils]: 66: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,277 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {4146#true} {4146#true} #75#return; {4146#true} is VALID [2018-11-14 16:02:03,291 INFO L273 TraceCheckUtils]: 68: Hoare triple {4146#true} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {4355#(= main_~i~2 (_ bv0 32))} is VALID [2018-11-14 16:02:03,296 INFO L273 TraceCheckUtils]: 69: Hoare triple {4355#(= main_~i~2 (_ bv0 32))} assume true; {4355#(= main_~i~2 (_ bv0 32))} is VALID [2018-11-14 16:02:03,296 INFO L273 TraceCheckUtils]: 70: Hoare triple {4355#(= main_~i~2 (_ bv0 32))} assume !!~bvslt32(~i~2, 4bv32);call #t~mem10 := read~intINTTYPE4(~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, ~i~2))), 4bv32);call write~intINTTYPE4(#t~mem10, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~2)), 4bv32);havoc #t~mem10; {4355#(= main_~i~2 (_ bv0 32))} is VALID [2018-11-14 16:02:03,315 INFO L273 TraceCheckUtils]: 71: Hoare triple {4355#(= main_~i~2 (_ bv0 32))} #t~post9 := ~i~2;~i~2 := ~bvadd32(1bv32, #t~post9);havoc #t~post9; {4365#(= (_ bv1 32) main_~i~2)} is VALID [2018-11-14 16:02:03,324 INFO L273 TraceCheckUtils]: 72: Hoare triple {4365#(= (_ bv1 32) main_~i~2)} assume true; {4365#(= (_ bv1 32) main_~i~2)} is VALID [2018-11-14 16:02:03,337 INFO L273 TraceCheckUtils]: 73: Hoare triple {4365#(= (_ bv1 32) main_~i~2)} assume !~bvslt32(~i~2, 4bv32); {4147#false} is VALID [2018-11-14 16:02:03,337 INFO L273 TraceCheckUtils]: 74: Hoare triple {4147#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {4147#false} is VALID [2018-11-14 16:02:03,337 INFO L256 TraceCheckUtils]: 75: Hoare triple {4147#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {4147#false} is VALID [2018-11-14 16:02:03,338 INFO L273 TraceCheckUtils]: 76: Hoare triple {4147#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4147#false} is VALID [2018-11-14 16:02:03,338 INFO L273 TraceCheckUtils]: 77: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,338 INFO L273 TraceCheckUtils]: 78: Hoare triple {4147#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4147#false} is VALID [2018-11-14 16:02:03,338 INFO L273 TraceCheckUtils]: 79: Hoare triple {4147#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4147#false} is VALID [2018-11-14 16:02:03,339 INFO L273 TraceCheckUtils]: 80: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,339 INFO L273 TraceCheckUtils]: 81: Hoare triple {4147#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4147#false} is VALID [2018-11-14 16:02:03,339 INFO L273 TraceCheckUtils]: 82: Hoare triple {4147#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4147#false} is VALID [2018-11-14 16:02:03,339 INFO L273 TraceCheckUtils]: 83: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,339 INFO L273 TraceCheckUtils]: 84: Hoare triple {4147#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4147#false} is VALID [2018-11-14 16:02:03,340 INFO L273 TraceCheckUtils]: 85: Hoare triple {4147#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4147#false} is VALID [2018-11-14 16:02:03,340 INFO L273 TraceCheckUtils]: 86: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,340 INFO L273 TraceCheckUtils]: 87: Hoare triple {4147#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4147#false} is VALID [2018-11-14 16:02:03,340 INFO L273 TraceCheckUtils]: 88: Hoare triple {4147#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4147#false} is VALID [2018-11-14 16:02:03,341 INFO L273 TraceCheckUtils]: 89: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,341 INFO L273 TraceCheckUtils]: 90: Hoare triple {4147#false} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4147#false} is VALID [2018-11-14 16:02:03,341 INFO L273 TraceCheckUtils]: 91: Hoare triple {4147#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4147#false} is VALID [2018-11-14 16:02:03,341 INFO L273 TraceCheckUtils]: 92: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,341 INFO L273 TraceCheckUtils]: 93: Hoare triple {4147#false} assume !~bvslt32(~i~0, 5bv32); {4147#false} is VALID [2018-11-14 16:02:03,342 INFO L273 TraceCheckUtils]: 94: Hoare triple {4147#false} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4147#false} is VALID [2018-11-14 16:02:03,342 INFO L273 TraceCheckUtils]: 95: Hoare triple {4147#false} assume true; {4147#false} is VALID [2018-11-14 16:02:03,342 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {4147#false} {4147#false} #77#return; {4147#false} is VALID [2018-11-14 16:02:03,342 INFO L273 TraceCheckUtils]: 97: Hoare triple {4147#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {4147#false} is VALID [2018-11-14 16:02:03,342 INFO L273 TraceCheckUtils]: 98: Hoare triple {4147#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4147#false} is VALID [2018-11-14 16:02:03,343 INFO L273 TraceCheckUtils]: 99: Hoare triple {4147#false} assume !false; {4147#false} is VALID [2018-11-14 16:02:03,348 INFO L134 CoverageAnalysis]: Checked inductivity of 465 backedges. 202 proven. 2 refuted. 0 times theorem prover too weak. 261 trivial. 0 not checked. [2018-11-14 16:02:03,349 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-14 16:02:03,535 INFO L273 TraceCheckUtils]: 99: Hoare triple {4147#false} assume !false; {4147#false} is VALID [2018-11-14 16:02:03,536 INFO L273 TraceCheckUtils]: 98: Hoare triple {4147#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4147#false} is VALID [2018-11-14 16:02:03,536 INFO L273 TraceCheckUtils]: 97: Hoare triple {4147#false} ~ret5~0 := #t~ret11;havoc #t~ret11; {4147#false} is VALID [2018-11-14 16:02:03,536 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {4146#true} {4147#false} #77#return; {4147#false} is VALID [2018-11-14 16:02:03,536 INFO L273 TraceCheckUtils]: 95: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,536 INFO L273 TraceCheckUtils]: 94: Hoare triple {4146#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4146#true} is VALID [2018-11-14 16:02:03,536 INFO L273 TraceCheckUtils]: 93: Hoare triple {4146#true} assume !~bvslt32(~i~0, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 92: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 91: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 90: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 89: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 88: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,537 INFO L273 TraceCheckUtils]: 87: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 86: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 85: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 84: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 83: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 82: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 81: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,538 INFO L273 TraceCheckUtils]: 80: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L273 TraceCheckUtils]: 79: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L273 TraceCheckUtils]: 78: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L273 TraceCheckUtils]: 77: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L273 TraceCheckUtils]: 76: Hoare triple {4146#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L256 TraceCheckUtils]: 75: Hoare triple {4147#false} call #t~ret11 := avg(~#x~0.base, ~#x~0.offset); {4146#true} is VALID [2018-11-14 16:02:03,539 INFO L273 TraceCheckUtils]: 74: Hoare triple {4147#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(16bv32, ~#x~0.offset), 4bv32); {4147#false} is VALID [2018-11-14 16:02:03,540 INFO L273 TraceCheckUtils]: 73: Hoare triple {4528#(bvslt main_~i~2 (_ bv4 32))} assume !~bvslt32(~i~2, 4bv32); {4147#false} is VALID [2018-11-14 16:02:03,540 INFO L273 TraceCheckUtils]: 72: Hoare triple {4528#(bvslt main_~i~2 (_ bv4 32))} assume true; {4528#(bvslt main_~i~2 (_ bv4 32))} is VALID [2018-11-14 16:02:03,541 INFO L273 TraceCheckUtils]: 71: Hoare triple {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} #t~post9 := ~i~2;~i~2 := ~bvadd32(1bv32, #t~post9);havoc #t~post9; {4528#(bvslt main_~i~2 (_ bv4 32))} is VALID [2018-11-14 16:02:03,541 INFO L273 TraceCheckUtils]: 70: Hoare triple {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} assume !!~bvslt32(~i~2, 4bv32);call #t~mem10 := read~intINTTYPE4(~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, ~i~2))), 4bv32);call write~intINTTYPE4(#t~mem10, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~2)), 4bv32);havoc #t~mem10; {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} is VALID [2018-11-14 16:02:03,541 INFO L273 TraceCheckUtils]: 69: Hoare triple {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} assume true; {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} is VALID [2018-11-14 16:02:03,542 INFO L273 TraceCheckUtils]: 68: Hoare triple {4146#true} ~ret2~0 := #t~ret7;havoc #t~ret7;call #t~mem8 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem8;havoc #t~mem8;~i~2 := 0bv32; {4535#(bvslt (bvadd main_~i~2 (_ bv1 32)) (_ bv4 32))} is VALID [2018-11-14 16:02:03,542 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {4146#true} {4146#true} #75#return; {4146#true} is VALID [2018-11-14 16:02:03,542 INFO L273 TraceCheckUtils]: 66: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,542 INFO L273 TraceCheckUtils]: 65: Hoare triple {4146#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 64: Hoare triple {4146#true} assume !~bvslt32(~i~0, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 63: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 62: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 61: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 60: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,543 INFO L273 TraceCheckUtils]: 59: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,544 INFO L273 TraceCheckUtils]: 58: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,544 INFO L273 TraceCheckUtils]: 57: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,544 INFO L273 TraceCheckUtils]: 56: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,544 INFO L273 TraceCheckUtils]: 55: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,544 INFO L273 TraceCheckUtils]: 54: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,545 INFO L273 TraceCheckUtils]: 53: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,545 INFO L273 TraceCheckUtils]: 52: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,545 INFO L273 TraceCheckUtils]: 51: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,545 INFO L273 TraceCheckUtils]: 50: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,546 INFO L273 TraceCheckUtils]: 49: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,546 INFO L273 TraceCheckUtils]: 48: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,546 INFO L273 TraceCheckUtils]: 47: Hoare triple {4146#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,546 INFO L256 TraceCheckUtils]: 46: Hoare triple {4146#true} call #t~ret7 := avg(~#x~0.base, ~#x~0.offset); {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L273 TraceCheckUtils]: 45: Hoare triple {4146#true} ~ret~1 := #t~ret4;havoc #t~ret4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem5;havoc #t~mem5;call #t~mem6 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem6, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem6;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {4146#true} {4146#true} #73#return; {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L273 TraceCheckUtils]: 43: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L273 TraceCheckUtils]: 42: Hoare triple {4146#true} #res := ~bvsdiv64(~ret~0, ~sign_extendFrom32To64(5bv32))[32:0]; {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L273 TraceCheckUtils]: 41: Hoare triple {4146#true} assume !~bvslt32(~i~0, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,547 INFO L273 TraceCheckUtils]: 40: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 39: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 38: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 37: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 36: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 35: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 34: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 33: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,548 INFO L273 TraceCheckUtils]: 32: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 31: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 30: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 29: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 28: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 27: Hoare triple {4146#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 26: Hoare triple {4146#true} assume !!~bvslt32(~i~0, 5bv32);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~ret~0, ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 25: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,549 INFO L273 TraceCheckUtils]: 24: Hoare triple {4146#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L256 TraceCheckUtils]: 23: Hoare triple {4146#true} call #t~ret4 := avg(~#x~0.base, ~#x~0.offset); {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 22: Hoare triple {4146#true} assume !~bvslt32(~i~1, 5bv32); {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 21: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 20: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 19: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 18: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 17: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 16: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,550 INFO L273 TraceCheckUtils]: 15: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 14: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 13: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 12: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 11: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 10: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 9: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 8: Hoare triple {4146#true} #t~post2 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post2);havoc #t~post2; {4146#true} is VALID [2018-11-14 16:02:03,551 INFO L273 TraceCheckUtils]: 7: Hoare triple {4146#true} assume !!~bvslt32(~i~1, 5bv32);call write~intINTTYPE4(#t~nondet3, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~nondet3; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L273 TraceCheckUtils]: 6: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L273 TraceCheckUtils]: 5: Hoare triple {4146#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(20bv32);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0bv32; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L256 TraceCheckUtils]: 4: Hoare triple {4146#true} call #t~ret12 := main(); {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4146#true} {4146#true} #69#return; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L273 TraceCheckUtils]: 2: Hoare triple {4146#true} assume true; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L273 TraceCheckUtils]: 1: Hoare triple {4146#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {4146#true} is VALID [2018-11-14 16:02:03,552 INFO L256 TraceCheckUtils]: 0: Hoare triple {4146#true} call ULTIMATE.init(); {4146#true} is VALID [2018-11-14 16:02:03,557 INFO L134 CoverageAnalysis]: Checked inductivity of 465 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 463 trivial. 0 not checked. [2018-11-14 16:02:03,563 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 16:02:03,563 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-14 16:02:03,564 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 100 [2018-11-14 16:02:03,564 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 16:02:03,564 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 16:02:03,805 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:02:03,805 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 16:02:03,805 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 16:02:03,806 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2018-11-14 16:02:03,806 INFO L87 Difference]: Start difference. First operand 59 states and 63 transitions. Second operand 6 states. [2018-11-14 16:02:04,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:04,483 INFO L93 Difference]: Finished difference Result 95 states and 102 transitions. [2018-11-14 16:02:04,483 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-14 16:02:04,483 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 100 [2018-11-14 16:02:04,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 16:02:04,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:02:04,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2018-11-14 16:02:04,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 16:02:04,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2018-11-14 16:02:04,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 60 transitions. [2018-11-14 16:02:04,769 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 16:02:04,771 INFO L225 Difference]: With dead ends: 95 [2018-11-14 16:02:04,771 INFO L226 Difference]: Without dead ends: 68 [2018-11-14 16:02:04,772 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 195 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2018-11-14 16:02:04,772 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2018-11-14 16:02:04,798 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 68. [2018-11-14 16:02:04,798 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 16:02:04,799 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand 68 states. [2018-11-14 16:02:04,799 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 68 states. [2018-11-14 16:02:04,799 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 68 states. [2018-11-14 16:02:04,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:04,802 INFO L93 Difference]: Finished difference Result 68 states and 72 transitions. [2018-11-14 16:02:04,802 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 16:02:04,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:02:04,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:02:04,803 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 68 states. [2018-11-14 16:02:04,803 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 68 states. [2018-11-14 16:02:04,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 16:02:04,806 INFO L93 Difference]: Finished difference Result 68 states and 72 transitions. [2018-11-14 16:02:04,806 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 16:02:04,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 16:02:04,807 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 16:02:04,807 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 16:02:04,807 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 16:02:04,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-14 16:02:04,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 72 transitions. [2018-11-14 16:02:04,809 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 72 transitions. Word has length 100 [2018-11-14 16:02:04,810 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 16:02:04,810 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 72 transitions. [2018-11-14 16:02:04,810 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 16:02:04,810 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 72 transitions. [2018-11-14 16:02:04,811 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-14 16:02:04,811 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 16:02:04,811 INFO L375 BasicCegarLoop]: trace histogram [18, 15, 15, 6, 5, 5, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 16:02:04,812 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 16:02:04,812 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 16:02:04,812 INFO L82 PathProgramCache]: Analyzing trace with hash -1127785249, now seen corresponding path program 3 times [2018-11-14 16:02:04,812 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-14 16:02:04,813 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 11 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-14 16:02:04,833 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2