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/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf -i ../../../trunk/examples/svcomp/array-crafted/mapsum5_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 10:37:08,971 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 10:37:08,975 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 10:37:08,994 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 10:37:08,995 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 10:37:08,996 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 10:37:08,998 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 10:37:08,999 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 10:37:09,001 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 10:37:09,002 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 10:37:09,003 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 10:37:09,003 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 10:37:09,004 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 10:37:09,005 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 10:37:09,006 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 10:37:09,007 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 10:37:09,008 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 10:37:09,010 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 10:37:09,012 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 10:37:09,014 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 10:37:09,015 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 10:37:09,016 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 10:37:09,019 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 10:37:09,019 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 10:37:09,019 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 10:37:09,020 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 10:37:09,021 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 10:37:09,022 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 10:37:09,023 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 10:37:09,024 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 10:37:09,024 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 10:37:09,025 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 10:37:09,025 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 10:37:09,025 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 10:37:09,027 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 10:37:09,027 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 10:37:09,028 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-23 10:37:09,057 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 10:37:09,058 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 10:37:09,058 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 10:37:09,059 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 10:37:09,059 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 10:37:09,060 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 10:37:09,060 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 10:37:09,060 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 10:37:09,060 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 10:37:09,061 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 10:37:09,062 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 10:37:09,062 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 10:37:09,062 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 10:37:09,062 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 10:37:09,062 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 10:37:09,063 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 10:37:09,063 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 10:37:09,063 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 10:37:09,063 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 10:37:09,063 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 10:37:09,064 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 10:37:09,064 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 10:37:09,064 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 10:37:09,064 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 10:37:09,064 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 10:37:09,065 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 10:37:09,065 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 10:37:09,065 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 10:37:09,065 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 10:37:09,065 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 10:37:09,068 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 10:37:09,068 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 10:37:09,068 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 10:37:09,111 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 10:37:09,124 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 10:37:09,129 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 10:37:09,130 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 10:37:09,130 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 10:37:09,131 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-crafted/mapsum5_true-unreach-call.i [2018-11-23 10:37:09,190 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/685cc8a69/55066880ed5d4790a8381dbdd324577d/FLAG4d7fca404 [2018-11-23 10:37:09,628 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 10:37:09,628 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/mapsum5_true-unreach-call.i [2018-11-23 10:37:09,636 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/685cc8a69/55066880ed5d4790a8381dbdd324577d/FLAG4d7fca404 [2018-11-23 10:37:09,972 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/685cc8a69/55066880ed5d4790a8381dbdd324577d [2018-11-23 10:37:09,982 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 10:37:09,984 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 10:37:09,985 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 10:37:09,985 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 10:37:09,989 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 10:37:09,990 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 10:37:09" (1/1) ... [2018-11-23 10:37:09,994 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@70d2abb3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:09, skipping insertion in model container [2018-11-23 10:37:09,994 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 10:37:09" (1/1) ... [2018-11-23 10:37:10,005 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 10:37:10,032 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 10:37:10,251 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 10:37:10,264 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 10:37:10,291 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 10:37:10,309 INFO L195 MainTranslator]: Completed translation [2018-11-23 10:37:10,309 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10 WrapperNode [2018-11-23 10:37:10,309 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 10:37:10,310 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 10:37:10,311 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 10:37:10,311 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 10:37:10,319 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,329 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,335 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 10:37:10,336 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 10:37:10,336 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 10:37:10,336 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 10:37:10,344 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,345 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,348 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,348 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,362 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,369 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,370 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (1/1) ... [2018-11-23 10:37:10,373 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 10:37:10,374 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 10:37:10,374 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 10:37:10,374 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 10:37:10,375 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (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-23 10:37:10,500 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 10:37:10,500 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 10:37:10,500 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 10:37:10,500 INFO L130 BoogieDeclarations]: Found specification of procedure mapsum [2018-11-23 10:37:10,501 INFO L138 BoogieDeclarations]: Found implementation of procedure mapsum [2018-11-23 10:37:10,501 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 10:37:10,501 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 10:37:10,501 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 10:37:10,501 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 10:37:10,501 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 10:37:10,501 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 10:37:10,502 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 10:37:11,112 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 10:37:11,112 INFO L280 CfgBuilder]: Removed 2 assue(true) statements. [2018-11-23 10:37:11,113 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 10:37:11 BoogieIcfgContainer [2018-11-23 10:37:11,113 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 10:37:11,114 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 10:37:11,114 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 10:37:11,118 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 10:37:11,118 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 10:37:09" (1/3) ... [2018-11-23 10:37:11,119 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@cd73aae and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 10:37:11, skipping insertion in model container [2018-11-23 10:37:11,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:37:10" (2/3) ... [2018-11-23 10:37:11,120 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@cd73aae and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 10:37:11, skipping insertion in model container [2018-11-23 10:37:11,120 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 10:37:11" (3/3) ... [2018-11-23 10:37:11,122 INFO L112 eAbstractionObserver]: Analyzing ICFG mapsum5_true-unreach-call.i [2018-11-23 10:37:11,131 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 10:37:11,139 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 10:37:11,158 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 10:37:11,192 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 10:37:11,193 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 10:37:11,193 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 10:37:11,193 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 10:37:11,193 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 10:37:11,193 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 10:37:11,194 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 10:37:11,194 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 10:37:11,194 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 10:37:11,213 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states. [2018-11-23 10:37:11,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 10:37:11,221 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 10:37:11,222 INFO L402 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-23 10:37:11,225 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 10:37:11,231 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 10:37:11,231 INFO L82 PathProgramCache]: Analyzing trace with hash 1931873834, now seen corresponding path program 1 times [2018-11-23 10:37:11,236 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 10:37:11,236 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-23 10:37:11,258 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 10:37:11,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:11,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:11,420 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 10:37:11,808 INFO L256 TraceCheckUtils]: 0: Hoare triple {34#true} call ULTIMATE.init(); {34#true} is VALID [2018-11-23 10:37:11,812 INFO L273 TraceCheckUtils]: 1: Hoare triple {34#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {34#true} is VALID [2018-11-23 10:37:11,813 INFO L273 TraceCheckUtils]: 2: Hoare triple {34#true} assume true; {34#true} is VALID [2018-11-23 10:37:11,814 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {34#true} {34#true} #60#return; {34#true} is VALID [2018-11-23 10:37:11,814 INFO L256 TraceCheckUtils]: 4: Hoare triple {34#true} call #t~ret11 := main(); {34#true} is VALID [2018-11-23 10:37:11,814 INFO L273 TraceCheckUtils]: 5: Hoare triple {34#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {34#true} is VALID [2018-11-23 10:37:11,815 INFO L273 TraceCheckUtils]: 6: Hoare triple {34#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {57#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:11,820 INFO L256 TraceCheckUtils]: 7: Hoare triple {57#(bvsgt ~N~0 (_ bv1 32))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {57#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:11,823 INFO L273 TraceCheckUtils]: 8: Hoare triple {57#(bvsgt ~N~0 (_ bv1 32))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {64#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:11,824 INFO L273 TraceCheckUtils]: 9: Hoare triple {64#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {35#false} is VALID [2018-11-23 10:37:11,825 INFO L273 TraceCheckUtils]: 10: Hoare triple {35#false} #res := ~ret~0[32:0]; {35#false} is VALID [2018-11-23 10:37:11,825 INFO L273 TraceCheckUtils]: 11: Hoare triple {35#false} assume true; {35#false} is VALID [2018-11-23 10:37:11,826 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {35#false} {57#(bvsgt ~N~0 (_ bv1 32))} #64#return; {35#false} is VALID [2018-11-23 10:37:11,826 INFO L273 TraceCheckUtils]: 13: Hoare triple {35#false} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {35#false} is VALID [2018-11-23 10:37:11,826 INFO L256 TraceCheckUtils]: 14: Hoare triple {35#false} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {35#false} is VALID [2018-11-23 10:37:11,827 INFO L273 TraceCheckUtils]: 15: Hoare triple {35#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; {35#false} is VALID [2018-11-23 10:37:11,827 INFO L273 TraceCheckUtils]: 16: Hoare triple {35#false} assume !~bvslt32(~i~0, ~N~0); {35#false} is VALID [2018-11-23 10:37:11,827 INFO L273 TraceCheckUtils]: 17: Hoare triple {35#false} #res := ~ret~0[32:0]; {35#false} is VALID [2018-11-23 10:37:11,828 INFO L273 TraceCheckUtils]: 18: Hoare triple {35#false} assume true; {35#false} is VALID [2018-11-23 10:37:11,828 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {35#false} {35#false} #66#return; {35#false} is VALID [2018-11-23 10:37:11,828 INFO L273 TraceCheckUtils]: 20: Hoare triple {35#false} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {35#false} is VALID [2018-11-23 10:37:11,829 INFO L273 TraceCheckUtils]: 21: Hoare triple {35#false} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {35#false} is VALID [2018-11-23 10:37:11,829 INFO L273 TraceCheckUtils]: 22: Hoare triple {35#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {35#false} is VALID [2018-11-23 10:37:11,829 INFO L256 TraceCheckUtils]: 23: Hoare triple {35#false} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {35#false} is VALID [2018-11-23 10:37:11,830 INFO L273 TraceCheckUtils]: 24: Hoare triple {35#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; {35#false} is VALID [2018-11-23 10:37:11,830 INFO L273 TraceCheckUtils]: 25: Hoare triple {35#false} assume !~bvslt32(~i~0, ~N~0); {35#false} is VALID [2018-11-23 10:37:11,830 INFO L273 TraceCheckUtils]: 26: Hoare triple {35#false} #res := ~ret~0[32:0]; {35#false} is VALID [2018-11-23 10:37:11,831 INFO L273 TraceCheckUtils]: 27: Hoare triple {35#false} assume true; {35#false} is VALID [2018-11-23 10:37:11,831 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {35#false} {35#false} #68#return; {35#false} is VALID [2018-11-23 10:37:11,831 INFO L273 TraceCheckUtils]: 29: Hoare triple {35#false} ~ret5~0 := #t~ret10;havoc #t~ret10; {35#false} is VALID [2018-11-23 10:37:11,832 INFO L273 TraceCheckUtils]: 30: Hoare triple {35#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {35#false} is VALID [2018-11-23 10:37:11,832 INFO L273 TraceCheckUtils]: 31: Hoare triple {35#false} assume !false; {35#false} is VALID [2018-11-23 10:37:11,840 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2018-11-23 10:37:11,840 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [MP cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (2)] Exception during sending of exit command (exit): Broken pipe [2018-11-23 10:37:11,849 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 10:37:11,849 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 10:37:11,855 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 32 [2018-11-23 10:37:11,858 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 10:37:11,862 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 10:37:11,993 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 10:37:11,993 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 10:37:12,003 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 10:37:12,004 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 10:37:12,007 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 4 states. [2018-11-23 10:37:12,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:12,669 INFO L93 Difference]: Finished difference Result 61 states and 77 transitions. [2018-11-23 10:37:12,670 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 10:37:12,670 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 32 [2018-11-23 10:37:12,670 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 10:37:12,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 10:37:12,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 77 transitions. [2018-11-23 10:37:12,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 10:37:12,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 77 transitions. [2018-11-23 10:37:12,701 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 77 transitions. [2018-11-23 10:37:13,042 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 10:37:13,054 INFO L225 Difference]: With dead ends: 61 [2018-11-23 10:37:13,054 INFO L226 Difference]: Without dead ends: 27 [2018-11-23 10:37:13,058 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 28 SyntacticMatches, 1 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 10:37:13,073 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-23 10:37:13,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 26. [2018-11-23 10:37:13,105 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 10:37:13,105 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 26 states. [2018-11-23 10:37:13,106 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 26 states. [2018-11-23 10:37:13,106 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 26 states. [2018-11-23 10:37:13,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:13,112 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 10:37:13,112 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 10:37:13,113 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:13,113 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:13,114 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 27 states. [2018-11-23 10:37:13,114 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 27 states. [2018-11-23 10:37:13,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:13,119 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 10:37:13,119 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 10:37:13,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:13,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:13,120 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 10:37:13,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 10:37:13,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 10:37:13,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 29 transitions. [2018-11-23 10:37:13,126 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 29 transitions. Word has length 32 [2018-11-23 10:37:13,127 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 10:37:13,127 INFO L480 AbstractCegarLoop]: Abstraction has 26 states and 29 transitions. [2018-11-23 10:37:13,127 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 10:37:13,127 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2018-11-23 10:37:13,129 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2018-11-23 10:37:13,129 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 10:37:13,129 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 10:37:13,129 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 10:37:13,130 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 10:37:13,130 INFO L82 PathProgramCache]: Analyzing trace with hash -334011672, now seen corresponding path program 1 times [2018-11-23 10:37:13,131 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 10:37:13,131 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-23 10:37:13,153 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 10:37:13,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:13,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:13,270 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 10:37:13,445 INFO L256 TraceCheckUtils]: 0: Hoare triple {301#true} call ULTIMATE.init(); {301#true} is VALID [2018-11-23 10:37:13,446 INFO L273 TraceCheckUtils]: 1: Hoare triple {301#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {301#true} is VALID [2018-11-23 10:37:13,446 INFO L273 TraceCheckUtils]: 2: Hoare triple {301#true} assume true; {301#true} is VALID [2018-11-23 10:37:13,447 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {301#true} {301#true} #60#return; {301#true} is VALID [2018-11-23 10:37:13,447 INFO L256 TraceCheckUtils]: 4: Hoare triple {301#true} call #t~ret11 := main(); {301#true} is VALID [2018-11-23 10:37:13,448 INFO L273 TraceCheckUtils]: 5: Hoare triple {301#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {301#true} is VALID [2018-11-23 10:37:13,448 INFO L273 TraceCheckUtils]: 6: Hoare triple {301#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {324#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:13,449 INFO L256 TraceCheckUtils]: 7: Hoare triple {324#(bvsgt ~N~0 (_ bv1 32))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {324#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:13,450 INFO L273 TraceCheckUtils]: 8: Hoare triple {324#(bvsgt ~N~0 (_ bv1 32))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {331#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,451 INFO L273 TraceCheckUtils]: 9: Hoare triple {331#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {331#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,468 INFO L273 TraceCheckUtils]: 10: Hoare triple {331#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {338#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,483 INFO L273 TraceCheckUtils]: 11: Hoare triple {338#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {302#false} is VALID [2018-11-23 10:37:13,483 INFO L273 TraceCheckUtils]: 12: Hoare triple {302#false} #res := ~ret~0[32:0]; {302#false} is VALID [2018-11-23 10:37:13,484 INFO L273 TraceCheckUtils]: 13: Hoare triple {302#false} assume true; {302#false} is VALID [2018-11-23 10:37:13,484 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {302#false} {324#(bvsgt ~N~0 (_ bv1 32))} #64#return; {302#false} is VALID [2018-11-23 10:37:13,484 INFO L273 TraceCheckUtils]: 15: Hoare triple {302#false} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {302#false} is VALID [2018-11-23 10:37:13,485 INFO L256 TraceCheckUtils]: 16: Hoare triple {302#false} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {302#false} is VALID [2018-11-23 10:37:13,485 INFO L273 TraceCheckUtils]: 17: Hoare triple {302#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; {302#false} is VALID [2018-11-23 10:37:13,485 INFO L273 TraceCheckUtils]: 18: Hoare triple {302#false} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {302#false} is VALID [2018-11-23 10:37:13,486 INFO L273 TraceCheckUtils]: 19: Hoare triple {302#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {302#false} is VALID [2018-11-23 10:37:13,486 INFO L273 TraceCheckUtils]: 20: Hoare triple {302#false} assume !~bvslt32(~i~0, ~N~0); {302#false} is VALID [2018-11-23 10:37:13,486 INFO L273 TraceCheckUtils]: 21: Hoare triple {302#false} #res := ~ret~0[32:0]; {302#false} is VALID [2018-11-23 10:37:13,487 INFO L273 TraceCheckUtils]: 22: Hoare triple {302#false} assume true; {302#false} is VALID [2018-11-23 10:37:13,487 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {302#false} {302#false} #66#return; {302#false} is VALID [2018-11-23 10:37:13,487 INFO L273 TraceCheckUtils]: 24: Hoare triple {302#false} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {302#false} is VALID [2018-11-23 10:37:13,488 INFO L273 TraceCheckUtils]: 25: Hoare triple {302#false} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {302#false} is VALID [2018-11-23 10:37:13,488 INFO L273 TraceCheckUtils]: 26: Hoare triple {302#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {302#false} is VALID [2018-11-23 10:37:13,488 INFO L256 TraceCheckUtils]: 27: Hoare triple {302#false} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {302#false} is VALID [2018-11-23 10:37:13,489 INFO L273 TraceCheckUtils]: 28: Hoare triple {302#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; {302#false} is VALID [2018-11-23 10:37:13,489 INFO L273 TraceCheckUtils]: 29: Hoare triple {302#false} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {302#false} is VALID [2018-11-23 10:37:13,489 INFO L273 TraceCheckUtils]: 30: Hoare triple {302#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {302#false} is VALID [2018-11-23 10:37:13,490 INFO L273 TraceCheckUtils]: 31: Hoare triple {302#false} assume !~bvslt32(~i~0, ~N~0); {302#false} is VALID [2018-11-23 10:37:13,490 INFO L273 TraceCheckUtils]: 32: Hoare triple {302#false} #res := ~ret~0[32:0]; {302#false} is VALID [2018-11-23 10:37:13,490 INFO L273 TraceCheckUtils]: 33: Hoare triple {302#false} assume true; {302#false} is VALID [2018-11-23 10:37:13,491 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {302#false} {302#false} #68#return; {302#false} is VALID [2018-11-23 10:37:13,491 INFO L273 TraceCheckUtils]: 35: Hoare triple {302#false} ~ret5~0 := #t~ret10;havoc #t~ret10; {302#false} is VALID [2018-11-23 10:37:13,491 INFO L273 TraceCheckUtils]: 36: Hoare triple {302#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {302#false} is VALID [2018-11-23 10:37:13,492 INFO L273 TraceCheckUtils]: 37: Hoare triple {302#false} assume !false; {302#false} is VALID [2018-11-23 10:37:13,495 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 12 proven. 1 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2018-11-23 10:37:13,496 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 10:37:13,894 INFO L273 TraceCheckUtils]: 37: Hoare triple {302#false} assume !false; {302#false} is VALID [2018-11-23 10:37:13,895 INFO L273 TraceCheckUtils]: 36: Hoare triple {302#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {302#false} is VALID [2018-11-23 10:37:13,895 INFO L273 TraceCheckUtils]: 35: Hoare triple {302#false} ~ret5~0 := #t~ret10;havoc #t~ret10; {302#false} is VALID [2018-11-23 10:37:13,895 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {301#true} {302#false} #68#return; {302#false} is VALID [2018-11-23 10:37:13,895 INFO L273 TraceCheckUtils]: 33: Hoare triple {301#true} assume true; {301#true} is VALID [2018-11-23 10:37:13,896 INFO L273 TraceCheckUtils]: 32: Hoare triple {301#true} #res := ~ret~0[32:0]; {301#true} is VALID [2018-11-23 10:37:13,896 INFO L273 TraceCheckUtils]: 31: Hoare triple {301#true} assume !~bvslt32(~i~0, ~N~0); {301#true} is VALID [2018-11-23 10:37:13,896 INFO L273 TraceCheckUtils]: 30: Hoare triple {301#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {301#true} is VALID [2018-11-23 10:37:13,897 INFO L273 TraceCheckUtils]: 29: Hoare triple {301#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {301#true} is VALID [2018-11-23 10:37:13,897 INFO L273 TraceCheckUtils]: 28: Hoare triple {301#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; {301#true} is VALID [2018-11-23 10:37:13,897 INFO L256 TraceCheckUtils]: 27: Hoare triple {302#false} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {301#true} is VALID [2018-11-23 10:37:13,898 INFO L273 TraceCheckUtils]: 26: Hoare triple {302#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {302#false} is VALID [2018-11-23 10:37:13,898 INFO L273 TraceCheckUtils]: 25: Hoare triple {302#false} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {302#false} is VALID [2018-11-23 10:37:13,898 INFO L273 TraceCheckUtils]: 24: Hoare triple {302#false} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {302#false} is VALID [2018-11-23 10:37:13,899 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {301#true} {302#false} #66#return; {302#false} is VALID [2018-11-23 10:37:13,899 INFO L273 TraceCheckUtils]: 22: Hoare triple {301#true} assume true; {301#true} is VALID [2018-11-23 10:37:13,899 INFO L273 TraceCheckUtils]: 21: Hoare triple {301#true} #res := ~ret~0[32:0]; {301#true} is VALID [2018-11-23 10:37:13,900 INFO L273 TraceCheckUtils]: 20: Hoare triple {301#true} assume !~bvslt32(~i~0, ~N~0); {301#true} is VALID [2018-11-23 10:37:13,900 INFO L273 TraceCheckUtils]: 19: Hoare triple {301#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {301#true} is VALID [2018-11-23 10:37:13,900 INFO L273 TraceCheckUtils]: 18: Hoare triple {301#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {301#true} is VALID [2018-11-23 10:37:13,901 INFO L273 TraceCheckUtils]: 17: Hoare triple {301#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; {301#true} is VALID [2018-11-23 10:37:13,901 INFO L256 TraceCheckUtils]: 16: Hoare triple {302#false} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {301#true} is VALID [2018-11-23 10:37:13,901 INFO L273 TraceCheckUtils]: 15: Hoare triple {302#false} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {302#false} is VALID [2018-11-23 10:37:13,902 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {492#(not (bvsgt ~N~0 (_ bv1 32)))} {324#(bvsgt ~N~0 (_ bv1 32))} #64#return; {302#false} is VALID [2018-11-23 10:37:13,906 INFO L273 TraceCheckUtils]: 13: Hoare triple {492#(not (bvsgt ~N~0 (_ bv1 32)))} assume true; {492#(not (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,906 INFO L273 TraceCheckUtils]: 12: Hoare triple {492#(not (bvsgt ~N~0 (_ bv1 32)))} #res := ~ret~0[32:0]; {492#(not (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,908 INFO L273 TraceCheckUtils]: 11: Hoare triple {502#(or (bvslt mapsum_~i~0 ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} assume !~bvslt32(~i~0, ~N~0); {492#(not (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:13,926 INFO L273 TraceCheckUtils]: 10: Hoare triple {506#(or (bvslt (bvadd mapsum_~i~0 (_ bv1 32)) ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {502#(or (bvslt mapsum_~i~0 ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} is VALID [2018-11-23 10:37:13,927 INFO L273 TraceCheckUtils]: 9: Hoare triple {506#(or (bvslt (bvadd mapsum_~i~0 (_ bv1 32)) ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {506#(or (bvslt (bvadd mapsum_~i~0 (_ bv1 32)) ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} is VALID [2018-11-23 10:37:13,927 INFO L273 TraceCheckUtils]: 8: Hoare triple {301#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; {506#(or (bvslt (bvadd mapsum_~i~0 (_ bv1 32)) ~N~0) (not (bvsgt ~N~0 (_ bv1 32))))} is VALID [2018-11-23 10:37:13,928 INFO L256 TraceCheckUtils]: 7: Hoare triple {324#(bvsgt ~N~0 (_ bv1 32))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {301#true} is VALID [2018-11-23 10:37:13,928 INFO L273 TraceCheckUtils]: 6: Hoare triple {301#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {324#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:13,929 INFO L273 TraceCheckUtils]: 5: Hoare triple {301#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {301#true} is VALID [2018-11-23 10:37:13,929 INFO L256 TraceCheckUtils]: 4: Hoare triple {301#true} call #t~ret11 := main(); {301#true} is VALID [2018-11-23 10:37:13,929 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {301#true} {301#true} #60#return; {301#true} is VALID [2018-11-23 10:37:13,929 INFO L273 TraceCheckUtils]: 2: Hoare triple {301#true} assume true; {301#true} is VALID [2018-11-23 10:37:13,930 INFO L273 TraceCheckUtils]: 1: Hoare triple {301#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {301#true} is VALID [2018-11-23 10:37:13,930 INFO L256 TraceCheckUtils]: 0: Hoare triple {301#true} call ULTIMATE.init(); {301#true} is VALID [2018-11-23 10:37:13,934 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 17 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2018-11-23 10:37:13,942 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 10:37:13,943 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 6] total 8 [2018-11-23 10:37:13,944 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 38 [2018-11-23 10:37:13,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 10:37:13,946 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 10:37:14,096 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 10:37:14,096 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 10:37:14,096 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 10:37:14,097 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-23 10:37:14,097 INFO L87 Difference]: Start difference. First operand 26 states and 29 transitions. Second operand 8 states. [2018-11-23 10:37:14,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:14,687 INFO L93 Difference]: Finished difference Result 47 states and 56 transitions. [2018-11-23 10:37:14,687 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 10:37:14,687 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 38 [2018-11-23 10:37:14,688 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 10:37:14,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 10:37:14,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 55 transitions. [2018-11-23 10:37:14,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 10:37:14,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 55 transitions. [2018-11-23 10:37:14,704 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 55 transitions. [2018-11-23 10:37:14,829 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 10:37:14,832 INFO L225 Difference]: With dead ends: 47 [2018-11-23 10:37:14,832 INFO L226 Difference]: Without dead ends: 29 [2018-11-23 10:37:14,834 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 66 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2018-11-23 10:37:14,834 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-23 10:37:14,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2018-11-23 10:37:14,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 10:37:14,865 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 28 states. [2018-11-23 10:37:14,865 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 28 states. [2018-11-23 10:37:14,866 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 28 states. [2018-11-23 10:37:14,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:14,870 INFO L93 Difference]: Finished difference Result 29 states and 32 transitions. [2018-11-23 10:37:14,870 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 32 transitions. [2018-11-23 10:37:14,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:14,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:14,871 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 29 states. [2018-11-23 10:37:14,871 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 29 states. [2018-11-23 10:37:14,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:14,874 INFO L93 Difference]: Finished difference Result 29 states and 32 transitions. [2018-11-23 10:37:14,874 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 32 transitions. [2018-11-23 10:37:14,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:14,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:14,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 10:37:14,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 10:37:14,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 10:37:14,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2018-11-23 10:37:14,879 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 38 [2018-11-23 10:37:14,879 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 10:37:14,879 INFO L480 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2018-11-23 10:37:14,879 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 10:37:14,880 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2018-11-23 10:37:14,882 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 10:37:14,882 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 10:37:14,882 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 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-23 10:37:14,883 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 10:37:14,883 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 10:37:14,883 INFO L82 PathProgramCache]: Analyzing trace with hash -1171787482, now seen corresponding path program 2 times [2018-11-23 10:37:14,884 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 10:37:14,884 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-23 10:37:14,900 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-23 10:37:15,003 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 10:37:15,003 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 10:37:15,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:15,050 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 10:37:15,265 INFO L256 TraceCheckUtils]: 0: Hoare triple {701#true} call ULTIMATE.init(); {701#true} is VALID [2018-11-23 10:37:15,265 INFO L273 TraceCheckUtils]: 1: Hoare triple {701#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {701#true} is VALID [2018-11-23 10:37:15,266 INFO L273 TraceCheckUtils]: 2: Hoare triple {701#true} assume true; {701#true} is VALID [2018-11-23 10:37:15,266 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {701#true} {701#true} #60#return; {701#true} is VALID [2018-11-23 10:37:15,266 INFO L256 TraceCheckUtils]: 4: Hoare triple {701#true} call #t~ret11 := main(); {701#true} is VALID [2018-11-23 10:37:15,266 INFO L273 TraceCheckUtils]: 5: Hoare triple {701#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {701#true} is VALID [2018-11-23 10:37:15,267 INFO L273 TraceCheckUtils]: 6: Hoare triple {701#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {724#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:15,271 INFO L256 TraceCheckUtils]: 7: Hoare triple {724#(bvsgt ~N~0 (_ bv1 32))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {724#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:15,273 INFO L273 TraceCheckUtils]: 8: Hoare triple {724#(bvsgt ~N~0 (_ bv1 32))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {731#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,274 INFO L273 TraceCheckUtils]: 9: Hoare triple {731#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {731#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,278 INFO L273 TraceCheckUtils]: 10: Hoare triple {731#(and (= (_ bv0 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {738#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,279 INFO L273 TraceCheckUtils]: 11: Hoare triple {738#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {738#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,280 INFO L273 TraceCheckUtils]: 12: Hoare triple {738#(and (= (_ bv1 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {745#(and (= (_ bv2 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,295 INFO L273 TraceCheckUtils]: 13: Hoare triple {745#(and (= (_ bv2 32) mapsum_~i~0) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,298 INFO L273 TraceCheckUtils]: 14: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #res := ~ret~0[32:0]; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,298 INFO L273 TraceCheckUtils]: 15: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume true; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,300 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} {724#(bvsgt ~N~0 (_ bv1 32))} #64#return; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,302 INFO L273 TraceCheckUtils]: 17: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,322 INFO L256 TraceCheckUtils]: 18: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,323 INFO L273 TraceCheckUtils]: 19: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,327 INFO L273 TraceCheckUtils]: 20: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,328 INFO L273 TraceCheckUtils]: 21: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,329 INFO L273 TraceCheckUtils]: 22: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,330 INFO L273 TraceCheckUtils]: 23: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,330 INFO L273 TraceCheckUtils]: 24: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,331 INFO L273 TraceCheckUtils]: 25: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #res := ~ret~0[32:0]; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,331 INFO L273 TraceCheckUtils]: 26: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume true; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,332 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #66#return; {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:15,334 INFO L273 TraceCheckUtils]: 28: Hoare triple {749#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {795#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= main_~i~1 (_ bv0 32)))} is VALID [2018-11-23 10:37:15,351 INFO L273 TraceCheckUtils]: 29: Hoare triple {795#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= main_~i~1 (_ bv0 32)))} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {702#false} is VALID [2018-11-23 10:37:15,352 INFO L273 TraceCheckUtils]: 30: Hoare triple {702#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {702#false} is VALID [2018-11-23 10:37:15,352 INFO L256 TraceCheckUtils]: 31: Hoare triple {702#false} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {702#false} is VALID [2018-11-23 10:37:15,352 INFO L273 TraceCheckUtils]: 32: Hoare triple {702#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; {702#false} is VALID [2018-11-23 10:37:15,352 INFO L273 TraceCheckUtils]: 33: Hoare triple {702#false} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {702#false} is VALID [2018-11-23 10:37:15,353 INFO L273 TraceCheckUtils]: 34: Hoare triple {702#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {702#false} is VALID [2018-11-23 10:37:15,353 INFO L273 TraceCheckUtils]: 35: Hoare triple {702#false} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {702#false} is VALID [2018-11-23 10:37:15,353 INFO L273 TraceCheckUtils]: 36: Hoare triple {702#false} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {702#false} is VALID [2018-11-23 10:37:15,353 INFO L273 TraceCheckUtils]: 37: Hoare triple {702#false} assume !~bvslt32(~i~0, ~N~0); {702#false} is VALID [2018-11-23 10:37:15,354 INFO L273 TraceCheckUtils]: 38: Hoare triple {702#false} #res := ~ret~0[32:0]; {702#false} is VALID [2018-11-23 10:37:15,354 INFO L273 TraceCheckUtils]: 39: Hoare triple {702#false} assume true; {702#false} is VALID [2018-11-23 10:37:15,354 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {702#false} {702#false} #68#return; {702#false} is VALID [2018-11-23 10:37:15,354 INFO L273 TraceCheckUtils]: 41: Hoare triple {702#false} ~ret5~0 := #t~ret10;havoc #t~ret10; {702#false} is VALID [2018-11-23 10:37:15,355 INFO L273 TraceCheckUtils]: 42: Hoare triple {702#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {702#false} is VALID [2018-11-23 10:37:15,355 INFO L273 TraceCheckUtils]: 43: Hoare triple {702#false} assume !false; {702#false} is VALID [2018-11-23 10:37:15,361 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 35 proven. 17 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2018-11-23 10:37:15,361 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 10:37:15,799 INFO L273 TraceCheckUtils]: 43: Hoare triple {702#false} assume !false; {702#false} is VALID [2018-11-23 10:37:15,799 INFO L273 TraceCheckUtils]: 42: Hoare triple {702#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {702#false} is VALID [2018-11-23 10:37:15,800 INFO L273 TraceCheckUtils]: 41: Hoare triple {702#false} ~ret5~0 := #t~ret10;havoc #t~ret10; {702#false} is VALID [2018-11-23 10:37:15,800 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {701#true} {702#false} #68#return; {702#false} is VALID [2018-11-23 10:37:15,800 INFO L273 TraceCheckUtils]: 39: Hoare triple {701#true} assume true; {701#true} is VALID [2018-11-23 10:37:15,800 INFO L273 TraceCheckUtils]: 38: Hoare triple {701#true} #res := ~ret~0[32:0]; {701#true} is VALID [2018-11-23 10:37:15,800 INFO L273 TraceCheckUtils]: 37: Hoare triple {701#true} assume !~bvslt32(~i~0, ~N~0); {701#true} is VALID [2018-11-23 10:37:15,801 INFO L273 TraceCheckUtils]: 36: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,801 INFO L273 TraceCheckUtils]: 35: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,801 INFO L273 TraceCheckUtils]: 34: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,802 INFO L273 TraceCheckUtils]: 33: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,802 INFO L273 TraceCheckUtils]: 32: Hoare triple {701#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; {701#true} is VALID [2018-11-23 10:37:15,802 INFO L256 TraceCheckUtils]: 31: Hoare triple {702#false} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {701#true} is VALID [2018-11-23 10:37:15,803 INFO L273 TraceCheckUtils]: 30: Hoare triple {702#false} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {702#false} is VALID [2018-11-23 10:37:15,804 INFO L273 TraceCheckUtils]: 29: Hoare triple {883#(bvslt main_~i~1 (bvadd ~N~0 (_ bv4294967295 32)))} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {702#false} is VALID [2018-11-23 10:37:15,805 INFO L273 TraceCheckUtils]: 28: Hoare triple {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {883#(bvslt main_~i~1 (bvadd ~N~0 (_ bv4294967295 32)))} is VALID [2018-11-23 10:37:15,807 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {701#true} {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} #66#return; {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} is VALID [2018-11-23 10:37:15,807 INFO L273 TraceCheckUtils]: 26: Hoare triple {701#true} assume true; {701#true} is VALID [2018-11-23 10:37:15,807 INFO L273 TraceCheckUtils]: 25: Hoare triple {701#true} #res := ~ret~0[32:0]; {701#true} is VALID [2018-11-23 10:37:15,808 INFO L273 TraceCheckUtils]: 24: Hoare triple {701#true} assume !~bvslt32(~i~0, ~N~0); {701#true} is VALID [2018-11-23 10:37:15,808 INFO L273 TraceCheckUtils]: 23: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,809 INFO L273 TraceCheckUtils]: 22: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,809 INFO L273 TraceCheckUtils]: 21: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,809 INFO L273 TraceCheckUtils]: 20: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,809 INFO L273 TraceCheckUtils]: 19: Hoare triple {701#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; {701#true} is VALID [2018-11-23 10:37:15,810 INFO L256 TraceCheckUtils]: 18: Hoare triple {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {701#true} is VALID [2018-11-23 10:37:15,811 INFO L273 TraceCheckUtils]: 17: Hoare triple {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} is VALID [2018-11-23 10:37:15,813 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {701#true} {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} #64#return; {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} is VALID [2018-11-23 10:37:15,814 INFO L273 TraceCheckUtils]: 15: Hoare triple {701#true} assume true; {701#true} is VALID [2018-11-23 10:37:15,814 INFO L273 TraceCheckUtils]: 14: Hoare triple {701#true} #res := ~ret~0[32:0]; {701#true} is VALID [2018-11-23 10:37:15,814 INFO L273 TraceCheckUtils]: 13: Hoare triple {701#true} assume !~bvslt32(~i~0, ~N~0); {701#true} is VALID [2018-11-23 10:37:15,814 INFO L273 TraceCheckUtils]: 12: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,815 INFO L273 TraceCheckUtils]: 11: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,815 INFO L273 TraceCheckUtils]: 10: Hoare triple {701#true} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {701#true} is VALID [2018-11-23 10:37:15,815 INFO L273 TraceCheckUtils]: 9: Hoare triple {701#true} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {701#true} is VALID [2018-11-23 10:37:15,815 INFO L273 TraceCheckUtils]: 8: Hoare triple {701#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; {701#true} is VALID [2018-11-23 10:37:15,816 INFO L256 TraceCheckUtils]: 7: Hoare triple {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {701#true} is VALID [2018-11-23 10:37:15,817 INFO L273 TraceCheckUtils]: 6: Hoare triple {701#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {887#(bvslt (_ bv0 32) (bvadd ~N~0 (_ bv4294967295 32)))} is VALID [2018-11-23 10:37:15,818 INFO L273 TraceCheckUtils]: 5: Hoare triple {701#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {701#true} is VALID [2018-11-23 10:37:15,818 INFO L256 TraceCheckUtils]: 4: Hoare triple {701#true} call #t~ret11 := main(); {701#true} is VALID [2018-11-23 10:37:15,818 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {701#true} {701#true} #60#return; {701#true} is VALID [2018-11-23 10:37:15,818 INFO L273 TraceCheckUtils]: 2: Hoare triple {701#true} assume true; {701#true} is VALID [2018-11-23 10:37:15,819 INFO L273 TraceCheckUtils]: 1: Hoare triple {701#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {701#true} is VALID [2018-11-23 10:37:15,819 INFO L256 TraceCheckUtils]: 0: Hoare triple {701#true} call ULTIMATE.init(); {701#true} is VALID [2018-11-23 10:37:15,823 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 63 trivial. 0 not checked. [2018-11-23 10:37:15,826 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 10:37:15,827 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [8] total 10 [2018-11-23 10:37:15,827 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 44 [2018-11-23 10:37:15,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 10:37:15,828 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-23 10:37:15,949 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-23 10:37:15,949 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 10:37:15,949 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 10:37:15,950 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2018-11-23 10:37:15,950 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand 10 states. [2018-11-23 10:37:17,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:17,221 INFO L93 Difference]: Finished difference Result 72 states and 86 transitions. [2018-11-23 10:37:17,221 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 10:37:17,222 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 44 [2018-11-23 10:37:17,222 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 10:37:17,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 10:37:17,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2018-11-23 10:37:17,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 10:37:17,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2018-11-23 10:37:17,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2018-11-23 10:37:17,399 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 10:37:17,402 INFO L225 Difference]: With dead ends: 72 [2018-11-23 10:37:17,402 INFO L226 Difference]: Without dead ends: 54 [2018-11-23 10:37:17,403 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 78 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=62, Invalid=148, Unknown=0, NotChecked=0, Total=210 [2018-11-23 10:37:17,403 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-11-23 10:37:17,434 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 48. [2018-11-23 10:37:17,434 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 10:37:17,434 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand 48 states. [2018-11-23 10:37:17,434 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 48 states. [2018-11-23 10:37:17,434 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 48 states. [2018-11-23 10:37:17,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:17,439 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2018-11-23 10:37:17,440 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2018-11-23 10:37:17,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:17,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:17,441 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand 54 states. [2018-11-23 10:37:17,441 INFO L87 Difference]: Start difference. First operand 48 states. Second operand 54 states. [2018-11-23 10:37:17,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 10:37:17,446 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2018-11-23 10:37:17,447 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2018-11-23 10:37:17,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 10:37:17,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 10:37:17,448 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 10:37:17,448 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 10:37:17,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 10:37:17,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 57 transitions. [2018-11-23 10:37:17,453 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 57 transitions. Word has length 44 [2018-11-23 10:37:17,453 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 10:37:17,453 INFO L480 AbstractCegarLoop]: Abstraction has 48 states and 57 transitions. [2018-11-23 10:37:17,453 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 10:37:17,454 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 57 transitions. [2018-11-23 10:37:17,456 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2018-11-23 10:37:17,456 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 10:37:17,456 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 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-23 10:37:17,456 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 10:37:17,456 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 10:37:17,457 INFO L82 PathProgramCache]: Analyzing trace with hash -1051431772, now seen corresponding path program 1 times [2018-11-23 10:37:17,457 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 10:37:17,457 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-23 10:37:17,479 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 10:37:17,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:18,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 10:37:18,828 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 10:37:19,679 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 40 [2018-11-23 10:37:19,738 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:37:19,748 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 44 [2018-11-23 10:37:19,773 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:37:19,780 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 37 [2018-11-23 10:37:19,785 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 10:37:19,806 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:19,814 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:19,840 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:19,840 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:61, output treesize:35 [2018-11-23 10:37:21,131 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 73 treesize of output 58 [2018-11-23 10:37:21,147 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:37:21,158 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 60 [2018-11-23 10:37:21,161 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 10:37:21,184 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:21,227 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:21,227 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:83, output treesize:64 [2018-11-23 10:37:21,293 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 10:37:21,294 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_17|]. (let ((.cse0 (select |v_#memory_int_17| |main_~#x~0.base|))) (let ((.cse1 (select .cse0 (bvadd |main_~#x~0.offset| (_ bv4 32)))) (.cse3 (select .cse0 |main_~#x~0.offset|))) (let ((.cse2 ((_ extract 31 0) (bvadd ((_ sign_extend 32) .cse1) ((_ sign_extend 32) .cse3) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))) (and (= (store |v_#memory_int_17| |main_~#x~0.base| (store .cse0 |main_~#x~0.offset| .cse1)) |#memory_int|) (= main_~ret~1 .cse2) (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= .cse3 main_~temp~0) (bvsgt ~N~0 (_ bv1 32)) (= main_~ret2~0 .cse2))))) [2018-11-23 10:37:21,294 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse2 (select |#memory_int| |main_~#x~0.base|))) (let ((.cse1 (select .cse2 (bvadd |main_~#x~0.offset| (_ bv4 32))))) (let ((.cse0 ((_ extract 31 0) (bvadd ((_ sign_extend 32) .cse1) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))))) (and (= .cse0 main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= .cse1 (select .cse2 |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= .cse0 main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))))) [2018-11-23 10:37:21,598 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 59 [2018-11-23 10:37:21,609 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:37:21,612 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:37:21,613 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:21,622 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 59 treesize of output 73 [2018-11-23 10:37:21,627 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 10:37:21,667 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:21,719 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:21,719 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:80, output treesize:65 [2018-11-23 10:37:21,748 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 10:37:21,749 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_18|, ~N~0, main_~temp~0]. (let ((.cse1 (select |v_#memory_int_18| |main_~#x~0.base|))) (let ((.cse0 (select .cse1 (bvadd |main_~#x~0.offset| (_ bv4 32))))) (let ((.cse2 ((_ extract 31 0) (bvadd ((_ sign_extend 32) .cse0) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))))) (and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= .cse0 (select .cse1 |main_~#x~0.offset|)) (= (store |v_#memory_int_18| |main_~#x~0.base| (store .cse1 (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)) main_~temp~0)) |#memory_int|) (= .cse2 main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)) (= .cse2 main_~ret~1))))) [2018-11-23 10:37:21,749 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ [~N~0]. (let ((.cse0 ((_ extract 31 0) (let ((.cse1 (select |#memory_int| |main_~#x~0.base|))) (bvadd ((_ sign_extend 32) (select .cse1 |main_~#x~0.offset|)) ((_ sign_extend 32) (select .cse1 (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))))) (and (= .cse0 main_~ret2~0) (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= .cse0 main_~ret~1))) [2018-11-23 10:37:22,627 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 75 treesize of output 63 [2018-11-23 10:37:22,638 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:22,649 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 63 treesize of output 58 [2018-11-23 10:37:22,653 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:22,678 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:22,707 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:22,708 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:82, output treesize:43 [2018-11-23 10:37:22,746 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 10:37:22,747 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#x~0.base|, ~N~0]. (let ((.cse3 (select |#memory_int| |main_~#x~0.base|))) (let ((.cse0 ((_ sign_extend 32) (select .cse3 (_ bv0 32)))) (.cse1 ((_ sign_extend 32) (_ bv1 32))) (.cse2 (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (let ((.cse4 ((_ extract 31 0) (bvadd .cse0 .cse1 .cse2 ((_ sign_extend 32) (select .cse3 (bvadd (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))))))) (and (= |main_#t~ret10| ((_ extract 31 0) (bvadd .cse0 .cse1 .cse2 ((_ sign_extend 32) (select .cse3 (_ bv4 32)))))) (not (bvslt (_ bv2 32) ~N~0)) (= main_~ret~1 .cse4) (= main_~ret2~0 .cse4) (bvsgt ~N~0 (_ bv1 32)))))) [2018-11-23 10:37:22,747 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ [v_arrayElimCell_9, v_arrayElimCell_8]. (let ((.cse0 ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))) (and (= .cse0 main_~ret2~0) (= .cse0 main_~ret~1) (= .cse0 |main_#t~ret10|))) [2018-11-23 10:37:23,222 INFO L256 TraceCheckUtils]: 0: Hoare triple {1262#true} call ULTIMATE.init(); {1262#true} is VALID [2018-11-23 10:37:23,223 INFO L273 TraceCheckUtils]: 1: Hoare triple {1262#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];~N~0 := 0bv32; {1262#true} is VALID [2018-11-23 10:37:23,223 INFO L273 TraceCheckUtils]: 2: Hoare triple {1262#true} assume true; {1262#true} is VALID [2018-11-23 10:37:23,223 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1262#true} {1262#true} #60#return; {1262#true} is VALID [2018-11-23 10:37:23,223 INFO L256 TraceCheckUtils]: 4: Hoare triple {1262#true} call #t~ret11 := main(); {1262#true} is VALID [2018-11-23 10:37:23,224 INFO L273 TraceCheckUtils]: 5: Hoare triple {1262#true} ~N~0 := #t~nondet2;havoc #t~nondet2; {1262#true} is VALID [2018-11-23 10:37:23,230 INFO L273 TraceCheckUtils]: 6: Hoare triple {1262#true} assume ~bvsgt32(~N~0, 1bv32);call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(~bvmul32(4bv32, ~N~0));havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0; {1285#(and (= |main_~#x~0.offset| (_ bv0 32)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,234 INFO L256 TraceCheckUtils]: 7: Hoare triple {1285#(and (= |main_~#x~0.offset| (_ bv0 32)) (bvsgt ~N~0 (_ bv1 32)))} call #t~ret3 := mapsum(~#x~0.base, ~#x~0.offset); {1289#(bvsgt ~N~0 (_ bv1 32))} is VALID [2018-11-23 10:37:23,236 INFO L273 TraceCheckUtils]: 8: Hoare triple {1289#(bvsgt ~N~0 (_ bv1 32))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1293#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,238 INFO L273 TraceCheckUtils]: 9: Hoare triple {1293#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1297#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,239 INFO L273 TraceCheckUtils]: 10: Hoare triple {1297#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1301#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} is VALID [2018-11-23 10:37:23,481 INFO L273 TraceCheckUtils]: 11: Hoare triple {1301#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1305#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) |mapsum_#in~x.offset|))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,482 INFO L273 TraceCheckUtils]: 12: Hoare triple {1305#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) |mapsum_#in~x.offset|))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1309#(and (= (_ bv2 32) mapsum_~i~0) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,483 INFO L273 TraceCheckUtils]: 13: Hoare triple {1309#(and (= (_ bv2 32) mapsum_~i~0) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,530 INFO L273 TraceCheckUtils]: 14: Hoare triple {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #res := ~ret~0[32:0]; {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,531 INFO L273 TraceCheckUtils]: 15: Hoare triple {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume true; {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,539 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} {1285#(and (= |main_~#x~0.offset| (_ bv0 32)) (bvsgt ~N~0 (_ bv1 32)))} #64#return; {1324#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret3|) (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,582 INFO L273 TraceCheckUtils]: 17: Hoare triple {1324#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret3|) (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} ~ret~1 := #t~ret3;havoc #t~ret3;call #t~mem4 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem4;havoc #t~mem4;call #t~mem5 := read~intINTTYPE4(~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32);call write~intINTTYPE4(#t~mem5, ~#x~0.base, ~#x~0.offset, 4bv32);havoc #t~mem5;call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(4bv32, ~#x~0.offset), 4bv32); {1328#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))} is VALID [2018-11-23 10:37:23,584 INFO L256 TraceCheckUtils]: 18: Hoare triple {1328#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))} call #t~ret6 := mapsum(~#x~0.base, ~#x~0.offset); {1332#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,585 INFO L273 TraceCheckUtils]: 19: Hoare triple {1332#(and (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := ~sign_extendFrom32To64(0bv32);~i~0 := 0bv32; {1336#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,586 INFO L273 TraceCheckUtils]: 20: Hoare triple {1336#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1340#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,588 INFO L273 TraceCheckUtils]: 21: Hoare triple {1340#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1344#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} is VALID [2018-11-23 10:37:23,773 INFO L273 TraceCheckUtils]: 22: Hoare triple {1344#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (not (bvslt (_ bv2 32) ~N~0)) (= mapsum_~x.base |mapsum_#in~x.base|) (bvsgt ~N~0 (_ bv1 32)) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,774 INFO L273 TraceCheckUtils]: 23: Hoare triple {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,774 INFO L273 TraceCheckUtils]: 24: Hoare triple {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~0, ~N~0); {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,838 INFO L273 TraceCheckUtils]: 25: Hoare triple {1313#(and (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} #res := ~ret~0[32:0]; {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,839 INFO L273 TraceCheckUtils]: 26: Hoare triple {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} assume true; {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:23,929 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {1317#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)))} {1328#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))} #66#return; {1363#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret6|) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))} is VALID [2018-11-23 10:37:24,007 INFO L273 TraceCheckUtils]: 28: Hoare triple {1363#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret6|) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))} ~ret2~0 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~intINTTYPE4(~#x~0.base, ~#x~0.offset, 4bv32);~temp~0 := #t~mem7;havoc #t~mem7;~i~1 := 0bv32; {1367#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= main_~ret2~0 ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))) (bvsgt ~N~0 (_ bv1 32)) (= main_~i~1 (_ bv0 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1) (= main_~temp~0 (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)))} is VALID [2018-11-23 10:37:24,295 INFO L273 TraceCheckUtils]: 29: Hoare triple {1367#(and (= |main_~#x~0.offset| (_ bv0 32)) (not (bvslt (_ bv2 32) ~N~0)) (= main_~ret2~0 ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))) (bvsgt ~N~0 (_ bv1 32)) (= main_~i~1 (_ bv0 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1) (= main_~temp~0 (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)))} assume !!~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32));call #t~mem9 := read~intINTTYPE4(~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, ~i~1))), 4bv32);call write~intINTTYPE4(#t~mem9, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~i~1)), 4bv32);havoc #t~mem9; {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:24,298 INFO L273 TraceCheckUtils]: 30: Hoare triple {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} #t~post8 := ~i~1;~i~1 := ~bvadd32(1bv32, #t~post8);havoc #t~post8; {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:24,300 INFO L273 TraceCheckUtils]: 31: Hoare triple {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} assume !~bvslt32(~i~1, ~bvsub32(~N~0, 1bv32)); {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} is VALID [2018-11-23 10:37:24,388 INFO L273 TraceCheckUtils]: 32: Hoare triple {1371#(and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret~1) (= |main_~#x~0.offset| (_ bv0 32)) (= (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32))) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) (not (bvslt (_ bv2 32) ~N~0)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))) ((_ sign_extend 32) main_~temp~0))) main_~ret2~0) (bvsgt ~N~0 (_ bv1 32)))} call write~intINTTYPE4(~temp~0, ~#x~0.base, ~bvadd32(~#x~0.offset, ~bvmul32(4bv32, ~bvsub32(~N~0, 1bv32))), 4bv32); {1381#(and (exists ((~N~0 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))) (= |main_~#x~0.offset| (_ bv0 32)))} is VALID [2018-11-23 10:37:24,388 INFO L256 TraceCheckUtils]: 33: Hoare triple {1381#(and (exists ((~N~0 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))) (= |main_~#x~0.offset| (_ bv0 32)))} call #t~ret10 := mapsum(~#x~0.base, ~#x~0.offset); {1262#true} is VALID [2018-11-23 10:37:24,389 INFO L273 TraceCheckUtils]: 34: Hoare triple {1262#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; {1388#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|))} is VALID [2018-11-23 10:37:24,390 INFO L273 TraceCheckUtils]: 35: Hoare triple {1388#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 ((_ sign_extend 32) (_ bv0 32))) (= mapsum_~x.base |mapsum_#in~x.base|))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1392#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|))} is VALID [2018-11-23 10:37:24,392 INFO L273 TraceCheckUtils]: 36: Hoare triple {1392#(and (= (_ bv0 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) (bvadd (bvmul (_ bv4 32) mapsum_~i~0) mapsum_~x.offset))) ((_ sign_extend 32) mapsum_~i~0) ((_ sign_extend 32) (_ bv0 32)))) (= mapsum_~x.base |mapsum_#in~x.base|))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1396#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~x.base |mapsum_#in~x.base|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} is VALID [2018-11-23 10:37:24,596 INFO L273 TraceCheckUtils]: 37: Hoare triple {1396#(and (= (_ bv1 32) mapsum_~i~0) (= mapsum_~x.offset |mapsum_#in~x.offset|) (= mapsum_~x.base |mapsum_#in~x.base|) (= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| mapsum_~x.base) mapsum_~x.offset)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))))} assume !!~bvslt32(~i~0, ~N~0);call #t~mem1 := read~intINTTYPE4(~x.base, ~bvadd32(~x.offset, ~bvmul32(4bv32, ~i~0)), 4bv32);~ret~0 := ~bvadd64(~bvadd64(~ret~0, ~sign_extendFrom32To64(~i~0)), ~sign_extendFrom32To64(#t~mem1));havoc #t~mem1; {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} is VALID [2018-11-23 10:37:24,597 INFO L273 TraceCheckUtils]: 38: Hoare triple {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} #t~post0 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post0);havoc #t~post0; {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} is VALID [2018-11-23 10:37:24,598 INFO L273 TraceCheckUtils]: 39: Hoare triple {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} assume !~bvslt32(~i~0, ~N~0); {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} is VALID [2018-11-23 10:37:24,645 INFO L273 TraceCheckUtils]: 40: Hoare triple {1400#(= mapsum_~ret~0 (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))))} #res := ~ret~0[32:0]; {1410#(= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|)} is VALID [2018-11-23 10:37:24,646 INFO L273 TraceCheckUtils]: 41: Hoare triple {1410#(= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|)} assume true; {1410#(= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|)} is VALID [2018-11-23 10:37:24,701 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {1410#(= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) |mapsum_#in~x.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |mapsum_#in~x.base|) (bvadd |mapsum_#in~x.offset| (_ bv4 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |mapsum_#res|)} {1381#(and (exists ((~N~0 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (not (bvslt (_ bv2 32) ~N~0)) (bvsgt ~N~0 (_ bv1 32)) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) |main_~#x~0.offset|)) ((_ sign_extend 32) (select (select |#memory_int| |main_~#x~0.base|) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)))) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1))) (= |main_~#x~0.offset| (_ bv0 32)))} #68#return; {1417#(exists ((v_arrayElimCell_8 (_ BitVec 32)) (v_arrayElimCell_9 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret10|)))} is VALID [2018-11-23 10:37:24,752 INFO L273 TraceCheckUtils]: 43: Hoare triple {1417#(exists ((v_arrayElimCell_8 (_ BitVec 32)) (v_arrayElimCell_9 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) |main_#t~ret10|)))} ~ret5~0 := #t~ret10;havoc #t~ret10; {1421#(exists ((v_arrayElimCell_8 (_ BitVec 32)) (v_arrayElimCell_9 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret5~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1)))} is VALID [2018-11-23 10:37:25,103 INFO L273 TraceCheckUtils]: 44: Hoare triple {1421#(exists ((v_arrayElimCell_8 (_ BitVec 32)) (v_arrayElimCell_9 (_ BitVec 32))) (and (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret2~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret5~0) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) v_arrayElimCell_9) ((_ sign_extend 32) v_arrayElimCell_8) ((_ sign_extend 32) (_ bv1 32)) (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32))))) main_~ret~1)))} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1263#false} is VALID [2018-11-23 10:37:25,103 INFO L273 TraceCheckUtils]: 45: Hoare triple {1263#false} assume !false; {1263#false} is VALID [2018-11-23 10:37:25,115 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 4 proven. 57 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-23 10:37:25,115 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 10:37:37,762 WARN L180 SmtUtils]: Spent 107.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 10:37:40,581 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification that was a NOOP. DAG size: 34 [2018-11-23 10:37:44,024 WARN L180 SmtUtils]: Spent 936.00 ms on a formula simplification. DAG size of input: 36 DAG size of output: 35 [2018-11-23 10:37:44,748 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification that was a NOOP. DAG size: 36 [2018-11-23 10:37:45,896 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification that was a NOOP. DAG size: 46 [2018-11-23 10:37:47,184 WARN L180 SmtUtils]: Spent 230.00 ms on a formula simplification that was a NOOP. DAG size: 47 [2018-11-23 10:37:48,350 WARN L180 SmtUtils]: Spent 118.00 ms on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 10:37:51,172 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification that was a NOOP. DAG size: 45 [2018-11-23 10:37:51,365 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 10:37:51,472 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 10:37:51,959 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 159 treesize of output 127 [2018-11-23 10:37:51,968 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:51,985 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:51,986 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 123 treesize of output 104 [2018-11-23 10:37:52,675 WARN L180 SmtUtils]: Spent 672.00 ms on a formula simplification. DAG size of input: 35 DAG size of output: 34 [2018-11-23 10:37:52,734 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:52,751 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:52,756 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 82 treesize of output 82 [2018-11-23 10:37:52,879 INFO L303 Elim1Store]: Index analysis took 113 ms [2018-11-23 10:37:52,880 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 73 treesize of output 70 [2018-11-23 10:37:53,814 WARN L180 SmtUtils]: Spent 346.00 ms on a formula simplification. DAG size of input: 54 DAG size of output: 34 [2018-11-23 10:37:53,825 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:37:53,826 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 36 [2018-11-23 10:37:53,859 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 10:37:53,884 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:53,897 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:37:53,912 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:53,921 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:53,947 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 10:37:53,948 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:225, output treesize:14 [2018-11-23 10:37:53,999 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 10:37:54,000 WARN L384 uantifierElimination]: Input elimination task: ∀ [|#memory_int|, v_mapsum_~x.base_32, v_prenex_2, v_prenex_1]. (let ((.cse0 (bvslt (_ bv2 32) ~N~0)) (.cse4 (bvmul (_ bv2 64) ((_ sign_extend 32) (_ bv0 32)))) (.cse3 ((_ sign_extend 32) (_ bv1 32))) (.cse6 (bvadd |main_~#x~0.offset| (_ bv4 32)))) (and (or .cse0 (let ((.cse5 (select |#memory_int| v_mapsum_~x.base_32))) (let ((.cse7 (select .cse5 |main_~#x~0.offset|))) (let ((.cse1 (select .cse5 .cse6)) (.cse2 ((_ sign_extend 32) .cse7))) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) .cse1) .cse2 .cse3 .cse4)) ((_ extract 31 0) (bvadd ((_ sign_extend 32) (select (store (store .cse5 |main_~#x~0.offset| .cse1) .cse6 .cse7) |main_~#x~0.offset|)) .cse2 .cse4 .cse3))))))) (or .cse0 (let ((.cse12 (select v_prenex_2 v_prenex_1))) (let ((.cse8 (select .cse12 .cse6)) (.cse9 (select .cse12 |main_~#x~0.offset|))) (= ((_ extract 31 0) (bvadd ((_ sign_extend 32) .cse8) ((_ sign_extend 32) .cse9) .cse3 .cse4)) ((_ extract 31 0) (let ((.cse10 (let ((.cse11 (store (store .cse12 |main_~#x~0.offset| .cse8) .cse6 .cse9))) (store (store .cse11 |main_~#x~0.offset| .cse9) (bvadd |main_~#x~0.offset| (bvmul (_ bv4 32) ~N~0) (_ bv4294967292 32)) (select .cse11 |main_~#x~0.offset|))))) (bvadd ((_ sign_extend 32) (select .cse10 |main_~#x~0.offset|)) ((_ sign_extend 32) (select .cse10 .cse6)) .cse4 .cse3))))))))) [2018-11-23 10:37:54,000 WARN L385 uantifierElimination]: ElimStorePlain result: ∀ []. (let ((.cse0 (bvmul (_ bv4 32) ~N~0))) (or (bvslt (_ bv2 32) ~N~0) (= (_ bv4 32) .cse0) (= (_ bv8 32) .cse0))) [2018-11-23 10:37:57,080 WARN L180 SmtUtils]: Spent 328.00 ms on a formula simplification that was a NOOP. DAG size: 47 [2018-11-23 10:37:59,093 WARN L180 SmtUtils]: Spent 376.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 10:38:00,087 WARN L180 SmtUtils]: Spent 222.00 ms on a formula simplification that was a NOOP. DAG size: 50 [2018-11-23 10:38:01,221 WARN L180 SmtUtils]: Spent 238.00 ms on a formula simplification that was a NOOP. DAG size: 51 [2018-11-23 10:38:02,297 WARN L180 SmtUtils]: Spent 139.00 ms on a formula simplification that was a NOOP. DAG size: 60 [2018-11-23 10:38:03,611 WARN L180 SmtUtils]: Spent 214.00 ms on a formula simplification that was a NOOP. DAG size: 61 [2018-11-23 10:38:03,721 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 173 treesize of output 149 [2018-11-23 10:38:03,753 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:03,770 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 144 treesize of output 143 [2018-11-23 10:38:03,777 INFO L267 ElimStorePlain]: Start of recursive call 3: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:03,999 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:04,121 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:04,174 INFO L303 Elim1Store]: Index analysis took 195 ms [2018-11-23 10:38:04,579 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 8 case distinctions, treesize of input 141 treesize of output 180 [2018-11-23 10:38:09,104 WARN L180 SmtUtils]: Spent 4.30 s on a formula simplification. DAG size of input: 230 DAG size of output: 209 [2018-11-23 10:38:09,149 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:38:09,152 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:09,154 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 131 treesize of output 124 [2018-11-23 10:38:09,290 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 105 treesize of output 104 [2018-11-23 10:38:13,579 WARN L180 SmtUtils]: Spent 2.20 s on a formula simplification. DAG size of input: 64 DAG size of output: 37 [2018-11-23 10:38:13,654 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:38:13,657 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 57 treesize of output 62 [2018-11-23 10:38:13,665 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:13,688 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:13,731 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:17,666 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:17,667 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:17,719 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:17,770 INFO L303 Elim1Store]: Index analysis took 117 ms [2018-11-23 10:38:17,966 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 116 treesize of output 166 [2018-11-23 10:38:18,277 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:18,277 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:18,303 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:18,465 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 143 treesize of output 137 [2018-11-23 10:38:19,512 WARN L180 SmtUtils]: Spent 530.00 ms on a formula simplification. DAG size of input: 73 DAG size of output: 66 [2018-11-23 10:38:19,844 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:19,859 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:19,879 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:19,924 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 79 treesize of output 98 [2018-11-23 10:38:19,941 INFO L267 ElimStorePlain]: Start of recursive call 10: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:20,168 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,168 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,181 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,234 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 74 treesize of output 97 [2018-11-23 10:38:20,245 INFO L267 ElimStorePlain]: Start of recursive call 11: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:20,450 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,451 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,460 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,514 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 114 treesize of output 116 [2018-11-23 10:38:20,525 INFO L267 ElimStorePlain]: Start of recursive call 12: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:20,680 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,680 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,687 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,732 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 119 treesize of output 91 [2018-11-23 10:38:20,746 INFO L267 ElimStorePlain]: Start of recursive call 13: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:20,863 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,877 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,908 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:20,951 INFO L303 Elim1Store]: Index analysis took 118 ms [2018-11-23 10:38:20,987 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 70 treesize of output 91 [2018-11-23 10:38:20,998 INFO L267 ElimStorePlain]: Start of recursive call 14: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:21,092 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,093 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,146 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,211 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 116 treesize of output 116 [2018-11-23 10:38:21,222 INFO L267 ElimStorePlain]: Start of recursive call 15: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:21,284 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,285 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,311 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:21,369 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 156 treesize of output 109 [2018-11-23 10:38:21,385 INFO L267 ElimStorePlain]: Start of recursive call 16: 3 dim-0 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2018-11-23 10:38:24,041 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: 21 dim-0 vars, and 14 xjuncts. [2018-11-23 10:38:28,181 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:28,183 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:28,184 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:28,218 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 95 treesize of output 117 [2018-11-23 10:38:30,592 WARN L180 SmtUtils]: Spent 415.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 68 [2018-11-23 10:38:30,620 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,622 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,623 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,640 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 131 treesize of output 95 [2018-11-23 10:38:30,644 INFO L267 ElimStorePlain]: Start of recursive call 18: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:30,662 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,664 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,665 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,683 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 73 treesize of output 83 [2018-11-23 10:38:30,685 INFO L267 ElimStorePlain]: Start of recursive call 19: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:30,695 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,697 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,697 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,712 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 84 [2018-11-23 10:38:30,716 INFO L267 ElimStorePlain]: Start of recursive call 20: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:30,730 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,732 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,733 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,751 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 101 treesize of output 102 [2018-11-23 10:38:30,771 INFO L267 ElimStorePlain]: Start of recursive call 21: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:30,850 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,863 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,877 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:30,955 INFO L303 Elim1Store]: Index analysis took 136 ms [2018-11-23 10:38:30,957 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 100 treesize of output 77 [2018-11-23 10:38:30,981 INFO L267 ElimStorePlain]: Start of recursive call 22: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:31,051 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,061 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,070 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,150 INFO L303 Elim1Store]: Index analysis took 129 ms [2018-11-23 10:38:31,152 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 103 treesize of output 102 [2018-11-23 10:38:31,175 INFO L267 ElimStorePlain]: Start of recursive call 23: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:31,189 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,191 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,191 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:31,201 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 65 treesize of output 68 [2018-11-23 10:38:31,205 INFO L267 ElimStorePlain]: Start of recursive call 24: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:35,572 INFO L267 ElimStorePlain]: Start of recursive call 17: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 14 dim-0 vars, and 7 xjuncts. [2018-11-23 10:38:42,852 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:42,853 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:42,853 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:42,853 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:42,908 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 116 treesize of output 136 [2018-11-23 10:38:44,154 WARN L180 SmtUtils]: Spent 520.00 ms on a formula simplification. DAG size of input: 76 DAG size of output: 69 [2018-11-23 10:38:44,292 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,292 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,292 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,293 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,322 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 110 treesize of output 111 [2018-11-23 10:38:44,332 INFO L267 ElimStorePlain]: Start of recursive call 26: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:44,433 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,434 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,434 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,435 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,465 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 107 treesize of output 86 [2018-11-23 10:38:44,470 INFO L267 ElimStorePlain]: Start of recursive call 27: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:44,532 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,533 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,533 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,534 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,561 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 74 treesize of output 92 [2018-11-23 10:38:44,565 INFO L267 ElimStorePlain]: Start of recursive call 28: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:44,717 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,717 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,719 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,719 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,745 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 66 treesize of output 86 [2018-11-23 10:38:44,769 INFO L267 ElimStorePlain]: Start of recursive call 29: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:44,852 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,857 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,860 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,862 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,890 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 71 treesize of output 93 [2018-11-23 10:38:44,898 INFO L267 ElimStorePlain]: Start of recursive call 30: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:44,980 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,982 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,984 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:44,984 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:45,014 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 108 treesize of output 111 [2018-11-23 10:38:45,019 INFO L267 ElimStorePlain]: Start of recursive call 31: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:45,103 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:45,106 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:45,110 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:45,112 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:38:45,144 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 144 treesize of output 104 [2018-11-23 10:38:45,148 INFO L267 ElimStorePlain]: Start of recursive call 32: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 10:38:46,588 INFO L267 ElimStorePlain]: Start of recursive call 25: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 20 dim-0 vars, and 7 xjuncts. [2018-11-23 10:39:02,987 INFO L267 ElimStorePlain]: Start of recursive call 8: 3 dim-1 vars, End of recursive call: 55 dim-0 vars, and 28 xjuncts. [2018-11-23 10:39:38,650 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:38,681 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:38,863 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 135 treesize of output 138 [2018-11-23 10:39:38,903 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:38,931 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:38,934 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 146 treesize of output 118 [2018-11-23 10:39:41,716 WARN L180 SmtUtils]: Spent 749.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 44 [2018-11-23 10:39:41,733 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:41,752 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:41,754 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 88 treesize of output 56 [2018-11-23 10:39:41,760 INFO L267 ElimStorePlain]: Start of recursive call 35: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:39:41,794 INFO L267 ElimStorePlain]: Start of recursive call 34: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:39:42,058 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:42,091 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:42,104 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:42,177 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 126 treesize of output 148 [2018-11-23 10:39:52,942 WARN L180 SmtUtils]: Spent 4.06 s on a formula simplification. DAG size of input: 192 DAG size of output: 133 [2018-11-23 10:39:52,980 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:52,990 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:52,994 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:52,996 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 102 treesize of output 74 [2018-11-23 10:39:53,004 INFO L267 ElimStorePlain]: Start of recursive call 37: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:39:56,396 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,397 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,397 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,398 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,401 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 119 treesize of output 107 [2018-11-23 10:39:56,406 INFO L267 ElimStorePlain]: Start of recursive call 38: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:39:56,549 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,549 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,551 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,551 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:39:56,554 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 121 treesize of output 107 [2018-11-23 10:39:56,561 INFO L267 ElimStorePlain]: Start of recursive call 39: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 10:39:57,243 INFO L267 ElimStorePlain]: Start of recursive call 36: 1 dim-0 vars, 4 dim-1 vars, End of recursive call: 5 dim-0 vars, and 3 xjuncts. [2018-11-23 10:39:57,449 INFO L267 ElimStorePlain]: Start of recursive call 33: 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 3 xjuncts. [2018-11-23 10:40:27,824 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:27,824 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:40:27,848 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 103 treesize of output 124 [2018-11-23 10:40:28,039 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 84 treesize of output 90 [2018-11-23 10:40:30,459 WARN L180 SmtUtils]: Spent 379.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 62 [2018-11-23 10:40:30,481 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 10:40:30,483 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:30,485 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 67 treesize of output 65 [2018-11-23 10:40:30,487 INFO L267 ElimStorePlain]: Start of recursive call 42: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:30,564 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:30,565 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 88 treesize of output 66 [2018-11-23 10:40:30,567 INFO L267 ElimStorePlain]: Start of recursive call 43: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:30,645 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:30,647 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 91 treesize of output 91 [2018-11-23 10:40:30,649 INFO L267 ElimStorePlain]: Start of recursive call 44: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:30,712 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:30,715 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 72 [2018-11-23 10:40:30,717 INFO L267 ElimStorePlain]: Start of recursive call 45: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:30,783 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:30,785 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 89 treesize of output 91 [2018-11-23 10:40:30,805 INFO L267 ElimStorePlain]: Start of recursive call 46: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:31,328 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 55 [2018-11-23 10:40:31,334 INFO L267 ElimStorePlain]: Start of recursive call 47: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:31,421 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 10:40:31,423 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 112 treesize of output 84 [2018-11-23 10:40:31,426 INFO L267 ElimStorePlain]: Start of recursive call 48: End of recursive call: and 1 xjuncts. [2018-11-23 10:40:31,561 INFO L267 ElimStorePlain]: Start of recursive call 41: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 3 xjuncts. [2018-11-23 10:40:31,697 INFO L267 ElimStorePlain]: Start of recursive call 40: 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 3 xjuncts.