java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/array-industry-pattern/check_removal_from_set_after_insertion_false-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-370d6ab [2018-11-14 17:00:07,960 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-14 17:00:07,962 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-14 17:00:07,980 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-14 17:00:07,980 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-14 17:00:07,981 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-14 17:00:07,983 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-14 17:00:07,984 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-14 17:00:07,986 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-14 17:00:07,987 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-14 17:00:07,988 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-14 17:00:07,988 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-14 17:00:07,989 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-14 17:00:07,990 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-14 17:00:07,991 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-14 17:00:07,992 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-14 17:00:07,993 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-14 17:00:07,998 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-14 17:00:08,000 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-14 17:00:08,005 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-14 17:00:08,006 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-14 17:00:08,010 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-14 17:00:08,012 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-14 17:00:08,012 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-14 17:00:08,012 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-14 17:00:08,013 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-14 17:00:08,015 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-14 17:00:08,016 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-14 17:00:08,020 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-14 17:00:08,021 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-14 17:00:08,021 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-14 17:00:08,024 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-14 17:00:08,024 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-14 17:00:08,024 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-14 17:00:08,027 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-14 17:00:08,028 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-14 17:00:08,029 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-14 17:00:08,050 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-14 17:00:08,051 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-14 17:00:08,052 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-14 17:00:08,052 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-14 17:00:08,052 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-14 17:00:08,053 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-14 17:00:08,053 INFO L133 SettingsManager]: * Use SBE=true [2018-11-14 17:00:08,053 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-14 17:00:08,053 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-14 17:00:08,053 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-14 17:00:08,054 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-14 17:00:08,055 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-14 17:00:08,055 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-14 17:00:08,055 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-14 17:00:08,055 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-14 17:00:08,055 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-14 17:00:08,056 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-14 17:00:08,056 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 17:00:08,056 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-14 17:00:08,056 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-14 17:00:08,056 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-14 17:00:08,057 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-14 17:00:08,057 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-14 17:00:08,057 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-14 17:00:08,057 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-14 17:00:08,119 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-14 17:00:08,137 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-14 17:00:08,141 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-14 17:00:08,142 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-14 17:00:08,143 INFO L276 PluginConnector]: CDTParser initialized [2018-11-14 17:00:08,144 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-industry-pattern/check_removal_from_set_after_insertion_false-unreach-call.i [2018-11-14 17:00:08,205 INFO L218 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31da60176/11cf0f7c1da546aa96bd3af2a64ecdc8/FLAG0511eae4a [2018-11-14 17:00:08,639 INFO L298 CDTParser]: Found 1 translation units. [2018-11-14 17:00:08,639 INFO L158 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-industry-pattern/check_removal_from_set_after_insertion_false-unreach-call.i [2018-11-14 17:00:08,647 INFO L346 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31da60176/11cf0f7c1da546aa96bd3af2a64ecdc8/FLAG0511eae4a [2018-11-14 17:00:08,664 INFO L354 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31da60176/11cf0f7c1da546aa96bd3af2a64ecdc8 [2018-11-14 17:00:08,675 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-14 17:00:08,676 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-14 17:00:08,677 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-14 17:00:08,678 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-14 17:00:08,681 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-14 17:00:08,683 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 05:00:08" (1/1) ... [2018-11-14 17:00:08,687 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f6e4021 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:08, skipping insertion in model container [2018-11-14 17:00:08,687 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.11 05:00:08" (1/1) ... [2018-11-14 17:00:08,698 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-14 17:00:08,722 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-14 17:00:08,960 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 17:00:08,978 INFO L191 MainTranslator]: Completed pre-run [2018-11-14 17:00:09,024 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-14 17:00:09,058 INFO L195 MainTranslator]: Completed translation [2018-11-14 17:00:09,058 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09 WrapperNode [2018-11-14 17:00:09,058 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-14 17:00:09,059 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-14 17:00:09,059 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-14 17:00:09,060 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-14 17:00:09,078 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,078 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,089 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,090 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,104 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,113 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,115 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... [2018-11-14 17:00:09,118 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-14 17:00:09,119 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-14 17:00:09,119 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-14 17:00:09,119 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-14 17:00:09,120 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-14 17:00:09,274 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-14 17:00:09,274 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-14 17:00:09,275 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-14 17:00:09,275 INFO L138 BoogieDeclarations]: Found implementation of procedure insert [2018-11-14 17:00:09,275 INFO L138 BoogieDeclarations]: Found implementation of procedure elem_exists [2018-11-14 17:00:09,275 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-14 17:00:09,275 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure insert [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure elem_exists [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-14 17:00:09,276 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-14 17:00:09,277 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-14 17:00:09,277 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-14 17:00:09,277 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-14 17:00:09,277 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-14 17:00:09,278 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-11-14 17:00:10,282 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-14 17:00:10,283 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 05:00:10 BoogieIcfgContainer [2018-11-14 17:00:10,283 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-14 17:00:10,284 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-14 17:00:10,284 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-14 17:00:10,289 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-14 17:00:10,290 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.11 05:00:08" (1/3) ... [2018-11-14 17:00:10,291 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@9d83353 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 05:00:10, skipping insertion in model container [2018-11-14 17:00:10,291 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.11 05:00:09" (2/3) ... [2018-11-14 17:00:10,292 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@9d83353 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.11 05:00:10, skipping insertion in model container [2018-11-14 17:00:10,292 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.11 05:00:10" (3/3) ... [2018-11-14 17:00:10,294 INFO L112 eAbstractionObserver]: Analyzing ICFG check_removal_from_set_after_insertion_false-unreach-call.i [2018-11-14 17:00:10,303 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-14 17:00:10,311 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-14 17:00:10,328 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-14 17:00:10,364 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-14 17:00:10,365 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-14 17:00:10,365 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-14 17:00:10,365 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-14 17:00:10,365 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-14 17:00:10,366 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-14 17:00:10,366 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-14 17:00:10,366 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-14 17:00:10,366 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-14 17:00:10,389 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states. [2018-11-14 17:00:10,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2018-11-14 17:00:10,397 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:10,398 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:10,401 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:10,408 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:10,409 INFO L82 PathProgramCache]: Analyzing trace with hash -702034144, now seen corresponding path program 1 times [2018-11-14 17:00:10,411 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:10,412 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:10,474 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:10,475 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:10,475 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:10,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:10,611 INFO L256 TraceCheckUtils]: 0: Hoare triple {54#true} call ULTIMATE.init(); {54#true} is VALID [2018-11-14 17:00:10,615 INFO L273 TraceCheckUtils]: 1: Hoare triple {54#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {54#true} is VALID [2018-11-14 17:00:10,615 INFO L273 TraceCheckUtils]: 2: Hoare triple {54#true} assume true; {54#true} is VALID [2018-11-14 17:00:10,616 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {54#true} {54#true} #128#return; {54#true} is VALID [2018-11-14 17:00:10,617 INFO L256 TraceCheckUtils]: 4: Hoare triple {54#true} call #t~ret13 := main(); {54#true} is VALID [2018-11-14 17:00:10,617 INFO L273 TraceCheckUtils]: 5: Hoare triple {54#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {54#true} is VALID [2018-11-14 17:00:10,619 INFO L273 TraceCheckUtils]: 6: Hoare triple {54#true} assume !true; {55#false} is VALID [2018-11-14 17:00:10,619 INFO L273 TraceCheckUtils]: 7: Hoare triple {55#false} ~i~1 := 0; {55#false} is VALID [2018-11-14 17:00:10,619 INFO L273 TraceCheckUtils]: 8: Hoare triple {55#false} assume !true; {55#false} is VALID [2018-11-14 17:00:10,620 INFO L273 TraceCheckUtils]: 9: Hoare triple {55#false} assume !(~found~0 == 1); {55#false} is VALID [2018-11-14 17:00:10,620 INFO L273 TraceCheckUtils]: 10: Hoare triple {55#false} assume ~found~0 == 1;~i~1 := 0; {55#false} is VALID [2018-11-14 17:00:10,620 INFO L273 TraceCheckUtils]: 11: Hoare triple {55#false} assume true; {55#false} is VALID [2018-11-14 17:00:10,620 INFO L273 TraceCheckUtils]: 12: Hoare triple {55#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {55#false} is VALID [2018-11-14 17:00:10,621 INFO L256 TraceCheckUtils]: 13: Hoare triple {55#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {55#false} is VALID [2018-11-14 17:00:10,621 INFO L273 TraceCheckUtils]: 14: Hoare triple {55#false} ~cond := #in~cond; {55#false} is VALID [2018-11-14 17:00:10,621 INFO L273 TraceCheckUtils]: 15: Hoare triple {55#false} assume ~cond == 0; {55#false} is VALID [2018-11-14 17:00:10,622 INFO L273 TraceCheckUtils]: 16: Hoare triple {55#false} assume !false; {55#false} is VALID [2018-11-14 17:00:10,625 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-14 17:00:10,628 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:00:10,629 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-14 17:00:10,634 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 17 [2018-11-14 17:00:10,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:10,641 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-14 17:00:10,762 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:10,762 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-14 17:00:10,772 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-14 17:00:10,772 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 17:00:10,775 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 2 states. [2018-11-14 17:00:10,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:10,996 INFO L93 Difference]: Finished difference Result 96 states and 128 transitions. [2018-11-14 17:00:10,996 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-14 17:00:10,996 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 17 [2018-11-14 17:00:10,996 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:10,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 17:00:11,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 128 transitions. [2018-11-14 17:00:11,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-14 17:00:11,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 128 transitions. [2018-11-14 17:00:11,021 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 128 transitions. [2018-11-14 17:00:11,658 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:11,677 INFO L225 Difference]: With dead ends: 96 [2018-11-14 17:00:11,677 INFO L226 Difference]: Without dead ends: 46 [2018-11-14 17:00:11,681 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-14 17:00:11,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2018-11-14 17:00:11,735 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2018-11-14 17:00:11,735 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:11,736 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand 46 states. [2018-11-14 17:00:11,737 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 46 states. [2018-11-14 17:00:11,737 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 46 states. [2018-11-14 17:00:11,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:11,742 INFO L93 Difference]: Finished difference Result 46 states and 54 transitions. [2018-11-14 17:00:11,743 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 54 transitions. [2018-11-14 17:00:11,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:11,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:11,744 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 46 states. [2018-11-14 17:00:11,744 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 46 states. [2018-11-14 17:00:11,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:11,750 INFO L93 Difference]: Finished difference Result 46 states and 54 transitions. [2018-11-14 17:00:11,750 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 54 transitions. [2018-11-14 17:00:11,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:11,751 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:11,751 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:11,751 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:11,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 46 states. [2018-11-14 17:00:11,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 54 transitions. [2018-11-14 17:00:11,757 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 54 transitions. Word has length 17 [2018-11-14 17:00:11,758 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:11,758 INFO L480 AbstractCegarLoop]: Abstraction has 46 states and 54 transitions. [2018-11-14 17:00:11,758 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-14 17:00:11,758 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 54 transitions. [2018-11-14 17:00:11,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-14 17:00:11,759 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:11,760 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:11,760 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:11,760 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:11,761 INFO L82 PathProgramCache]: Analyzing trace with hash 424187696, now seen corresponding path program 1 times [2018-11-14 17:00:11,761 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:11,761 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:11,762 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:11,763 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:11,763 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:11,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:11,851 INFO L256 TraceCheckUtils]: 0: Hoare triple {333#true} call ULTIMATE.init(); {333#true} is VALID [2018-11-14 17:00:11,852 INFO L273 TraceCheckUtils]: 1: Hoare triple {333#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {333#true} is VALID [2018-11-14 17:00:11,852 INFO L273 TraceCheckUtils]: 2: Hoare triple {333#true} assume true; {333#true} is VALID [2018-11-14 17:00:11,852 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {333#true} {333#true} #128#return; {333#true} is VALID [2018-11-14 17:00:11,853 INFO L256 TraceCheckUtils]: 4: Hoare triple {333#true} call #t~ret13 := main(); {333#true} is VALID [2018-11-14 17:00:11,853 INFO L273 TraceCheckUtils]: 5: Hoare triple {333#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {333#true} is VALID [2018-11-14 17:00:11,853 INFO L273 TraceCheckUtils]: 6: Hoare triple {333#true} assume true; {333#true} is VALID [2018-11-14 17:00:11,854 INFO L273 TraceCheckUtils]: 7: Hoare triple {333#true} assume !(~v~0 < ~SIZE~0); {333#true} is VALID [2018-11-14 17:00:11,854 INFO L273 TraceCheckUtils]: 8: Hoare triple {333#true} ~i~1 := 0; {333#true} is VALID [2018-11-14 17:00:11,855 INFO L273 TraceCheckUtils]: 9: Hoare triple {333#true} assume true; {333#true} is VALID [2018-11-14 17:00:11,855 INFO L273 TraceCheckUtils]: 10: Hoare triple {333#true} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {333#true} is VALID [2018-11-14 17:00:11,866 INFO L273 TraceCheckUtils]: 11: Hoare triple {333#true} assume !(~found~0 == 1); {335#(not (= 1 main_~found~0))} is VALID [2018-11-14 17:00:11,881 INFO L273 TraceCheckUtils]: 12: Hoare triple {335#(not (= 1 main_~found~0))} assume ~found~0 == 1;~i~1 := 0; {334#false} is VALID [2018-11-14 17:00:11,881 INFO L273 TraceCheckUtils]: 13: Hoare triple {334#false} assume true; {334#false} is VALID [2018-11-14 17:00:11,882 INFO L273 TraceCheckUtils]: 14: Hoare triple {334#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {334#false} is VALID [2018-11-14 17:00:11,882 INFO L256 TraceCheckUtils]: 15: Hoare triple {334#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {334#false} is VALID [2018-11-14 17:00:11,882 INFO L273 TraceCheckUtils]: 16: Hoare triple {334#false} ~cond := #in~cond; {334#false} is VALID [2018-11-14 17:00:11,883 INFO L273 TraceCheckUtils]: 17: Hoare triple {334#false} assume ~cond == 0; {334#false} is VALID [2018-11-14 17:00:11,883 INFO L273 TraceCheckUtils]: 18: Hoare triple {334#false} assume !false; {334#false} is VALID [2018-11-14 17:00:11,887 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-14 17:00:11,887 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:00:11,887 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 17:00:11,894 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 19 [2018-11-14 17:00:11,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:11,894 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 17:00:12,018 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:12,018 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 17:00:12,018 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 17:00:12,019 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:00:12,019 INFO L87 Difference]: Start difference. First operand 46 states and 54 transitions. Second operand 3 states. [2018-11-14 17:00:12,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:12,448 INFO L93 Difference]: Finished difference Result 66 states and 77 transitions. [2018-11-14 17:00:12,448 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 17:00:12,449 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 19 [2018-11-14 17:00:12,449 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:12,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:00:12,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2018-11-14 17:00:12,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:00:12,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2018-11-14 17:00:12,458 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2018-11-14 17:00:12,680 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-14 17:00:12,684 INFO L225 Difference]: With dead ends: 66 [2018-11-14 17:00:12,685 INFO L226 Difference]: Without dead ends: 49 [2018-11-14 17:00:12,686 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:00:12,687 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-14 17:00:12,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2018-11-14 17:00:12,716 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:12,716 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand 49 states. [2018-11-14 17:00:12,717 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 49 states. [2018-11-14 17:00:12,717 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 49 states. [2018-11-14 17:00:12,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:12,720 INFO L93 Difference]: Finished difference Result 49 states and 56 transitions. [2018-11-14 17:00:12,721 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 56 transitions. [2018-11-14 17:00:12,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:12,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:12,722 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 49 states. [2018-11-14 17:00:12,722 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 49 states. [2018-11-14 17:00:12,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:12,726 INFO L93 Difference]: Finished difference Result 49 states and 56 transitions. [2018-11-14 17:00:12,726 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 56 transitions. [2018-11-14 17:00:12,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:12,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:12,727 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:12,728 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:12,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 49 states. [2018-11-14 17:00:12,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 56 transitions. [2018-11-14 17:00:12,731 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 56 transitions. Word has length 19 [2018-11-14 17:00:12,731 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:12,731 INFO L480 AbstractCegarLoop]: Abstraction has 49 states and 56 transitions. [2018-11-14 17:00:12,732 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 17:00:12,732 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 56 transitions. [2018-11-14 17:00:12,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-14 17:00:12,733 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:12,733 INFO L375 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:12,734 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:12,734 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:12,734 INFO L82 PathProgramCache]: Analyzing trace with hash -526617498, now seen corresponding path program 1 times [2018-11-14 17:00:12,734 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:12,734 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:12,736 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:12,736 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:12,736 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:12,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:12,950 INFO L256 TraceCheckUtils]: 0: Hoare triple {587#true} call ULTIMATE.init(); {587#true} is VALID [2018-11-14 17:00:12,951 INFO L273 TraceCheckUtils]: 1: Hoare triple {587#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,952 INFO L273 TraceCheckUtils]: 2: Hoare triple {589#(<= 100000 ~SIZE~0)} assume true; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,970 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {589#(<= 100000 ~SIZE~0)} {587#true} #128#return; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,978 INFO L256 TraceCheckUtils]: 4: Hoare triple {589#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,979 INFO L273 TraceCheckUtils]: 5: Hoare triple {589#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,980 INFO L273 TraceCheckUtils]: 6: Hoare triple {589#(<= 100000 ~SIZE~0)} assume true; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,980 INFO L273 TraceCheckUtils]: 7: Hoare triple {589#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:12,981 INFO L273 TraceCheckUtils]: 8: Hoare triple {589#(<= 100000 ~SIZE~0)} ~i~1 := 0; {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:12,983 INFO L273 TraceCheckUtils]: 9: Hoare triple {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:12,993 INFO L273 TraceCheckUtils]: 10: Hoare triple {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,003 INFO L273 TraceCheckUtils]: 11: Hoare triple {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,004 INFO L273 TraceCheckUtils]: 12: Hoare triple {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,017 INFO L273 TraceCheckUtils]: 13: Hoare triple {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume true; {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,030 INFO L273 TraceCheckUtils]: 14: Hoare triple {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,043 INFO L273 TraceCheckUtils]: 15: Hoare triple {591#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,044 INFO L273 TraceCheckUtils]: 16: Hoare triple {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,045 INFO L273 TraceCheckUtils]: 17: Hoare triple {590#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {588#false} is VALID [2018-11-14 17:00:13,045 INFO L273 TraceCheckUtils]: 18: Hoare triple {588#false} assume ~found~0 == 1;~i~1 := 0; {588#false} is VALID [2018-11-14 17:00:13,045 INFO L273 TraceCheckUtils]: 19: Hoare triple {588#false} assume true; {588#false} is VALID [2018-11-14 17:00:13,046 INFO L273 TraceCheckUtils]: 20: Hoare triple {588#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {588#false} is VALID [2018-11-14 17:00:13,046 INFO L256 TraceCheckUtils]: 21: Hoare triple {588#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {588#false} is VALID [2018-11-14 17:00:13,046 INFO L273 TraceCheckUtils]: 22: Hoare triple {588#false} ~cond := #in~cond; {588#false} is VALID [2018-11-14 17:00:13,046 INFO L273 TraceCheckUtils]: 23: Hoare triple {588#false} assume ~cond == 0; {588#false} is VALID [2018-11-14 17:00:13,047 INFO L273 TraceCheckUtils]: 24: Hoare triple {588#false} assume !false; {588#false} is VALID [2018-11-14 17:00:13,049 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-14 17:00:13,049 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:13,049 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:13,061 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:13,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:13,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:13,115 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:13,234 INFO L256 TraceCheckUtils]: 0: Hoare triple {587#true} call ULTIMATE.init(); {587#true} is VALID [2018-11-14 17:00:13,237 INFO L273 TraceCheckUtils]: 1: Hoare triple {587#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:13,241 INFO L273 TraceCheckUtils]: 2: Hoare triple {589#(<= 100000 ~SIZE~0)} assume true; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:13,242 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {589#(<= 100000 ~SIZE~0)} {587#true} #128#return; {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:13,243 INFO L256 TraceCheckUtils]: 4: Hoare triple {589#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {589#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:13,245 INFO L273 TraceCheckUtils]: 5: Hoare triple {589#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {610#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,246 INFO L273 TraceCheckUtils]: 6: Hoare triple {610#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {610#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:13,247 INFO L273 TraceCheckUtils]: 7: Hoare triple {610#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {588#false} is VALID [2018-11-14 17:00:13,247 INFO L273 TraceCheckUtils]: 8: Hoare triple {588#false} ~i~1 := 0; {588#false} is VALID [2018-11-14 17:00:13,248 INFO L273 TraceCheckUtils]: 9: Hoare triple {588#false} assume true; {588#false} is VALID [2018-11-14 17:00:13,248 INFO L273 TraceCheckUtils]: 10: Hoare triple {588#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {588#false} is VALID [2018-11-14 17:00:13,249 INFO L273 TraceCheckUtils]: 11: Hoare triple {588#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {588#false} is VALID [2018-11-14 17:00:13,249 INFO L273 TraceCheckUtils]: 12: Hoare triple {588#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {588#false} is VALID [2018-11-14 17:00:13,250 INFO L273 TraceCheckUtils]: 13: Hoare triple {588#false} assume true; {588#false} is VALID [2018-11-14 17:00:13,250 INFO L273 TraceCheckUtils]: 14: Hoare triple {588#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {588#false} is VALID [2018-11-14 17:00:13,251 INFO L273 TraceCheckUtils]: 15: Hoare triple {588#false} assume ~found~0 == 1;~i~1 := ~pos~0; {588#false} is VALID [2018-11-14 17:00:13,251 INFO L273 TraceCheckUtils]: 16: Hoare triple {588#false} assume true; {588#false} is VALID [2018-11-14 17:00:13,251 INFO L273 TraceCheckUtils]: 17: Hoare triple {588#false} assume !(~i~1 < ~SIZE~0 - 1); {588#false} is VALID [2018-11-14 17:00:13,252 INFO L273 TraceCheckUtils]: 18: Hoare triple {588#false} assume ~found~0 == 1;~i~1 := 0; {588#false} is VALID [2018-11-14 17:00:13,252 INFO L273 TraceCheckUtils]: 19: Hoare triple {588#false} assume true; {588#false} is VALID [2018-11-14 17:00:13,253 INFO L273 TraceCheckUtils]: 20: Hoare triple {588#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {588#false} is VALID [2018-11-14 17:00:13,253 INFO L256 TraceCheckUtils]: 21: Hoare triple {588#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {588#false} is VALID [2018-11-14 17:00:13,253 INFO L273 TraceCheckUtils]: 22: Hoare triple {588#false} ~cond := #in~cond; {588#false} is VALID [2018-11-14 17:00:13,254 INFO L273 TraceCheckUtils]: 23: Hoare triple {588#false} assume ~cond == 0; {588#false} is VALID [2018-11-14 17:00:13,254 INFO L273 TraceCheckUtils]: 24: Hoare triple {588#false} assume !false; {588#false} is VALID [2018-11-14 17:00:13,256 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-14 17:00:13,278 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-14 17:00:13,278 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 6 [2018-11-14 17:00:13,280 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 25 [2018-11-14 17:00:13,280 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:13,280 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-14 17:00:13,431 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:13,431 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-14 17:00:13,432 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-14 17:00:13,432 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2018-11-14 17:00:13,432 INFO L87 Difference]: Start difference. First operand 49 states and 56 transitions. Second operand 6 states. [2018-11-14 17:00:14,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:14,258 INFO L93 Difference]: Finished difference Result 115 states and 137 transitions. [2018-11-14 17:00:14,258 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-14 17:00:14,258 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 25 [2018-11-14 17:00:14,258 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:14,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 17:00:14,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 129 transitions. [2018-11-14 17:00:14,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-14 17:00:14,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 129 transitions. [2018-11-14 17:00:14,270 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 129 transitions. [2018-11-14 17:00:14,636 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:14,642 INFO L225 Difference]: With dead ends: 115 [2018-11-14 17:00:14,642 INFO L226 Difference]: Without dead ends: 91 [2018-11-14 17:00:14,643 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 25 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2018-11-14 17:00:14,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2018-11-14 17:00:14,728 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 60. [2018-11-14 17:00:14,728 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:14,728 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand 60 states. [2018-11-14 17:00:14,729 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 60 states. [2018-11-14 17:00:14,729 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 60 states. [2018-11-14 17:00:14,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:14,741 INFO L93 Difference]: Finished difference Result 91 states and 108 transitions. [2018-11-14 17:00:14,741 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 108 transitions. [2018-11-14 17:00:14,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:14,743 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:14,743 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand 91 states. [2018-11-14 17:00:14,744 INFO L87 Difference]: Start difference. First operand 60 states. Second operand 91 states. [2018-11-14 17:00:14,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:14,751 INFO L93 Difference]: Finished difference Result 91 states and 108 transitions. [2018-11-14 17:00:14,751 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 108 transitions. [2018-11-14 17:00:14,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:14,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:14,753 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:14,753 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:14,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2018-11-14 17:00:14,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 69 transitions. [2018-11-14 17:00:14,757 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 69 transitions. Word has length 25 [2018-11-14 17:00:14,757 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:14,757 INFO L480 AbstractCegarLoop]: Abstraction has 60 states and 69 transitions. [2018-11-14 17:00:14,757 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-14 17:00:14,757 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 69 transitions. [2018-11-14 17:00:14,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 17:00:14,759 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:14,759 INFO L375 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:14,759 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:14,760 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:14,760 INFO L82 PathProgramCache]: Analyzing trace with hash -1730110829, now seen corresponding path program 1 times [2018-11-14 17:00:14,760 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:14,760 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:14,761 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:14,762 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:14,762 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:14,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:14,861 INFO L256 TraceCheckUtils]: 0: Hoare triple {1082#true} call ULTIMATE.init(); {1082#true} is VALID [2018-11-14 17:00:14,861 INFO L273 TraceCheckUtils]: 1: Hoare triple {1082#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {1082#true} is VALID [2018-11-14 17:00:14,861 INFO L273 TraceCheckUtils]: 2: Hoare triple {1082#true} assume true; {1082#true} is VALID [2018-11-14 17:00:14,862 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1082#true} {1082#true} #128#return; {1082#true} is VALID [2018-11-14 17:00:14,862 INFO L256 TraceCheckUtils]: 4: Hoare triple {1082#true} call #t~ret13 := main(); {1082#true} is VALID [2018-11-14 17:00:14,862 INFO L273 TraceCheckUtils]: 5: Hoare triple {1082#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {1082#true} is VALID [2018-11-14 17:00:14,863 INFO L273 TraceCheckUtils]: 6: Hoare triple {1082#true} assume true; {1082#true} is VALID [2018-11-14 17:00:14,863 INFO L273 TraceCheckUtils]: 7: Hoare triple {1082#true} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {1082#true} is VALID [2018-11-14 17:00:14,863 INFO L256 TraceCheckUtils]: 8: Hoare triple {1082#true} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {1082#true} is VALID [2018-11-14 17:00:14,864 INFO L273 TraceCheckUtils]: 9: Hoare triple {1082#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {1082#true} is VALID [2018-11-14 17:00:14,864 INFO L273 TraceCheckUtils]: 10: Hoare triple {1082#true} assume true; {1082#true} is VALID [2018-11-14 17:00:14,864 INFO L273 TraceCheckUtils]: 11: Hoare triple {1082#true} assume !(~i~0 < ~size); {1082#true} is VALID [2018-11-14 17:00:14,865 INFO L273 TraceCheckUtils]: 12: Hoare triple {1082#true} #res := 0; {1084#(= 0 |elem_exists_#res|)} is VALID [2018-11-14 17:00:14,870 INFO L273 TraceCheckUtils]: 13: Hoare triple {1084#(= 0 |elem_exists_#res|)} assume true; {1084#(= 0 |elem_exists_#res|)} is VALID [2018-11-14 17:00:14,871 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {1084#(= 0 |elem_exists_#res|)} {1082#true} #132#return; {1085#(= |main_#t~ret4| 0)} is VALID [2018-11-14 17:00:14,873 INFO L273 TraceCheckUtils]: 15: Hoare triple {1085#(= |main_#t~ret4| 0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {1085#(= |main_#t~ret4| 0)} is VALID [2018-11-14 17:00:14,875 INFO L273 TraceCheckUtils]: 16: Hoare triple {1085#(= |main_#t~ret4| 0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {1083#false} is VALID [2018-11-14 17:00:14,875 INFO L273 TraceCheckUtils]: 17: Hoare triple {1083#false} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {1083#false} is VALID [2018-11-14 17:00:14,876 INFO L273 TraceCheckUtils]: 18: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,876 INFO L273 TraceCheckUtils]: 19: Hoare triple {1083#false} assume !(~v~0 < ~SIZE~0); {1083#false} is VALID [2018-11-14 17:00:14,876 INFO L273 TraceCheckUtils]: 20: Hoare triple {1083#false} ~i~1 := 0; {1083#false} is VALID [2018-11-14 17:00:14,877 INFO L273 TraceCheckUtils]: 21: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,877 INFO L273 TraceCheckUtils]: 22: Hoare triple {1083#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1083#false} is VALID [2018-11-14 17:00:14,877 INFO L273 TraceCheckUtils]: 23: Hoare triple {1083#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {1083#false} is VALID [2018-11-14 17:00:14,878 INFO L273 TraceCheckUtils]: 24: Hoare triple {1083#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {1083#false} is VALID [2018-11-14 17:00:14,878 INFO L273 TraceCheckUtils]: 25: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,878 INFO L273 TraceCheckUtils]: 26: Hoare triple {1083#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {1083#false} is VALID [2018-11-14 17:00:14,879 INFO L273 TraceCheckUtils]: 27: Hoare triple {1083#false} assume ~found~0 == 1;~i~1 := ~pos~0; {1083#false} is VALID [2018-11-14 17:00:14,879 INFO L273 TraceCheckUtils]: 28: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,879 INFO L273 TraceCheckUtils]: 29: Hoare triple {1083#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {1083#false} is VALID [2018-11-14 17:00:14,879 INFO L273 TraceCheckUtils]: 30: Hoare triple {1083#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {1083#false} is VALID [2018-11-14 17:00:14,880 INFO L273 TraceCheckUtils]: 31: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,880 INFO L273 TraceCheckUtils]: 32: Hoare triple {1083#false} assume !(~i~1 < ~SIZE~0 - 1); {1083#false} is VALID [2018-11-14 17:00:14,880 INFO L273 TraceCheckUtils]: 33: Hoare triple {1083#false} assume ~found~0 == 1;~i~1 := 0; {1083#false} is VALID [2018-11-14 17:00:14,881 INFO L273 TraceCheckUtils]: 34: Hoare triple {1083#false} assume true; {1083#false} is VALID [2018-11-14 17:00:14,881 INFO L273 TraceCheckUtils]: 35: Hoare triple {1083#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1083#false} is VALID [2018-11-14 17:00:14,881 INFO L256 TraceCheckUtils]: 36: Hoare triple {1083#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {1083#false} is VALID [2018-11-14 17:00:14,882 INFO L273 TraceCheckUtils]: 37: Hoare triple {1083#false} ~cond := #in~cond; {1083#false} is VALID [2018-11-14 17:00:14,882 INFO L273 TraceCheckUtils]: 38: Hoare triple {1083#false} assume ~cond == 0; {1083#false} is VALID [2018-11-14 17:00:14,882 INFO L273 TraceCheckUtils]: 39: Hoare triple {1083#false} assume !false; {1083#false} is VALID [2018-11-14 17:00:14,885 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-14 17:00:14,886 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:00:14,886 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-14 17:00:14,886 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 17:00:14,887 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:14,887 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-14 17:00:14,943 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:14,943 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-14 17:00:14,944 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-14 17:00:14,944 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-14 17:00:14,944 INFO L87 Difference]: Start difference. First operand 60 states and 69 transitions. Second operand 4 states. [2018-11-14 17:00:15,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:15,188 INFO L93 Difference]: Finished difference Result 116 states and 135 transitions. [2018-11-14 17:00:15,188 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-14 17:00:15,189 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 40 [2018-11-14 17:00:15,189 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:15,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 17:00:15,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 105 transitions. [2018-11-14 17:00:15,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-14 17:00:15,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 105 transitions. [2018-11-14 17:00:15,196 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 105 transitions. [2018-11-14 17:00:15,364 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:15,367 INFO L225 Difference]: With dead ends: 116 [2018-11-14 17:00:15,368 INFO L226 Difference]: Without dead ends: 64 [2018-11-14 17:00:15,369 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-14 17:00:15,369 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-14 17:00:15,429 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 64. [2018-11-14 17:00:15,430 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:15,430 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 64 states. [2018-11-14 17:00:15,430 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 64 states. [2018-11-14 17:00:15,430 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 64 states. [2018-11-14 17:00:15,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:15,435 INFO L93 Difference]: Finished difference Result 64 states and 73 transitions. [2018-11-14 17:00:15,435 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 73 transitions. [2018-11-14 17:00:15,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:15,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:15,436 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 64 states. [2018-11-14 17:00:15,436 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 64 states. [2018-11-14 17:00:15,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:15,440 INFO L93 Difference]: Finished difference Result 64 states and 73 transitions. [2018-11-14 17:00:15,440 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 73 transitions. [2018-11-14 17:00:15,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:15,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:15,441 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:15,441 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:15,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2018-11-14 17:00:15,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 73 transitions. [2018-11-14 17:00:15,444 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 73 transitions. Word has length 40 [2018-11-14 17:00:15,445 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:15,445 INFO L480 AbstractCegarLoop]: Abstraction has 64 states and 73 transitions. [2018-11-14 17:00:15,445 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-14 17:00:15,445 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 73 transitions. [2018-11-14 17:00:15,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2018-11-14 17:00:15,446 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:15,447 INFO L375 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:15,447 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:15,447 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:15,448 INFO L82 PathProgramCache]: Analyzing trace with hash 1439248380, now seen corresponding path program 1 times [2018-11-14 17:00:15,448 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:15,448 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:15,449 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:15,449 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:15,449 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:15,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:15,626 INFO L256 TraceCheckUtils]: 0: Hoare triple {1451#true} call ULTIMATE.init(); {1451#true} is VALID [2018-11-14 17:00:15,628 INFO L273 TraceCheckUtils]: 1: Hoare triple {1451#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,631 INFO L273 TraceCheckUtils]: 2: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume true; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,632 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1453#(<= 100000 ~SIZE~0)} {1451#true} #128#return; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,636 INFO L256 TraceCheckUtils]: 4: Hoare triple {1453#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,641 INFO L273 TraceCheckUtils]: 5: Hoare triple {1453#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,641 INFO L273 TraceCheckUtils]: 6: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume true; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,642 INFO L273 TraceCheckUtils]: 7: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,642 INFO L256 TraceCheckUtils]: 8: Hoare triple {1453#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {1451#true} is VALID [2018-11-14 17:00:15,642 INFO L273 TraceCheckUtils]: 9: Hoare triple {1451#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {1451#true} is VALID [2018-11-14 17:00:15,643 INFO L273 TraceCheckUtils]: 10: Hoare triple {1451#true} assume true; {1451#true} is VALID [2018-11-14 17:00:15,643 INFO L273 TraceCheckUtils]: 11: Hoare triple {1451#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {1451#true} is VALID [2018-11-14 17:00:15,643 INFO L273 TraceCheckUtils]: 12: Hoare triple {1451#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {1451#true} is VALID [2018-11-14 17:00:15,643 INFO L273 TraceCheckUtils]: 13: Hoare triple {1451#true} assume true; {1451#true} is VALID [2018-11-14 17:00:15,644 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {1451#true} {1453#(<= 100000 ~SIZE~0)} #132#return; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,645 INFO L273 TraceCheckUtils]: 15: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,645 INFO L273 TraceCheckUtils]: 16: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,646 INFO L273 TraceCheckUtils]: 17: Hoare triple {1453#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,646 INFO L273 TraceCheckUtils]: 18: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume true; {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,647 INFO L273 TraceCheckUtils]: 19: Hoare triple {1453#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {1453#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:15,648 INFO L273 TraceCheckUtils]: 20: Hoare triple {1453#(<= 100000 ~SIZE~0)} ~i~1 := 0; {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,649 INFO L273 TraceCheckUtils]: 21: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,650 INFO L273 TraceCheckUtils]: 22: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,651 INFO L273 TraceCheckUtils]: 23: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,652 INFO L273 TraceCheckUtils]: 24: Hoare triple {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,653 INFO L273 TraceCheckUtils]: 25: Hoare triple {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume true; {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,654 INFO L273 TraceCheckUtils]: 26: Hoare triple {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,655 INFO L273 TraceCheckUtils]: 27: Hoare triple {1455#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,656 INFO L273 TraceCheckUtils]: 28: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,657 INFO L273 TraceCheckUtils]: 29: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:15,659 INFO L273 TraceCheckUtils]: 30: Hoare triple {1454#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {1456#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:15,660 INFO L273 TraceCheckUtils]: 31: Hoare triple {1456#(<= (+ main_~i~1 99999) ~SIZE~0)} assume true; {1456#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:15,661 INFO L273 TraceCheckUtils]: 32: Hoare triple {1456#(<= (+ main_~i~1 99999) ~SIZE~0)} assume !(~i~1 < ~SIZE~0 - 1); {1452#false} is VALID [2018-11-14 17:00:15,661 INFO L273 TraceCheckUtils]: 33: Hoare triple {1452#false} assume ~found~0 == 1;~i~1 := 0; {1452#false} is VALID [2018-11-14 17:00:15,661 INFO L273 TraceCheckUtils]: 34: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:15,662 INFO L273 TraceCheckUtils]: 35: Hoare triple {1452#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1452#false} is VALID [2018-11-14 17:00:15,662 INFO L256 TraceCheckUtils]: 36: Hoare triple {1452#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {1452#false} is VALID [2018-11-14 17:00:15,662 INFO L273 TraceCheckUtils]: 37: Hoare triple {1452#false} ~cond := #in~cond; {1452#false} is VALID [2018-11-14 17:00:15,663 INFO L273 TraceCheckUtils]: 38: Hoare triple {1452#false} assume ~cond == 0; {1452#false} is VALID [2018-11-14 17:00:15,663 INFO L273 TraceCheckUtils]: 39: Hoare triple {1452#false} assume !false; {1452#false} is VALID [2018-11-14 17:00:15,666 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-14 17:00:15,667 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:15,667 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:15,678 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:15,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:15,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:15,741 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:16,114 INFO L256 TraceCheckUtils]: 0: Hoare triple {1451#true} call ULTIMATE.init(); {1451#true} is VALID [2018-11-14 17:00:16,114 INFO L273 TraceCheckUtils]: 1: Hoare triple {1451#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {1451#true} is VALID [2018-11-14 17:00:16,115 INFO L273 TraceCheckUtils]: 2: Hoare triple {1451#true} assume true; {1451#true} is VALID [2018-11-14 17:00:16,115 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1451#true} {1451#true} #128#return; {1451#true} is VALID [2018-11-14 17:00:16,115 INFO L256 TraceCheckUtils]: 4: Hoare triple {1451#true} call #t~ret13 := main(); {1451#true} is VALID [2018-11-14 17:00:16,116 INFO L273 TraceCheckUtils]: 5: Hoare triple {1451#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {1475#(<= main_~n~0 0)} is VALID [2018-11-14 17:00:16,117 INFO L273 TraceCheckUtils]: 6: Hoare triple {1475#(<= main_~n~0 0)} assume true; {1475#(<= main_~n~0 0)} is VALID [2018-11-14 17:00:16,117 INFO L273 TraceCheckUtils]: 7: Hoare triple {1475#(<= main_~n~0 0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {1475#(<= main_~n~0 0)} is VALID [2018-11-14 17:00:16,118 INFO L256 TraceCheckUtils]: 8: Hoare triple {1475#(<= main_~n~0 0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {1451#true} is VALID [2018-11-14 17:00:16,118 INFO L273 TraceCheckUtils]: 9: Hoare triple {1451#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {1488#(and (<= elem_exists_~size |elem_exists_#in~size|) (<= 0 elem_exists_~i~0))} is VALID [2018-11-14 17:00:16,119 INFO L273 TraceCheckUtils]: 10: Hoare triple {1488#(and (<= elem_exists_~size |elem_exists_#in~size|) (<= 0 elem_exists_~i~0))} assume true; {1488#(and (<= elem_exists_~size |elem_exists_#in~size|) (<= 0 elem_exists_~i~0))} is VALID [2018-11-14 17:00:16,120 INFO L273 TraceCheckUtils]: 11: Hoare triple {1488#(and (<= elem_exists_~size |elem_exists_#in~size|) (<= 0 elem_exists_~i~0))} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {1495#(<= 1 |elem_exists_#in~size|)} is VALID [2018-11-14 17:00:16,121 INFO L273 TraceCheckUtils]: 12: Hoare triple {1495#(<= 1 |elem_exists_#in~size|)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {1495#(<= 1 |elem_exists_#in~size|)} is VALID [2018-11-14 17:00:16,121 INFO L273 TraceCheckUtils]: 13: Hoare triple {1495#(<= 1 |elem_exists_#in~size|)} assume true; {1495#(<= 1 |elem_exists_#in~size|)} is VALID [2018-11-14 17:00:16,123 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {1495#(<= 1 |elem_exists_#in~size|)} {1475#(<= main_~n~0 0)} #132#return; {1452#false} is VALID [2018-11-14 17:00:16,124 INFO L273 TraceCheckUtils]: 15: Hoare triple {1452#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {1452#false} is VALID [2018-11-14 17:00:16,124 INFO L273 TraceCheckUtils]: 16: Hoare triple {1452#false} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {1452#false} is VALID [2018-11-14 17:00:16,125 INFO L273 TraceCheckUtils]: 17: Hoare triple {1452#false} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {1452#false} is VALID [2018-11-14 17:00:16,125 INFO L273 TraceCheckUtils]: 18: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,125 INFO L273 TraceCheckUtils]: 19: Hoare triple {1452#false} assume !(~v~0 < ~SIZE~0); {1452#false} is VALID [2018-11-14 17:00:16,126 INFO L273 TraceCheckUtils]: 20: Hoare triple {1452#false} ~i~1 := 0; {1452#false} is VALID [2018-11-14 17:00:16,126 INFO L273 TraceCheckUtils]: 21: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,126 INFO L273 TraceCheckUtils]: 22: Hoare triple {1452#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1452#false} is VALID [2018-11-14 17:00:16,127 INFO L273 TraceCheckUtils]: 23: Hoare triple {1452#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {1452#false} is VALID [2018-11-14 17:00:16,127 INFO L273 TraceCheckUtils]: 24: Hoare triple {1452#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {1452#false} is VALID [2018-11-14 17:00:16,127 INFO L273 TraceCheckUtils]: 25: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,127 INFO L273 TraceCheckUtils]: 26: Hoare triple {1452#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {1452#false} is VALID [2018-11-14 17:00:16,127 INFO L273 TraceCheckUtils]: 27: Hoare triple {1452#false} assume ~found~0 == 1;~i~1 := ~pos~0; {1452#false} is VALID [2018-11-14 17:00:16,128 INFO L273 TraceCheckUtils]: 28: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,128 INFO L273 TraceCheckUtils]: 29: Hoare triple {1452#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {1452#false} is VALID [2018-11-14 17:00:16,128 INFO L273 TraceCheckUtils]: 30: Hoare triple {1452#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {1452#false} is VALID [2018-11-14 17:00:16,128 INFO L273 TraceCheckUtils]: 31: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,128 INFO L273 TraceCheckUtils]: 32: Hoare triple {1452#false} assume !(~i~1 < ~SIZE~0 - 1); {1452#false} is VALID [2018-11-14 17:00:16,130 INFO L273 TraceCheckUtils]: 33: Hoare triple {1452#false} assume ~found~0 == 1;~i~1 := 0; {1452#false} is VALID [2018-11-14 17:00:16,130 INFO L273 TraceCheckUtils]: 34: Hoare triple {1452#false} assume true; {1452#false} is VALID [2018-11-14 17:00:16,130 INFO L273 TraceCheckUtils]: 35: Hoare triple {1452#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {1452#false} is VALID [2018-11-14 17:00:16,130 INFO L256 TraceCheckUtils]: 36: Hoare triple {1452#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {1452#false} is VALID [2018-11-14 17:00:16,131 INFO L273 TraceCheckUtils]: 37: Hoare triple {1452#false} ~cond := #in~cond; {1452#false} is VALID [2018-11-14 17:00:16,131 INFO L273 TraceCheckUtils]: 38: Hoare triple {1452#false} assume ~cond == 0; {1452#false} is VALID [2018-11-14 17:00:16,131 INFO L273 TraceCheckUtils]: 39: Hoare triple {1452#false} assume !false; {1452#false} is VALID [2018-11-14 17:00:16,134 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-14 17:00:16,165 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-14 17:00:16,165 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 9 [2018-11-14 17:00:16,166 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 40 [2018-11-14 17:00:16,167 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:16,167 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-14 17:00:16,256 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:16,257 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-14 17:00:16,257 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-14 17:00:16,257 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2018-11-14 17:00:16,258 INFO L87 Difference]: Start difference. First operand 64 states and 73 transitions. Second operand 9 states. [2018-11-14 17:00:18,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:18,067 INFO L93 Difference]: Finished difference Result 175 states and 208 transitions. [2018-11-14 17:00:18,067 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 17:00:18,068 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 40 [2018-11-14 17:00:18,068 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:18,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-14 17:00:18,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 181 transitions. [2018-11-14 17:00:18,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-14 17:00:18,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 181 transitions. [2018-11-14 17:00:18,079 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 181 transitions. [2018-11-14 17:00:18,489 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:18,496 INFO L225 Difference]: With dead ends: 175 [2018-11-14 17:00:18,496 INFO L226 Difference]: Without dead ends: 119 [2018-11-14 17:00:18,497 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 40 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2018-11-14 17:00:18,498 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2018-11-14 17:00:18,593 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 73. [2018-11-14 17:00:18,593 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:18,594 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand 73 states. [2018-11-14 17:00:18,594 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 73 states. [2018-11-14 17:00:18,594 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 73 states. [2018-11-14 17:00:18,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:18,602 INFO L93 Difference]: Finished difference Result 119 states and 140 transitions. [2018-11-14 17:00:18,602 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 140 transitions. [2018-11-14 17:00:18,603 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:18,603 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:18,603 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 119 states. [2018-11-14 17:00:18,604 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 119 states. [2018-11-14 17:00:18,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:18,610 INFO L93 Difference]: Finished difference Result 119 states and 140 transitions. [2018-11-14 17:00:18,610 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 140 transitions. [2018-11-14 17:00:18,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:18,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:18,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:18,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:18,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 73 states. [2018-11-14 17:00:18,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 84 transitions. [2018-11-14 17:00:18,615 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 84 transitions. Word has length 40 [2018-11-14 17:00:18,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:18,615 INFO L480 AbstractCegarLoop]: Abstraction has 73 states and 84 transitions. [2018-11-14 17:00:18,615 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-14 17:00:18,615 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 84 transitions. [2018-11-14 17:00:18,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2018-11-14 17:00:18,617 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:18,617 INFO L375 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:18,617 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:18,617 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:18,618 INFO L82 PathProgramCache]: Analyzing trace with hash 467748098, now seen corresponding path program 1 times [2018-11-14 17:00:18,618 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:18,618 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:18,619 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:18,619 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:18,619 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:18,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:18,708 INFO L256 TraceCheckUtils]: 0: Hoare triple {2154#true} call ULTIMATE.init(); {2154#true} is VALID [2018-11-14 17:00:18,708 INFO L273 TraceCheckUtils]: 1: Hoare triple {2154#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {2154#true} is VALID [2018-11-14 17:00:18,708 INFO L273 TraceCheckUtils]: 2: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,709 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2154#true} {2154#true} #128#return; {2154#true} is VALID [2018-11-14 17:00:18,709 INFO L256 TraceCheckUtils]: 4: Hoare triple {2154#true} call #t~ret13 := main(); {2154#true} is VALID [2018-11-14 17:00:18,709 INFO L273 TraceCheckUtils]: 5: Hoare triple {2154#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {2154#true} is VALID [2018-11-14 17:00:18,709 INFO L273 TraceCheckUtils]: 6: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,710 INFO L273 TraceCheckUtils]: 7: Hoare triple {2154#true} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2154#true} is VALID [2018-11-14 17:00:18,710 INFO L256 TraceCheckUtils]: 8: Hoare triple {2154#true} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {2154#true} is VALID [2018-11-14 17:00:18,710 INFO L273 TraceCheckUtils]: 9: Hoare triple {2154#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {2154#true} is VALID [2018-11-14 17:00:18,710 INFO L273 TraceCheckUtils]: 10: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,711 INFO L273 TraceCheckUtils]: 11: Hoare triple {2154#true} assume !(~i~0 < ~size); {2154#true} is VALID [2018-11-14 17:00:18,711 INFO L273 TraceCheckUtils]: 12: Hoare triple {2154#true} #res := 0; {2154#true} is VALID [2018-11-14 17:00:18,711 INFO L273 TraceCheckUtils]: 13: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,711 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {2154#true} {2154#true} #132#return; {2154#true} is VALID [2018-11-14 17:00:18,711 INFO L273 TraceCheckUtils]: 15: Hoare triple {2154#true} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {2154#true} is VALID [2018-11-14 17:00:18,712 INFO L273 TraceCheckUtils]: 16: Hoare triple {2154#true} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2154#true} is VALID [2018-11-14 17:00:18,712 INFO L256 TraceCheckUtils]: 17: Hoare triple {2154#true} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {2154#true} is VALID [2018-11-14 17:00:18,712 INFO L273 TraceCheckUtils]: 18: Hoare triple {2154#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {2154#true} is VALID [2018-11-14 17:00:18,713 INFO L273 TraceCheckUtils]: 19: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,713 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {2154#true} {2154#true} #134#return; {2154#true} is VALID [2018-11-14 17:00:18,713 INFO L273 TraceCheckUtils]: 21: Hoare triple {2154#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {2154#true} is VALID [2018-11-14 17:00:18,713 INFO L273 TraceCheckUtils]: 22: Hoare triple {2154#true} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {2154#true} is VALID [2018-11-14 17:00:18,714 INFO L273 TraceCheckUtils]: 23: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,714 INFO L273 TraceCheckUtils]: 24: Hoare triple {2154#true} assume !(~v~0 < ~SIZE~0); {2154#true} is VALID [2018-11-14 17:00:18,714 INFO L273 TraceCheckUtils]: 25: Hoare triple {2154#true} ~i~1 := 0; {2154#true} is VALID [2018-11-14 17:00:18,714 INFO L273 TraceCheckUtils]: 26: Hoare triple {2154#true} assume true; {2154#true} is VALID [2018-11-14 17:00:18,714 INFO L273 TraceCheckUtils]: 27: Hoare triple {2154#true} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2154#true} is VALID [2018-11-14 17:00:18,729 INFO L273 TraceCheckUtils]: 28: Hoare triple {2154#true} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {2156#(= main_~found~0 1)} is VALID [2018-11-14 17:00:18,738 INFO L273 TraceCheckUtils]: 29: Hoare triple {2156#(= main_~found~0 1)} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2156#(= main_~found~0 1)} is VALID [2018-11-14 17:00:18,750 INFO L273 TraceCheckUtils]: 30: Hoare triple {2156#(= main_~found~0 1)} assume true; {2156#(= main_~found~0 1)} is VALID [2018-11-14 17:00:18,755 INFO L273 TraceCheckUtils]: 31: Hoare triple {2156#(= main_~found~0 1)} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 32: Hoare triple {2155#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 33: Hoare triple {2155#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 34: Hoare triple {2155#false} assume true; {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 35: Hoare triple {2155#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 36: Hoare triple {2155#false} assume ~found~0 == 1;~i~1 := ~pos~0; {2155#false} is VALID [2018-11-14 17:00:18,756 INFO L273 TraceCheckUtils]: 37: Hoare triple {2155#false} assume true; {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 38: Hoare triple {2155#false} assume !(~i~1 < ~SIZE~0 - 1); {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 39: Hoare triple {2155#false} assume ~found~0 == 1;~i~1 := 0; {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 40: Hoare triple {2155#false} assume true; {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 41: Hoare triple {2155#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L256 TraceCheckUtils]: 42: Hoare triple {2155#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 43: Hoare triple {2155#false} ~cond := #in~cond; {2155#false} is VALID [2018-11-14 17:00:18,757 INFO L273 TraceCheckUtils]: 44: Hoare triple {2155#false} assume ~cond == 0; {2155#false} is VALID [2018-11-14 17:00:18,758 INFO L273 TraceCheckUtils]: 45: Hoare triple {2155#false} assume !false; {2155#false} is VALID [2018-11-14 17:00:18,759 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-14 17:00:18,759 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-14 17:00:18,759 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-14 17:00:18,760 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 46 [2018-11-14 17:00:18,760 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:18,760 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-14 17:00:18,804 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:18,804 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-14 17:00:18,804 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-14 17:00:18,804 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:00:18,805 INFO L87 Difference]: Start difference. First operand 73 states and 84 transitions. Second operand 3 states. [2018-11-14 17:00:18,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:18,931 INFO L93 Difference]: Finished difference Result 96 states and 110 transitions. [2018-11-14 17:00:18,931 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-14 17:00:18,931 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 46 [2018-11-14 17:00:18,931 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:18,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:00:18,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2018-11-14 17:00:18,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-14 17:00:18,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2018-11-14 17:00:18,935 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 79 transitions. [2018-11-14 17:00:19,158 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:19,160 INFO L225 Difference]: With dead ends: 96 [2018-11-14 17:00:19,160 INFO L226 Difference]: Without dead ends: 73 [2018-11-14 17:00:19,161 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-14 17:00:19,161 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2018-11-14 17:00:19,231 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 73. [2018-11-14 17:00:19,231 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:19,231 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand 73 states. [2018-11-14 17:00:19,231 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 73 states. [2018-11-14 17:00:19,232 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 73 states. [2018-11-14 17:00:19,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:19,235 INFO L93 Difference]: Finished difference Result 73 states and 82 transitions. [2018-11-14 17:00:19,235 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-14 17:00:19,236 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:19,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:19,236 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 73 states. [2018-11-14 17:00:19,236 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 73 states. [2018-11-14 17:00:19,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:19,239 INFO L93 Difference]: Finished difference Result 73 states and 82 transitions. [2018-11-14 17:00:19,239 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-14 17:00:19,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:19,240 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:19,240 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:19,240 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:19,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 73 states. [2018-11-14 17:00:19,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 82 transitions. [2018-11-14 17:00:19,243 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 82 transitions. Word has length 46 [2018-11-14 17:00:19,243 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:19,243 INFO L480 AbstractCegarLoop]: Abstraction has 73 states and 82 transitions. [2018-11-14 17:00:19,243 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-14 17:00:19,243 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-14 17:00:19,244 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2018-11-14 17:00:19,244 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:19,244 INFO L375 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:19,245 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:19,245 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:19,245 INFO L82 PathProgramCache]: Analyzing trace with hash -1526396608, now seen corresponding path program 1 times [2018-11-14 17:00:19,245 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:19,245 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:19,246 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:19,246 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:19,246 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:19,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:19,344 INFO L256 TraceCheckUtils]: 0: Hoare triple {2526#true} call ULTIMATE.init(); {2526#true} is VALID [2018-11-14 17:00:19,348 INFO L273 TraceCheckUtils]: 1: Hoare triple {2526#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,350 INFO L273 TraceCheckUtils]: 2: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume true; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,354 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2528#(<= 100000 ~SIZE~0)} {2526#true} #128#return; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,356 INFO L256 TraceCheckUtils]: 4: Hoare triple {2528#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,356 INFO L273 TraceCheckUtils]: 5: Hoare triple {2528#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,358 INFO L273 TraceCheckUtils]: 6: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,358 INFO L273 TraceCheckUtils]: 7: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,358 INFO L256 TraceCheckUtils]: 8: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {2526#true} is VALID [2018-11-14 17:00:19,358 INFO L273 TraceCheckUtils]: 9: Hoare triple {2526#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {2526#true} is VALID [2018-11-14 17:00:19,359 INFO L273 TraceCheckUtils]: 10: Hoare triple {2526#true} assume true; {2526#true} is VALID [2018-11-14 17:00:19,359 INFO L273 TraceCheckUtils]: 11: Hoare triple {2526#true} assume !(~i~0 < ~size); {2526#true} is VALID [2018-11-14 17:00:19,359 INFO L273 TraceCheckUtils]: 12: Hoare triple {2526#true} #res := 0; {2526#true} is VALID [2018-11-14 17:00:19,359 INFO L273 TraceCheckUtils]: 13: Hoare triple {2526#true} assume true; {2526#true} is VALID [2018-11-14 17:00:19,364 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {2526#true} {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,365 INFO L273 TraceCheckUtils]: 15: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,366 INFO L273 TraceCheckUtils]: 16: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,366 INFO L256 TraceCheckUtils]: 17: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {2526#true} is VALID [2018-11-14 17:00:19,366 INFO L273 TraceCheckUtils]: 18: Hoare triple {2526#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {2526#true} is VALID [2018-11-14 17:00:19,366 INFO L273 TraceCheckUtils]: 19: Hoare triple {2526#true} assume true; {2526#true} is VALID [2018-11-14 17:00:19,367 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {2526#true} {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,372 INFO L273 TraceCheckUtils]: 21: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,372 INFO L273 TraceCheckUtils]: 22: Hoare triple {2529#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {2530#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:19,375 INFO L273 TraceCheckUtils]: 23: Hoare triple {2530#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {2530#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:19,375 INFO L273 TraceCheckUtils]: 24: Hoare triple {2530#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {2527#false} is VALID [2018-11-14 17:00:19,375 INFO L273 TraceCheckUtils]: 25: Hoare triple {2527#false} ~i~1 := 0; {2527#false} is VALID [2018-11-14 17:00:19,375 INFO L273 TraceCheckUtils]: 26: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 27: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 28: Hoare triple {2527#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 29: Hoare triple {2527#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 30: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 31: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,376 INFO L273 TraceCheckUtils]: 32: Hoare triple {2527#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 33: Hoare triple {2527#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 34: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 35: Hoare triple {2527#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 36: Hoare triple {2527#false} assume ~found~0 == 1;~i~1 := ~pos~0; {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 37: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 38: Hoare triple {2527#false} assume !(~i~1 < ~SIZE~0 - 1); {2527#false} is VALID [2018-11-14 17:00:19,377 INFO L273 TraceCheckUtils]: 39: Hoare triple {2527#false} assume ~found~0 == 1;~i~1 := 0; {2527#false} is VALID [2018-11-14 17:00:19,378 INFO L273 TraceCheckUtils]: 40: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,378 INFO L273 TraceCheckUtils]: 41: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,378 INFO L256 TraceCheckUtils]: 42: Hoare triple {2527#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {2527#false} is VALID [2018-11-14 17:00:19,378 INFO L273 TraceCheckUtils]: 43: Hoare triple {2527#false} ~cond := #in~cond; {2527#false} is VALID [2018-11-14 17:00:19,378 INFO L273 TraceCheckUtils]: 44: Hoare triple {2527#false} assume ~cond == 0; {2527#false} is VALID [2018-11-14 17:00:19,379 INFO L273 TraceCheckUtils]: 45: Hoare triple {2527#false} assume !false; {2527#false} is VALID [2018-11-14 17:00:19,380 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-14 17:00:19,380 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:19,380 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:19,389 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:19,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:19,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:19,457 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:19,712 INFO L256 TraceCheckUtils]: 0: Hoare triple {2526#true} call ULTIMATE.init(); {2526#true} is VALID [2018-11-14 17:00:19,712 INFO L273 TraceCheckUtils]: 1: Hoare triple {2526#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,714 INFO L273 TraceCheckUtils]: 2: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume true; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,716 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2528#(<= 100000 ~SIZE~0)} {2526#true} #128#return; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,719 INFO L256 TraceCheckUtils]: 4: Hoare triple {2528#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,719 INFO L273 TraceCheckUtils]: 5: Hoare triple {2528#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,721 INFO L273 TraceCheckUtils]: 6: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,721 INFO L273 TraceCheckUtils]: 7: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,723 INFO L256 TraceCheckUtils]: 8: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,725 INFO L273 TraceCheckUtils]: 9: Hoare triple {2528#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,725 INFO L273 TraceCheckUtils]: 10: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume true; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,727 INFO L273 TraceCheckUtils]: 11: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,730 INFO L273 TraceCheckUtils]: 12: Hoare triple {2528#(<= 100000 ~SIZE~0)} #res := 0; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,730 INFO L273 TraceCheckUtils]: 13: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume true; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,732 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {2528#(<= 100000 ~SIZE~0)} {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,733 INFO L273 TraceCheckUtils]: 15: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,734 INFO L273 TraceCheckUtils]: 16: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,735 INFO L256 TraceCheckUtils]: 17: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,736 INFO L273 TraceCheckUtils]: 18: Hoare triple {2528#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,736 INFO L273 TraceCheckUtils]: 19: Hoare triple {2528#(<= 100000 ~SIZE~0)} assume true; {2528#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:19,738 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {2528#(<= 100000 ~SIZE~0)} {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,739 INFO L273 TraceCheckUtils]: 21: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,740 INFO L273 TraceCheckUtils]: 22: Hoare triple {2549#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {2601#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,740 INFO L273 TraceCheckUtils]: 23: Hoare triple {2601#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {2601#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:19,742 INFO L273 TraceCheckUtils]: 24: Hoare triple {2601#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {2527#false} is VALID [2018-11-14 17:00:19,742 INFO L273 TraceCheckUtils]: 25: Hoare triple {2527#false} ~i~1 := 0; {2527#false} is VALID [2018-11-14 17:00:19,742 INFO L273 TraceCheckUtils]: 26: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,743 INFO L273 TraceCheckUtils]: 27: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,743 INFO L273 TraceCheckUtils]: 28: Hoare triple {2527#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {2527#false} is VALID [2018-11-14 17:00:19,743 INFO L273 TraceCheckUtils]: 29: Hoare triple {2527#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2527#false} is VALID [2018-11-14 17:00:19,743 INFO L273 TraceCheckUtils]: 30: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,743 INFO L273 TraceCheckUtils]: 31: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 32: Hoare triple {2527#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 33: Hoare triple {2527#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 34: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 35: Hoare triple {2527#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 36: Hoare triple {2527#false} assume ~found~0 == 1;~i~1 := ~pos~0; {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 37: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,744 INFO L273 TraceCheckUtils]: 38: Hoare triple {2527#false} assume !(~i~1 < ~SIZE~0 - 1); {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 39: Hoare triple {2527#false} assume ~found~0 == 1;~i~1 := 0; {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 40: Hoare triple {2527#false} assume true; {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 41: Hoare triple {2527#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L256 TraceCheckUtils]: 42: Hoare triple {2527#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 43: Hoare triple {2527#false} ~cond := #in~cond; {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 44: Hoare triple {2527#false} assume ~cond == 0; {2527#false} is VALID [2018-11-14 17:00:19,745 INFO L273 TraceCheckUtils]: 45: Hoare triple {2527#false} assume !false; {2527#false} is VALID [2018-11-14 17:00:19,747 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-14 17:00:19,767 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:19,767 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 7 [2018-11-14 17:00:19,768 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 46 [2018-11-14 17:00:19,768 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:19,768 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-14 17:00:19,905 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:19,905 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-14 17:00:19,905 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-14 17:00:19,905 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-14 17:00:19,906 INFO L87 Difference]: Start difference. First operand 73 states and 82 transitions. Second operand 7 states. [2018-11-14 17:00:20,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:20,545 INFO L93 Difference]: Finished difference Result 124 states and 143 transitions. [2018-11-14 17:00:20,545 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-14 17:00:20,545 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 46 [2018-11-14 17:00:20,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:20,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-14 17:00:20,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 99 transitions. [2018-11-14 17:00:20,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-14 17:00:20,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 99 transitions. [2018-11-14 17:00:20,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 99 transitions. [2018-11-14 17:00:20,672 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:20,673 INFO L225 Difference]: With dead ends: 124 [2018-11-14 17:00:20,673 INFO L226 Difference]: Without dead ends: 88 [2018-11-14 17:00:20,674 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 45 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-14 17:00:20,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2018-11-14 17:00:20,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 80. [2018-11-14 17:00:20,736 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:20,737 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand 80 states. [2018-11-14 17:00:20,737 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand 80 states. [2018-11-14 17:00:20,737 INFO L87 Difference]: Start difference. First operand 88 states. Second operand 80 states. [2018-11-14 17:00:20,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:20,741 INFO L93 Difference]: Finished difference Result 88 states and 103 transitions. [2018-11-14 17:00:20,742 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 103 transitions. [2018-11-14 17:00:20,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:20,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:20,742 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand 88 states. [2018-11-14 17:00:20,742 INFO L87 Difference]: Start difference. First operand 80 states. Second operand 88 states. [2018-11-14 17:00:20,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:20,745 INFO L93 Difference]: Finished difference Result 88 states and 103 transitions. [2018-11-14 17:00:20,746 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 103 transitions. [2018-11-14 17:00:20,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:20,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:20,746 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:20,746 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:20,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 80 states. [2018-11-14 17:00:20,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 90 transitions. [2018-11-14 17:00:20,749 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 90 transitions. Word has length 46 [2018-11-14 17:00:20,749 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:20,749 INFO L480 AbstractCegarLoop]: Abstraction has 80 states and 90 transitions. [2018-11-14 17:00:20,749 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-14 17:00:20,749 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 90 transitions. [2018-11-14 17:00:20,750 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-14 17:00:20,750 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:20,750 INFO L375 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:20,750 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:20,750 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:20,751 INFO L82 PathProgramCache]: Analyzing trace with hash 1744311340, now seen corresponding path program 1 times [2018-11-14 17:00:20,751 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:20,751 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:20,752 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:20,752 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:20,752 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:20,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:21,290 INFO L256 TraceCheckUtils]: 0: Hoare triple {3112#true} call ULTIMATE.init(); {3112#true} is VALID [2018-11-14 17:00:21,291 INFO L273 TraceCheckUtils]: 1: Hoare triple {3112#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,292 INFO L273 TraceCheckUtils]: 2: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,292 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3114#(<= 100000 ~SIZE~0)} {3112#true} #128#return; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,293 INFO L256 TraceCheckUtils]: 4: Hoare triple {3114#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,294 INFO L273 TraceCheckUtils]: 5: Hoare triple {3114#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,295 INFO L273 TraceCheckUtils]: 6: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,296 INFO L273 TraceCheckUtils]: 7: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,296 INFO L256 TraceCheckUtils]: 8: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3112#true} is VALID [2018-11-14 17:00:21,296 INFO L273 TraceCheckUtils]: 9: Hoare triple {3112#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3112#true} is VALID [2018-11-14 17:00:21,296 INFO L273 TraceCheckUtils]: 10: Hoare triple {3112#true} assume true; {3112#true} is VALID [2018-11-14 17:00:21,297 INFO L273 TraceCheckUtils]: 11: Hoare triple {3112#true} assume !(~i~0 < ~size); {3112#true} is VALID [2018-11-14 17:00:21,297 INFO L273 TraceCheckUtils]: 12: Hoare triple {3112#true} #res := 0; {3112#true} is VALID [2018-11-14 17:00:21,297 INFO L273 TraceCheckUtils]: 13: Hoare triple {3112#true} assume true; {3112#true} is VALID [2018-11-14 17:00:21,306 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {3112#true} {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,306 INFO L273 TraceCheckUtils]: 15: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,307 INFO L273 TraceCheckUtils]: 16: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,307 INFO L256 TraceCheckUtils]: 17: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {3112#true} is VALID [2018-11-14 17:00:21,307 INFO L273 TraceCheckUtils]: 18: Hoare triple {3112#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {3112#true} is VALID [2018-11-14 17:00:21,307 INFO L273 TraceCheckUtils]: 19: Hoare triple {3112#true} assume true; {3112#true} is VALID [2018-11-14 17:00:21,308 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {3112#true} {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,309 INFO L273 TraceCheckUtils]: 21: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,309 INFO L273 TraceCheckUtils]: 22: Hoare triple {3115#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,310 INFO L273 TraceCheckUtils]: 23: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,310 INFO L273 TraceCheckUtils]: 24: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,311 INFO L256 TraceCheckUtils]: 25: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3112#true} is VALID [2018-11-14 17:00:21,311 INFO L273 TraceCheckUtils]: 26: Hoare triple {3112#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3112#true} is VALID [2018-11-14 17:00:21,311 INFO L273 TraceCheckUtils]: 27: Hoare triple {3112#true} assume true; {3112#true} is VALID [2018-11-14 17:00:21,311 INFO L273 TraceCheckUtils]: 28: Hoare triple {3112#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3112#true} is VALID [2018-11-14 17:00:21,312 INFO L273 TraceCheckUtils]: 29: Hoare triple {3112#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3112#true} is VALID [2018-11-14 17:00:21,312 INFO L273 TraceCheckUtils]: 30: Hoare triple {3112#true} assume true; {3112#true} is VALID [2018-11-14 17:00:21,313 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3112#true} {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,314 INFO L273 TraceCheckUtils]: 32: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,314 INFO L273 TraceCheckUtils]: 33: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:21,314 INFO L273 TraceCheckUtils]: 34: Hoare triple {3116#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3117#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:21,315 INFO L273 TraceCheckUtils]: 35: Hoare triple {3117#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {3117#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:21,315 INFO L273 TraceCheckUtils]: 36: Hoare triple {3117#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {3113#false} is VALID [2018-11-14 17:00:21,315 INFO L273 TraceCheckUtils]: 37: Hoare triple {3113#false} ~i~1 := 0; {3113#false} is VALID [2018-11-14 17:00:21,316 INFO L273 TraceCheckUtils]: 38: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,316 INFO L273 TraceCheckUtils]: 39: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,316 INFO L273 TraceCheckUtils]: 40: Hoare triple {3113#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {3113#false} is VALID [2018-11-14 17:00:21,316 INFO L273 TraceCheckUtils]: 41: Hoare triple {3113#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3113#false} is VALID [2018-11-14 17:00:21,317 INFO L273 TraceCheckUtils]: 42: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,317 INFO L273 TraceCheckUtils]: 43: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,317 INFO L273 TraceCheckUtils]: 44: Hoare triple {3113#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {3113#false} is VALID [2018-11-14 17:00:21,317 INFO L273 TraceCheckUtils]: 45: Hoare triple {3113#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3113#false} is VALID [2018-11-14 17:00:21,318 INFO L273 TraceCheckUtils]: 46: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,318 INFO L273 TraceCheckUtils]: 47: Hoare triple {3113#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {3113#false} is VALID [2018-11-14 17:00:21,318 INFO L273 TraceCheckUtils]: 48: Hoare triple {3113#false} assume ~found~0 == 1;~i~1 := ~pos~0; {3113#false} is VALID [2018-11-14 17:00:21,319 INFO L273 TraceCheckUtils]: 49: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,319 INFO L273 TraceCheckUtils]: 50: Hoare triple {3113#false} assume !(~i~1 < ~SIZE~0 - 1); {3113#false} is VALID [2018-11-14 17:00:21,319 INFO L273 TraceCheckUtils]: 51: Hoare triple {3113#false} assume ~found~0 == 1;~i~1 := 0; {3113#false} is VALID [2018-11-14 17:00:21,319 INFO L273 TraceCheckUtils]: 52: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,319 INFO L273 TraceCheckUtils]: 53: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,320 INFO L256 TraceCheckUtils]: 54: Hoare triple {3113#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {3113#false} is VALID [2018-11-14 17:00:21,320 INFO L273 TraceCheckUtils]: 55: Hoare triple {3113#false} ~cond := #in~cond; {3113#false} is VALID [2018-11-14 17:00:21,320 INFO L273 TraceCheckUtils]: 56: Hoare triple {3113#false} assume ~cond == 0; {3113#false} is VALID [2018-11-14 17:00:21,320 INFO L273 TraceCheckUtils]: 57: Hoare triple {3113#false} assume !false; {3113#false} is VALID [2018-11-14 17:00:21,323 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2018-11-14 17:00:21,323 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:21,323 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:21,331 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:21,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:21,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:21,403 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:21,697 INFO L256 TraceCheckUtils]: 0: Hoare triple {3112#true} call ULTIMATE.init(); {3112#true} is VALID [2018-11-14 17:00:21,697 INFO L273 TraceCheckUtils]: 1: Hoare triple {3112#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,698 INFO L273 TraceCheckUtils]: 2: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,699 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3114#(<= 100000 ~SIZE~0)} {3112#true} #128#return; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,700 INFO L256 TraceCheckUtils]: 4: Hoare triple {3114#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,701 INFO L273 TraceCheckUtils]: 5: Hoare triple {3114#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,701 INFO L273 TraceCheckUtils]: 6: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,702 INFO L273 TraceCheckUtils]: 7: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,703 INFO L256 TraceCheckUtils]: 8: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,703 INFO L273 TraceCheckUtils]: 9: Hoare triple {3114#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,704 INFO L273 TraceCheckUtils]: 10: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,704 INFO L273 TraceCheckUtils]: 11: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,705 INFO L273 TraceCheckUtils]: 12: Hoare triple {3114#(<= 100000 ~SIZE~0)} #res := 0; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,705 INFO L273 TraceCheckUtils]: 13: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,707 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {3114#(<= 100000 ~SIZE~0)} {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,708 INFO L273 TraceCheckUtils]: 15: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,709 INFO L273 TraceCheckUtils]: 16: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,710 INFO L256 TraceCheckUtils]: 17: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,711 INFO L273 TraceCheckUtils]: 18: Hoare triple {3114#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,712 INFO L273 TraceCheckUtils]: 19: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,713 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {3114#(<= 100000 ~SIZE~0)} {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,714 INFO L273 TraceCheckUtils]: 21: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,715 INFO L273 TraceCheckUtils]: 22: Hoare triple {3136#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,715 INFO L273 TraceCheckUtils]: 23: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,716 INFO L273 TraceCheckUtils]: 24: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,718 INFO L256 TraceCheckUtils]: 25: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,718 INFO L273 TraceCheckUtils]: 26: Hoare triple {3114#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,719 INFO L273 TraceCheckUtils]: 27: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,720 INFO L273 TraceCheckUtils]: 28: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,720 INFO L273 TraceCheckUtils]: 29: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,721 INFO L273 TraceCheckUtils]: 30: Hoare triple {3114#(<= 100000 ~SIZE~0)} assume true; {3114#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:21,722 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3114#(<= 100000 ~SIZE~0)} {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,723 INFO L273 TraceCheckUtils]: 32: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,724 INFO L273 TraceCheckUtils]: 33: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,725 INFO L273 TraceCheckUtils]: 34: Hoare triple {3188#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3225#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,725 INFO L273 TraceCheckUtils]: 35: Hoare triple {3225#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {3225#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:21,726 INFO L273 TraceCheckUtils]: 36: Hoare triple {3225#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {3113#false} is VALID [2018-11-14 17:00:21,726 INFO L273 TraceCheckUtils]: 37: Hoare triple {3113#false} ~i~1 := 0; {3113#false} is VALID [2018-11-14 17:00:21,727 INFO L273 TraceCheckUtils]: 38: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,727 INFO L273 TraceCheckUtils]: 39: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,727 INFO L273 TraceCheckUtils]: 40: Hoare triple {3113#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {3113#false} is VALID [2018-11-14 17:00:21,727 INFO L273 TraceCheckUtils]: 41: Hoare triple {3113#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3113#false} is VALID [2018-11-14 17:00:21,728 INFO L273 TraceCheckUtils]: 42: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,728 INFO L273 TraceCheckUtils]: 43: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,728 INFO L273 TraceCheckUtils]: 44: Hoare triple {3113#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {3113#false} is VALID [2018-11-14 17:00:21,728 INFO L273 TraceCheckUtils]: 45: Hoare triple {3113#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3113#false} is VALID [2018-11-14 17:00:21,728 INFO L273 TraceCheckUtils]: 46: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,729 INFO L273 TraceCheckUtils]: 47: Hoare triple {3113#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {3113#false} is VALID [2018-11-14 17:00:21,729 INFO L273 TraceCheckUtils]: 48: Hoare triple {3113#false} assume ~found~0 == 1;~i~1 := ~pos~0; {3113#false} is VALID [2018-11-14 17:00:21,729 INFO L273 TraceCheckUtils]: 49: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,729 INFO L273 TraceCheckUtils]: 50: Hoare triple {3113#false} assume !(~i~1 < ~SIZE~0 - 1); {3113#false} is VALID [2018-11-14 17:00:21,729 INFO L273 TraceCheckUtils]: 51: Hoare triple {3113#false} assume ~found~0 == 1;~i~1 := 0; {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L273 TraceCheckUtils]: 52: Hoare triple {3113#false} assume true; {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L273 TraceCheckUtils]: 53: Hoare triple {3113#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L256 TraceCheckUtils]: 54: Hoare triple {3113#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L273 TraceCheckUtils]: 55: Hoare triple {3113#false} ~cond := #in~cond; {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L273 TraceCheckUtils]: 56: Hoare triple {3113#false} assume ~cond == 0; {3113#false} is VALID [2018-11-14 17:00:21,730 INFO L273 TraceCheckUtils]: 57: Hoare triple {3113#false} assume !false; {3113#false} is VALID [2018-11-14 17:00:21,734 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2018-11-14 17:00:21,764 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:21,765 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2018-11-14 17:00:21,766 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 58 [2018-11-14 17:00:21,766 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:21,766 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-14 17:00:21,964 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:21,965 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-14 17:00:21,965 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-14 17:00:21,965 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=39, Unknown=0, NotChecked=0, Total=72 [2018-11-14 17:00:21,965 INFO L87 Difference]: Start difference. First operand 80 states and 90 transitions. Second operand 9 states. [2018-11-14 17:00:22,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:22,646 INFO L93 Difference]: Finished difference Result 134 states and 158 transitions. [2018-11-14 17:00:22,646 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-14 17:00:22,646 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 58 [2018-11-14 17:00:22,647 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:22,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-14 17:00:22,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2018-11-14 17:00:22,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-14 17:00:22,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2018-11-14 17:00:22,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 110 transitions. [2018-11-14 17:00:22,772 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:22,776 INFO L225 Difference]: With dead ends: 134 [2018-11-14 17:00:22,776 INFO L226 Difference]: Without dead ends: 98 [2018-11-14 17:00:22,777 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 56 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=33, Invalid=39, Unknown=0, NotChecked=0, Total=72 [2018-11-14 17:00:22,777 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2018-11-14 17:00:22,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 90. [2018-11-14 17:00:22,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:22,886 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand 90 states. [2018-11-14 17:00:22,886 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand 90 states. [2018-11-14 17:00:22,886 INFO L87 Difference]: Start difference. First operand 98 states. Second operand 90 states. [2018-11-14 17:00:22,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:22,891 INFO L93 Difference]: Finished difference Result 98 states and 118 transitions. [2018-11-14 17:00:22,891 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 118 transitions. [2018-11-14 17:00:22,892 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:22,892 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:22,892 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand 98 states. [2018-11-14 17:00:22,892 INFO L87 Difference]: Start difference. First operand 90 states. Second operand 98 states. [2018-11-14 17:00:22,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:22,896 INFO L93 Difference]: Finished difference Result 98 states and 118 transitions. [2018-11-14 17:00:22,896 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 118 transitions. [2018-11-14 17:00:22,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:22,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:22,897 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:22,897 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:22,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-14 17:00:22,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 105 transitions. [2018-11-14 17:00:22,900 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 105 transitions. Word has length 58 [2018-11-14 17:00:22,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:22,901 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 105 transitions. [2018-11-14 17:00:22,901 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-14 17:00:22,901 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 105 transitions. [2018-11-14 17:00:22,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-14 17:00:22,902 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:22,902 INFO L375 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:22,902 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:22,903 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:22,903 INFO L82 PathProgramCache]: Analyzing trace with hash 1433804056, now seen corresponding path program 2 times [2018-11-14 17:00:22,903 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:22,903 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:22,904 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:22,904 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:22,904 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:22,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:23,703 INFO L256 TraceCheckUtils]: 0: Hoare triple {3782#true} call ULTIMATE.init(); {3782#true} is VALID [2018-11-14 17:00:23,705 INFO L273 TraceCheckUtils]: 1: Hoare triple {3782#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:23,705 INFO L273 TraceCheckUtils]: 2: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:23,706 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3782#true} #128#return; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:23,706 INFO L256 TraceCheckUtils]: 4: Hoare triple {3784#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:23,707 INFO L273 TraceCheckUtils]: 5: Hoare triple {3784#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,707 INFO L273 TraceCheckUtils]: 6: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,708 INFO L273 TraceCheckUtils]: 7: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,708 INFO L256 TraceCheckUtils]: 8: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3782#true} is VALID [2018-11-14 17:00:23,708 INFO L273 TraceCheckUtils]: 9: Hoare triple {3782#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3782#true} is VALID [2018-11-14 17:00:23,708 INFO L273 TraceCheckUtils]: 10: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,708 INFO L273 TraceCheckUtils]: 11: Hoare triple {3782#true} assume !(~i~0 < ~size); {3782#true} is VALID [2018-11-14 17:00:23,709 INFO L273 TraceCheckUtils]: 12: Hoare triple {3782#true} #res := 0; {3782#true} is VALID [2018-11-14 17:00:23,709 INFO L273 TraceCheckUtils]: 13: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,710 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {3782#true} {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,710 INFO L273 TraceCheckUtils]: 15: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,711 INFO L273 TraceCheckUtils]: 16: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,711 INFO L256 TraceCheckUtils]: 17: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {3782#true} is VALID [2018-11-14 17:00:23,712 INFO L273 TraceCheckUtils]: 18: Hoare triple {3782#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {3782#true} is VALID [2018-11-14 17:00:23,712 INFO L273 TraceCheckUtils]: 19: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,713 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {3782#true} {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,714 INFO L273 TraceCheckUtils]: 21: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:23,717 INFO L273 TraceCheckUtils]: 22: Hoare triple {3785#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,718 INFO L273 TraceCheckUtils]: 23: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,718 INFO L273 TraceCheckUtils]: 24: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,718 INFO L256 TraceCheckUtils]: 25: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3782#true} is VALID [2018-11-14 17:00:23,718 INFO L273 TraceCheckUtils]: 26: Hoare triple {3782#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3782#true} is VALID [2018-11-14 17:00:23,719 INFO L273 TraceCheckUtils]: 27: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,719 INFO L273 TraceCheckUtils]: 28: Hoare triple {3782#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3782#true} is VALID [2018-11-14 17:00:23,719 INFO L273 TraceCheckUtils]: 29: Hoare triple {3782#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3782#true} is VALID [2018-11-14 17:00:23,719 INFO L273 TraceCheckUtils]: 30: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,729 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3782#true} {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,730 INFO L273 TraceCheckUtils]: 32: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,730 INFO L273 TraceCheckUtils]: 33: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:23,731 INFO L273 TraceCheckUtils]: 34: Hoare triple {3786#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,731 INFO L273 TraceCheckUtils]: 35: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,732 INFO L273 TraceCheckUtils]: 36: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,732 INFO L256 TraceCheckUtils]: 37: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3782#true} is VALID [2018-11-14 17:00:23,732 INFO L273 TraceCheckUtils]: 38: Hoare triple {3782#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3782#true} is VALID [2018-11-14 17:00:23,732 INFO L273 TraceCheckUtils]: 39: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,732 INFO L273 TraceCheckUtils]: 40: Hoare triple {3782#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3782#true} is VALID [2018-11-14 17:00:23,733 INFO L273 TraceCheckUtils]: 41: Hoare triple {3782#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3782#true} is VALID [2018-11-14 17:00:23,733 INFO L273 TraceCheckUtils]: 42: Hoare triple {3782#true} assume true; {3782#true} is VALID [2018-11-14 17:00:23,734 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {3782#true} {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,734 INFO L273 TraceCheckUtils]: 44: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,735 INFO L273 TraceCheckUtils]: 45: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:23,735 INFO L273 TraceCheckUtils]: 46: Hoare triple {3787#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3788#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:23,736 INFO L273 TraceCheckUtils]: 47: Hoare triple {3788#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {3788#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:23,736 INFO L273 TraceCheckUtils]: 48: Hoare triple {3788#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {3783#false} is VALID [2018-11-14 17:00:23,736 INFO L273 TraceCheckUtils]: 49: Hoare triple {3783#false} ~i~1 := 0; {3783#false} is VALID [2018-11-14 17:00:23,736 INFO L273 TraceCheckUtils]: 50: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:23,737 INFO L273 TraceCheckUtils]: 51: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:23,737 INFO L273 TraceCheckUtils]: 52: Hoare triple {3783#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {3783#false} is VALID [2018-11-14 17:00:23,737 INFO L273 TraceCheckUtils]: 53: Hoare triple {3783#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3783#false} is VALID [2018-11-14 17:00:23,738 INFO L273 TraceCheckUtils]: 54: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:23,738 INFO L273 TraceCheckUtils]: 55: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:23,738 INFO L273 TraceCheckUtils]: 56: Hoare triple {3783#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {3783#false} is VALID [2018-11-14 17:00:23,739 INFO L273 TraceCheckUtils]: 57: Hoare triple {3783#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3783#false} is VALID [2018-11-14 17:00:23,739 INFO L273 TraceCheckUtils]: 58: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:23,739 INFO L273 TraceCheckUtils]: 59: Hoare triple {3783#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {3783#false} is VALID [2018-11-14 17:00:23,739 INFO L273 TraceCheckUtils]: 60: Hoare triple {3783#false} assume ~found~0 == 1;~i~1 := ~pos~0; {3783#false} is VALID [2018-11-14 17:00:23,739 INFO L273 TraceCheckUtils]: 61: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:23,740 INFO L273 TraceCheckUtils]: 62: Hoare triple {3783#false} assume !(~i~1 < ~SIZE~0 - 1); {3783#false} is VALID [2018-11-14 17:00:23,740 INFO L273 TraceCheckUtils]: 63: Hoare triple {3783#false} assume ~found~0 == 1;~i~1 := 0; {3783#false} is VALID [2018-11-14 17:00:23,740 INFO L273 TraceCheckUtils]: 64: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:23,740 INFO L273 TraceCheckUtils]: 65: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:23,740 INFO L256 TraceCheckUtils]: 66: Hoare triple {3783#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {3783#false} is VALID [2018-11-14 17:00:23,741 INFO L273 TraceCheckUtils]: 67: Hoare triple {3783#false} ~cond := #in~cond; {3783#false} is VALID [2018-11-14 17:00:23,741 INFO L273 TraceCheckUtils]: 68: Hoare triple {3783#false} assume ~cond == 0; {3783#false} is VALID [2018-11-14 17:00:23,741 INFO L273 TraceCheckUtils]: 69: Hoare triple {3783#false} assume !false; {3783#false} is VALID [2018-11-14 17:00:23,755 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-14 17:00:23,756 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:23,756 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:23,764 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:00:23,803 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:00:23,803 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:00:23,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:23,822 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:24,010 INFO L256 TraceCheckUtils]: 0: Hoare triple {3782#true} call ULTIMATE.init(); {3782#true} is VALID [2018-11-14 17:00:24,011 INFO L273 TraceCheckUtils]: 1: Hoare triple {3782#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,011 INFO L273 TraceCheckUtils]: 2: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,021 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3782#true} #128#return; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,021 INFO L256 TraceCheckUtils]: 4: Hoare triple {3784#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,022 INFO L273 TraceCheckUtils]: 5: Hoare triple {3784#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,022 INFO L273 TraceCheckUtils]: 6: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,023 INFO L273 TraceCheckUtils]: 7: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,044 INFO L256 TraceCheckUtils]: 8: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,059 INFO L273 TraceCheckUtils]: 9: Hoare triple {3784#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,067 INFO L273 TraceCheckUtils]: 10: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,083 INFO L273 TraceCheckUtils]: 11: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,091 INFO L273 TraceCheckUtils]: 12: Hoare triple {3784#(<= 100000 ~SIZE~0)} #res := 0; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,106 INFO L273 TraceCheckUtils]: 13: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,109 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,109 INFO L273 TraceCheckUtils]: 15: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,111 INFO L273 TraceCheckUtils]: 16: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,112 INFO L256 TraceCheckUtils]: 17: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,113 INFO L273 TraceCheckUtils]: 18: Hoare triple {3784#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,113 INFO L273 TraceCheckUtils]: 19: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,115 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,115 INFO L273 TraceCheckUtils]: 21: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,116 INFO L273 TraceCheckUtils]: 22: Hoare triple {3807#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,116 INFO L273 TraceCheckUtils]: 23: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,117 INFO L273 TraceCheckUtils]: 24: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,118 INFO L256 TraceCheckUtils]: 25: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,118 INFO L273 TraceCheckUtils]: 26: Hoare triple {3784#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,118 INFO L273 TraceCheckUtils]: 27: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,119 INFO L273 TraceCheckUtils]: 28: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,119 INFO L273 TraceCheckUtils]: 29: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,120 INFO L273 TraceCheckUtils]: 30: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,121 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,122 INFO L273 TraceCheckUtils]: 32: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,123 INFO L273 TraceCheckUtils]: 33: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,124 INFO L273 TraceCheckUtils]: 34: Hoare triple {3859#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,124 INFO L273 TraceCheckUtils]: 35: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,125 INFO L273 TraceCheckUtils]: 36: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,126 INFO L256 TraceCheckUtils]: 37: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,127 INFO L273 TraceCheckUtils]: 38: Hoare triple {3784#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,127 INFO L273 TraceCheckUtils]: 39: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,128 INFO L273 TraceCheckUtils]: 40: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,129 INFO L273 TraceCheckUtils]: 41: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,129 INFO L273 TraceCheckUtils]: 42: Hoare triple {3784#(<= 100000 ~SIZE~0)} assume true; {3784#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:24,130 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {3784#(<= 100000 ~SIZE~0)} {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,131 INFO L273 TraceCheckUtils]: 44: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,132 INFO L273 TraceCheckUtils]: 45: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,133 INFO L273 TraceCheckUtils]: 46: Hoare triple {3896#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {3933#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,133 INFO L273 TraceCheckUtils]: 47: Hoare triple {3933#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {3933#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:24,134 INFO L273 TraceCheckUtils]: 48: Hoare triple {3933#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {3783#false} is VALID [2018-11-14 17:00:24,134 INFO L273 TraceCheckUtils]: 49: Hoare triple {3783#false} ~i~1 := 0; {3783#false} is VALID [2018-11-14 17:00:24,134 INFO L273 TraceCheckUtils]: 50: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:24,135 INFO L273 TraceCheckUtils]: 51: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:24,135 INFO L273 TraceCheckUtils]: 52: Hoare triple {3783#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {3783#false} is VALID [2018-11-14 17:00:24,135 INFO L273 TraceCheckUtils]: 53: Hoare triple {3783#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3783#false} is VALID [2018-11-14 17:00:24,135 INFO L273 TraceCheckUtils]: 54: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:24,136 INFO L273 TraceCheckUtils]: 55: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:24,136 INFO L273 TraceCheckUtils]: 56: Hoare triple {3783#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {3783#false} is VALID [2018-11-14 17:00:24,136 INFO L273 TraceCheckUtils]: 57: Hoare triple {3783#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {3783#false} is VALID [2018-11-14 17:00:24,136 INFO L273 TraceCheckUtils]: 58: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:24,136 INFO L273 TraceCheckUtils]: 59: Hoare triple {3783#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {3783#false} is VALID [2018-11-14 17:00:24,137 INFO L273 TraceCheckUtils]: 60: Hoare triple {3783#false} assume ~found~0 == 1;~i~1 := ~pos~0; {3783#false} is VALID [2018-11-14 17:00:24,137 INFO L273 TraceCheckUtils]: 61: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:24,137 INFO L273 TraceCheckUtils]: 62: Hoare triple {3783#false} assume !(~i~1 < ~SIZE~0 - 1); {3783#false} is VALID [2018-11-14 17:00:24,137 INFO L273 TraceCheckUtils]: 63: Hoare triple {3783#false} assume ~found~0 == 1;~i~1 := 0; {3783#false} is VALID [2018-11-14 17:00:24,138 INFO L273 TraceCheckUtils]: 64: Hoare triple {3783#false} assume true; {3783#false} is VALID [2018-11-14 17:00:24,138 INFO L273 TraceCheckUtils]: 65: Hoare triple {3783#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {3783#false} is VALID [2018-11-14 17:00:24,138 INFO L256 TraceCheckUtils]: 66: Hoare triple {3783#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {3783#false} is VALID [2018-11-14 17:00:24,138 INFO L273 TraceCheckUtils]: 67: Hoare triple {3783#false} ~cond := #in~cond; {3783#false} is VALID [2018-11-14 17:00:24,138 INFO L273 TraceCheckUtils]: 68: Hoare triple {3783#false} assume ~cond == 0; {3783#false} is VALID [2018-11-14 17:00:24,139 INFO L273 TraceCheckUtils]: 69: Hoare triple {3783#false} assume !false; {3783#false} is VALID [2018-11-14 17:00:24,143 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-14 17:00:24,163 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:24,164 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 11 [2018-11-14 17:00:24,164 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 70 [2018-11-14 17:00:24,164 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:24,164 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 17:00:24,270 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:24,271 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 17:00:24,271 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 17:00:24,271 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=61, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:00:24,271 INFO L87 Difference]: Start difference. First operand 90 states and 105 transitions. Second operand 11 states. [2018-11-14 17:00:25,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:25,182 INFO L93 Difference]: Finished difference Result 144 states and 173 transitions. [2018-11-14 17:00:25,183 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-14 17:00:25,183 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 70 [2018-11-14 17:00:25,183 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:25,183 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:00:25,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 121 transitions. [2018-11-14 17:00:25,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:00:25,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 121 transitions. [2018-11-14 17:00:25,189 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 121 transitions. [2018-11-14 17:00:25,799 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:25,802 INFO L225 Difference]: With dead ends: 144 [2018-11-14 17:00:25,802 INFO L226 Difference]: Without dead ends: 108 [2018-11-14 17:00:25,802 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=49, Invalid=61, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:00:25,803 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2018-11-14 17:00:25,870 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 100. [2018-11-14 17:00:25,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:25,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand 100 states. [2018-11-14 17:00:25,871 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand 100 states. [2018-11-14 17:00:25,871 INFO L87 Difference]: Start difference. First operand 108 states. Second operand 100 states. [2018-11-14 17:00:25,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:25,877 INFO L93 Difference]: Finished difference Result 108 states and 133 transitions. [2018-11-14 17:00:25,878 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 133 transitions. [2018-11-14 17:00:25,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:25,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:25,879 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 108 states. [2018-11-14 17:00:25,879 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 108 states. [2018-11-14 17:00:25,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:25,883 INFO L93 Difference]: Finished difference Result 108 states and 133 transitions. [2018-11-14 17:00:25,884 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 133 transitions. [2018-11-14 17:00:25,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:25,884 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:25,885 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:25,885 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:25,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 100 states. [2018-11-14 17:00:25,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 120 transitions. [2018-11-14 17:00:25,889 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 120 transitions. Word has length 70 [2018-11-14 17:00:25,889 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:25,889 INFO L480 AbstractCegarLoop]: Abstraction has 100 states and 120 transitions. [2018-11-14 17:00:25,889 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 17:00:25,889 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2018-11-14 17:00:25,890 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2018-11-14 17:00:25,890 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:25,891 INFO L375 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:25,891 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:25,891 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:25,891 INFO L82 PathProgramCache]: Analyzing trace with hash -286120956, now seen corresponding path program 3 times [2018-11-14 17:00:25,891 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:25,892 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:25,892 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:25,893 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:00:25,893 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:25,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:26,145 INFO L256 TraceCheckUtils]: 0: Hoare triple {4536#true} call ULTIMATE.init(); {4536#true} is VALID [2018-11-14 17:00:26,146 INFO L273 TraceCheckUtils]: 1: Hoare triple {4536#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,146 INFO L273 TraceCheckUtils]: 2: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,147 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4536#true} #128#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,148 INFO L256 TraceCheckUtils]: 4: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,149 INFO L273 TraceCheckUtils]: 5: Hoare triple {4538#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,149 INFO L273 TraceCheckUtils]: 6: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,150 INFO L273 TraceCheckUtils]: 7: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,150 INFO L256 TraceCheckUtils]: 8: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4536#true} is VALID [2018-11-14 17:00:26,151 INFO L273 TraceCheckUtils]: 9: Hoare triple {4536#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4536#true} is VALID [2018-11-14 17:00:26,151 INFO L273 TraceCheckUtils]: 10: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,151 INFO L273 TraceCheckUtils]: 11: Hoare triple {4536#true} assume !(~i~0 < ~size); {4536#true} is VALID [2018-11-14 17:00:26,151 INFO L273 TraceCheckUtils]: 12: Hoare triple {4536#true} #res := 0; {4536#true} is VALID [2018-11-14 17:00:26,152 INFO L273 TraceCheckUtils]: 13: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,153 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {4536#true} {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,153 INFO L273 TraceCheckUtils]: 15: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,154 INFO L273 TraceCheckUtils]: 16: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,154 INFO L256 TraceCheckUtils]: 17: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {4536#true} is VALID [2018-11-14 17:00:26,155 INFO L273 TraceCheckUtils]: 18: Hoare triple {4536#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {4536#true} is VALID [2018-11-14 17:00:26,155 INFO L273 TraceCheckUtils]: 19: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,159 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {4536#true} {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,159 INFO L273 TraceCheckUtils]: 21: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,160 INFO L273 TraceCheckUtils]: 22: Hoare triple {4539#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,160 INFO L273 TraceCheckUtils]: 23: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,160 INFO L273 TraceCheckUtils]: 24: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,161 INFO L256 TraceCheckUtils]: 25: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4536#true} is VALID [2018-11-14 17:00:26,161 INFO L273 TraceCheckUtils]: 26: Hoare triple {4536#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4536#true} is VALID [2018-11-14 17:00:26,161 INFO L273 TraceCheckUtils]: 27: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,161 INFO L273 TraceCheckUtils]: 28: Hoare triple {4536#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4536#true} is VALID [2018-11-14 17:00:26,161 INFO L273 TraceCheckUtils]: 29: Hoare triple {4536#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4536#true} is VALID [2018-11-14 17:00:26,161 INFO L273 TraceCheckUtils]: 30: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,162 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {4536#true} {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,162 INFO L273 TraceCheckUtils]: 32: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,163 INFO L273 TraceCheckUtils]: 33: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:26,163 INFO L273 TraceCheckUtils]: 34: Hoare triple {4540#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,164 INFO L273 TraceCheckUtils]: 35: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,164 INFO L273 TraceCheckUtils]: 36: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,164 INFO L256 TraceCheckUtils]: 37: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4536#true} is VALID [2018-11-14 17:00:26,165 INFO L273 TraceCheckUtils]: 38: Hoare triple {4536#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4536#true} is VALID [2018-11-14 17:00:26,165 INFO L273 TraceCheckUtils]: 39: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,165 INFO L273 TraceCheckUtils]: 40: Hoare triple {4536#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4536#true} is VALID [2018-11-14 17:00:26,165 INFO L273 TraceCheckUtils]: 41: Hoare triple {4536#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4536#true} is VALID [2018-11-14 17:00:26,166 INFO L273 TraceCheckUtils]: 42: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,167 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4536#true} {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,167 INFO L273 TraceCheckUtils]: 44: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,168 INFO L273 TraceCheckUtils]: 45: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:26,168 INFO L273 TraceCheckUtils]: 46: Hoare triple {4541#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,169 INFO L273 TraceCheckUtils]: 47: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,169 INFO L273 TraceCheckUtils]: 48: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,169 INFO L256 TraceCheckUtils]: 49: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4536#true} is VALID [2018-11-14 17:00:26,169 INFO L273 TraceCheckUtils]: 50: Hoare triple {4536#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4536#true} is VALID [2018-11-14 17:00:26,169 INFO L273 TraceCheckUtils]: 51: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,169 INFO L273 TraceCheckUtils]: 52: Hoare triple {4536#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4536#true} is VALID [2018-11-14 17:00:26,170 INFO L273 TraceCheckUtils]: 53: Hoare triple {4536#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4536#true} is VALID [2018-11-14 17:00:26,170 INFO L273 TraceCheckUtils]: 54: Hoare triple {4536#true} assume true; {4536#true} is VALID [2018-11-14 17:00:26,170 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {4536#true} {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,171 INFO L273 TraceCheckUtils]: 56: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,171 INFO L273 TraceCheckUtils]: 57: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:26,190 INFO L273 TraceCheckUtils]: 58: Hoare triple {4542#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4543#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:26,196 INFO L273 TraceCheckUtils]: 59: Hoare triple {4543#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {4543#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:26,196 INFO L273 TraceCheckUtils]: 60: Hoare triple {4543#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {4537#false} is VALID [2018-11-14 17:00:26,196 INFO L273 TraceCheckUtils]: 61: Hoare triple {4537#false} ~i~1 := 0; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 62: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 63: Hoare triple {4537#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 64: Hoare triple {4537#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 65: Hoare triple {4537#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 66: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 67: Hoare triple {4537#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 68: Hoare triple {4537#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {4537#false} is VALID [2018-11-14 17:00:26,197 INFO L273 TraceCheckUtils]: 69: Hoare triple {4537#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 70: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 71: Hoare triple {4537#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 72: Hoare triple {4537#false} assume ~found~0 == 1;~i~1 := ~pos~0; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 73: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 74: Hoare triple {4537#false} assume !(~i~1 < ~SIZE~0 - 1); {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 75: Hoare triple {4537#false} assume ~found~0 == 1;~i~1 := 0; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 76: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,198 INFO L273 TraceCheckUtils]: 77: Hoare triple {4537#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4537#false} is VALID [2018-11-14 17:00:26,199 INFO L256 TraceCheckUtils]: 78: Hoare triple {4537#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {4537#false} is VALID [2018-11-14 17:00:26,199 INFO L273 TraceCheckUtils]: 79: Hoare triple {4537#false} ~cond := #in~cond; {4537#false} is VALID [2018-11-14 17:00:26,199 INFO L273 TraceCheckUtils]: 80: Hoare triple {4537#false} assume ~cond == 0; {4537#false} is VALID [2018-11-14 17:00:26,199 INFO L273 TraceCheckUtils]: 81: Hoare triple {4537#false} assume !false; {4537#false} is VALID [2018-11-14 17:00:26,204 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 41 trivial. 0 not checked. [2018-11-14 17:00:26,204 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:26,204 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:26,213 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:00:26,243 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-14 17:00:26,243 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:00:26,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:26,265 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:26,452 INFO L256 TraceCheckUtils]: 0: Hoare triple {4536#true} call ULTIMATE.init(); {4536#true} is VALID [2018-11-14 17:00:26,453 INFO L273 TraceCheckUtils]: 1: Hoare triple {4536#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,453 INFO L273 TraceCheckUtils]: 2: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,454 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4536#true} #128#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,455 INFO L256 TraceCheckUtils]: 4: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,455 INFO L273 TraceCheckUtils]: 5: Hoare triple {4538#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,456 INFO L273 TraceCheckUtils]: 6: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,456 INFO L273 TraceCheckUtils]: 7: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,457 INFO L256 TraceCheckUtils]: 8: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,458 INFO L273 TraceCheckUtils]: 9: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,458 INFO L273 TraceCheckUtils]: 10: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,459 INFO L273 TraceCheckUtils]: 11: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,459 INFO L273 TraceCheckUtils]: 12: Hoare triple {4538#(<= 100000 ~SIZE~0)} #res := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,460 INFO L273 TraceCheckUtils]: 13: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,461 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4538#(<= 100000 ~SIZE~0)} #132#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,462 INFO L273 TraceCheckUtils]: 15: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,462 INFO L273 TraceCheckUtils]: 16: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,463 INFO L256 TraceCheckUtils]: 17: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,464 INFO L273 TraceCheckUtils]: 18: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,464 INFO L273 TraceCheckUtils]: 19: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,465 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4538#(<= 100000 ~SIZE~0)} #134#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,466 INFO L273 TraceCheckUtils]: 21: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,466 INFO L273 TraceCheckUtils]: 22: Hoare triple {4538#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,467 INFO L273 TraceCheckUtils]: 23: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,467 INFO L273 TraceCheckUtils]: 24: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,468 INFO L256 TraceCheckUtils]: 25: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,469 INFO L273 TraceCheckUtils]: 26: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,469 INFO L273 TraceCheckUtils]: 27: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,470 INFO L273 TraceCheckUtils]: 28: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,471 INFO L273 TraceCheckUtils]: 29: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,471 INFO L273 TraceCheckUtils]: 30: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,472 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4538#(<= 100000 ~SIZE~0)} #132#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,473 INFO L273 TraceCheckUtils]: 32: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,473 INFO L273 TraceCheckUtils]: 33: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,474 INFO L273 TraceCheckUtils]: 34: Hoare triple {4538#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,474 INFO L273 TraceCheckUtils]: 35: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,475 INFO L273 TraceCheckUtils]: 36: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,476 INFO L256 TraceCheckUtils]: 37: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,476 INFO L273 TraceCheckUtils]: 38: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,477 INFO L273 TraceCheckUtils]: 39: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,477 INFO L273 TraceCheckUtils]: 40: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,478 INFO L273 TraceCheckUtils]: 41: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,478 INFO L273 TraceCheckUtils]: 42: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,479 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4538#(<= 100000 ~SIZE~0)} #132#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,480 INFO L273 TraceCheckUtils]: 44: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,481 INFO L273 TraceCheckUtils]: 45: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,481 INFO L273 TraceCheckUtils]: 46: Hoare triple {4538#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,482 INFO L273 TraceCheckUtils]: 47: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,482 INFO L273 TraceCheckUtils]: 48: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,483 INFO L256 TraceCheckUtils]: 49: Hoare triple {4538#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,484 INFO L273 TraceCheckUtils]: 50: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,486 INFO L273 TraceCheckUtils]: 51: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,487 INFO L273 TraceCheckUtils]: 52: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,487 INFO L273 TraceCheckUtils]: 53: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,488 INFO L273 TraceCheckUtils]: 54: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,488 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {4538#(<= 100000 ~SIZE~0)} {4538#(<= 100000 ~SIZE~0)} #132#return; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,489 INFO L273 TraceCheckUtils]: 56: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,489 INFO L273 TraceCheckUtils]: 57: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,489 INFO L273 TraceCheckUtils]: 58: Hoare triple {4538#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,489 INFO L273 TraceCheckUtils]: 59: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume true; {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,490 INFO L273 TraceCheckUtils]: 60: Hoare triple {4538#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {4538#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:26,490 INFO L273 TraceCheckUtils]: 61: Hoare triple {4538#(<= 100000 ~SIZE~0)} ~i~1 := 0; {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,491 INFO L273 TraceCheckUtils]: 62: Hoare triple {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume true; {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,492 INFO L273 TraceCheckUtils]: 63: Hoare triple {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,492 INFO L273 TraceCheckUtils]: 64: Hoare triple {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,493 INFO L273 TraceCheckUtils]: 65: Hoare triple {4730#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,494 INFO L273 TraceCheckUtils]: 66: Hoare triple {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,495 INFO L273 TraceCheckUtils]: 67: Hoare triple {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,496 INFO L273 TraceCheckUtils]: 68: Hoare triple {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,496 INFO L273 TraceCheckUtils]: 69: Hoare triple {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,497 INFO L273 TraceCheckUtils]: 70: Hoare triple {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume true; {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,498 INFO L273 TraceCheckUtils]: 71: Hoare triple {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,498 INFO L273 TraceCheckUtils]: 72: Hoare triple {4753#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,499 INFO L273 TraceCheckUtils]: 73: Hoare triple {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:26,500 INFO L273 TraceCheckUtils]: 74: Hoare triple {4743#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {4537#false} is VALID [2018-11-14 17:00:26,500 INFO L273 TraceCheckUtils]: 75: Hoare triple {4537#false} assume ~found~0 == 1;~i~1 := 0; {4537#false} is VALID [2018-11-14 17:00:26,500 INFO L273 TraceCheckUtils]: 76: Hoare triple {4537#false} assume true; {4537#false} is VALID [2018-11-14 17:00:26,500 INFO L273 TraceCheckUtils]: 77: Hoare triple {4537#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {4537#false} is VALID [2018-11-14 17:00:26,501 INFO L256 TraceCheckUtils]: 78: Hoare triple {4537#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {4537#false} is VALID [2018-11-14 17:00:26,501 INFO L273 TraceCheckUtils]: 79: Hoare triple {4537#false} ~cond := #in~cond; {4537#false} is VALID [2018-11-14 17:00:26,501 INFO L273 TraceCheckUtils]: 80: Hoare triple {4537#false} assume ~cond == 0; {4537#false} is VALID [2018-11-14 17:00:26,501 INFO L273 TraceCheckUtils]: 81: Hoare triple {4537#false} assume !false; {4537#false} is VALID [2018-11-14 17:00:26,507 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2018-11-14 17:00:26,527 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:26,527 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6] total 11 [2018-11-14 17:00:26,528 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 82 [2018-11-14 17:00:26,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:26,528 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-14 17:00:26,625 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:26,626 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-14 17:00:26,626 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-14 17:00:26,626 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=76, Unknown=0, NotChecked=0, Total=110 [2018-11-14 17:00:26,626 INFO L87 Difference]: Start difference. First operand 100 states and 120 transitions. Second operand 11 states. [2018-11-14 17:00:27,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:27,966 INFO L93 Difference]: Finished difference Result 195 states and 237 transitions. [2018-11-14 17:00:27,966 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-14 17:00:27,967 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 82 [2018-11-14 17:00:27,967 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:27,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:00:27,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 189 transitions. [2018-11-14 17:00:27,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-14 17:00:27,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 189 transitions. [2018-11-14 17:00:27,973 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 189 transitions. [2018-11-14 17:00:28,244 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 189 edges. 189 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:28,250 INFO L225 Difference]: With dead ends: 195 [2018-11-14 17:00:28,250 INFO L226 Difference]: Without dead ends: 159 [2018-11-14 17:00:28,251 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 80 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=78, Invalid=194, Unknown=0, NotChecked=0, Total=272 [2018-11-14 17:00:28,251 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2018-11-14 17:00:28,361 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 118. [2018-11-14 17:00:28,362 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:28,362 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand 118 states. [2018-11-14 17:00:28,362 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand 118 states. [2018-11-14 17:00:28,362 INFO L87 Difference]: Start difference. First operand 159 states. Second operand 118 states. [2018-11-14 17:00:28,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:28,369 INFO L93 Difference]: Finished difference Result 159 states and 196 transitions. [2018-11-14 17:00:28,369 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 196 transitions. [2018-11-14 17:00:28,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:28,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:28,370 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand 159 states. [2018-11-14 17:00:28,370 INFO L87 Difference]: Start difference. First operand 118 states. Second operand 159 states. [2018-11-14 17:00:28,375 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:28,375 INFO L93 Difference]: Finished difference Result 159 states and 196 transitions. [2018-11-14 17:00:28,376 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 196 transitions. [2018-11-14 17:00:28,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:28,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:28,379 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:28,379 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:28,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 118 states. [2018-11-14 17:00:28,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 144 transitions. [2018-11-14 17:00:28,383 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 144 transitions. Word has length 82 [2018-11-14 17:00:28,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:28,384 INFO L480 AbstractCegarLoop]: Abstraction has 118 states and 144 transitions. [2018-11-14 17:00:28,384 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-14 17:00:28,384 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 144 transitions. [2018-11-14 17:00:28,385 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2018-11-14 17:00:28,385 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:28,386 INFO L375 BasicCegarLoop]: trace histogram [6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:28,386 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:28,386 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:28,386 INFO L82 PathProgramCache]: Analyzing trace with hash -975791255, now seen corresponding path program 1 times [2018-11-14 17:00:28,386 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:28,386 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:28,387 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:28,387 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:00:28,387 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:28,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:28,575 INFO L256 TraceCheckUtils]: 0: Hoare triple {5531#true} call ULTIMATE.init(); {5531#true} is VALID [2018-11-14 17:00:28,576 INFO L273 TraceCheckUtils]: 1: Hoare triple {5531#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,577 INFO L273 TraceCheckUtils]: 2: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,577 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5531#true} #128#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,578 INFO L256 TraceCheckUtils]: 4: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,578 INFO L273 TraceCheckUtils]: 5: Hoare triple {5533#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,579 INFO L273 TraceCheckUtils]: 6: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,580 INFO L273 TraceCheckUtils]: 7: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,580 INFO L256 TraceCheckUtils]: 8: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5531#true} is VALID [2018-11-14 17:00:28,580 INFO L273 TraceCheckUtils]: 9: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5531#true} is VALID [2018-11-14 17:00:28,580 INFO L273 TraceCheckUtils]: 10: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,580 INFO L273 TraceCheckUtils]: 11: Hoare triple {5531#true} assume !(~i~0 < ~size); {5531#true} is VALID [2018-11-14 17:00:28,581 INFO L273 TraceCheckUtils]: 12: Hoare triple {5531#true} #res := 0; {5531#true} is VALID [2018-11-14 17:00:28,581 INFO L273 TraceCheckUtils]: 13: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,602 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #132#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,610 INFO L273 TraceCheckUtils]: 15: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,617 INFO L273 TraceCheckUtils]: 16: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,618 INFO L256 TraceCheckUtils]: 17: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {5531#true} is VALID [2018-11-14 17:00:28,618 INFO L273 TraceCheckUtils]: 18: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {5531#true} is VALID [2018-11-14 17:00:28,618 INFO L273 TraceCheckUtils]: 19: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,636 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #134#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,645 INFO L273 TraceCheckUtils]: 21: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,660 INFO L273 TraceCheckUtils]: 22: Hoare triple {5533#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,668 INFO L273 TraceCheckUtils]: 23: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,682 INFO L273 TraceCheckUtils]: 24: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,682 INFO L256 TraceCheckUtils]: 25: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5531#true} is VALID [2018-11-14 17:00:28,682 INFO L273 TraceCheckUtils]: 26: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5531#true} is VALID [2018-11-14 17:00:28,682 INFO L273 TraceCheckUtils]: 27: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,683 INFO L273 TraceCheckUtils]: 28: Hoare triple {5531#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5531#true} is VALID [2018-11-14 17:00:28,683 INFO L273 TraceCheckUtils]: 29: Hoare triple {5531#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5531#true} is VALID [2018-11-14 17:00:28,683 INFO L273 TraceCheckUtils]: 30: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,689 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #132#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,689 INFO L273 TraceCheckUtils]: 32: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,695 INFO L273 TraceCheckUtils]: 33: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,695 INFO L273 TraceCheckUtils]: 34: Hoare triple {5533#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,695 INFO L273 TraceCheckUtils]: 35: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 36: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,696 INFO L256 TraceCheckUtils]: 37: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5531#true} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 38: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5531#true} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 39: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 40: Hoare triple {5531#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5531#true} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 41: Hoare triple {5531#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5531#true} is VALID [2018-11-14 17:00:28,696 INFO L273 TraceCheckUtils]: 42: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,697 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #132#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,698 INFO L273 TraceCheckUtils]: 44: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,698 INFO L273 TraceCheckUtils]: 45: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,698 INFO L273 TraceCheckUtils]: 46: Hoare triple {5533#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,699 INFO L273 TraceCheckUtils]: 47: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,699 INFO L273 TraceCheckUtils]: 48: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,699 INFO L256 TraceCheckUtils]: 49: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5531#true} is VALID [2018-11-14 17:00:28,699 INFO L273 TraceCheckUtils]: 50: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5531#true} is VALID [2018-11-14 17:00:28,699 INFO L273 TraceCheckUtils]: 51: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,699 INFO L273 TraceCheckUtils]: 52: Hoare triple {5531#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5531#true} is VALID [2018-11-14 17:00:28,700 INFO L273 TraceCheckUtils]: 53: Hoare triple {5531#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5531#true} is VALID [2018-11-14 17:00:28,700 INFO L273 TraceCheckUtils]: 54: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,700 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #132#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,701 INFO L273 TraceCheckUtils]: 56: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,702 INFO L273 TraceCheckUtils]: 57: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,702 INFO L273 TraceCheckUtils]: 58: Hoare triple {5533#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,702 INFO L273 TraceCheckUtils]: 59: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,703 INFO L273 TraceCheckUtils]: 60: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,703 INFO L256 TraceCheckUtils]: 61: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5531#true} is VALID [2018-11-14 17:00:28,703 INFO L273 TraceCheckUtils]: 62: Hoare triple {5531#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5531#true} is VALID [2018-11-14 17:00:28,703 INFO L273 TraceCheckUtils]: 63: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,703 INFO L273 TraceCheckUtils]: 64: Hoare triple {5531#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5531#true} is VALID [2018-11-14 17:00:28,703 INFO L273 TraceCheckUtils]: 65: Hoare triple {5531#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5531#true} is VALID [2018-11-14 17:00:28,704 INFO L273 TraceCheckUtils]: 66: Hoare triple {5531#true} assume true; {5531#true} is VALID [2018-11-14 17:00:28,714 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5531#true} {5533#(<= 100000 ~SIZE~0)} #132#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,715 INFO L273 TraceCheckUtils]: 68: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,719 INFO L273 TraceCheckUtils]: 69: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,719 INFO L273 TraceCheckUtils]: 70: Hoare triple {5533#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,719 INFO L273 TraceCheckUtils]: 71: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,720 INFO L273 TraceCheckUtils]: 72: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:28,720 INFO L273 TraceCheckUtils]: 73: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~i~1 := 0; {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,721 INFO L273 TraceCheckUtils]: 74: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,721 INFO L273 TraceCheckUtils]: 75: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,722 INFO L273 TraceCheckUtils]: 76: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,722 INFO L273 TraceCheckUtils]: 77: Hoare triple {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,722 INFO L273 TraceCheckUtils]: 78: Hoare triple {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume true; {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,723 INFO L273 TraceCheckUtils]: 79: Hoare triple {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,724 INFO L273 TraceCheckUtils]: 80: Hoare triple {5535#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,724 INFO L273 TraceCheckUtils]: 81: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,725 INFO L273 TraceCheckUtils]: 82: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:28,726 INFO L273 TraceCheckUtils]: 83: Hoare triple {5534#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:28,727 INFO L273 TraceCheckUtils]: 84: Hoare triple {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} assume true; {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:28,727 INFO L273 TraceCheckUtils]: 85: Hoare triple {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:28,728 INFO L273 TraceCheckUtils]: 86: Hoare triple {5536#(<= (+ main_~i~1 99999) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {5537#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:28,729 INFO L273 TraceCheckUtils]: 87: Hoare triple {5537#(<= (+ main_~i~1 99998) ~SIZE~0)} assume true; {5537#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:28,729 INFO L273 TraceCheckUtils]: 88: Hoare triple {5537#(<= (+ main_~i~1 99998) ~SIZE~0)} assume !(~i~1 < ~SIZE~0 - 1); {5532#false} is VALID [2018-11-14 17:00:28,730 INFO L273 TraceCheckUtils]: 89: Hoare triple {5532#false} assume ~found~0 == 1;~i~1 := 0; {5532#false} is VALID [2018-11-14 17:00:28,730 INFO L273 TraceCheckUtils]: 90: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:28,730 INFO L273 TraceCheckUtils]: 91: Hoare triple {5532#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {5532#false} is VALID [2018-11-14 17:00:28,730 INFO L256 TraceCheckUtils]: 92: Hoare triple {5532#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {5532#false} is VALID [2018-11-14 17:00:28,730 INFO L273 TraceCheckUtils]: 93: Hoare triple {5532#false} ~cond := #in~cond; {5532#false} is VALID [2018-11-14 17:00:28,731 INFO L273 TraceCheckUtils]: 94: Hoare triple {5532#false} assume ~cond == 0; {5532#false} is VALID [2018-11-14 17:00:28,731 INFO L273 TraceCheckUtils]: 95: Hoare triple {5532#false} assume !false; {5532#false} is VALID [2018-11-14 17:00:28,738 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 126 trivial. 0 not checked. [2018-11-14 17:00:28,739 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:28,739 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:28,751 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:28,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:28,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:28,819 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:29,107 INFO L256 TraceCheckUtils]: 0: Hoare triple {5531#true} call ULTIMATE.init(); {5531#true} is VALID [2018-11-14 17:00:29,108 INFO L273 TraceCheckUtils]: 1: Hoare triple {5531#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,109 INFO L273 TraceCheckUtils]: 2: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,109 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5531#true} #128#return; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,110 INFO L256 TraceCheckUtils]: 4: Hoare triple {5533#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,111 INFO L273 TraceCheckUtils]: 5: Hoare triple {5533#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,112 INFO L273 TraceCheckUtils]: 6: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,112 INFO L273 TraceCheckUtils]: 7: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,114 INFO L256 TraceCheckUtils]: 8: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,115 INFO L273 TraceCheckUtils]: 9: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,115 INFO L273 TraceCheckUtils]: 10: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,116 INFO L273 TraceCheckUtils]: 11: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,116 INFO L273 TraceCheckUtils]: 12: Hoare triple {5533#(<= 100000 ~SIZE~0)} #res := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,117 INFO L273 TraceCheckUtils]: 13: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,118 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,119 INFO L273 TraceCheckUtils]: 15: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,119 INFO L273 TraceCheckUtils]: 16: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,121 INFO L256 TraceCheckUtils]: 17: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,121 INFO L273 TraceCheckUtils]: 18: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,122 INFO L273 TraceCheckUtils]: 19: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,123 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,124 INFO L273 TraceCheckUtils]: 21: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,125 INFO L273 TraceCheckUtils]: 22: Hoare triple {5556#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,125 INFO L273 TraceCheckUtils]: 23: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,126 INFO L273 TraceCheckUtils]: 24: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,128 INFO L256 TraceCheckUtils]: 25: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,128 INFO L273 TraceCheckUtils]: 26: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,129 INFO L273 TraceCheckUtils]: 27: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,129 INFO L273 TraceCheckUtils]: 28: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,130 INFO L273 TraceCheckUtils]: 29: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,130 INFO L273 TraceCheckUtils]: 30: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,131 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,132 INFO L273 TraceCheckUtils]: 32: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,133 INFO L273 TraceCheckUtils]: 33: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,134 INFO L273 TraceCheckUtils]: 34: Hoare triple {5608#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,134 INFO L273 TraceCheckUtils]: 35: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,135 INFO L273 TraceCheckUtils]: 36: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,137 INFO L256 TraceCheckUtils]: 37: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,137 INFO L273 TraceCheckUtils]: 38: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,138 INFO L273 TraceCheckUtils]: 39: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,138 INFO L273 TraceCheckUtils]: 40: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,139 INFO L273 TraceCheckUtils]: 41: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,139 INFO L273 TraceCheckUtils]: 42: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,140 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,141 INFO L273 TraceCheckUtils]: 44: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,142 INFO L273 TraceCheckUtils]: 45: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,143 INFO L273 TraceCheckUtils]: 46: Hoare triple {5645#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,143 INFO L273 TraceCheckUtils]: 47: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,144 INFO L273 TraceCheckUtils]: 48: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,145 INFO L256 TraceCheckUtils]: 49: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,146 INFO L273 TraceCheckUtils]: 50: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,146 INFO L273 TraceCheckUtils]: 51: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,147 INFO L273 TraceCheckUtils]: 52: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,148 INFO L273 TraceCheckUtils]: 53: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,148 INFO L273 TraceCheckUtils]: 54: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,149 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #132#return; {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,150 INFO L273 TraceCheckUtils]: 56: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,151 INFO L273 TraceCheckUtils]: 57: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,152 INFO L273 TraceCheckUtils]: 58: Hoare triple {5682#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,152 INFO L273 TraceCheckUtils]: 59: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume true; {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,153 INFO L273 TraceCheckUtils]: 60: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,154 INFO L256 TraceCheckUtils]: 61: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,155 INFO L273 TraceCheckUtils]: 62: Hoare triple {5533#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,155 INFO L273 TraceCheckUtils]: 63: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,156 INFO L273 TraceCheckUtils]: 64: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,156 INFO L273 TraceCheckUtils]: 65: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,157 INFO L273 TraceCheckUtils]: 66: Hoare triple {5533#(<= 100000 ~SIZE~0)} assume true; {5533#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:29,158 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5533#(<= 100000 ~SIZE~0)} {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #132#return; {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,159 INFO L273 TraceCheckUtils]: 68: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,160 INFO L273 TraceCheckUtils]: 69: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,160 INFO L273 TraceCheckUtils]: 70: Hoare triple {5719#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {5756#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,161 INFO L273 TraceCheckUtils]: 71: Hoare triple {5756#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume true; {5756#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:29,162 INFO L273 TraceCheckUtils]: 72: Hoare triple {5756#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {5532#false} is VALID [2018-11-14 17:00:29,162 INFO L273 TraceCheckUtils]: 73: Hoare triple {5532#false} ~i~1 := 0; {5532#false} is VALID [2018-11-14 17:00:29,162 INFO L273 TraceCheckUtils]: 74: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,163 INFO L273 TraceCheckUtils]: 75: Hoare triple {5532#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {5532#false} is VALID [2018-11-14 17:00:29,163 INFO L273 TraceCheckUtils]: 76: Hoare triple {5532#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {5532#false} is VALID [2018-11-14 17:00:29,163 INFO L273 TraceCheckUtils]: 77: Hoare triple {5532#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {5532#false} is VALID [2018-11-14 17:00:29,163 INFO L273 TraceCheckUtils]: 78: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,163 INFO L273 TraceCheckUtils]: 79: Hoare triple {5532#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {5532#false} is VALID [2018-11-14 17:00:29,164 INFO L273 TraceCheckUtils]: 80: Hoare triple {5532#false} assume ~found~0 == 1;~i~1 := ~pos~0; {5532#false} is VALID [2018-11-14 17:00:29,164 INFO L273 TraceCheckUtils]: 81: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,164 INFO L273 TraceCheckUtils]: 82: Hoare triple {5532#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {5532#false} is VALID [2018-11-14 17:00:29,164 INFO L273 TraceCheckUtils]: 83: Hoare triple {5532#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {5532#false} is VALID [2018-11-14 17:00:29,164 INFO L273 TraceCheckUtils]: 84: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,165 INFO L273 TraceCheckUtils]: 85: Hoare triple {5532#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {5532#false} is VALID [2018-11-14 17:00:29,165 INFO L273 TraceCheckUtils]: 86: Hoare triple {5532#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {5532#false} is VALID [2018-11-14 17:00:29,165 INFO L273 TraceCheckUtils]: 87: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,165 INFO L273 TraceCheckUtils]: 88: Hoare triple {5532#false} assume !(~i~1 < ~SIZE~0 - 1); {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L273 TraceCheckUtils]: 89: Hoare triple {5532#false} assume ~found~0 == 1;~i~1 := 0; {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L273 TraceCheckUtils]: 90: Hoare triple {5532#false} assume true; {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L273 TraceCheckUtils]: 91: Hoare triple {5532#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L256 TraceCheckUtils]: 92: Hoare triple {5532#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L273 TraceCheckUtils]: 93: Hoare triple {5532#false} ~cond := #in~cond; {5532#false} is VALID [2018-11-14 17:00:29,166 INFO L273 TraceCheckUtils]: 94: Hoare triple {5532#false} assume ~cond == 0; {5532#false} is VALID [2018-11-14 17:00:29,167 INFO L273 TraceCheckUtils]: 95: Hoare triple {5532#false} assume !false; {5532#false} is VALID [2018-11-14 17:00:29,177 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 0 proven. 70 refuted. 0 times theorem prover too weak. 65 trivial. 0 not checked. [2018-11-14 17:00:29,197 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:29,198 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 9] total 13 [2018-11-14 17:00:29,198 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 96 [2018-11-14 17:00:29,199 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:29,199 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-14 17:00:29,334 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:29,335 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-14 17:00:29,335 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-14 17:00:29,335 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=107, Unknown=0, NotChecked=0, Total=156 [2018-11-14 17:00:29,336 INFO L87 Difference]: Start difference. First operand 118 states and 144 transitions. Second operand 13 states. [2018-11-14 17:00:31,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:31,458 INFO L93 Difference]: Finished difference Result 231 states and 282 transitions. [2018-11-14 17:00:31,458 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-14 17:00:31,458 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 96 [2018-11-14 17:00:31,458 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:31,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-14 17:00:31,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 221 transitions. [2018-11-14 17:00:31,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-14 17:00:31,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 221 transitions. [2018-11-14 17:00:31,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 221 transitions. [2018-11-14 17:00:32,007 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:32,010 INFO L225 Difference]: With dead ends: 231 [2018-11-14 17:00:32,010 INFO L226 Difference]: Without dead ends: 187 [2018-11-14 17:00:32,011 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 108 GetRequests, 91 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=87, Invalid=219, Unknown=0, NotChecked=0, Total=306 [2018-11-14 17:00:32,011 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2018-11-14 17:00:32,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 131. [2018-11-14 17:00:32,355 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:32,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand 131 states. [2018-11-14 17:00:32,355 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand 131 states. [2018-11-14 17:00:32,356 INFO L87 Difference]: Start difference. First operand 187 states. Second operand 131 states. [2018-11-14 17:00:32,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:32,363 INFO L93 Difference]: Finished difference Result 187 states and 232 transitions. [2018-11-14 17:00:32,363 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 232 transitions. [2018-11-14 17:00:32,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:32,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:32,364 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 187 states. [2018-11-14 17:00:32,364 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 187 states. [2018-11-14 17:00:32,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:32,370 INFO L93 Difference]: Finished difference Result 187 states and 232 transitions. [2018-11-14 17:00:32,370 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 232 transitions. [2018-11-14 17:00:32,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:32,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:32,372 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:32,372 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:32,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 131 states. [2018-11-14 17:00:32,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 162 transitions. [2018-11-14 17:00:32,376 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 162 transitions. Word has length 96 [2018-11-14 17:00:32,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:32,376 INFO L480 AbstractCegarLoop]: Abstraction has 131 states and 162 transitions. [2018-11-14 17:00:32,376 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-14 17:00:32,377 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2018-11-14 17:00:32,378 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2018-11-14 17:00:32,378 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:32,378 INFO L375 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:32,378 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:32,379 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:32,379 INFO L82 PathProgramCache]: Analyzing trace with hash 953272754, now seen corresponding path program 1 times [2018-11-14 17:00:32,379 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:32,379 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:32,380 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:32,380 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:32,380 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:32,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:32,755 INFO L256 TraceCheckUtils]: 0: Hoare triple {6688#true} call ULTIMATE.init(); {6688#true} is VALID [2018-11-14 17:00:32,757 INFO L273 TraceCheckUtils]: 1: Hoare triple {6688#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:32,758 INFO L273 TraceCheckUtils]: 2: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:32,758 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6688#true} #128#return; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:32,759 INFO L256 TraceCheckUtils]: 4: Hoare triple {6690#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:32,760 INFO L273 TraceCheckUtils]: 5: Hoare triple {6690#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,760 INFO L273 TraceCheckUtils]: 6: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,761 INFO L273 TraceCheckUtils]: 7: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,761 INFO L256 TraceCheckUtils]: 8: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,762 INFO L273 TraceCheckUtils]: 9: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,762 INFO L273 TraceCheckUtils]: 10: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,762 INFO L273 TraceCheckUtils]: 11: Hoare triple {6688#true} assume !(~i~0 < ~size); {6688#true} is VALID [2018-11-14 17:00:32,762 INFO L273 TraceCheckUtils]: 12: Hoare triple {6688#true} #res := 0; {6688#true} is VALID [2018-11-14 17:00:32,763 INFO L273 TraceCheckUtils]: 13: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,764 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {6688#true} {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,765 INFO L273 TraceCheckUtils]: 15: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,765 INFO L273 TraceCheckUtils]: 16: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,765 INFO L256 TraceCheckUtils]: 17: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {6688#true} is VALID [2018-11-14 17:00:32,765 INFO L273 TraceCheckUtils]: 18: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {6688#true} is VALID [2018-11-14 17:00:32,765 INFO L273 TraceCheckUtils]: 19: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,766 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {6688#true} {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,766 INFO L273 TraceCheckUtils]: 21: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:32,767 INFO L273 TraceCheckUtils]: 22: Hoare triple {6691#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,767 INFO L273 TraceCheckUtils]: 23: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,768 INFO L273 TraceCheckUtils]: 24: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,768 INFO L256 TraceCheckUtils]: 25: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,768 INFO L273 TraceCheckUtils]: 26: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,769 INFO L273 TraceCheckUtils]: 27: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,769 INFO L273 TraceCheckUtils]: 28: Hoare triple {6688#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6688#true} is VALID [2018-11-14 17:00:32,769 INFO L273 TraceCheckUtils]: 29: Hoare triple {6688#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6688#true} is VALID [2018-11-14 17:00:32,769 INFO L273 TraceCheckUtils]: 30: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,770 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {6688#true} {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,771 INFO L273 TraceCheckUtils]: 32: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,771 INFO L273 TraceCheckUtils]: 33: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:32,772 INFO L273 TraceCheckUtils]: 34: Hoare triple {6692#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,773 INFO L273 TraceCheckUtils]: 35: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,773 INFO L273 TraceCheckUtils]: 36: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,774 INFO L256 TraceCheckUtils]: 37: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,774 INFO L273 TraceCheckUtils]: 38: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,774 INFO L273 TraceCheckUtils]: 39: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,774 INFO L273 TraceCheckUtils]: 40: Hoare triple {6688#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6688#true} is VALID [2018-11-14 17:00:32,774 INFO L273 TraceCheckUtils]: 41: Hoare triple {6688#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6688#true} is VALID [2018-11-14 17:00:32,775 INFO L273 TraceCheckUtils]: 42: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,776 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {6688#true} {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,776 INFO L273 TraceCheckUtils]: 44: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,776 INFO L273 TraceCheckUtils]: 45: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:32,777 INFO L273 TraceCheckUtils]: 46: Hoare triple {6693#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,777 INFO L273 TraceCheckUtils]: 47: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 48: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,778 INFO L256 TraceCheckUtils]: 49: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 50: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 51: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 52: Hoare triple {6688#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6688#true} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 53: Hoare triple {6688#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6688#true} is VALID [2018-11-14 17:00:32,778 INFO L273 TraceCheckUtils]: 54: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,779 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {6688#true} {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,780 INFO L273 TraceCheckUtils]: 56: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,780 INFO L273 TraceCheckUtils]: 57: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:32,781 INFO L273 TraceCheckUtils]: 58: Hoare triple {6694#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,781 INFO L273 TraceCheckUtils]: 59: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,782 INFO L273 TraceCheckUtils]: 60: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,782 INFO L256 TraceCheckUtils]: 61: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,782 INFO L273 TraceCheckUtils]: 62: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,783 INFO L273 TraceCheckUtils]: 63: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,783 INFO L273 TraceCheckUtils]: 64: Hoare triple {6688#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6688#true} is VALID [2018-11-14 17:00:32,783 INFO L273 TraceCheckUtils]: 65: Hoare triple {6688#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6688#true} is VALID [2018-11-14 17:00:32,783 INFO L273 TraceCheckUtils]: 66: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,784 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {6688#true} {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,785 INFO L273 TraceCheckUtils]: 68: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,785 INFO L273 TraceCheckUtils]: 69: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:32,786 INFO L273 TraceCheckUtils]: 70: Hoare triple {6695#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,786 INFO L273 TraceCheckUtils]: 71: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,786 INFO L273 TraceCheckUtils]: 72: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,786 INFO L256 TraceCheckUtils]: 73: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6688#true} is VALID [2018-11-14 17:00:32,787 INFO L273 TraceCheckUtils]: 74: Hoare triple {6688#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6688#true} is VALID [2018-11-14 17:00:32,787 INFO L273 TraceCheckUtils]: 75: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,787 INFO L273 TraceCheckUtils]: 76: Hoare triple {6688#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6688#true} is VALID [2018-11-14 17:00:32,787 INFO L273 TraceCheckUtils]: 77: Hoare triple {6688#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6688#true} is VALID [2018-11-14 17:00:32,787 INFO L273 TraceCheckUtils]: 78: Hoare triple {6688#true} assume true; {6688#true} is VALID [2018-11-14 17:00:32,788 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6688#true} {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,789 INFO L273 TraceCheckUtils]: 80: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,789 INFO L273 TraceCheckUtils]: 81: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:32,790 INFO L273 TraceCheckUtils]: 82: Hoare triple {6696#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6697#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:32,790 INFO L273 TraceCheckUtils]: 83: Hoare triple {6697#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {6697#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:32,790 INFO L273 TraceCheckUtils]: 84: Hoare triple {6697#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 85: Hoare triple {6689#false} ~i~1 := 0; {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 86: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 87: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 88: Hoare triple {6689#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 89: Hoare triple {6689#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 90: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 91: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:32,791 INFO L273 TraceCheckUtils]: 92: Hoare triple {6689#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 93: Hoare triple {6689#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 94: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 95: Hoare triple {6689#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 96: Hoare triple {6689#false} assume ~found~0 == 1;~i~1 := ~pos~0; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 97: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 98: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {6689#false} is VALID [2018-11-14 17:00:32,792 INFO L273 TraceCheckUtils]: 99: Hoare triple {6689#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {6689#false} is VALID [2018-11-14 17:00:32,793 INFO L273 TraceCheckUtils]: 100: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,793 INFO L273 TraceCheckUtils]: 101: Hoare triple {6689#false} assume !(~i~1 < ~SIZE~0 - 1); {6689#false} is VALID [2018-11-14 17:00:32,793 INFO L273 TraceCheckUtils]: 102: Hoare triple {6689#false} assume ~found~0 == 1;~i~1 := 0; {6689#false} is VALID [2018-11-14 17:00:32,793 INFO L273 TraceCheckUtils]: 103: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:32,793 INFO L273 TraceCheckUtils]: 104: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:32,794 INFO L256 TraceCheckUtils]: 105: Hoare triple {6689#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {6689#false} is VALID [2018-11-14 17:00:32,794 INFO L273 TraceCheckUtils]: 106: Hoare triple {6689#false} ~cond := #in~cond; {6689#false} is VALID [2018-11-14 17:00:32,794 INFO L273 TraceCheckUtils]: 107: Hoare triple {6689#false} assume ~cond == 0; {6689#false} is VALID [2018-11-14 17:00:32,794 INFO L273 TraceCheckUtils]: 108: Hoare triple {6689#false} assume !false; {6689#false} is VALID [2018-11-14 17:00:32,803 INFO L134 CoverageAnalysis]: Checked inductivity of 197 backedges. 0 proven. 102 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2018-11-14 17:00:32,803 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:32,803 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:32,811 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:32,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:32,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:32,891 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:33,241 INFO L256 TraceCheckUtils]: 0: Hoare triple {6688#true} call ULTIMATE.init(); {6688#true} is VALID [2018-11-14 17:00:33,242 INFO L273 TraceCheckUtils]: 1: Hoare triple {6688#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,243 INFO L273 TraceCheckUtils]: 2: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,243 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6688#true} #128#return; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,244 INFO L256 TraceCheckUtils]: 4: Hoare triple {6690#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,245 INFO L273 TraceCheckUtils]: 5: Hoare triple {6690#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,246 INFO L273 TraceCheckUtils]: 6: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,246 INFO L273 TraceCheckUtils]: 7: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,248 INFO L256 TraceCheckUtils]: 8: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,248 INFO L273 TraceCheckUtils]: 9: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,249 INFO L273 TraceCheckUtils]: 10: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,249 INFO L273 TraceCheckUtils]: 11: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,250 INFO L273 TraceCheckUtils]: 12: Hoare triple {6690#(<= 100000 ~SIZE~0)} #res := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,250 INFO L273 TraceCheckUtils]: 13: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,251 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,252 INFO L273 TraceCheckUtils]: 15: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,253 INFO L273 TraceCheckUtils]: 16: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,254 INFO L256 TraceCheckUtils]: 17: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,255 INFO L273 TraceCheckUtils]: 18: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,255 INFO L273 TraceCheckUtils]: 19: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,256 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,257 INFO L273 TraceCheckUtils]: 21: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,258 INFO L273 TraceCheckUtils]: 22: Hoare triple {6716#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,259 INFO L273 TraceCheckUtils]: 23: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,259 INFO L273 TraceCheckUtils]: 24: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,260 INFO L256 TraceCheckUtils]: 25: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,261 INFO L273 TraceCheckUtils]: 26: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,262 INFO L273 TraceCheckUtils]: 27: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,262 INFO L273 TraceCheckUtils]: 28: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,263 INFO L273 TraceCheckUtils]: 29: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,263 INFO L273 TraceCheckUtils]: 30: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,264 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,265 INFO L273 TraceCheckUtils]: 32: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,266 INFO L273 TraceCheckUtils]: 33: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,266 INFO L273 TraceCheckUtils]: 34: Hoare triple {6768#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,267 INFO L273 TraceCheckUtils]: 35: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,268 INFO L273 TraceCheckUtils]: 36: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,269 INFO L256 TraceCheckUtils]: 37: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,270 INFO L273 TraceCheckUtils]: 38: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,270 INFO L273 TraceCheckUtils]: 39: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,271 INFO L273 TraceCheckUtils]: 40: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,271 INFO L273 TraceCheckUtils]: 41: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,272 INFO L273 TraceCheckUtils]: 42: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,273 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,273 INFO L273 TraceCheckUtils]: 44: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,274 INFO L273 TraceCheckUtils]: 45: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,275 INFO L273 TraceCheckUtils]: 46: Hoare triple {6805#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,276 INFO L273 TraceCheckUtils]: 47: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,276 INFO L273 TraceCheckUtils]: 48: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,278 INFO L256 TraceCheckUtils]: 49: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,278 INFO L273 TraceCheckUtils]: 50: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,279 INFO L273 TraceCheckUtils]: 51: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,279 INFO L273 TraceCheckUtils]: 52: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,280 INFO L273 TraceCheckUtils]: 53: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,280 INFO L273 TraceCheckUtils]: 54: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,281 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #132#return; {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,282 INFO L273 TraceCheckUtils]: 56: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,283 INFO L273 TraceCheckUtils]: 57: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,284 INFO L273 TraceCheckUtils]: 58: Hoare triple {6842#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,284 INFO L273 TraceCheckUtils]: 59: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume true; {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,285 INFO L273 TraceCheckUtils]: 60: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,286 INFO L256 TraceCheckUtils]: 61: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,287 INFO L273 TraceCheckUtils]: 62: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,287 INFO L273 TraceCheckUtils]: 63: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,288 INFO L273 TraceCheckUtils]: 64: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,288 INFO L273 TraceCheckUtils]: 65: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,289 INFO L273 TraceCheckUtils]: 66: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,290 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #132#return; {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,291 INFO L273 TraceCheckUtils]: 68: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,291 INFO L273 TraceCheckUtils]: 69: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,292 INFO L273 TraceCheckUtils]: 70: Hoare triple {6879#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,293 INFO L273 TraceCheckUtils]: 71: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume true; {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,294 INFO L273 TraceCheckUtils]: 72: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,295 INFO L256 TraceCheckUtils]: 73: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,295 INFO L273 TraceCheckUtils]: 74: Hoare triple {6690#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,296 INFO L273 TraceCheckUtils]: 75: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,296 INFO L273 TraceCheckUtils]: 76: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,297 INFO L273 TraceCheckUtils]: 77: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,297 INFO L273 TraceCheckUtils]: 78: Hoare triple {6690#(<= 100000 ~SIZE~0)} assume true; {6690#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:33,299 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {6690#(<= 100000 ~SIZE~0)} {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #132#return; {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,299 INFO L273 TraceCheckUtils]: 80: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,300 INFO L273 TraceCheckUtils]: 81: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,301 INFO L273 TraceCheckUtils]: 82: Hoare triple {6916#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {6953#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,301 INFO L273 TraceCheckUtils]: 83: Hoare triple {6953#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume true; {6953#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:33,302 INFO L273 TraceCheckUtils]: 84: Hoare triple {6953#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {6689#false} is VALID [2018-11-14 17:00:33,302 INFO L273 TraceCheckUtils]: 85: Hoare triple {6689#false} ~i~1 := 0; {6689#false} is VALID [2018-11-14 17:00:33,303 INFO L273 TraceCheckUtils]: 86: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,303 INFO L273 TraceCheckUtils]: 87: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:33,303 INFO L273 TraceCheckUtils]: 88: Hoare triple {6689#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {6689#false} is VALID [2018-11-14 17:00:33,303 INFO L273 TraceCheckUtils]: 89: Hoare triple {6689#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {6689#false} is VALID [2018-11-14 17:00:33,303 INFO L273 TraceCheckUtils]: 90: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,304 INFO L273 TraceCheckUtils]: 91: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:33,304 INFO L273 TraceCheckUtils]: 92: Hoare triple {6689#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {6689#false} is VALID [2018-11-14 17:00:33,304 INFO L273 TraceCheckUtils]: 93: Hoare triple {6689#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {6689#false} is VALID [2018-11-14 17:00:33,304 INFO L273 TraceCheckUtils]: 94: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,304 INFO L273 TraceCheckUtils]: 95: Hoare triple {6689#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {6689#false} is VALID [2018-11-14 17:00:33,305 INFO L273 TraceCheckUtils]: 96: Hoare triple {6689#false} assume ~found~0 == 1;~i~1 := ~pos~0; {6689#false} is VALID [2018-11-14 17:00:33,305 INFO L273 TraceCheckUtils]: 97: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,305 INFO L273 TraceCheckUtils]: 98: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {6689#false} is VALID [2018-11-14 17:00:33,305 INFO L273 TraceCheckUtils]: 99: Hoare triple {6689#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {6689#false} is VALID [2018-11-14 17:00:33,305 INFO L273 TraceCheckUtils]: 100: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L273 TraceCheckUtils]: 101: Hoare triple {6689#false} assume !(~i~1 < ~SIZE~0 - 1); {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L273 TraceCheckUtils]: 102: Hoare triple {6689#false} assume ~found~0 == 1;~i~1 := 0; {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L273 TraceCheckUtils]: 103: Hoare triple {6689#false} assume true; {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L273 TraceCheckUtils]: 104: Hoare triple {6689#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L256 TraceCheckUtils]: 105: Hoare triple {6689#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {6689#false} is VALID [2018-11-14 17:00:33,306 INFO L273 TraceCheckUtils]: 106: Hoare triple {6689#false} ~cond := #in~cond; {6689#false} is VALID [2018-11-14 17:00:33,307 INFO L273 TraceCheckUtils]: 107: Hoare triple {6689#false} assume ~cond == 0; {6689#false} is VALID [2018-11-14 17:00:33,307 INFO L273 TraceCheckUtils]: 108: Hoare triple {6689#false} assume !false; {6689#false} is VALID [2018-11-14 17:00:33,317 INFO L134 CoverageAnalysis]: Checked inductivity of 197 backedges. 0 proven. 102 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2018-11-14 17:00:33,338 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:33,338 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 17 [2018-11-14 17:00:33,338 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 109 [2018-11-14 17:00:33,339 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:33,339 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-14 17:00:33,473 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:33,473 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-14 17:00:33,473 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-14 17:00:33,474 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=157, Unknown=0, NotChecked=0, Total=272 [2018-11-14 17:00:33,474 INFO L87 Difference]: Start difference. First operand 131 states and 162 transitions. Second operand 17 states. [2018-11-14 17:00:34,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:34,998 INFO L93 Difference]: Finished difference Result 196 states and 242 transitions. [2018-11-14 17:00:34,998 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-14 17:00:34,998 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 109 [2018-11-14 17:00:34,999 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:34,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 17:00:35,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 154 transitions. [2018-11-14 17:00:35,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-14 17:00:35,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 154 transitions. [2018-11-14 17:00:35,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 154 transitions. [2018-11-14 17:00:35,639 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:35,643 INFO L225 Difference]: With dead ends: 196 [2018-11-14 17:00:35,643 INFO L226 Difference]: Without dead ends: 149 [2018-11-14 17:00:35,644 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 103 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=115, Invalid=157, Unknown=0, NotChecked=0, Total=272 [2018-11-14 17:00:35,644 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2018-11-14 17:00:35,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 141. [2018-11-14 17:00:35,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:35,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand 141 states. [2018-11-14 17:00:35,787 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 141 states. [2018-11-14 17:00:35,787 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 141 states. [2018-11-14 17:00:35,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:35,793 INFO L93 Difference]: Finished difference Result 149 states and 190 transitions. [2018-11-14 17:00:35,793 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 190 transitions. [2018-11-14 17:00:35,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:35,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:35,794 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand 149 states. [2018-11-14 17:00:35,794 INFO L87 Difference]: Start difference. First operand 141 states. Second operand 149 states. [2018-11-14 17:00:35,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:35,799 INFO L93 Difference]: Finished difference Result 149 states and 190 transitions. [2018-11-14 17:00:35,799 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 190 transitions. [2018-11-14 17:00:35,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:35,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:35,800 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:35,801 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:35,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 141 states. [2018-11-14 17:00:35,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 177 transitions. [2018-11-14 17:00:35,805 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 177 transitions. Word has length 109 [2018-11-14 17:00:35,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:35,805 INFO L480 AbstractCegarLoop]: Abstraction has 141 states and 177 transitions. [2018-11-14 17:00:35,805 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-14 17:00:35,805 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 177 transitions. [2018-11-14 17:00:35,807 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2018-11-14 17:00:35,807 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:35,807 INFO L375 BasicCegarLoop]: trace histogram [8, 7, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:35,807 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:35,808 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:35,808 INFO L82 PathProgramCache]: Analyzing trace with hash 789909830, now seen corresponding path program 2 times [2018-11-14 17:00:35,808 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:35,808 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:35,809 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:35,809 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-14 17:00:35,809 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:35,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:36,813 INFO L256 TraceCheckUtils]: 0: Hoare triple {7767#true} call ULTIMATE.init(); {7767#true} is VALID [2018-11-14 17:00:36,814 INFO L273 TraceCheckUtils]: 1: Hoare triple {7767#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:36,814 INFO L273 TraceCheckUtils]: 2: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:36,815 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7767#true} #128#return; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:36,815 INFO L256 TraceCheckUtils]: 4: Hoare triple {7769#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:36,816 INFO L273 TraceCheckUtils]: 5: Hoare triple {7769#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,817 INFO L273 TraceCheckUtils]: 6: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,818 INFO L273 TraceCheckUtils]: 7: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,818 INFO L256 TraceCheckUtils]: 8: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,818 INFO L273 TraceCheckUtils]: 9: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,819 INFO L273 TraceCheckUtils]: 10: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,819 INFO L273 TraceCheckUtils]: 11: Hoare triple {7767#true} assume !(~i~0 < ~size); {7767#true} is VALID [2018-11-14 17:00:36,819 INFO L273 TraceCheckUtils]: 12: Hoare triple {7767#true} #res := 0; {7767#true} is VALID [2018-11-14 17:00:36,819 INFO L273 TraceCheckUtils]: 13: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,821 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {7767#true} {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,821 INFO L273 TraceCheckUtils]: 15: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,822 INFO L273 TraceCheckUtils]: 16: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,822 INFO L256 TraceCheckUtils]: 17: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {7767#true} is VALID [2018-11-14 17:00:36,823 INFO L273 TraceCheckUtils]: 18: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {7767#true} is VALID [2018-11-14 17:00:36,823 INFO L273 TraceCheckUtils]: 19: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,824 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {7767#true} {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,825 INFO L273 TraceCheckUtils]: 21: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:36,826 INFO L273 TraceCheckUtils]: 22: Hoare triple {7770#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,826 INFO L273 TraceCheckUtils]: 23: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,827 INFO L273 TraceCheckUtils]: 24: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,827 INFO L256 TraceCheckUtils]: 25: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,827 INFO L273 TraceCheckUtils]: 26: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,827 INFO L273 TraceCheckUtils]: 27: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,828 INFO L273 TraceCheckUtils]: 28: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,828 INFO L273 TraceCheckUtils]: 29: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,828 INFO L273 TraceCheckUtils]: 30: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,829 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {7767#true} {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,830 INFO L273 TraceCheckUtils]: 32: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,831 INFO L273 TraceCheckUtils]: 33: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:36,831 INFO L273 TraceCheckUtils]: 34: Hoare triple {7771#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,831 INFO L273 TraceCheckUtils]: 35: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 36: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,832 INFO L256 TraceCheckUtils]: 37: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 38: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 39: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 40: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 41: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,832 INFO L273 TraceCheckUtils]: 42: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,834 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {7767#true} {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,834 INFO L273 TraceCheckUtils]: 44: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,835 INFO L273 TraceCheckUtils]: 45: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:36,835 INFO L273 TraceCheckUtils]: 46: Hoare triple {7772#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,836 INFO L273 TraceCheckUtils]: 47: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,837 INFO L273 TraceCheckUtils]: 48: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,837 INFO L256 TraceCheckUtils]: 49: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,837 INFO L273 TraceCheckUtils]: 50: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,837 INFO L273 TraceCheckUtils]: 51: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,837 INFO L273 TraceCheckUtils]: 52: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,838 INFO L273 TraceCheckUtils]: 53: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,838 INFO L273 TraceCheckUtils]: 54: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,839 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {7767#true} {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,840 INFO L273 TraceCheckUtils]: 56: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,840 INFO L273 TraceCheckUtils]: 57: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:36,840 INFO L273 TraceCheckUtils]: 58: Hoare triple {7773#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,841 INFO L273 TraceCheckUtils]: 59: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,841 INFO L273 TraceCheckUtils]: 60: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,841 INFO L256 TraceCheckUtils]: 61: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,841 INFO L273 TraceCheckUtils]: 62: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,841 INFO L273 TraceCheckUtils]: 63: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,842 INFO L273 TraceCheckUtils]: 64: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,842 INFO L273 TraceCheckUtils]: 65: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,842 INFO L273 TraceCheckUtils]: 66: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,843 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {7767#true} {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,844 INFO L273 TraceCheckUtils]: 68: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,844 INFO L273 TraceCheckUtils]: 69: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:36,845 INFO L273 TraceCheckUtils]: 70: Hoare triple {7774#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,845 INFO L273 TraceCheckUtils]: 71: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,845 INFO L273 TraceCheckUtils]: 72: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,846 INFO L256 TraceCheckUtils]: 73: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,846 INFO L273 TraceCheckUtils]: 74: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,846 INFO L273 TraceCheckUtils]: 75: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,846 INFO L273 TraceCheckUtils]: 76: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,846 INFO L273 TraceCheckUtils]: 77: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,846 INFO L273 TraceCheckUtils]: 78: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,847 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {7767#true} {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,848 INFO L273 TraceCheckUtils]: 80: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,848 INFO L273 TraceCheckUtils]: 81: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:36,849 INFO L273 TraceCheckUtils]: 82: Hoare triple {7775#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,850 INFO L273 TraceCheckUtils]: 83: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,850 INFO L273 TraceCheckUtils]: 84: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,850 INFO L256 TraceCheckUtils]: 85: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7767#true} is VALID [2018-11-14 17:00:36,851 INFO L273 TraceCheckUtils]: 86: Hoare triple {7767#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7767#true} is VALID [2018-11-14 17:00:36,851 INFO L273 TraceCheckUtils]: 87: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,851 INFO L273 TraceCheckUtils]: 88: Hoare triple {7767#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7767#true} is VALID [2018-11-14 17:00:36,851 INFO L273 TraceCheckUtils]: 89: Hoare triple {7767#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7767#true} is VALID [2018-11-14 17:00:36,852 INFO L273 TraceCheckUtils]: 90: Hoare triple {7767#true} assume true; {7767#true} is VALID [2018-11-14 17:00:36,854 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {7767#true} {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,854 INFO L273 TraceCheckUtils]: 92: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,854 INFO L273 TraceCheckUtils]: 93: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:36,855 INFO L273 TraceCheckUtils]: 94: Hoare triple {7776#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7777#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:36,855 INFO L273 TraceCheckUtils]: 95: Hoare triple {7777#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {7777#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:36,855 INFO L273 TraceCheckUtils]: 96: Hoare triple {7777#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 97: Hoare triple {7768#false} ~i~1 := 0; {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 98: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 99: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 100: Hoare triple {7768#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 101: Hoare triple {7768#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 102: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 103: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:36,856 INFO L273 TraceCheckUtils]: 104: Hoare triple {7768#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 105: Hoare triple {7768#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 106: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 107: Hoare triple {7768#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 108: Hoare triple {7768#false} assume ~found~0 == 1;~i~1 := ~pos~0; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 109: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 110: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 111: Hoare triple {7768#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {7768#false} is VALID [2018-11-14 17:00:36,857 INFO L273 TraceCheckUtils]: 112: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 113: Hoare triple {7768#false} assume !(~i~1 < ~SIZE~0 - 1); {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 114: Hoare triple {7768#false} assume ~found~0 == 1;~i~1 := 0; {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 115: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 116: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L256 TraceCheckUtils]: 117: Hoare triple {7768#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 118: Hoare triple {7768#false} ~cond := #in~cond; {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 119: Hoare triple {7768#false} assume ~cond == 0; {7768#false} is VALID [2018-11-14 17:00:36,858 INFO L273 TraceCheckUtils]: 120: Hoare triple {7768#false} assume !false; {7768#false} is VALID [2018-11-14 17:00:36,868 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 0 proven. 140 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2018-11-14 17:00:36,868 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:36,868 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:36,877 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:00:36,933 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:00:36,933 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:00:36,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:36,962 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:37,284 INFO L256 TraceCheckUtils]: 0: Hoare triple {7767#true} call ULTIMATE.init(); {7767#true} is VALID [2018-11-14 17:00:37,287 INFO L273 TraceCheckUtils]: 1: Hoare triple {7767#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,287 INFO L273 TraceCheckUtils]: 2: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,288 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7767#true} #128#return; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,288 INFO L256 TraceCheckUtils]: 4: Hoare triple {7769#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,289 INFO L273 TraceCheckUtils]: 5: Hoare triple {7769#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,289 INFO L273 TraceCheckUtils]: 6: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,290 INFO L273 TraceCheckUtils]: 7: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,307 INFO L256 TraceCheckUtils]: 8: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,316 INFO L273 TraceCheckUtils]: 9: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,330 INFO L273 TraceCheckUtils]: 10: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,338 INFO L273 TraceCheckUtils]: 11: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,352 INFO L273 TraceCheckUtils]: 12: Hoare triple {7769#(<= 100000 ~SIZE~0)} #res := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,360 INFO L273 TraceCheckUtils]: 13: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,374 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,388 INFO L273 TraceCheckUtils]: 15: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,397 INFO L273 TraceCheckUtils]: 16: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,410 INFO L256 TraceCheckUtils]: 17: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,419 INFO L273 TraceCheckUtils]: 18: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,431 INFO L273 TraceCheckUtils]: 19: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,432 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,434 INFO L273 TraceCheckUtils]: 21: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,434 INFO L273 TraceCheckUtils]: 22: Hoare triple {7796#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,436 INFO L273 TraceCheckUtils]: 23: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,436 INFO L273 TraceCheckUtils]: 24: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,438 INFO L256 TraceCheckUtils]: 25: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,438 INFO L273 TraceCheckUtils]: 26: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,439 INFO L273 TraceCheckUtils]: 27: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,439 INFO L273 TraceCheckUtils]: 28: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,440 INFO L273 TraceCheckUtils]: 29: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,441 INFO L273 TraceCheckUtils]: 30: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,442 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,443 INFO L273 TraceCheckUtils]: 32: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,443 INFO L273 TraceCheckUtils]: 33: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,444 INFO L273 TraceCheckUtils]: 34: Hoare triple {7848#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,445 INFO L273 TraceCheckUtils]: 35: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,446 INFO L273 TraceCheckUtils]: 36: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,447 INFO L256 TraceCheckUtils]: 37: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,447 INFO L273 TraceCheckUtils]: 38: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,448 INFO L273 TraceCheckUtils]: 39: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,449 INFO L273 TraceCheckUtils]: 40: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,449 INFO L273 TraceCheckUtils]: 41: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,450 INFO L273 TraceCheckUtils]: 42: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,451 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,452 INFO L273 TraceCheckUtils]: 44: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,452 INFO L273 TraceCheckUtils]: 45: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,454 INFO L273 TraceCheckUtils]: 46: Hoare triple {7885#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,472 INFO L273 TraceCheckUtils]: 47: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,474 INFO L273 TraceCheckUtils]: 48: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,475 INFO L256 TraceCheckUtils]: 49: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,475 INFO L273 TraceCheckUtils]: 50: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,476 INFO L273 TraceCheckUtils]: 51: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,476 INFO L273 TraceCheckUtils]: 52: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,476 INFO L273 TraceCheckUtils]: 53: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,477 INFO L273 TraceCheckUtils]: 54: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,477 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #132#return; {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,478 INFO L273 TraceCheckUtils]: 56: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,478 INFO L273 TraceCheckUtils]: 57: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,479 INFO L273 TraceCheckUtils]: 58: Hoare triple {7922#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,480 INFO L273 TraceCheckUtils]: 59: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume true; {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,481 INFO L273 TraceCheckUtils]: 60: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,482 INFO L256 TraceCheckUtils]: 61: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,483 INFO L273 TraceCheckUtils]: 62: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,483 INFO L273 TraceCheckUtils]: 63: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,484 INFO L273 TraceCheckUtils]: 64: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,484 INFO L273 TraceCheckUtils]: 65: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,485 INFO L273 TraceCheckUtils]: 66: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,486 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #132#return; {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,487 INFO L273 TraceCheckUtils]: 68: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,487 INFO L273 TraceCheckUtils]: 69: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,488 INFO L273 TraceCheckUtils]: 70: Hoare triple {7959#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,489 INFO L273 TraceCheckUtils]: 71: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume true; {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,490 INFO L273 TraceCheckUtils]: 72: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,491 INFO L256 TraceCheckUtils]: 73: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,492 INFO L273 TraceCheckUtils]: 74: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,492 INFO L273 TraceCheckUtils]: 75: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,493 INFO L273 TraceCheckUtils]: 76: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,493 INFO L273 TraceCheckUtils]: 77: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,494 INFO L273 TraceCheckUtils]: 78: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,495 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #132#return; {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,496 INFO L273 TraceCheckUtils]: 80: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,497 INFO L273 TraceCheckUtils]: 81: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,497 INFO L273 TraceCheckUtils]: 82: Hoare triple {7996#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,498 INFO L273 TraceCheckUtils]: 83: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume true; {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,499 INFO L273 TraceCheckUtils]: 84: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,500 INFO L256 TraceCheckUtils]: 85: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,501 INFO L273 TraceCheckUtils]: 86: Hoare triple {7769#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,501 INFO L273 TraceCheckUtils]: 87: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,502 INFO L273 TraceCheckUtils]: 88: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,502 INFO L273 TraceCheckUtils]: 89: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,503 INFO L273 TraceCheckUtils]: 90: Hoare triple {7769#(<= 100000 ~SIZE~0)} assume true; {7769#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:37,504 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {7769#(<= 100000 ~SIZE~0)} {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #132#return; {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,505 INFO L273 TraceCheckUtils]: 92: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,506 INFO L273 TraceCheckUtils]: 93: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,506 INFO L273 TraceCheckUtils]: 94: Hoare triple {8033#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8070#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,507 INFO L273 TraceCheckUtils]: 95: Hoare triple {8070#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume true; {8070#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:37,508 INFO L273 TraceCheckUtils]: 96: Hoare triple {8070#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {7768#false} is VALID [2018-11-14 17:00:37,508 INFO L273 TraceCheckUtils]: 97: Hoare triple {7768#false} ~i~1 := 0; {7768#false} is VALID [2018-11-14 17:00:37,508 INFO L273 TraceCheckUtils]: 98: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,508 INFO L273 TraceCheckUtils]: 99: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:37,509 INFO L273 TraceCheckUtils]: 100: Hoare triple {7768#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {7768#false} is VALID [2018-11-14 17:00:37,509 INFO L273 TraceCheckUtils]: 101: Hoare triple {7768#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {7768#false} is VALID [2018-11-14 17:00:37,509 INFO L273 TraceCheckUtils]: 102: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,509 INFO L273 TraceCheckUtils]: 103: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:37,509 INFO L273 TraceCheckUtils]: 104: Hoare triple {7768#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {7768#false} is VALID [2018-11-14 17:00:37,510 INFO L273 TraceCheckUtils]: 105: Hoare triple {7768#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {7768#false} is VALID [2018-11-14 17:00:37,510 INFO L273 TraceCheckUtils]: 106: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,510 INFO L273 TraceCheckUtils]: 107: Hoare triple {7768#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {7768#false} is VALID [2018-11-14 17:00:37,510 INFO L273 TraceCheckUtils]: 108: Hoare triple {7768#false} assume ~found~0 == 1;~i~1 := ~pos~0; {7768#false} is VALID [2018-11-14 17:00:37,510 INFO L273 TraceCheckUtils]: 109: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,511 INFO L273 TraceCheckUtils]: 110: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {7768#false} is VALID [2018-11-14 17:00:37,511 INFO L273 TraceCheckUtils]: 111: Hoare triple {7768#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {7768#false} is VALID [2018-11-14 17:00:37,511 INFO L273 TraceCheckUtils]: 112: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,511 INFO L273 TraceCheckUtils]: 113: Hoare triple {7768#false} assume !(~i~1 < ~SIZE~0 - 1); {7768#false} is VALID [2018-11-14 17:00:37,512 INFO L273 TraceCheckUtils]: 114: Hoare triple {7768#false} assume ~found~0 == 1;~i~1 := 0; {7768#false} is VALID [2018-11-14 17:00:37,512 INFO L273 TraceCheckUtils]: 115: Hoare triple {7768#false} assume true; {7768#false} is VALID [2018-11-14 17:00:37,512 INFO L273 TraceCheckUtils]: 116: Hoare triple {7768#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {7768#false} is VALID [2018-11-14 17:00:37,512 INFO L256 TraceCheckUtils]: 117: Hoare triple {7768#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {7768#false} is VALID [2018-11-14 17:00:37,512 INFO L273 TraceCheckUtils]: 118: Hoare triple {7768#false} ~cond := #in~cond; {7768#false} is VALID [2018-11-14 17:00:37,513 INFO L273 TraceCheckUtils]: 119: Hoare triple {7768#false} assume ~cond == 0; {7768#false} is VALID [2018-11-14 17:00:37,513 INFO L273 TraceCheckUtils]: 120: Hoare triple {7768#false} assume !false; {7768#false} is VALID [2018-11-14 17:00:37,526 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 0 proven. 140 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2018-11-14 17:00:37,546 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:37,546 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2018-11-14 17:00:37,547 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 121 [2018-11-14 17:00:37,547 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:37,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 17:00:37,696 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:37,696 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 17:00:37,696 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 17:00:37,697 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=199, Unknown=0, NotChecked=0, Total=342 [2018-11-14 17:00:37,697 INFO L87 Difference]: Start difference. First operand 141 states and 177 transitions. Second operand 19 states. [2018-11-14 17:00:39,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:39,671 INFO L93 Difference]: Finished difference Result 206 states and 257 transitions. [2018-11-14 17:00:39,671 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-14 17:00:39,671 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 121 [2018-11-14 17:00:39,672 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:39,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:00:39,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 165 transitions. [2018-11-14 17:00:39,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:00:39,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 165 transitions. [2018-11-14 17:00:39,677 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 165 transitions. [2018-11-14 17:00:40,406 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:40,410 INFO L225 Difference]: With dead ends: 206 [2018-11-14 17:00:40,411 INFO L226 Difference]: Without dead ends: 159 [2018-11-14 17:00:40,412 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 114 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 109 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=143, Invalid=199, Unknown=0, NotChecked=0, Total=342 [2018-11-14 17:00:40,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2018-11-14 17:00:40,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 151. [2018-11-14 17:00:40,565 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:40,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand 151 states. [2018-11-14 17:00:40,566 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand 151 states. [2018-11-14 17:00:40,566 INFO L87 Difference]: Start difference. First operand 159 states. Second operand 151 states. [2018-11-14 17:00:40,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:40,573 INFO L93 Difference]: Finished difference Result 159 states and 205 transitions. [2018-11-14 17:00:40,573 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 205 transitions. [2018-11-14 17:00:40,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:40,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:40,574 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand 159 states. [2018-11-14 17:00:40,574 INFO L87 Difference]: Start difference. First operand 151 states. Second operand 159 states. [2018-11-14 17:00:40,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:40,579 INFO L93 Difference]: Finished difference Result 159 states and 205 transitions. [2018-11-14 17:00:40,579 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 205 transitions. [2018-11-14 17:00:40,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:40,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:40,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:40,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:40,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 151 states. [2018-11-14 17:00:40,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 192 transitions. [2018-11-14 17:00:40,585 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 192 transitions. Word has length 121 [2018-11-14 17:00:40,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:40,586 INFO L480 AbstractCegarLoop]: Abstraction has 151 states and 192 transitions. [2018-11-14 17:00:40,586 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 17:00:40,586 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 192 transitions. [2018-11-14 17:00:40,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 134 [2018-11-14 17:00:40,587 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:40,588 INFO L375 BasicCegarLoop]: trace histogram [9, 8, 8, 8, 8, 8, 8, 8, 8, 7, 7, 7, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:40,588 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:40,588 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:40,588 INFO L82 PathProgramCache]: Analyzing trace with hash 325425882, now seen corresponding path program 3 times [2018-11-14 17:00:40,588 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:40,589 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:40,589 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:40,589 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:00:40,589 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:40,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:41,923 INFO L256 TraceCheckUtils]: 0: Hoare triple {8930#true} call ULTIMATE.init(); {8930#true} is VALID [2018-11-14 17:00:41,924 INFO L273 TraceCheckUtils]: 1: Hoare triple {8930#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:41,924 INFO L273 TraceCheckUtils]: 2: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:41,925 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8930#true} #128#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:41,926 INFO L256 TraceCheckUtils]: 4: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:41,927 INFO L273 TraceCheckUtils]: 5: Hoare triple {8932#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,927 INFO L273 TraceCheckUtils]: 6: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,928 INFO L273 TraceCheckUtils]: 7: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,928 INFO L256 TraceCheckUtils]: 8: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,929 INFO L273 TraceCheckUtils]: 9: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,929 INFO L273 TraceCheckUtils]: 10: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,929 INFO L273 TraceCheckUtils]: 11: Hoare triple {8930#true} assume !(~i~0 < ~size); {8930#true} is VALID [2018-11-14 17:00:41,929 INFO L273 TraceCheckUtils]: 12: Hoare triple {8930#true} #res := 0; {8930#true} is VALID [2018-11-14 17:00:41,929 INFO L273 TraceCheckUtils]: 13: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,930 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {8930#true} {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,931 INFO L273 TraceCheckUtils]: 15: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,931 INFO L273 TraceCheckUtils]: 16: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,931 INFO L256 TraceCheckUtils]: 17: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {8930#true} is VALID [2018-11-14 17:00:41,932 INFO L273 TraceCheckUtils]: 18: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {8930#true} is VALID [2018-11-14 17:00:41,932 INFO L273 TraceCheckUtils]: 19: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,932 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {8930#true} {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,933 INFO L273 TraceCheckUtils]: 21: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:41,933 INFO L273 TraceCheckUtils]: 22: Hoare triple {8933#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,934 INFO L273 TraceCheckUtils]: 23: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,934 INFO L273 TraceCheckUtils]: 24: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,934 INFO L256 TraceCheckUtils]: 25: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,935 INFO L273 TraceCheckUtils]: 26: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,935 INFO L273 TraceCheckUtils]: 27: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,935 INFO L273 TraceCheckUtils]: 28: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,935 INFO L273 TraceCheckUtils]: 29: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,935 INFO L273 TraceCheckUtils]: 30: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,936 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {8930#true} {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,937 INFO L273 TraceCheckUtils]: 32: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,937 INFO L273 TraceCheckUtils]: 33: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:41,938 INFO L273 TraceCheckUtils]: 34: Hoare triple {8934#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,938 INFO L273 TraceCheckUtils]: 35: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,938 INFO L273 TraceCheckUtils]: 36: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,938 INFO L256 TraceCheckUtils]: 37: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,938 INFO L273 TraceCheckUtils]: 38: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,939 INFO L273 TraceCheckUtils]: 39: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,939 INFO L273 TraceCheckUtils]: 40: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,939 INFO L273 TraceCheckUtils]: 41: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,939 INFO L273 TraceCheckUtils]: 42: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,940 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {8930#true} {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,940 INFO L273 TraceCheckUtils]: 44: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,941 INFO L273 TraceCheckUtils]: 45: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:41,942 INFO L273 TraceCheckUtils]: 46: Hoare triple {8935#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,942 INFO L273 TraceCheckUtils]: 47: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,943 INFO L273 TraceCheckUtils]: 48: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,943 INFO L256 TraceCheckUtils]: 49: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,943 INFO L273 TraceCheckUtils]: 50: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,943 INFO L273 TraceCheckUtils]: 51: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,944 INFO L273 TraceCheckUtils]: 52: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,944 INFO L273 TraceCheckUtils]: 53: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,944 INFO L273 TraceCheckUtils]: 54: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,945 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {8930#true} {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,946 INFO L273 TraceCheckUtils]: 56: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,946 INFO L273 TraceCheckUtils]: 57: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:41,947 INFO L273 TraceCheckUtils]: 58: Hoare triple {8936#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,947 INFO L273 TraceCheckUtils]: 59: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,947 INFO L273 TraceCheckUtils]: 60: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,947 INFO L256 TraceCheckUtils]: 61: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,948 INFO L273 TraceCheckUtils]: 62: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,948 INFO L273 TraceCheckUtils]: 63: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,948 INFO L273 TraceCheckUtils]: 64: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,948 INFO L273 TraceCheckUtils]: 65: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,948 INFO L273 TraceCheckUtils]: 66: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,949 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {8930#true} {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,949 INFO L273 TraceCheckUtils]: 68: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,949 INFO L273 TraceCheckUtils]: 69: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:41,950 INFO L273 TraceCheckUtils]: 70: Hoare triple {8937#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,950 INFO L273 TraceCheckUtils]: 71: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,950 INFO L273 TraceCheckUtils]: 72: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,951 INFO L256 TraceCheckUtils]: 73: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,951 INFO L273 TraceCheckUtils]: 74: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,951 INFO L273 TraceCheckUtils]: 75: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,951 INFO L273 TraceCheckUtils]: 76: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,951 INFO L273 TraceCheckUtils]: 77: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,951 INFO L273 TraceCheckUtils]: 78: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,952 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8930#true} {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,952 INFO L273 TraceCheckUtils]: 80: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,953 INFO L273 TraceCheckUtils]: 81: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:41,953 INFO L273 TraceCheckUtils]: 82: Hoare triple {8938#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,954 INFO L273 TraceCheckUtils]: 83: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,954 INFO L273 TraceCheckUtils]: 84: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,955 INFO L256 TraceCheckUtils]: 85: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,955 INFO L273 TraceCheckUtils]: 86: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,955 INFO L273 TraceCheckUtils]: 87: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,955 INFO L273 TraceCheckUtils]: 88: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,956 INFO L273 TraceCheckUtils]: 89: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,956 INFO L273 TraceCheckUtils]: 90: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,957 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8930#true} {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,957 INFO L273 TraceCheckUtils]: 92: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,958 INFO L273 TraceCheckUtils]: 93: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:41,958 INFO L273 TraceCheckUtils]: 94: Hoare triple {8939#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,958 INFO L273 TraceCheckUtils]: 95: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,959 INFO L273 TraceCheckUtils]: 96: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,959 INFO L256 TraceCheckUtils]: 97: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8930#true} is VALID [2018-11-14 17:00:41,959 INFO L273 TraceCheckUtils]: 98: Hoare triple {8930#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8930#true} is VALID [2018-11-14 17:00:41,959 INFO L273 TraceCheckUtils]: 99: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,959 INFO L273 TraceCheckUtils]: 100: Hoare triple {8930#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8930#true} is VALID [2018-11-14 17:00:41,959 INFO L273 TraceCheckUtils]: 101: Hoare triple {8930#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8930#true} is VALID [2018-11-14 17:00:41,960 INFO L273 TraceCheckUtils]: 102: Hoare triple {8930#true} assume true; {8930#true} is VALID [2018-11-14 17:00:41,961 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {8930#true} {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} #132#return; {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,961 INFO L273 TraceCheckUtils]: 104: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,962 INFO L273 TraceCheckUtils]: 105: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:41,962 INFO L273 TraceCheckUtils]: 106: Hoare triple {8940#(<= (+ main_~v~0 99993) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8941#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:41,963 INFO L273 TraceCheckUtils]: 107: Hoare triple {8941#(<= (+ main_~v~0 99992) ~SIZE~0)} assume true; {8941#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:41,963 INFO L273 TraceCheckUtils]: 108: Hoare triple {8941#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {8931#false} is VALID [2018-11-14 17:00:41,963 INFO L273 TraceCheckUtils]: 109: Hoare triple {8931#false} ~i~1 := 0; {8931#false} is VALID [2018-11-14 17:00:41,963 INFO L273 TraceCheckUtils]: 110: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 111: Hoare triple {8931#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 112: Hoare triple {8931#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 113: Hoare triple {8931#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 114: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 115: Hoare triple {8931#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 116: Hoare triple {8931#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {8931#false} is VALID [2018-11-14 17:00:41,964 INFO L273 TraceCheckUtils]: 117: Hoare triple {8931#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {8931#false} is VALID [2018-11-14 17:00:41,965 INFO L273 TraceCheckUtils]: 118: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,965 INFO L273 TraceCheckUtils]: 119: Hoare triple {8931#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {8931#false} is VALID [2018-11-14 17:00:41,965 INFO L273 TraceCheckUtils]: 120: Hoare triple {8931#false} assume ~found~0 == 1;~i~1 := ~pos~0; {8931#false} is VALID [2018-11-14 17:00:41,965 INFO L273 TraceCheckUtils]: 121: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,965 INFO L273 TraceCheckUtils]: 122: Hoare triple {8931#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {8931#false} is VALID [2018-11-14 17:00:41,966 INFO L273 TraceCheckUtils]: 123: Hoare triple {8931#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {8931#false} is VALID [2018-11-14 17:00:41,966 INFO L273 TraceCheckUtils]: 124: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,966 INFO L273 TraceCheckUtils]: 125: Hoare triple {8931#false} assume !(~i~1 < ~SIZE~0 - 1); {8931#false} is VALID [2018-11-14 17:00:41,966 INFO L273 TraceCheckUtils]: 126: Hoare triple {8931#false} assume ~found~0 == 1;~i~1 := 0; {8931#false} is VALID [2018-11-14 17:00:41,966 INFO L273 TraceCheckUtils]: 127: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:41,967 INFO L273 TraceCheckUtils]: 128: Hoare triple {8931#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {8931#false} is VALID [2018-11-14 17:00:41,967 INFO L256 TraceCheckUtils]: 129: Hoare triple {8931#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {8931#false} is VALID [2018-11-14 17:00:41,967 INFO L273 TraceCheckUtils]: 130: Hoare triple {8931#false} ~cond := #in~cond; {8931#false} is VALID [2018-11-14 17:00:41,967 INFO L273 TraceCheckUtils]: 131: Hoare triple {8931#false} assume ~cond == 0; {8931#false} is VALID [2018-11-14 17:00:41,967 INFO L273 TraceCheckUtils]: 132: Hoare triple {8931#false} assume !false; {8931#false} is VALID [2018-11-14 17:00:41,979 INFO L134 CoverageAnalysis]: Checked inductivity of 355 backedges. 0 proven. 184 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2018-11-14 17:00:41,979 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:41,979 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:41,988 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:00:42,023 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-14 17:00:42,023 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:00:42,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:42,049 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:42,323 INFO L256 TraceCheckUtils]: 0: Hoare triple {8930#true} call ULTIMATE.init(); {8930#true} is VALID [2018-11-14 17:00:42,323 INFO L273 TraceCheckUtils]: 1: Hoare triple {8930#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,324 INFO L273 TraceCheckUtils]: 2: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,325 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8930#true} #128#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,325 INFO L256 TraceCheckUtils]: 4: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,326 INFO L273 TraceCheckUtils]: 5: Hoare triple {8932#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,326 INFO L273 TraceCheckUtils]: 6: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,327 INFO L273 TraceCheckUtils]: 7: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,328 INFO L256 TraceCheckUtils]: 8: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,328 INFO L273 TraceCheckUtils]: 9: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,329 INFO L273 TraceCheckUtils]: 10: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,329 INFO L273 TraceCheckUtils]: 11: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,330 INFO L273 TraceCheckUtils]: 12: Hoare triple {8932#(<= 100000 ~SIZE~0)} #res := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,330 INFO L273 TraceCheckUtils]: 13: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,331 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,332 INFO L273 TraceCheckUtils]: 15: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,332 INFO L273 TraceCheckUtils]: 16: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,333 INFO L256 TraceCheckUtils]: 17: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,334 INFO L273 TraceCheckUtils]: 18: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,335 INFO L273 TraceCheckUtils]: 19: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,336 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #134#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,336 INFO L273 TraceCheckUtils]: 21: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,337 INFO L273 TraceCheckUtils]: 22: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,337 INFO L273 TraceCheckUtils]: 23: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,338 INFO L273 TraceCheckUtils]: 24: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,339 INFO L256 TraceCheckUtils]: 25: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,339 INFO L273 TraceCheckUtils]: 26: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,340 INFO L273 TraceCheckUtils]: 27: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,340 INFO L273 TraceCheckUtils]: 28: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,341 INFO L273 TraceCheckUtils]: 29: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,341 INFO L273 TraceCheckUtils]: 30: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,342 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,343 INFO L273 TraceCheckUtils]: 32: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,343 INFO L273 TraceCheckUtils]: 33: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,344 INFO L273 TraceCheckUtils]: 34: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,344 INFO L273 TraceCheckUtils]: 35: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,345 INFO L273 TraceCheckUtils]: 36: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,346 INFO L256 TraceCheckUtils]: 37: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,346 INFO L273 TraceCheckUtils]: 38: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,347 INFO L273 TraceCheckUtils]: 39: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,347 INFO L273 TraceCheckUtils]: 40: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,348 INFO L273 TraceCheckUtils]: 41: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,348 INFO L273 TraceCheckUtils]: 42: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,349 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,350 INFO L273 TraceCheckUtils]: 44: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,350 INFO L273 TraceCheckUtils]: 45: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,351 INFO L273 TraceCheckUtils]: 46: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,352 INFO L273 TraceCheckUtils]: 47: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,352 INFO L273 TraceCheckUtils]: 48: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,353 INFO L256 TraceCheckUtils]: 49: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,354 INFO L273 TraceCheckUtils]: 50: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,354 INFO L273 TraceCheckUtils]: 51: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,355 INFO L273 TraceCheckUtils]: 52: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,374 INFO L273 TraceCheckUtils]: 53: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,382 INFO L273 TraceCheckUtils]: 54: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,398 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,406 INFO L273 TraceCheckUtils]: 56: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,407 INFO L273 TraceCheckUtils]: 57: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,413 INFO L273 TraceCheckUtils]: 58: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,414 INFO L273 TraceCheckUtils]: 59: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,415 INFO L273 TraceCheckUtils]: 60: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,415 INFO L256 TraceCheckUtils]: 61: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,416 INFO L273 TraceCheckUtils]: 62: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,416 INFO L273 TraceCheckUtils]: 63: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,416 INFO L273 TraceCheckUtils]: 64: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,417 INFO L273 TraceCheckUtils]: 65: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,417 INFO L273 TraceCheckUtils]: 66: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,417 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,418 INFO L273 TraceCheckUtils]: 68: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,418 INFO L273 TraceCheckUtils]: 69: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,418 INFO L273 TraceCheckUtils]: 70: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,419 INFO L273 TraceCheckUtils]: 71: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,419 INFO L273 TraceCheckUtils]: 72: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,420 INFO L256 TraceCheckUtils]: 73: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,420 INFO L273 TraceCheckUtils]: 74: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,421 INFO L273 TraceCheckUtils]: 75: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,421 INFO L273 TraceCheckUtils]: 76: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,422 INFO L273 TraceCheckUtils]: 77: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,422 INFO L273 TraceCheckUtils]: 78: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,423 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,424 INFO L273 TraceCheckUtils]: 80: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,424 INFO L273 TraceCheckUtils]: 81: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,425 INFO L273 TraceCheckUtils]: 82: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,425 INFO L273 TraceCheckUtils]: 83: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,426 INFO L273 TraceCheckUtils]: 84: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,427 INFO L256 TraceCheckUtils]: 85: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,427 INFO L273 TraceCheckUtils]: 86: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,428 INFO L273 TraceCheckUtils]: 87: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,428 INFO L273 TraceCheckUtils]: 88: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,429 INFO L273 TraceCheckUtils]: 89: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,429 INFO L273 TraceCheckUtils]: 90: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,431 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,431 INFO L273 TraceCheckUtils]: 92: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,432 INFO L273 TraceCheckUtils]: 93: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,432 INFO L273 TraceCheckUtils]: 94: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,433 INFO L273 TraceCheckUtils]: 95: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,433 INFO L273 TraceCheckUtils]: 96: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,434 INFO L256 TraceCheckUtils]: 97: Hoare triple {8932#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,435 INFO L273 TraceCheckUtils]: 98: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,435 INFO L273 TraceCheckUtils]: 99: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,436 INFO L273 TraceCheckUtils]: 100: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,436 INFO L273 TraceCheckUtils]: 101: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,437 INFO L273 TraceCheckUtils]: 102: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,438 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {8932#(<= 100000 ~SIZE~0)} {8932#(<= 100000 ~SIZE~0)} #132#return; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,438 INFO L273 TraceCheckUtils]: 104: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,439 INFO L273 TraceCheckUtils]: 105: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,439 INFO L273 TraceCheckUtils]: 106: Hoare triple {8932#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,440 INFO L273 TraceCheckUtils]: 107: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume true; {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,440 INFO L273 TraceCheckUtils]: 108: Hoare triple {8932#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {8932#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:42,441 INFO L273 TraceCheckUtils]: 109: Hoare triple {8932#(<= 100000 ~SIZE~0)} ~i~1 := 0; {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,442 INFO L273 TraceCheckUtils]: 110: Hoare triple {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume true; {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,442 INFO L273 TraceCheckUtils]: 111: Hoare triple {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,443 INFO L273 TraceCheckUtils]: 112: Hoare triple {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,444 INFO L273 TraceCheckUtils]: 113: Hoare triple {9272#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,444 INFO L273 TraceCheckUtils]: 114: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,445 INFO L273 TraceCheckUtils]: 115: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,446 INFO L273 TraceCheckUtils]: 116: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,447 INFO L273 TraceCheckUtils]: 117: Hoare triple {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,447 INFO L273 TraceCheckUtils]: 118: Hoare triple {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume true; {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,448 INFO L273 TraceCheckUtils]: 119: Hoare triple {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,449 INFO L273 TraceCheckUtils]: 120: Hoare triple {9295#(and (<= main_~pos~0 1) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,449 INFO L273 TraceCheckUtils]: 121: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,450 INFO L273 TraceCheckUtils]: 122: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,451 INFO L273 TraceCheckUtils]: 123: Hoare triple {9285#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {9317#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,452 INFO L273 TraceCheckUtils]: 124: Hoare triple {9317#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume true; {9317#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:42,452 INFO L273 TraceCheckUtils]: 125: Hoare triple {9317#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {8931#false} is VALID [2018-11-14 17:00:42,453 INFO L273 TraceCheckUtils]: 126: Hoare triple {8931#false} assume ~found~0 == 1;~i~1 := 0; {8931#false} is VALID [2018-11-14 17:00:42,453 INFO L273 TraceCheckUtils]: 127: Hoare triple {8931#false} assume true; {8931#false} is VALID [2018-11-14 17:00:42,453 INFO L273 TraceCheckUtils]: 128: Hoare triple {8931#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {8931#false} is VALID [2018-11-14 17:00:42,453 INFO L256 TraceCheckUtils]: 129: Hoare triple {8931#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {8931#false} is VALID [2018-11-14 17:00:42,453 INFO L273 TraceCheckUtils]: 130: Hoare triple {8931#false} ~cond := #in~cond; {8931#false} is VALID [2018-11-14 17:00:42,454 INFO L273 TraceCheckUtils]: 131: Hoare triple {8931#false} assume ~cond == 0; {8931#false} is VALID [2018-11-14 17:00:42,454 INFO L273 TraceCheckUtils]: 132: Hoare triple {8931#false} assume !false; {8931#false} is VALID [2018-11-14 17:00:42,469 INFO L134 CoverageAnalysis]: Checked inductivity of 355 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 345 trivial. 0 not checked. [2018-11-14 17:00:42,495 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:42,495 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 7] total 16 [2018-11-14 17:00:42,495 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 133 [2018-11-14 17:00:42,496 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:42,496 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-14 17:00:42,629 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:42,629 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-14 17:00:42,630 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-14 17:00:42,630 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=167, Unknown=0, NotChecked=0, Total=240 [2018-11-14 17:00:42,631 INFO L87 Difference]: Start difference. First operand 151 states and 192 transitions. Second operand 16 states. [2018-11-14 17:00:45,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:45,609 INFO L93 Difference]: Finished difference Result 267 states and 333 transitions. [2018-11-14 17:00:45,609 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-14 17:00:45,609 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 133 [2018-11-14 17:00:45,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:45,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 17:00:45,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 253 transitions. [2018-11-14 17:00:45,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-14 17:00:45,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 253 transitions. [2018-11-14 17:00:45,618 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 253 transitions. [2018-11-14 17:00:48,449 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 253 edges. 253 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:48,457 INFO L225 Difference]: With dead ends: 267 [2018-11-14 17:00:48,457 INFO L226 Difference]: Without dead ends: 220 [2018-11-14 17:00:48,458 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 155 GetRequests, 130 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=190, Invalid=512, Unknown=0, NotChecked=0, Total=702 [2018-11-14 17:00:48,459 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 220 states. [2018-11-14 17:00:50,486 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 220 to 161. [2018-11-14 17:00:50,486 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:00:50,486 INFO L82 GeneralOperation]: Start isEquivalent. First operand 220 states. Second operand 161 states. [2018-11-14 17:00:50,486 INFO L74 IsIncluded]: Start isIncluded. First operand 220 states. Second operand 161 states. [2018-11-14 17:00:50,487 INFO L87 Difference]: Start difference. First operand 220 states. Second operand 161 states. [2018-11-14 17:00:50,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:50,495 INFO L93 Difference]: Finished difference Result 220 states and 280 transitions. [2018-11-14 17:00:50,495 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 280 transitions. [2018-11-14 17:00:50,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:50,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:50,497 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 220 states. [2018-11-14 17:00:50,497 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 220 states. [2018-11-14 17:00:50,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:50,505 INFO L93 Difference]: Finished difference Result 220 states and 280 transitions. [2018-11-14 17:00:50,505 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 280 transitions. [2018-11-14 17:00:50,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:00:50,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:00:50,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:00:50,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:00:50,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2018-11-14 17:00:50,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 207 transitions. [2018-11-14 17:00:50,511 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 207 transitions. Word has length 133 [2018-11-14 17:00:50,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:00:50,512 INFO L480 AbstractCegarLoop]: Abstraction has 161 states and 207 transitions. [2018-11-14 17:00:50,512 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-14 17:00:50,512 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2018-11-14 17:00:50,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 147 [2018-11-14 17:00:50,514 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:00:50,514 INFO L375 BasicCegarLoop]: trace histogram [10, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:00:50,514 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:00:50,514 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:00:50,514 INFO L82 PathProgramCache]: Analyzing trace with hash -1275433689, now seen corresponding path program 4 times [2018-11-14 17:00:50,515 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:00:50,515 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:00:50,515 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:50,516 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:00:50,516 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:00:50,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:51,047 INFO L256 TraceCheckUtils]: 0: Hoare triple {10365#true} call ULTIMATE.init(); {10365#true} is VALID [2018-11-14 17:00:51,048 INFO L273 TraceCheckUtils]: 1: Hoare triple {10365#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {10367#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:51,049 INFO L273 TraceCheckUtils]: 2: Hoare triple {10367#(<= 100000 ~SIZE~0)} assume true; {10367#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:51,049 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10367#(<= 100000 ~SIZE~0)} {10365#true} #128#return; {10367#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:51,050 INFO L256 TraceCheckUtils]: 4: Hoare triple {10367#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {10367#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:00:51,051 INFO L273 TraceCheckUtils]: 5: Hoare triple {10367#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,052 INFO L273 TraceCheckUtils]: 6: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,052 INFO L273 TraceCheckUtils]: 7: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,053 INFO L256 TraceCheckUtils]: 8: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,053 INFO L273 TraceCheckUtils]: 9: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,053 INFO L273 TraceCheckUtils]: 10: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,053 INFO L273 TraceCheckUtils]: 11: Hoare triple {10365#true} assume !(~i~0 < ~size); {10365#true} is VALID [2018-11-14 17:00:51,053 INFO L273 TraceCheckUtils]: 12: Hoare triple {10365#true} #res := 0; {10365#true} is VALID [2018-11-14 17:00:51,054 INFO L273 TraceCheckUtils]: 13: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,055 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {10365#true} {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,056 INFO L273 TraceCheckUtils]: 15: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,057 INFO L273 TraceCheckUtils]: 16: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,057 INFO L256 TraceCheckUtils]: 17: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {10365#true} is VALID [2018-11-14 17:00:51,057 INFO L273 TraceCheckUtils]: 18: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {10365#true} is VALID [2018-11-14 17:00:51,057 INFO L273 TraceCheckUtils]: 19: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,059 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {10365#true} {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,060 INFO L273 TraceCheckUtils]: 21: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:00:51,060 INFO L273 TraceCheckUtils]: 22: Hoare triple {10368#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,073 INFO L273 TraceCheckUtils]: 23: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,073 INFO L273 TraceCheckUtils]: 24: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,073 INFO L256 TraceCheckUtils]: 25: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,074 INFO L273 TraceCheckUtils]: 26: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,074 INFO L273 TraceCheckUtils]: 27: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,074 INFO L273 TraceCheckUtils]: 28: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,074 INFO L273 TraceCheckUtils]: 29: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,074 INFO L273 TraceCheckUtils]: 30: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,075 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {10365#true} {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,076 INFO L273 TraceCheckUtils]: 32: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,076 INFO L273 TraceCheckUtils]: 33: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:00:51,077 INFO L273 TraceCheckUtils]: 34: Hoare triple {10369#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,077 INFO L273 TraceCheckUtils]: 35: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,077 INFO L273 TraceCheckUtils]: 36: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,077 INFO L256 TraceCheckUtils]: 37: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,077 INFO L273 TraceCheckUtils]: 38: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,078 INFO L273 TraceCheckUtils]: 39: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,078 INFO L273 TraceCheckUtils]: 40: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,078 INFO L273 TraceCheckUtils]: 41: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,078 INFO L273 TraceCheckUtils]: 42: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,080 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {10365#true} {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,080 INFO L273 TraceCheckUtils]: 44: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,080 INFO L273 TraceCheckUtils]: 45: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:00:51,081 INFO L273 TraceCheckUtils]: 46: Hoare triple {10370#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,081 INFO L273 TraceCheckUtils]: 47: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,081 INFO L273 TraceCheckUtils]: 48: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,081 INFO L256 TraceCheckUtils]: 49: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,082 INFO L273 TraceCheckUtils]: 50: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,082 INFO L273 TraceCheckUtils]: 51: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,082 INFO L273 TraceCheckUtils]: 52: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,082 INFO L273 TraceCheckUtils]: 53: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,082 INFO L273 TraceCheckUtils]: 54: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,084 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {10365#true} {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,084 INFO L273 TraceCheckUtils]: 56: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,084 INFO L273 TraceCheckUtils]: 57: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:00:51,085 INFO L273 TraceCheckUtils]: 58: Hoare triple {10371#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,085 INFO L273 TraceCheckUtils]: 59: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,085 INFO L273 TraceCheckUtils]: 60: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,086 INFO L256 TraceCheckUtils]: 61: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,086 INFO L273 TraceCheckUtils]: 62: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,086 INFO L273 TraceCheckUtils]: 63: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,086 INFO L273 TraceCheckUtils]: 64: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,086 INFO L273 TraceCheckUtils]: 65: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,086 INFO L273 TraceCheckUtils]: 66: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,087 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {10365#true} {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,088 INFO L273 TraceCheckUtils]: 68: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,088 INFO L273 TraceCheckUtils]: 69: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:00:51,089 INFO L273 TraceCheckUtils]: 70: Hoare triple {10372#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,090 INFO L273 TraceCheckUtils]: 71: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,090 INFO L273 TraceCheckUtils]: 72: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,090 INFO L256 TraceCheckUtils]: 73: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,091 INFO L273 TraceCheckUtils]: 74: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,091 INFO L273 TraceCheckUtils]: 75: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,091 INFO L273 TraceCheckUtils]: 76: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,091 INFO L273 TraceCheckUtils]: 77: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,091 INFO L273 TraceCheckUtils]: 78: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,093 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {10365#true} {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,093 INFO L273 TraceCheckUtils]: 80: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,093 INFO L273 TraceCheckUtils]: 81: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:00:51,094 INFO L273 TraceCheckUtils]: 82: Hoare triple {10373#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,094 INFO L273 TraceCheckUtils]: 83: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,094 INFO L273 TraceCheckUtils]: 84: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,095 INFO L256 TraceCheckUtils]: 85: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,095 INFO L273 TraceCheckUtils]: 86: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,095 INFO L273 TraceCheckUtils]: 87: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,095 INFO L273 TraceCheckUtils]: 88: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,095 INFO L273 TraceCheckUtils]: 89: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,095 INFO L273 TraceCheckUtils]: 90: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,096 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {10365#true} {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,097 INFO L273 TraceCheckUtils]: 92: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,097 INFO L273 TraceCheckUtils]: 93: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:00:51,098 INFO L273 TraceCheckUtils]: 94: Hoare triple {10374#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,099 INFO L273 TraceCheckUtils]: 95: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,099 INFO L273 TraceCheckUtils]: 96: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,099 INFO L256 TraceCheckUtils]: 97: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,099 INFO L273 TraceCheckUtils]: 98: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,100 INFO L273 TraceCheckUtils]: 99: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,100 INFO L273 TraceCheckUtils]: 100: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,100 INFO L273 TraceCheckUtils]: 101: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,100 INFO L273 TraceCheckUtils]: 102: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,102 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {10365#true} {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} #132#return; {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,102 INFO L273 TraceCheckUtils]: 104: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,102 INFO L273 TraceCheckUtils]: 105: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:00:51,103 INFO L273 TraceCheckUtils]: 106: Hoare triple {10375#(<= (+ main_~v~0 99993) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,103 INFO L273 TraceCheckUtils]: 107: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} assume true; {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,103 INFO L273 TraceCheckUtils]: 108: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,103 INFO L256 TraceCheckUtils]: 109: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,104 INFO L273 TraceCheckUtils]: 110: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,104 INFO L273 TraceCheckUtils]: 111: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,104 INFO L273 TraceCheckUtils]: 112: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,104 INFO L273 TraceCheckUtils]: 113: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,104 INFO L273 TraceCheckUtils]: 114: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,106 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {10365#true} {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} #132#return; {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,106 INFO L273 TraceCheckUtils]: 116: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,107 INFO L273 TraceCheckUtils]: 117: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:00:51,107 INFO L273 TraceCheckUtils]: 118: Hoare triple {10376#(<= (+ main_~v~0 99992) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10377#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 119: Hoare triple {10377#(<= (+ main_~v~0 99991) ~SIZE~0)} assume true; {10377#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 120: Hoare triple {10377#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {10366#false} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 121: Hoare triple {10366#false} ~i~1 := 0; {10366#false} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 122: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 123: Hoare triple {10366#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10366#false} is VALID [2018-11-14 17:00:51,108 INFO L273 TraceCheckUtils]: 124: Hoare triple {10366#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 125: Hoare triple {10366#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 126: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 127: Hoare triple {10366#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 128: Hoare triple {10366#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 129: Hoare triple {10366#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 130: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 131: Hoare triple {10366#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10366#false} is VALID [2018-11-14 17:00:51,109 INFO L273 TraceCheckUtils]: 132: Hoare triple {10366#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 133: Hoare triple {10366#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 134: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 135: Hoare triple {10366#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 136: Hoare triple {10366#false} assume ~found~0 == 1;~i~1 := ~pos~0; {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 137: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,110 INFO L273 TraceCheckUtils]: 138: Hoare triple {10366#false} assume !(~i~1 < ~SIZE~0 - 1); {10366#false} is VALID [2018-11-14 17:00:51,111 INFO L273 TraceCheckUtils]: 139: Hoare triple {10366#false} assume ~found~0 == 1;~i~1 := 0; {10366#false} is VALID [2018-11-14 17:00:51,111 INFO L273 TraceCheckUtils]: 140: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,111 INFO L273 TraceCheckUtils]: 141: Hoare triple {10366#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10366#false} is VALID [2018-11-14 17:00:51,111 INFO L256 TraceCheckUtils]: 142: Hoare triple {10366#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {10366#false} is VALID [2018-11-14 17:00:51,111 INFO L273 TraceCheckUtils]: 143: Hoare triple {10366#false} ~cond := #in~cond; {10366#false} is VALID [2018-11-14 17:00:51,112 INFO L273 TraceCheckUtils]: 144: Hoare triple {10366#false} assume ~cond == 0; {10366#false} is VALID [2018-11-14 17:00:51,112 INFO L273 TraceCheckUtils]: 145: Hoare triple {10366#false} assume !false; {10366#false} is VALID [2018-11-14 17:00:51,131 INFO L134 CoverageAnalysis]: Checked inductivity of 460 backedges. 0 proven. 234 refuted. 0 times theorem prover too weak. 226 trivial. 0 not checked. [2018-11-14 17:00:51,131 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:00:51,131 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:00:51,140 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:00:51,217 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:00:51,217 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:00:51,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:00:51,254 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:00:51,818 INFO L256 TraceCheckUtils]: 0: Hoare triple {10365#true} call ULTIMATE.init(); {10365#true} is VALID [2018-11-14 17:00:51,818 INFO L273 TraceCheckUtils]: 1: Hoare triple {10365#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {10365#true} is VALID [2018-11-14 17:00:51,819 INFO L273 TraceCheckUtils]: 2: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,819 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10365#true} {10365#true} #128#return; {10365#true} is VALID [2018-11-14 17:00:51,819 INFO L256 TraceCheckUtils]: 4: Hoare triple {10365#true} call #t~ret13 := main(); {10365#true} is VALID [2018-11-14 17:00:51,820 INFO L273 TraceCheckUtils]: 5: Hoare triple {10365#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,821 INFO L273 TraceCheckUtils]: 6: Hoare triple {10396#(<= 0 main_~v~0)} assume true; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,821 INFO L273 TraceCheckUtils]: 7: Hoare triple {10396#(<= 0 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,821 INFO L256 TraceCheckUtils]: 8: Hoare triple {10396#(<= 0 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,821 INFO L273 TraceCheckUtils]: 9: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,821 INFO L273 TraceCheckUtils]: 10: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,822 INFO L273 TraceCheckUtils]: 11: Hoare triple {10365#true} assume !(~i~0 < ~size); {10365#true} is VALID [2018-11-14 17:00:51,822 INFO L273 TraceCheckUtils]: 12: Hoare triple {10365#true} #res := 0; {10365#true} is VALID [2018-11-14 17:00:51,822 INFO L273 TraceCheckUtils]: 13: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,822 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {10365#true} {10396#(<= 0 main_~v~0)} #132#return; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,823 INFO L273 TraceCheckUtils]: 15: Hoare triple {10396#(<= 0 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,823 INFO L273 TraceCheckUtils]: 16: Hoare triple {10396#(<= 0 main_~v~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,823 INFO L256 TraceCheckUtils]: 17: Hoare triple {10396#(<= 0 main_~v~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {10365#true} is VALID [2018-11-14 17:00:51,824 INFO L273 TraceCheckUtils]: 18: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {10365#true} is VALID [2018-11-14 17:00:51,824 INFO L273 TraceCheckUtils]: 19: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,825 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {10365#true} {10396#(<= 0 main_~v~0)} #134#return; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,825 INFO L273 TraceCheckUtils]: 21: Hoare triple {10396#(<= 0 main_~v~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {10396#(<= 0 main_~v~0)} is VALID [2018-11-14 17:00:51,825 INFO L273 TraceCheckUtils]: 22: Hoare triple {10396#(<= 0 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,826 INFO L273 TraceCheckUtils]: 23: Hoare triple {10448#(<= 1 main_~v~0)} assume true; {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,826 INFO L273 TraceCheckUtils]: 24: Hoare triple {10448#(<= 1 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,826 INFO L256 TraceCheckUtils]: 25: Hoare triple {10448#(<= 1 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,826 INFO L273 TraceCheckUtils]: 26: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,827 INFO L273 TraceCheckUtils]: 27: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,827 INFO L273 TraceCheckUtils]: 28: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,827 INFO L273 TraceCheckUtils]: 29: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,827 INFO L273 TraceCheckUtils]: 30: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,828 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {10365#true} {10448#(<= 1 main_~v~0)} #132#return; {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,829 INFO L273 TraceCheckUtils]: 32: Hoare triple {10448#(<= 1 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,829 INFO L273 TraceCheckUtils]: 33: Hoare triple {10448#(<= 1 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10448#(<= 1 main_~v~0)} is VALID [2018-11-14 17:00:51,830 INFO L273 TraceCheckUtils]: 34: Hoare triple {10448#(<= 1 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,830 INFO L273 TraceCheckUtils]: 35: Hoare triple {10485#(<= 2 main_~v~0)} assume true; {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 36: Hoare triple {10485#(<= 2 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,831 INFO L256 TraceCheckUtils]: 37: Hoare triple {10485#(<= 2 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 38: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 39: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 40: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 41: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,831 INFO L273 TraceCheckUtils]: 42: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,832 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {10365#true} {10485#(<= 2 main_~v~0)} #132#return; {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,832 INFO L273 TraceCheckUtils]: 44: Hoare triple {10485#(<= 2 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,833 INFO L273 TraceCheckUtils]: 45: Hoare triple {10485#(<= 2 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10485#(<= 2 main_~v~0)} is VALID [2018-11-14 17:00:51,833 INFO L273 TraceCheckUtils]: 46: Hoare triple {10485#(<= 2 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,834 INFO L273 TraceCheckUtils]: 47: Hoare triple {10522#(<= 3 main_~v~0)} assume true; {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,834 INFO L273 TraceCheckUtils]: 48: Hoare triple {10522#(<= 3 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,834 INFO L256 TraceCheckUtils]: 49: Hoare triple {10522#(<= 3 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,834 INFO L273 TraceCheckUtils]: 50: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,835 INFO L273 TraceCheckUtils]: 51: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,835 INFO L273 TraceCheckUtils]: 52: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,835 INFO L273 TraceCheckUtils]: 53: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,835 INFO L273 TraceCheckUtils]: 54: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,836 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {10365#true} {10522#(<= 3 main_~v~0)} #132#return; {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,837 INFO L273 TraceCheckUtils]: 56: Hoare triple {10522#(<= 3 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,837 INFO L273 TraceCheckUtils]: 57: Hoare triple {10522#(<= 3 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10522#(<= 3 main_~v~0)} is VALID [2018-11-14 17:00:51,838 INFO L273 TraceCheckUtils]: 58: Hoare triple {10522#(<= 3 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,838 INFO L273 TraceCheckUtils]: 59: Hoare triple {10559#(<= 4 main_~v~0)} assume true; {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,838 INFO L273 TraceCheckUtils]: 60: Hoare triple {10559#(<= 4 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,838 INFO L256 TraceCheckUtils]: 61: Hoare triple {10559#(<= 4 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,838 INFO L273 TraceCheckUtils]: 62: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,839 INFO L273 TraceCheckUtils]: 63: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,839 INFO L273 TraceCheckUtils]: 64: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,839 INFO L273 TraceCheckUtils]: 65: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,839 INFO L273 TraceCheckUtils]: 66: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,840 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {10365#true} {10559#(<= 4 main_~v~0)} #132#return; {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,840 INFO L273 TraceCheckUtils]: 68: Hoare triple {10559#(<= 4 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,841 INFO L273 TraceCheckUtils]: 69: Hoare triple {10559#(<= 4 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10559#(<= 4 main_~v~0)} is VALID [2018-11-14 17:00:51,842 INFO L273 TraceCheckUtils]: 70: Hoare triple {10559#(<= 4 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,842 INFO L273 TraceCheckUtils]: 71: Hoare triple {10596#(<= 5 main_~v~0)} assume true; {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,843 INFO L273 TraceCheckUtils]: 72: Hoare triple {10596#(<= 5 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,843 INFO L256 TraceCheckUtils]: 73: Hoare triple {10596#(<= 5 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,843 INFO L273 TraceCheckUtils]: 74: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,843 INFO L273 TraceCheckUtils]: 75: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,843 INFO L273 TraceCheckUtils]: 76: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,844 INFO L273 TraceCheckUtils]: 77: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,844 INFO L273 TraceCheckUtils]: 78: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,845 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {10365#true} {10596#(<= 5 main_~v~0)} #132#return; {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,845 INFO L273 TraceCheckUtils]: 80: Hoare triple {10596#(<= 5 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,846 INFO L273 TraceCheckUtils]: 81: Hoare triple {10596#(<= 5 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10596#(<= 5 main_~v~0)} is VALID [2018-11-14 17:00:51,846 INFO L273 TraceCheckUtils]: 82: Hoare triple {10596#(<= 5 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,846 INFO L273 TraceCheckUtils]: 83: Hoare triple {10633#(<= 6 main_~v~0)} assume true; {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 84: Hoare triple {10633#(<= 6 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,847 INFO L256 TraceCheckUtils]: 85: Hoare triple {10633#(<= 6 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 86: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 87: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 88: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 89: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,847 INFO L273 TraceCheckUtils]: 90: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,849 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {10365#true} {10633#(<= 6 main_~v~0)} #132#return; {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,849 INFO L273 TraceCheckUtils]: 92: Hoare triple {10633#(<= 6 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,849 INFO L273 TraceCheckUtils]: 93: Hoare triple {10633#(<= 6 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10633#(<= 6 main_~v~0)} is VALID [2018-11-14 17:00:51,850 INFO L273 TraceCheckUtils]: 94: Hoare triple {10633#(<= 6 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,850 INFO L273 TraceCheckUtils]: 95: Hoare triple {10670#(<= 7 main_~v~0)} assume true; {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,850 INFO L273 TraceCheckUtils]: 96: Hoare triple {10670#(<= 7 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,850 INFO L256 TraceCheckUtils]: 97: Hoare triple {10670#(<= 7 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10365#true} is VALID [2018-11-14 17:00:51,851 INFO L273 TraceCheckUtils]: 98: Hoare triple {10365#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10365#true} is VALID [2018-11-14 17:00:51,851 INFO L273 TraceCheckUtils]: 99: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,851 INFO L273 TraceCheckUtils]: 100: Hoare triple {10365#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10365#true} is VALID [2018-11-14 17:00:51,851 INFO L273 TraceCheckUtils]: 101: Hoare triple {10365#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10365#true} is VALID [2018-11-14 17:00:51,851 INFO L273 TraceCheckUtils]: 102: Hoare triple {10365#true} assume true; {10365#true} is VALID [2018-11-14 17:00:51,852 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {10365#true} {10670#(<= 7 main_~v~0)} #132#return; {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,853 INFO L273 TraceCheckUtils]: 104: Hoare triple {10670#(<= 7 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,853 INFO L273 TraceCheckUtils]: 105: Hoare triple {10670#(<= 7 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10670#(<= 7 main_~v~0)} is VALID [2018-11-14 17:00:51,854 INFO L273 TraceCheckUtils]: 106: Hoare triple {10670#(<= 7 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10707#(<= 8 main_~v~0)} is VALID [2018-11-14 17:00:51,854 INFO L273 TraceCheckUtils]: 107: Hoare triple {10707#(<= 8 main_~v~0)} assume true; {10707#(<= 8 main_~v~0)} is VALID [2018-11-14 17:00:51,855 INFO L273 TraceCheckUtils]: 108: Hoare triple {10707#(<= 8 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,856 INFO L256 TraceCheckUtils]: 109: Hoare triple {10714#(<= 9 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,857 INFO L273 TraceCheckUtils]: 110: Hoare triple {10714#(<= 9 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,857 INFO L273 TraceCheckUtils]: 111: Hoare triple {10714#(<= 9 ~SIZE~0)} assume true; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,858 INFO L273 TraceCheckUtils]: 112: Hoare triple {10714#(<= 9 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,858 INFO L273 TraceCheckUtils]: 113: Hoare triple {10714#(<= 9 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,859 INFO L273 TraceCheckUtils]: 114: Hoare triple {10714#(<= 9 ~SIZE~0)} assume true; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,860 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {10714#(<= 9 ~SIZE~0)} {10714#(<= 9 ~SIZE~0)} #132#return; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,860 INFO L273 TraceCheckUtils]: 116: Hoare triple {10714#(<= 9 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,861 INFO L273 TraceCheckUtils]: 117: Hoare triple {10714#(<= 9 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,861 INFO L273 TraceCheckUtils]: 118: Hoare triple {10714#(<= 9 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,862 INFO L273 TraceCheckUtils]: 119: Hoare triple {10714#(<= 9 ~SIZE~0)} assume true; {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,862 INFO L273 TraceCheckUtils]: 120: Hoare triple {10714#(<= 9 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {10714#(<= 9 ~SIZE~0)} is VALID [2018-11-14 17:00:51,863 INFO L273 TraceCheckUtils]: 121: Hoare triple {10714#(<= 9 ~SIZE~0)} ~i~1 := 0; {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,864 INFO L273 TraceCheckUtils]: 122: Hoare triple {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} assume true; {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,864 INFO L273 TraceCheckUtils]: 123: Hoare triple {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,865 INFO L273 TraceCheckUtils]: 124: Hoare triple {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,866 INFO L273 TraceCheckUtils]: 125: Hoare triple {10754#(and (<= main_~i~1 0) (<= 9 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,866 INFO L273 TraceCheckUtils]: 126: Hoare triple {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} assume true; {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,867 INFO L273 TraceCheckUtils]: 127: Hoare triple {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,868 INFO L273 TraceCheckUtils]: 128: Hoare triple {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,869 INFO L273 TraceCheckUtils]: 129: Hoare triple {10767#(and (<= main_~i~1 1) (<= 9 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,869 INFO L273 TraceCheckUtils]: 130: Hoare triple {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} assume true; {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,870 INFO L273 TraceCheckUtils]: 131: Hoare triple {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,871 INFO L273 TraceCheckUtils]: 132: Hoare triple {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,872 INFO L273 TraceCheckUtils]: 133: Hoare triple {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,872 INFO L273 TraceCheckUtils]: 134: Hoare triple {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} assume true; {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,873 INFO L273 TraceCheckUtils]: 135: Hoare triple {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,874 INFO L273 TraceCheckUtils]: 136: Hoare triple {10790#(and (<= main_~pos~0 2) (<= 9 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,874 INFO L273 TraceCheckUtils]: 137: Hoare triple {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} assume true; {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} is VALID [2018-11-14 17:00:51,875 INFO L273 TraceCheckUtils]: 138: Hoare triple {10780#(and (<= main_~i~1 2) (<= 9 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {10366#false} is VALID [2018-11-14 17:00:51,875 INFO L273 TraceCheckUtils]: 139: Hoare triple {10366#false} assume ~found~0 == 1;~i~1 := 0; {10366#false} is VALID [2018-11-14 17:00:51,875 INFO L273 TraceCheckUtils]: 140: Hoare triple {10366#false} assume true; {10366#false} is VALID [2018-11-14 17:00:51,876 INFO L273 TraceCheckUtils]: 141: Hoare triple {10366#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {10366#false} is VALID [2018-11-14 17:00:51,876 INFO L256 TraceCheckUtils]: 142: Hoare triple {10366#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {10366#false} is VALID [2018-11-14 17:00:51,876 INFO L273 TraceCheckUtils]: 143: Hoare triple {10366#false} ~cond := #in~cond; {10366#false} is VALID [2018-11-14 17:00:51,876 INFO L273 TraceCheckUtils]: 144: Hoare triple {10366#false} assume ~cond == 0; {10366#false} is VALID [2018-11-14 17:00:51,876 INFO L273 TraceCheckUtils]: 145: Hoare triple {10366#false} assume !false; {10366#false} is VALID [2018-11-14 17:00:51,891 INFO L134 CoverageAnalysis]: Checked inductivity of 460 backedges. 231 proven. 68 refuted. 0 times theorem prover too weak. 161 trivial. 0 not checked. [2018-11-14 17:00:51,911 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:00:51,911 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 16] total 27 [2018-11-14 17:00:51,912 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 146 [2018-11-14 17:00:51,913 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:00:51,913 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states. [2018-11-14 17:00:52,096 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:52,097 INFO L459 AbstractCegarLoop]: Interpolant automaton has 27 states [2018-11-14 17:00:52,097 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2018-11-14 17:00:52,097 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=559, Unknown=0, NotChecked=0, Total=702 [2018-11-14 17:00:52,098 INFO L87 Difference]: Start difference. First operand 161 states and 207 transitions. Second operand 27 states. [2018-11-14 17:00:58,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:00:58,783 INFO L93 Difference]: Finished difference Result 280 states and 351 transitions. [2018-11-14 17:00:58,784 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-14 17:00:58,784 INFO L78 Accepts]: Start accepts. Automaton has 27 states. Word has length 146 [2018-11-14 17:00:58,784 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:00:58,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 17:00:58,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 265 transitions. [2018-11-14 17:00:58,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-14 17:00:58,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 265 transitions. [2018-11-14 17:00:58,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 265 transitions. [2018-11-14 17:00:59,525 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 265 edges. 265 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:00:59,532 INFO L225 Difference]: With dead ends: 280 [2018-11-14 17:00:59,532 INFO L226 Difference]: Without dead ends: 233 [2018-11-14 17:00:59,534 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 42 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 357 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=422, Invalid=1470, Unknown=0, NotChecked=0, Total=1892 [2018-11-14 17:00:59,534 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2018-11-14 17:01:00,583 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 179. [2018-11-14 17:01:00,583 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:01:00,583 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand 179 states. [2018-11-14 17:01:00,583 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand 179 states. [2018-11-14 17:01:00,584 INFO L87 Difference]: Start difference. First operand 233 states. Second operand 179 states. [2018-11-14 17:01:00,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:00,592 INFO L93 Difference]: Finished difference Result 233 states and 298 transitions. [2018-11-14 17:01:00,592 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 298 transitions. [2018-11-14 17:01:00,593 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:00,593 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:00,593 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand 233 states. [2018-11-14 17:01:00,594 INFO L87 Difference]: Start difference. First operand 179 states. Second operand 233 states. [2018-11-14 17:01:00,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:00,601 INFO L93 Difference]: Finished difference Result 233 states and 298 transitions. [2018-11-14 17:01:00,601 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 298 transitions. [2018-11-14 17:01:00,602 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:00,602 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:00,602 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:01:00,602 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:01:00,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 179 states. [2018-11-14 17:01:00,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 231 transitions. [2018-11-14 17:01:00,607 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 231 transitions. Word has length 146 [2018-11-14 17:01:00,608 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:01:00,608 INFO L480 AbstractCegarLoop]: Abstraction has 179 states and 231 transitions. [2018-11-14 17:01:00,608 INFO L481 AbstractCegarLoop]: Interpolant automaton has 27 states. [2018-11-14 17:01:00,608 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 231 transitions. [2018-11-14 17:01:00,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 160 [2018-11-14 17:01:00,610 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:01:00,610 INFO L375 BasicCegarLoop]: trace histogram [11, 10, 10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:01:00,610 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:01:00,611 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:01:00,611 INFO L82 PathProgramCache]: Analyzing trace with hash -1788323351, now seen corresponding path program 2 times [2018-11-14 17:01:00,611 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:01:00,611 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:01:00,612 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:00,612 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:01:00,612 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:00,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:01,341 INFO L256 TraceCheckUtils]: 0: Hoare triple {11928#true} call ULTIMATE.init(); {11928#true} is VALID [2018-11-14 17:01:01,359 INFO L273 TraceCheckUtils]: 1: Hoare triple {11928#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,365 INFO L273 TraceCheckUtils]: 2: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,365 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {11928#true} #128#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,366 INFO L256 TraceCheckUtils]: 4: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,366 INFO L273 TraceCheckUtils]: 5: Hoare triple {11930#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,366 INFO L273 TraceCheckUtils]: 6: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,366 INFO L273 TraceCheckUtils]: 7: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,367 INFO L256 TraceCheckUtils]: 8: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,367 INFO L273 TraceCheckUtils]: 9: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,367 INFO L273 TraceCheckUtils]: 10: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,367 INFO L273 TraceCheckUtils]: 11: Hoare triple {11928#true} assume !(~i~0 < ~size); {11928#true} is VALID [2018-11-14 17:01:01,367 INFO L273 TraceCheckUtils]: 12: Hoare triple {11928#true} #res := 0; {11928#true} is VALID [2018-11-14 17:01:01,367 INFO L273 TraceCheckUtils]: 13: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,368 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,368 INFO L273 TraceCheckUtils]: 15: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,368 INFO L273 TraceCheckUtils]: 16: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,369 INFO L256 TraceCheckUtils]: 17: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {11928#true} is VALID [2018-11-14 17:01:01,369 INFO L273 TraceCheckUtils]: 18: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {11928#true} is VALID [2018-11-14 17:01:01,369 INFO L273 TraceCheckUtils]: 19: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,369 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #134#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,370 INFO L273 TraceCheckUtils]: 21: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,370 INFO L273 TraceCheckUtils]: 22: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,371 INFO L273 TraceCheckUtils]: 23: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,371 INFO L273 TraceCheckUtils]: 24: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,371 INFO L256 TraceCheckUtils]: 25: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,371 INFO L273 TraceCheckUtils]: 26: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,372 INFO L273 TraceCheckUtils]: 27: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,372 INFO L273 TraceCheckUtils]: 28: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,372 INFO L273 TraceCheckUtils]: 29: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,372 INFO L273 TraceCheckUtils]: 30: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,373 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,373 INFO L273 TraceCheckUtils]: 32: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,373 INFO L273 TraceCheckUtils]: 33: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,374 INFO L273 TraceCheckUtils]: 34: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,374 INFO L273 TraceCheckUtils]: 35: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,374 INFO L273 TraceCheckUtils]: 36: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,374 INFO L256 TraceCheckUtils]: 37: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,374 INFO L273 TraceCheckUtils]: 38: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,375 INFO L273 TraceCheckUtils]: 39: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,375 INFO L273 TraceCheckUtils]: 40: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,375 INFO L273 TraceCheckUtils]: 41: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,375 INFO L273 TraceCheckUtils]: 42: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,376 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,376 INFO L273 TraceCheckUtils]: 44: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,376 INFO L273 TraceCheckUtils]: 45: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,376 INFO L273 TraceCheckUtils]: 46: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,377 INFO L273 TraceCheckUtils]: 47: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,377 INFO L273 TraceCheckUtils]: 48: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,377 INFO L256 TraceCheckUtils]: 49: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,377 INFO L273 TraceCheckUtils]: 50: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,378 INFO L273 TraceCheckUtils]: 51: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,378 INFO L273 TraceCheckUtils]: 52: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,378 INFO L273 TraceCheckUtils]: 53: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,378 INFO L273 TraceCheckUtils]: 54: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,379 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,380 INFO L273 TraceCheckUtils]: 56: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,380 INFO L273 TraceCheckUtils]: 57: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,380 INFO L273 TraceCheckUtils]: 58: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,381 INFO L273 TraceCheckUtils]: 59: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,381 INFO L273 TraceCheckUtils]: 60: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,381 INFO L256 TraceCheckUtils]: 61: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,381 INFO L273 TraceCheckUtils]: 62: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,381 INFO L273 TraceCheckUtils]: 63: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,382 INFO L273 TraceCheckUtils]: 64: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,382 INFO L273 TraceCheckUtils]: 65: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,382 INFO L273 TraceCheckUtils]: 66: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,383 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,383 INFO L273 TraceCheckUtils]: 68: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,384 INFO L273 TraceCheckUtils]: 69: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,384 INFO L273 TraceCheckUtils]: 70: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,384 INFO L273 TraceCheckUtils]: 71: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 72: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,385 INFO L256 TraceCheckUtils]: 73: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 74: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 75: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 76: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 77: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,385 INFO L273 TraceCheckUtils]: 78: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,386 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,386 INFO L273 TraceCheckUtils]: 80: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,387 INFO L273 TraceCheckUtils]: 81: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,387 INFO L273 TraceCheckUtils]: 82: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,387 INFO L273 TraceCheckUtils]: 83: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,388 INFO L273 TraceCheckUtils]: 84: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,388 INFO L256 TraceCheckUtils]: 85: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,388 INFO L273 TraceCheckUtils]: 86: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,388 INFO L273 TraceCheckUtils]: 87: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,389 INFO L273 TraceCheckUtils]: 88: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,389 INFO L273 TraceCheckUtils]: 89: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,389 INFO L273 TraceCheckUtils]: 90: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,390 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,391 INFO L273 TraceCheckUtils]: 92: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,391 INFO L273 TraceCheckUtils]: 93: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,392 INFO L273 TraceCheckUtils]: 94: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,392 INFO L273 TraceCheckUtils]: 95: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,393 INFO L273 TraceCheckUtils]: 96: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,393 INFO L256 TraceCheckUtils]: 97: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,393 INFO L273 TraceCheckUtils]: 98: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,393 INFO L273 TraceCheckUtils]: 99: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,393 INFO L273 TraceCheckUtils]: 100: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,394 INFO L273 TraceCheckUtils]: 101: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,394 INFO L273 TraceCheckUtils]: 102: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,395 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,395 INFO L273 TraceCheckUtils]: 104: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,396 INFO L273 TraceCheckUtils]: 105: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,396 INFO L273 TraceCheckUtils]: 106: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,396 INFO L273 TraceCheckUtils]: 107: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 108: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,397 INFO L256 TraceCheckUtils]: 109: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 110: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 111: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 112: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 113: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,397 INFO L273 TraceCheckUtils]: 114: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,398 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,398 INFO L273 TraceCheckUtils]: 116: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,399 INFO L273 TraceCheckUtils]: 117: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,399 INFO L273 TraceCheckUtils]: 118: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,399 INFO L273 TraceCheckUtils]: 119: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,400 INFO L273 TraceCheckUtils]: 120: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,400 INFO L256 TraceCheckUtils]: 121: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11928#true} is VALID [2018-11-14 17:01:01,400 INFO L273 TraceCheckUtils]: 122: Hoare triple {11928#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11928#true} is VALID [2018-11-14 17:01:01,401 INFO L273 TraceCheckUtils]: 123: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,401 INFO L273 TraceCheckUtils]: 124: Hoare triple {11928#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11928#true} is VALID [2018-11-14 17:01:01,401 INFO L273 TraceCheckUtils]: 125: Hoare triple {11928#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11928#true} is VALID [2018-11-14 17:01:01,401 INFO L273 TraceCheckUtils]: 126: Hoare triple {11928#true} assume true; {11928#true} is VALID [2018-11-14 17:01:01,402 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {11928#true} {11930#(<= 100000 ~SIZE~0)} #132#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,403 INFO L273 TraceCheckUtils]: 128: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,403 INFO L273 TraceCheckUtils]: 129: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,404 INFO L273 TraceCheckUtils]: 130: Hoare triple {11930#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,404 INFO L273 TraceCheckUtils]: 131: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,405 INFO L273 TraceCheckUtils]: 132: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:01,405 INFO L273 TraceCheckUtils]: 133: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~i~1 := 0; {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,406 INFO L273 TraceCheckUtils]: 134: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,407 INFO L273 TraceCheckUtils]: 135: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,407 INFO L273 TraceCheckUtils]: 136: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,408 INFO L273 TraceCheckUtils]: 137: Hoare triple {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,409 INFO L273 TraceCheckUtils]: 138: Hoare triple {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume true; {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,409 INFO L273 TraceCheckUtils]: 139: Hoare triple {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,410 INFO L273 TraceCheckUtils]: 140: Hoare triple {11932#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,411 INFO L273 TraceCheckUtils]: 141: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,412 INFO L273 TraceCheckUtils]: 142: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:01,412 INFO L273 TraceCheckUtils]: 143: Hoare triple {11931#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:01,413 INFO L273 TraceCheckUtils]: 144: Hoare triple {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} assume true; {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:01,413 INFO L273 TraceCheckUtils]: 145: Hoare triple {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:01,414 INFO L273 TraceCheckUtils]: 146: Hoare triple {11933#(<= (+ main_~i~1 99999) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:01,415 INFO L273 TraceCheckUtils]: 147: Hoare triple {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} assume true; {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:01,415 INFO L273 TraceCheckUtils]: 148: Hoare triple {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:01,416 INFO L273 TraceCheckUtils]: 149: Hoare triple {11934#(<= (+ main_~i~1 99998) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11935#(<= (+ main_~i~1 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:01,417 INFO L273 TraceCheckUtils]: 150: Hoare triple {11935#(<= (+ main_~i~1 99997) ~SIZE~0)} assume true; {11935#(<= (+ main_~i~1 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:01,417 INFO L273 TraceCheckUtils]: 151: Hoare triple {11935#(<= (+ main_~i~1 99997) ~SIZE~0)} assume !(~i~1 < ~SIZE~0 - 1); {11929#false} is VALID [2018-11-14 17:01:01,418 INFO L273 TraceCheckUtils]: 152: Hoare triple {11929#false} assume ~found~0 == 1;~i~1 := 0; {11929#false} is VALID [2018-11-14 17:01:01,418 INFO L273 TraceCheckUtils]: 153: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:01,418 INFO L273 TraceCheckUtils]: 154: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {11929#false} is VALID [2018-11-14 17:01:01,418 INFO L256 TraceCheckUtils]: 155: Hoare triple {11929#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {11929#false} is VALID [2018-11-14 17:01:01,418 INFO L273 TraceCheckUtils]: 156: Hoare triple {11929#false} ~cond := #in~cond; {11929#false} is VALID [2018-11-14 17:01:01,419 INFO L273 TraceCheckUtils]: 157: Hoare triple {11929#false} assume ~cond == 0; {11929#false} is VALID [2018-11-14 17:01:01,419 INFO L273 TraceCheckUtils]: 158: Hoare triple {11929#false} assume !false; {11929#false} is VALID [2018-11-14 17:01:01,435 INFO L134 CoverageAnalysis]: Checked inductivity of 568 backedges. 0 proven. 17 refuted. 0 times theorem prover too weak. 551 trivial. 0 not checked. [2018-11-14 17:01:01,435 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:01:01,435 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:01:01,444 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-14 17:01:01,531 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-14 17:01:01,531 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:01:01,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:01,562 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:01:02,132 INFO L256 TraceCheckUtils]: 0: Hoare triple {11928#true} call ULTIMATE.init(); {11928#true} is VALID [2018-11-14 17:01:02,133 INFO L273 TraceCheckUtils]: 1: Hoare triple {11928#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,133 INFO L273 TraceCheckUtils]: 2: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,134 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {11928#true} #128#return; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,135 INFO L256 TraceCheckUtils]: 4: Hoare triple {11930#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,136 INFO L273 TraceCheckUtils]: 5: Hoare triple {11930#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,136 INFO L273 TraceCheckUtils]: 6: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,137 INFO L273 TraceCheckUtils]: 7: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,138 INFO L256 TraceCheckUtils]: 8: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,139 INFO L273 TraceCheckUtils]: 9: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,139 INFO L273 TraceCheckUtils]: 10: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,140 INFO L273 TraceCheckUtils]: 11: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,140 INFO L273 TraceCheckUtils]: 12: Hoare triple {11930#(<= 100000 ~SIZE~0)} #res := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,141 INFO L273 TraceCheckUtils]: 13: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,142 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,142 INFO L273 TraceCheckUtils]: 15: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,143 INFO L273 TraceCheckUtils]: 16: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,144 INFO L256 TraceCheckUtils]: 17: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,145 INFO L273 TraceCheckUtils]: 18: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,145 INFO L273 TraceCheckUtils]: 19: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,146 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,147 INFO L273 TraceCheckUtils]: 21: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,148 INFO L273 TraceCheckUtils]: 22: Hoare triple {11954#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,149 INFO L273 TraceCheckUtils]: 23: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,149 INFO L273 TraceCheckUtils]: 24: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,151 INFO L256 TraceCheckUtils]: 25: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,151 INFO L273 TraceCheckUtils]: 26: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,152 INFO L273 TraceCheckUtils]: 27: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,152 INFO L273 TraceCheckUtils]: 28: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,153 INFO L273 TraceCheckUtils]: 29: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,153 INFO L273 TraceCheckUtils]: 30: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,154 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,155 INFO L273 TraceCheckUtils]: 32: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,155 INFO L273 TraceCheckUtils]: 33: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,156 INFO L273 TraceCheckUtils]: 34: Hoare triple {12006#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,157 INFO L273 TraceCheckUtils]: 35: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,158 INFO L273 TraceCheckUtils]: 36: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,159 INFO L256 TraceCheckUtils]: 37: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,159 INFO L273 TraceCheckUtils]: 38: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,160 INFO L273 TraceCheckUtils]: 39: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,160 INFO L273 TraceCheckUtils]: 40: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,161 INFO L273 TraceCheckUtils]: 41: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,161 INFO L273 TraceCheckUtils]: 42: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,162 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,163 INFO L273 TraceCheckUtils]: 44: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,164 INFO L273 TraceCheckUtils]: 45: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,165 INFO L273 TraceCheckUtils]: 46: Hoare triple {12043#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,165 INFO L273 TraceCheckUtils]: 47: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,166 INFO L273 TraceCheckUtils]: 48: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,167 INFO L256 TraceCheckUtils]: 49: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,168 INFO L273 TraceCheckUtils]: 50: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,168 INFO L273 TraceCheckUtils]: 51: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,169 INFO L273 TraceCheckUtils]: 52: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,169 INFO L273 TraceCheckUtils]: 53: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,170 INFO L273 TraceCheckUtils]: 54: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,171 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #132#return; {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,171 INFO L273 TraceCheckUtils]: 56: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,172 INFO L273 TraceCheckUtils]: 57: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,173 INFO L273 TraceCheckUtils]: 58: Hoare triple {12080#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,174 INFO L273 TraceCheckUtils]: 59: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume true; {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,174 INFO L273 TraceCheckUtils]: 60: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,175 INFO L256 TraceCheckUtils]: 61: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,176 INFO L273 TraceCheckUtils]: 62: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,176 INFO L273 TraceCheckUtils]: 63: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,177 INFO L273 TraceCheckUtils]: 64: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,177 INFO L273 TraceCheckUtils]: 65: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,178 INFO L273 TraceCheckUtils]: 66: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,179 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #132#return; {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,180 INFO L273 TraceCheckUtils]: 68: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,180 INFO L273 TraceCheckUtils]: 69: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,181 INFO L273 TraceCheckUtils]: 70: Hoare triple {12117#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,182 INFO L273 TraceCheckUtils]: 71: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume true; {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,183 INFO L273 TraceCheckUtils]: 72: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,184 INFO L256 TraceCheckUtils]: 73: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,184 INFO L273 TraceCheckUtils]: 74: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,185 INFO L273 TraceCheckUtils]: 75: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,185 INFO L273 TraceCheckUtils]: 76: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,186 INFO L273 TraceCheckUtils]: 77: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,186 INFO L273 TraceCheckUtils]: 78: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,187 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #132#return; {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,188 INFO L273 TraceCheckUtils]: 80: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,189 INFO L273 TraceCheckUtils]: 81: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,189 INFO L273 TraceCheckUtils]: 82: Hoare triple {12154#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,190 INFO L273 TraceCheckUtils]: 83: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume true; {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,191 INFO L273 TraceCheckUtils]: 84: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,192 INFO L256 TraceCheckUtils]: 85: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,193 INFO L273 TraceCheckUtils]: 86: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,193 INFO L273 TraceCheckUtils]: 87: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,194 INFO L273 TraceCheckUtils]: 88: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,194 INFO L273 TraceCheckUtils]: 89: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,195 INFO L273 TraceCheckUtils]: 90: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,196 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #132#return; {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,196 INFO L273 TraceCheckUtils]: 92: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,197 INFO L273 TraceCheckUtils]: 93: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,198 INFO L273 TraceCheckUtils]: 94: Hoare triple {12191#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,198 INFO L273 TraceCheckUtils]: 95: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume true; {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,199 INFO L273 TraceCheckUtils]: 96: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,200 INFO L256 TraceCheckUtils]: 97: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,201 INFO L273 TraceCheckUtils]: 98: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,201 INFO L273 TraceCheckUtils]: 99: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,202 INFO L273 TraceCheckUtils]: 100: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,202 INFO L273 TraceCheckUtils]: 101: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,203 INFO L273 TraceCheckUtils]: 102: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,204 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} #132#return; {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,205 INFO L273 TraceCheckUtils]: 104: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,205 INFO L273 TraceCheckUtils]: 105: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,206 INFO L273 TraceCheckUtils]: 106: Hoare triple {12228#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,207 INFO L273 TraceCheckUtils]: 107: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume true; {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,207 INFO L273 TraceCheckUtils]: 108: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,209 INFO L256 TraceCheckUtils]: 109: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,209 INFO L273 TraceCheckUtils]: 110: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,210 INFO L273 TraceCheckUtils]: 111: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,210 INFO L273 TraceCheckUtils]: 112: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,211 INFO L273 TraceCheckUtils]: 113: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,211 INFO L273 TraceCheckUtils]: 114: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,212 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} #132#return; {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,213 INFO L273 TraceCheckUtils]: 116: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,214 INFO L273 TraceCheckUtils]: 117: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,214 INFO L273 TraceCheckUtils]: 118: Hoare triple {12265#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,215 INFO L273 TraceCheckUtils]: 119: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume true; {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,216 INFO L273 TraceCheckUtils]: 120: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,217 INFO L256 TraceCheckUtils]: 121: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,217 INFO L273 TraceCheckUtils]: 122: Hoare triple {11930#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,218 INFO L273 TraceCheckUtils]: 123: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,218 INFO L273 TraceCheckUtils]: 124: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,219 INFO L273 TraceCheckUtils]: 125: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,219 INFO L273 TraceCheckUtils]: 126: Hoare triple {11930#(<= 100000 ~SIZE~0)} assume true; {11930#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:02,221 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {11930#(<= 100000 ~SIZE~0)} {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} #132#return; {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,221 INFO L273 TraceCheckUtils]: 128: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,222 INFO L273 TraceCheckUtils]: 129: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,223 INFO L273 TraceCheckUtils]: 130: Hoare triple {12302#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {12339#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,223 INFO L273 TraceCheckUtils]: 131: Hoare triple {12339#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume true; {12339#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:02,224 INFO L273 TraceCheckUtils]: 132: Hoare triple {12339#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {11929#false} is VALID [2018-11-14 17:01:02,224 INFO L273 TraceCheckUtils]: 133: Hoare triple {11929#false} ~i~1 := 0; {11929#false} is VALID [2018-11-14 17:01:02,225 INFO L273 TraceCheckUtils]: 134: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,225 INFO L273 TraceCheckUtils]: 135: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {11929#false} is VALID [2018-11-14 17:01:02,225 INFO L273 TraceCheckUtils]: 136: Hoare triple {11929#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {11929#false} is VALID [2018-11-14 17:01:02,225 INFO L273 TraceCheckUtils]: 137: Hoare triple {11929#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {11929#false} is VALID [2018-11-14 17:01:02,225 INFO L273 TraceCheckUtils]: 138: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,226 INFO L273 TraceCheckUtils]: 139: Hoare triple {11929#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {11929#false} is VALID [2018-11-14 17:01:02,226 INFO L273 TraceCheckUtils]: 140: Hoare triple {11929#false} assume ~found~0 == 1;~i~1 := ~pos~0; {11929#false} is VALID [2018-11-14 17:01:02,226 INFO L273 TraceCheckUtils]: 141: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,226 INFO L273 TraceCheckUtils]: 142: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11929#false} is VALID [2018-11-14 17:01:02,226 INFO L273 TraceCheckUtils]: 143: Hoare triple {11929#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11929#false} is VALID [2018-11-14 17:01:02,227 INFO L273 TraceCheckUtils]: 144: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,227 INFO L273 TraceCheckUtils]: 145: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11929#false} is VALID [2018-11-14 17:01:02,227 INFO L273 TraceCheckUtils]: 146: Hoare triple {11929#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11929#false} is VALID [2018-11-14 17:01:02,227 INFO L273 TraceCheckUtils]: 147: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,227 INFO L273 TraceCheckUtils]: 148: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {11929#false} is VALID [2018-11-14 17:01:02,228 INFO L273 TraceCheckUtils]: 149: Hoare triple {11929#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {11929#false} is VALID [2018-11-14 17:01:02,228 INFO L273 TraceCheckUtils]: 150: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,228 INFO L273 TraceCheckUtils]: 151: Hoare triple {11929#false} assume !(~i~1 < ~SIZE~0 - 1); {11929#false} is VALID [2018-11-14 17:01:02,228 INFO L273 TraceCheckUtils]: 152: Hoare triple {11929#false} assume ~found~0 == 1;~i~1 := 0; {11929#false} is VALID [2018-11-14 17:01:02,228 INFO L273 TraceCheckUtils]: 153: Hoare triple {11929#false} assume true; {11929#false} is VALID [2018-11-14 17:01:02,229 INFO L273 TraceCheckUtils]: 154: Hoare triple {11929#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {11929#false} is VALID [2018-11-14 17:01:02,229 INFO L256 TraceCheckUtils]: 155: Hoare triple {11929#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {11929#false} is VALID [2018-11-14 17:01:02,229 INFO L273 TraceCheckUtils]: 156: Hoare triple {11929#false} ~cond := #in~cond; {11929#false} is VALID [2018-11-14 17:01:02,229 INFO L273 TraceCheckUtils]: 157: Hoare triple {11929#false} assume ~cond == 0; {11929#false} is VALID [2018-11-14 17:01:02,229 INFO L273 TraceCheckUtils]: 158: Hoare triple {11929#false} assume !false; {11929#false} is VALID [2018-11-14 17:01:02,252 INFO L134 CoverageAnalysis]: Checked inductivity of 568 backedges. 0 proven. 290 refuted. 0 times theorem prover too weak. 278 trivial. 0 not checked. [2018-11-14 17:01:02,272 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:01:02,273 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 14] total 19 [2018-11-14 17:01:02,273 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 159 [2018-11-14 17:01:02,274 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:01:02,274 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-14 17:01:02,435 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:02,435 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-14 17:01:02,435 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-14 17:01:02,436 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=233, Unknown=0, NotChecked=0, Total=342 [2018-11-14 17:01:02,436 INFO L87 Difference]: Start difference. First operand 179 states and 231 transitions. Second operand 19 states. [2018-11-14 17:01:05,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:05,098 INFO L93 Difference]: Finished difference Result 316 states and 396 transitions. [2018-11-14 17:01:05,098 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-14 17:01:05,098 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 159 [2018-11-14 17:01:05,098 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:01:05,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:01:05,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 298 transitions. [2018-11-14 17:01:05,103 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-14 17:01:05,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 298 transitions. [2018-11-14 17:01:05,107 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 298 transitions. [2018-11-14 17:01:05,483 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 298 edges. 298 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:05,490 INFO L225 Difference]: With dead ends: 316 [2018-11-14 17:01:05,491 INFO L226 Difference]: Without dead ends: 261 [2018-11-14 17:01:05,492 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 174 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=171, Invalid=479, Unknown=0, NotChecked=0, Total=650 [2018-11-14 17:01:05,492 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 261 states. [2018-11-14 17:01:06,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 261 to 192. [2018-11-14 17:01:06,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:01:06,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 261 states. Second operand 192 states. [2018-11-14 17:01:06,050 INFO L74 IsIncluded]: Start isIncluded. First operand 261 states. Second operand 192 states. [2018-11-14 17:01:06,050 INFO L87 Difference]: Start difference. First operand 261 states. Second operand 192 states. [2018-11-14 17:01:06,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:06,058 INFO L93 Difference]: Finished difference Result 261 states and 334 transitions. [2018-11-14 17:01:06,058 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 334 transitions. [2018-11-14 17:01:06,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:06,060 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:06,060 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand 261 states. [2018-11-14 17:01:06,060 INFO L87 Difference]: Start difference. First operand 192 states. Second operand 261 states. [2018-11-14 17:01:06,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:06,068 INFO L93 Difference]: Finished difference Result 261 states and 334 transitions. [2018-11-14 17:01:06,068 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 334 transitions. [2018-11-14 17:01:06,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:06,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:06,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:01:06,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:01:06,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 192 states. [2018-11-14 17:01:06,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 192 states to 192 states and 249 transitions. [2018-11-14 17:01:06,075 INFO L78 Accepts]: Start accepts. Automaton has 192 states and 249 transitions. Word has length 159 [2018-11-14 17:01:06,076 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:01:06,076 INFO L480 AbstractCegarLoop]: Abstraction has 192 states and 249 transitions. [2018-11-14 17:01:06,076 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-14 17:01:06,076 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 249 transitions. [2018-11-14 17:01:06,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 173 [2018-11-14 17:01:06,078 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:01:06,079 INFO L375 BasicCegarLoop]: trace histogram [12, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:01:06,079 INFO L423 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:01:06,079 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:01:06,079 INFO L82 PathProgramCache]: Analyzing trace with hash 1662148536, now seen corresponding path program 4 times [2018-11-14 17:01:06,079 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:01:06,079 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:01:06,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:06,080 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:01:06,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:06,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:06,425 INFO L256 TraceCheckUtils]: 0: Hoare triple {13622#true} call ULTIMATE.init(); {13622#true} is VALID [2018-11-14 17:01:06,426 INFO L273 TraceCheckUtils]: 1: Hoare triple {13622#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {13624#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:06,426 INFO L273 TraceCheckUtils]: 2: Hoare triple {13624#(<= 100000 ~SIZE~0)} assume true; {13624#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:06,427 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13624#(<= 100000 ~SIZE~0)} {13622#true} #128#return; {13624#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:06,427 INFO L256 TraceCheckUtils]: 4: Hoare triple {13624#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {13624#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:06,428 INFO L273 TraceCheckUtils]: 5: Hoare triple {13624#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,429 INFO L273 TraceCheckUtils]: 6: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,430 INFO L273 TraceCheckUtils]: 7: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,430 INFO L256 TraceCheckUtils]: 8: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,430 INFO L273 TraceCheckUtils]: 9: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,431 INFO L273 TraceCheckUtils]: 10: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,431 INFO L273 TraceCheckUtils]: 11: Hoare triple {13622#true} assume !(~i~0 < ~size); {13622#true} is VALID [2018-11-14 17:01:06,431 INFO L273 TraceCheckUtils]: 12: Hoare triple {13622#true} #res := 0; {13622#true} is VALID [2018-11-14 17:01:06,431 INFO L273 TraceCheckUtils]: 13: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,433 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {13622#true} {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,433 INFO L273 TraceCheckUtils]: 15: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,434 INFO L273 TraceCheckUtils]: 16: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,434 INFO L256 TraceCheckUtils]: 17: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {13622#true} is VALID [2018-11-14 17:01:06,434 INFO L273 TraceCheckUtils]: 18: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {13622#true} is VALID [2018-11-14 17:01:06,434 INFO L273 TraceCheckUtils]: 19: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,435 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {13622#true} {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,436 INFO L273 TraceCheckUtils]: 21: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:06,437 INFO L273 TraceCheckUtils]: 22: Hoare triple {13625#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,437 INFO L273 TraceCheckUtils]: 23: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,438 INFO L273 TraceCheckUtils]: 24: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,438 INFO L256 TraceCheckUtils]: 25: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,438 INFO L273 TraceCheckUtils]: 26: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,439 INFO L273 TraceCheckUtils]: 27: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,439 INFO L273 TraceCheckUtils]: 28: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,439 INFO L273 TraceCheckUtils]: 29: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,439 INFO L273 TraceCheckUtils]: 30: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,441 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {13622#true} {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,442 INFO L273 TraceCheckUtils]: 32: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,443 INFO L273 TraceCheckUtils]: 33: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:06,443 INFO L273 TraceCheckUtils]: 34: Hoare triple {13626#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,444 INFO L273 TraceCheckUtils]: 35: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,444 INFO L273 TraceCheckUtils]: 36: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,444 INFO L256 TraceCheckUtils]: 37: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,444 INFO L273 TraceCheckUtils]: 38: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,444 INFO L273 TraceCheckUtils]: 39: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,445 INFO L273 TraceCheckUtils]: 40: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,445 INFO L273 TraceCheckUtils]: 41: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,445 INFO L273 TraceCheckUtils]: 42: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,447 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {13622#true} {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,447 INFO L273 TraceCheckUtils]: 44: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,448 INFO L273 TraceCheckUtils]: 45: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:06,449 INFO L273 TraceCheckUtils]: 46: Hoare triple {13627#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,450 INFO L273 TraceCheckUtils]: 47: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,450 INFO L273 TraceCheckUtils]: 48: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,450 INFO L256 TraceCheckUtils]: 49: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,451 INFO L273 TraceCheckUtils]: 50: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,451 INFO L273 TraceCheckUtils]: 51: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,451 INFO L273 TraceCheckUtils]: 52: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,451 INFO L273 TraceCheckUtils]: 53: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,452 INFO L273 TraceCheckUtils]: 54: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,453 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {13622#true} {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,454 INFO L273 TraceCheckUtils]: 56: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,454 INFO L273 TraceCheckUtils]: 57: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:06,455 INFO L273 TraceCheckUtils]: 58: Hoare triple {13628#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,455 INFO L273 TraceCheckUtils]: 59: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,456 INFO L273 TraceCheckUtils]: 60: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,456 INFO L256 TraceCheckUtils]: 61: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,456 INFO L273 TraceCheckUtils]: 62: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,456 INFO L273 TraceCheckUtils]: 63: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,457 INFO L273 TraceCheckUtils]: 64: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,457 INFO L273 TraceCheckUtils]: 65: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,457 INFO L273 TraceCheckUtils]: 66: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,459 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {13622#true} {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,460 INFO L273 TraceCheckUtils]: 68: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,460 INFO L273 TraceCheckUtils]: 69: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:06,461 INFO L273 TraceCheckUtils]: 70: Hoare triple {13629#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,462 INFO L273 TraceCheckUtils]: 71: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,462 INFO L273 TraceCheckUtils]: 72: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,463 INFO L256 TraceCheckUtils]: 73: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,463 INFO L273 TraceCheckUtils]: 74: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,463 INFO L273 TraceCheckUtils]: 75: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,463 INFO L273 TraceCheckUtils]: 76: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,464 INFO L273 TraceCheckUtils]: 77: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,464 INFO L273 TraceCheckUtils]: 78: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,466 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {13622#true} {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,466 INFO L273 TraceCheckUtils]: 80: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,466 INFO L273 TraceCheckUtils]: 81: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:06,467 INFO L273 TraceCheckUtils]: 82: Hoare triple {13630#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,467 INFO L273 TraceCheckUtils]: 83: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,468 INFO L273 TraceCheckUtils]: 84: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,468 INFO L256 TraceCheckUtils]: 85: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,468 INFO L273 TraceCheckUtils]: 86: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,468 INFO L273 TraceCheckUtils]: 87: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,469 INFO L273 TraceCheckUtils]: 88: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,469 INFO L273 TraceCheckUtils]: 89: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,469 INFO L273 TraceCheckUtils]: 90: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,471 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {13622#true} {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,471 INFO L273 TraceCheckUtils]: 92: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,472 INFO L273 TraceCheckUtils]: 93: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:06,472 INFO L273 TraceCheckUtils]: 94: Hoare triple {13631#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,473 INFO L273 TraceCheckUtils]: 95: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,473 INFO L273 TraceCheckUtils]: 96: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,473 INFO L256 TraceCheckUtils]: 97: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,474 INFO L273 TraceCheckUtils]: 98: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,474 INFO L273 TraceCheckUtils]: 99: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,474 INFO L273 TraceCheckUtils]: 100: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,474 INFO L273 TraceCheckUtils]: 101: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,474 INFO L273 TraceCheckUtils]: 102: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,476 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {13622#true} {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} #132#return; {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,477 INFO L273 TraceCheckUtils]: 104: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,477 INFO L273 TraceCheckUtils]: 105: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:06,477 INFO L273 TraceCheckUtils]: 106: Hoare triple {13632#(<= (+ main_~v~0 99993) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,478 INFO L273 TraceCheckUtils]: 107: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} assume true; {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,478 INFO L273 TraceCheckUtils]: 108: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,479 INFO L256 TraceCheckUtils]: 109: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,479 INFO L273 TraceCheckUtils]: 110: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,479 INFO L273 TraceCheckUtils]: 111: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,479 INFO L273 TraceCheckUtils]: 112: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,480 INFO L273 TraceCheckUtils]: 113: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,480 INFO L273 TraceCheckUtils]: 114: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,482 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {13622#true} {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} #132#return; {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,482 INFO L273 TraceCheckUtils]: 116: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,483 INFO L273 TraceCheckUtils]: 117: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:06,484 INFO L273 TraceCheckUtils]: 118: Hoare triple {13633#(<= (+ main_~v~0 99992) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,484 INFO L273 TraceCheckUtils]: 119: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} assume true; {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,485 INFO L273 TraceCheckUtils]: 120: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,485 INFO L256 TraceCheckUtils]: 121: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,485 INFO L273 TraceCheckUtils]: 122: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,486 INFO L273 TraceCheckUtils]: 123: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,486 INFO L273 TraceCheckUtils]: 124: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,486 INFO L273 TraceCheckUtils]: 125: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,486 INFO L273 TraceCheckUtils]: 126: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,488 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {13622#true} {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} #132#return; {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,489 INFO L273 TraceCheckUtils]: 128: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,489 INFO L273 TraceCheckUtils]: 129: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:06,490 INFO L273 TraceCheckUtils]: 130: Hoare triple {13634#(<= (+ main_~v~0 99991) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,490 INFO L273 TraceCheckUtils]: 131: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} assume true; {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,491 INFO L273 TraceCheckUtils]: 132: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,491 INFO L256 TraceCheckUtils]: 133: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:06,491 INFO L273 TraceCheckUtils]: 134: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:06,492 INFO L273 TraceCheckUtils]: 135: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,492 INFO L273 TraceCheckUtils]: 136: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:06,492 INFO L273 TraceCheckUtils]: 137: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:06,492 INFO L273 TraceCheckUtils]: 138: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:06,494 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {13622#true} {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} #132#return; {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,494 INFO L273 TraceCheckUtils]: 140: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,495 INFO L273 TraceCheckUtils]: 141: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:06,495 INFO L273 TraceCheckUtils]: 142: Hoare triple {13635#(<= (+ main_~v~0 99990) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13636#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:06,496 INFO L273 TraceCheckUtils]: 143: Hoare triple {13636#(<= (+ main_~v~0 99989) ~SIZE~0)} assume true; {13636#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:06,497 INFO L273 TraceCheckUtils]: 144: Hoare triple {13636#(<= (+ main_~v~0 99989) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {13623#false} is VALID [2018-11-14 17:01:06,497 INFO L273 TraceCheckUtils]: 145: Hoare triple {13623#false} ~i~1 := 0; {13623#false} is VALID [2018-11-14 17:01:06,497 INFO L273 TraceCheckUtils]: 146: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,497 INFO L273 TraceCheckUtils]: 147: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {13623#false} is VALID [2018-11-14 17:01:06,498 INFO L273 TraceCheckUtils]: 148: Hoare triple {13623#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {13623#false} is VALID [2018-11-14 17:01:06,498 INFO L273 TraceCheckUtils]: 149: Hoare triple {13623#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {13623#false} is VALID [2018-11-14 17:01:06,498 INFO L273 TraceCheckUtils]: 150: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,498 INFO L273 TraceCheckUtils]: 151: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {13623#false} is VALID [2018-11-14 17:01:06,499 INFO L273 TraceCheckUtils]: 152: Hoare triple {13623#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {13623#false} is VALID [2018-11-14 17:01:06,499 INFO L273 TraceCheckUtils]: 153: Hoare triple {13623#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {13623#false} is VALID [2018-11-14 17:01:06,499 INFO L273 TraceCheckUtils]: 154: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,499 INFO L273 TraceCheckUtils]: 155: Hoare triple {13623#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {13623#false} is VALID [2018-11-14 17:01:06,499 INFO L273 TraceCheckUtils]: 156: Hoare triple {13623#false} assume ~found~0 == 1;~i~1 := ~pos~0; {13623#false} is VALID [2018-11-14 17:01:06,500 INFO L273 TraceCheckUtils]: 157: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,500 INFO L273 TraceCheckUtils]: 158: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {13623#false} is VALID [2018-11-14 17:01:06,500 INFO L273 TraceCheckUtils]: 159: Hoare triple {13623#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {13623#false} is VALID [2018-11-14 17:01:06,500 INFO L273 TraceCheckUtils]: 160: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,501 INFO L273 TraceCheckUtils]: 161: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {13623#false} is VALID [2018-11-14 17:01:06,501 INFO L273 TraceCheckUtils]: 162: Hoare triple {13623#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {13623#false} is VALID [2018-11-14 17:01:06,501 INFO L273 TraceCheckUtils]: 163: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,501 INFO L273 TraceCheckUtils]: 164: Hoare triple {13623#false} assume !(~i~1 < ~SIZE~0 - 1); {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 165: Hoare triple {13623#false} assume ~found~0 == 1;~i~1 := 0; {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 166: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 167: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L256 TraceCheckUtils]: 168: Hoare triple {13623#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 169: Hoare triple {13623#false} ~cond := #in~cond; {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 170: Hoare triple {13623#false} assume ~cond == 0; {13623#false} is VALID [2018-11-14 17:01:06,502 INFO L273 TraceCheckUtils]: 171: Hoare triple {13623#false} assume !false; {13623#false} is VALID [2018-11-14 17:01:06,537 INFO L134 CoverageAnalysis]: Checked inductivity of 687 backedges. 0 proven. 352 refuted. 0 times theorem prover too weak. 335 trivial. 0 not checked. [2018-11-14 17:01:06,537 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:01:06,537 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:01:06,547 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-14 17:01:06,637 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-14 17:01:06,637 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:01:06,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:06,721 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:01:07,258 INFO L256 TraceCheckUtils]: 0: Hoare triple {13622#true} call ULTIMATE.init(); {13622#true} is VALID [2018-11-14 17:01:07,258 INFO L273 TraceCheckUtils]: 1: Hoare triple {13622#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {13622#true} is VALID [2018-11-14 17:01:07,258 INFO L273 TraceCheckUtils]: 2: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,259 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13622#true} {13622#true} #128#return; {13622#true} is VALID [2018-11-14 17:01:07,259 INFO L256 TraceCheckUtils]: 4: Hoare triple {13622#true} call #t~ret13 := main(); {13622#true} is VALID [2018-11-14 17:01:07,260 INFO L273 TraceCheckUtils]: 5: Hoare triple {13622#true} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,260 INFO L273 TraceCheckUtils]: 6: Hoare triple {13655#(<= 0 main_~v~0)} assume true; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 7: Hoare triple {13655#(<= 0 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,261 INFO L256 TraceCheckUtils]: 8: Hoare triple {13655#(<= 0 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 9: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 10: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 11: Hoare triple {13622#true} assume !(~i~0 < ~size); {13622#true} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 12: Hoare triple {13622#true} #res := 0; {13622#true} is VALID [2018-11-14 17:01:07,261 INFO L273 TraceCheckUtils]: 13: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,262 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {13622#true} {13655#(<= 0 main_~v~0)} #132#return; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,262 INFO L273 TraceCheckUtils]: 15: Hoare triple {13655#(<= 0 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,262 INFO L273 TraceCheckUtils]: 16: Hoare triple {13655#(<= 0 main_~v~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,263 INFO L256 TraceCheckUtils]: 17: Hoare triple {13655#(<= 0 main_~v~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {13622#true} is VALID [2018-11-14 17:01:07,263 INFO L273 TraceCheckUtils]: 18: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {13622#true} is VALID [2018-11-14 17:01:07,263 INFO L273 TraceCheckUtils]: 19: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,264 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {13622#true} {13655#(<= 0 main_~v~0)} #134#return; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,264 INFO L273 TraceCheckUtils]: 21: Hoare triple {13655#(<= 0 main_~v~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {13655#(<= 0 main_~v~0)} is VALID [2018-11-14 17:01:07,265 INFO L273 TraceCheckUtils]: 22: Hoare triple {13655#(<= 0 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,266 INFO L273 TraceCheckUtils]: 23: Hoare triple {13707#(<= 1 main_~v~0)} assume true; {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,266 INFO L273 TraceCheckUtils]: 24: Hoare triple {13707#(<= 1 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,266 INFO L256 TraceCheckUtils]: 25: Hoare triple {13707#(<= 1 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,267 INFO L273 TraceCheckUtils]: 26: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,267 INFO L273 TraceCheckUtils]: 27: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,267 INFO L273 TraceCheckUtils]: 28: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,267 INFO L273 TraceCheckUtils]: 29: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,267 INFO L273 TraceCheckUtils]: 30: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,268 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {13622#true} {13707#(<= 1 main_~v~0)} #132#return; {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,269 INFO L273 TraceCheckUtils]: 32: Hoare triple {13707#(<= 1 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,269 INFO L273 TraceCheckUtils]: 33: Hoare triple {13707#(<= 1 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13707#(<= 1 main_~v~0)} is VALID [2018-11-14 17:01:07,270 INFO L273 TraceCheckUtils]: 34: Hoare triple {13707#(<= 1 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,270 INFO L273 TraceCheckUtils]: 35: Hoare triple {13744#(<= 2 main_~v~0)} assume true; {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,271 INFO L273 TraceCheckUtils]: 36: Hoare triple {13744#(<= 2 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,271 INFO L256 TraceCheckUtils]: 37: Hoare triple {13744#(<= 2 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,271 INFO L273 TraceCheckUtils]: 38: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,271 INFO L273 TraceCheckUtils]: 39: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,271 INFO L273 TraceCheckUtils]: 40: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,271 INFO L273 TraceCheckUtils]: 41: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,272 INFO L273 TraceCheckUtils]: 42: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,272 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {13622#true} {13744#(<= 2 main_~v~0)} #132#return; {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,273 INFO L273 TraceCheckUtils]: 44: Hoare triple {13744#(<= 2 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,273 INFO L273 TraceCheckUtils]: 45: Hoare triple {13744#(<= 2 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13744#(<= 2 main_~v~0)} is VALID [2018-11-14 17:01:07,274 INFO L273 TraceCheckUtils]: 46: Hoare triple {13744#(<= 2 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,274 INFO L273 TraceCheckUtils]: 47: Hoare triple {13781#(<= 3 main_~v~0)} assume true; {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 48: Hoare triple {13781#(<= 3 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,275 INFO L256 TraceCheckUtils]: 49: Hoare triple {13781#(<= 3 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 50: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 51: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 52: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 53: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,275 INFO L273 TraceCheckUtils]: 54: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,276 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {13622#true} {13781#(<= 3 main_~v~0)} #132#return; {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,276 INFO L273 TraceCheckUtils]: 56: Hoare triple {13781#(<= 3 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,277 INFO L273 TraceCheckUtils]: 57: Hoare triple {13781#(<= 3 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13781#(<= 3 main_~v~0)} is VALID [2018-11-14 17:01:07,278 INFO L273 TraceCheckUtils]: 58: Hoare triple {13781#(<= 3 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,278 INFO L273 TraceCheckUtils]: 59: Hoare triple {13818#(<= 4 main_~v~0)} assume true; {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,279 INFO L273 TraceCheckUtils]: 60: Hoare triple {13818#(<= 4 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,279 INFO L256 TraceCheckUtils]: 61: Hoare triple {13818#(<= 4 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,279 INFO L273 TraceCheckUtils]: 62: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,279 INFO L273 TraceCheckUtils]: 63: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,279 INFO L273 TraceCheckUtils]: 64: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,280 INFO L273 TraceCheckUtils]: 65: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,280 INFO L273 TraceCheckUtils]: 66: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,281 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {13622#true} {13818#(<= 4 main_~v~0)} #132#return; {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,281 INFO L273 TraceCheckUtils]: 68: Hoare triple {13818#(<= 4 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,282 INFO L273 TraceCheckUtils]: 69: Hoare triple {13818#(<= 4 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13818#(<= 4 main_~v~0)} is VALID [2018-11-14 17:01:07,283 INFO L273 TraceCheckUtils]: 70: Hoare triple {13818#(<= 4 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,283 INFO L273 TraceCheckUtils]: 71: Hoare triple {13855#(<= 5 main_~v~0)} assume true; {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,284 INFO L273 TraceCheckUtils]: 72: Hoare triple {13855#(<= 5 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,284 INFO L256 TraceCheckUtils]: 73: Hoare triple {13855#(<= 5 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,284 INFO L273 TraceCheckUtils]: 74: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,284 INFO L273 TraceCheckUtils]: 75: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,285 INFO L273 TraceCheckUtils]: 76: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,285 INFO L273 TraceCheckUtils]: 77: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,285 INFO L273 TraceCheckUtils]: 78: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,286 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {13622#true} {13855#(<= 5 main_~v~0)} #132#return; {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,287 INFO L273 TraceCheckUtils]: 80: Hoare triple {13855#(<= 5 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,287 INFO L273 TraceCheckUtils]: 81: Hoare triple {13855#(<= 5 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13855#(<= 5 main_~v~0)} is VALID [2018-11-14 17:01:07,288 INFO L273 TraceCheckUtils]: 82: Hoare triple {13855#(<= 5 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,288 INFO L273 TraceCheckUtils]: 83: Hoare triple {13892#(<= 6 main_~v~0)} assume true; {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,289 INFO L273 TraceCheckUtils]: 84: Hoare triple {13892#(<= 6 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,289 INFO L256 TraceCheckUtils]: 85: Hoare triple {13892#(<= 6 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,289 INFO L273 TraceCheckUtils]: 86: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,290 INFO L273 TraceCheckUtils]: 87: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,290 INFO L273 TraceCheckUtils]: 88: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,290 INFO L273 TraceCheckUtils]: 89: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,290 INFO L273 TraceCheckUtils]: 90: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,291 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {13622#true} {13892#(<= 6 main_~v~0)} #132#return; {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,291 INFO L273 TraceCheckUtils]: 92: Hoare triple {13892#(<= 6 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,292 INFO L273 TraceCheckUtils]: 93: Hoare triple {13892#(<= 6 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13892#(<= 6 main_~v~0)} is VALID [2018-11-14 17:01:07,292 INFO L273 TraceCheckUtils]: 94: Hoare triple {13892#(<= 6 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 95: Hoare triple {13929#(<= 7 main_~v~0)} assume true; {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 96: Hoare triple {13929#(<= 7 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,293 INFO L256 TraceCheckUtils]: 97: Hoare triple {13929#(<= 7 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 98: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 99: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 100: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,293 INFO L273 TraceCheckUtils]: 101: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,294 INFO L273 TraceCheckUtils]: 102: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,294 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {13622#true} {13929#(<= 7 main_~v~0)} #132#return; {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,295 INFO L273 TraceCheckUtils]: 104: Hoare triple {13929#(<= 7 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,295 INFO L273 TraceCheckUtils]: 105: Hoare triple {13929#(<= 7 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13929#(<= 7 main_~v~0)} is VALID [2018-11-14 17:01:07,296 INFO L273 TraceCheckUtils]: 106: Hoare triple {13929#(<= 7 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,297 INFO L273 TraceCheckUtils]: 107: Hoare triple {13966#(<= 8 main_~v~0)} assume true; {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,297 INFO L273 TraceCheckUtils]: 108: Hoare triple {13966#(<= 8 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,297 INFO L256 TraceCheckUtils]: 109: Hoare triple {13966#(<= 8 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,297 INFO L273 TraceCheckUtils]: 110: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,298 INFO L273 TraceCheckUtils]: 111: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,298 INFO L273 TraceCheckUtils]: 112: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,298 INFO L273 TraceCheckUtils]: 113: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,298 INFO L273 TraceCheckUtils]: 114: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,299 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {13622#true} {13966#(<= 8 main_~v~0)} #132#return; {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,300 INFO L273 TraceCheckUtils]: 116: Hoare triple {13966#(<= 8 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,300 INFO L273 TraceCheckUtils]: 117: Hoare triple {13966#(<= 8 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {13966#(<= 8 main_~v~0)} is VALID [2018-11-14 17:01:07,301 INFO L273 TraceCheckUtils]: 118: Hoare triple {13966#(<= 8 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 119: Hoare triple {14003#(<= 9 main_~v~0)} assume true; {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 120: Hoare triple {14003#(<= 9 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,302 INFO L256 TraceCheckUtils]: 121: Hoare triple {14003#(<= 9 main_~v~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {13622#true} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 122: Hoare triple {13622#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {13622#true} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 123: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 124: Hoare triple {13622#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {13622#true} is VALID [2018-11-14 17:01:07,302 INFO L273 TraceCheckUtils]: 125: Hoare triple {13622#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {13622#true} is VALID [2018-11-14 17:01:07,303 INFO L273 TraceCheckUtils]: 126: Hoare triple {13622#true} assume true; {13622#true} is VALID [2018-11-14 17:01:07,303 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {13622#true} {14003#(<= 9 main_~v~0)} #132#return; {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,303 INFO L273 TraceCheckUtils]: 128: Hoare triple {14003#(<= 9 main_~v~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,304 INFO L273 TraceCheckUtils]: 129: Hoare triple {14003#(<= 9 main_~v~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {14003#(<= 9 main_~v~0)} is VALID [2018-11-14 17:01:07,324 INFO L273 TraceCheckUtils]: 130: Hoare triple {14003#(<= 9 main_~v~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {14040#(<= 10 main_~v~0)} is VALID [2018-11-14 17:01:07,332 INFO L273 TraceCheckUtils]: 131: Hoare triple {14040#(<= 10 main_~v~0)} assume true; {14040#(<= 10 main_~v~0)} is VALID [2018-11-14 17:01:07,333 INFO L273 TraceCheckUtils]: 132: Hoare triple {14040#(<= 10 main_~v~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,334 INFO L256 TraceCheckUtils]: 133: Hoare triple {14047#(<= 11 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,334 INFO L273 TraceCheckUtils]: 134: Hoare triple {14047#(<= 11 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,334 INFO L273 TraceCheckUtils]: 135: Hoare triple {14047#(<= 11 ~SIZE~0)} assume true; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,335 INFO L273 TraceCheckUtils]: 136: Hoare triple {14047#(<= 11 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,335 INFO L273 TraceCheckUtils]: 137: Hoare triple {14047#(<= 11 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,335 INFO L273 TraceCheckUtils]: 138: Hoare triple {14047#(<= 11 ~SIZE~0)} assume true; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,336 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {14047#(<= 11 ~SIZE~0)} {14047#(<= 11 ~SIZE~0)} #132#return; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,337 INFO L273 TraceCheckUtils]: 140: Hoare triple {14047#(<= 11 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,337 INFO L273 TraceCheckUtils]: 141: Hoare triple {14047#(<= 11 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,338 INFO L273 TraceCheckUtils]: 142: Hoare triple {14047#(<= 11 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,338 INFO L273 TraceCheckUtils]: 143: Hoare triple {14047#(<= 11 ~SIZE~0)} assume true; {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,339 INFO L273 TraceCheckUtils]: 144: Hoare triple {14047#(<= 11 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {14047#(<= 11 ~SIZE~0)} is VALID [2018-11-14 17:01:07,339 INFO L273 TraceCheckUtils]: 145: Hoare triple {14047#(<= 11 ~SIZE~0)} ~i~1 := 0; {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,340 INFO L273 TraceCheckUtils]: 146: Hoare triple {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} assume true; {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,341 INFO L273 TraceCheckUtils]: 147: Hoare triple {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,341 INFO L273 TraceCheckUtils]: 148: Hoare triple {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,342 INFO L273 TraceCheckUtils]: 149: Hoare triple {14087#(and (<= main_~i~1 0) (<= 11 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,343 INFO L273 TraceCheckUtils]: 150: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} assume true; {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,344 INFO L273 TraceCheckUtils]: 151: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,344 INFO L273 TraceCheckUtils]: 152: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,345 INFO L273 TraceCheckUtils]: 153: Hoare triple {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,346 INFO L273 TraceCheckUtils]: 154: Hoare triple {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} assume true; {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,346 INFO L273 TraceCheckUtils]: 155: Hoare triple {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,347 INFO L273 TraceCheckUtils]: 156: Hoare triple {14110#(and (<= main_~pos~0 1) (<= 11 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,348 INFO L273 TraceCheckUtils]: 157: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} assume true; {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,349 INFO L273 TraceCheckUtils]: 158: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,349 INFO L273 TraceCheckUtils]: 159: Hoare triple {14100#(and (<= main_~i~1 1) (<= 11 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,350 INFO L273 TraceCheckUtils]: 160: Hoare triple {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} assume true; {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,351 INFO L273 TraceCheckUtils]: 161: Hoare triple {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,352 INFO L273 TraceCheckUtils]: 162: Hoare triple {14132#(and (<= main_~i~1 2) (<= 11 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {14142#(and (<= main_~i~1 3) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,352 INFO L273 TraceCheckUtils]: 163: Hoare triple {14142#(and (<= main_~i~1 3) (<= 11 ~SIZE~0))} assume true; {14142#(and (<= main_~i~1 3) (<= 11 ~SIZE~0))} is VALID [2018-11-14 17:01:07,353 INFO L273 TraceCheckUtils]: 164: Hoare triple {14142#(and (<= main_~i~1 3) (<= 11 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {13623#false} is VALID [2018-11-14 17:01:07,353 INFO L273 TraceCheckUtils]: 165: Hoare triple {13623#false} assume ~found~0 == 1;~i~1 := 0; {13623#false} is VALID [2018-11-14 17:01:07,354 INFO L273 TraceCheckUtils]: 166: Hoare triple {13623#false} assume true; {13623#false} is VALID [2018-11-14 17:01:07,354 INFO L273 TraceCheckUtils]: 167: Hoare triple {13623#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {13623#false} is VALID [2018-11-14 17:01:07,354 INFO L256 TraceCheckUtils]: 168: Hoare triple {13623#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {13623#false} is VALID [2018-11-14 17:01:07,354 INFO L273 TraceCheckUtils]: 169: Hoare triple {13623#false} ~cond := #in~cond; {13623#false} is VALID [2018-11-14 17:01:07,354 INFO L273 TraceCheckUtils]: 170: Hoare triple {13623#false} assume ~cond == 0; {13623#false} is VALID [2018-11-14 17:01:07,355 INFO L273 TraceCheckUtils]: 171: Hoare triple {13623#false} assume !false; {13623#false} is VALID [2018-11-14 17:01:07,373 INFO L134 CoverageAnalysis]: Checked inductivity of 687 backedges. 349 proven. 77 refuted. 0 times theorem prover too weak. 261 trivial. 0 not checked. [2018-11-14 17:01:07,393 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:01:07,394 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 19] total 32 [2018-11-14 17:01:07,394 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 172 [2018-11-14 17:01:07,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:01:07,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2018-11-14 17:01:07,606 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 228 edges. 228 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:07,606 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2018-11-14 17:01:07,606 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2018-11-14 17:01:07,607 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=197, Invalid=795, Unknown=0, NotChecked=0, Total=992 [2018-11-14 17:01:07,608 INFO L87 Difference]: Start difference. First operand 192 states and 249 transitions. Second operand 32 states. [2018-11-14 17:01:14,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:14,412 INFO L93 Difference]: Finished difference Result 334 states and 419 transitions. [2018-11-14 17:01:14,412 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 17:01:14,412 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 172 [2018-11-14 17:01:14,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:01:14,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 17:01:14,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 308 transitions. [2018-11-14 17:01:14,417 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-14 17:01:14,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 308 transitions. [2018-11-14 17:01:14,421 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 308 transitions. [2018-11-14 17:01:14,829 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 308 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:14,835 INFO L225 Difference]: With dead ends: 334 [2018-11-14 17:01:14,836 INFO L226 Difference]: Without dead ends: 276 [2018-11-14 17:01:14,837 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 156 SyntacticMatches, 0 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 533 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=596, Invalid=2160, Unknown=0, NotChecked=0, Total=2756 [2018-11-14 17:01:14,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 276 states. [2018-11-14 17:01:15,123 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 276 to 202. [2018-11-14 17:01:15,123 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:01:15,123 INFO L82 GeneralOperation]: Start isEquivalent. First operand 276 states. Second operand 202 states. [2018-11-14 17:01:15,123 INFO L74 IsIncluded]: Start isIncluded. First operand 276 states. Second operand 202 states. [2018-11-14 17:01:15,123 INFO L87 Difference]: Start difference. First operand 276 states. Second operand 202 states. [2018-11-14 17:01:15,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:15,132 INFO L93 Difference]: Finished difference Result 276 states and 354 transitions. [2018-11-14 17:01:15,132 INFO L276 IsEmpty]: Start isEmpty. Operand 276 states and 354 transitions. [2018-11-14 17:01:15,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:15,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:15,133 INFO L74 IsIncluded]: Start isIncluded. First operand 202 states. Second operand 276 states. [2018-11-14 17:01:15,133 INFO L87 Difference]: Start difference. First operand 202 states. Second operand 276 states. [2018-11-14 17:01:15,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:15,142 INFO L93 Difference]: Finished difference Result 276 states and 354 transitions. [2018-11-14 17:01:15,142 INFO L276 IsEmpty]: Start isEmpty. Operand 276 states and 354 transitions. [2018-11-14 17:01:15,143 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:15,143 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:15,143 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:01:15,144 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:01:15,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 202 states. [2018-11-14 17:01:15,149 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 264 transitions. [2018-11-14 17:01:15,149 INFO L78 Accepts]: Start accepts. Automaton has 202 states and 264 transitions. Word has length 172 [2018-11-14 17:01:15,150 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:01:15,150 INFO L480 AbstractCegarLoop]: Abstraction has 202 states and 264 transitions. [2018-11-14 17:01:15,150 INFO L481 AbstractCegarLoop]: Interpolant automaton has 32 states. [2018-11-14 17:01:15,150 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 264 transitions. [2018-11-14 17:01:15,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 186 [2018-11-14 17:01:15,152 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:01:15,153 INFO L375 BasicCegarLoop]: trace histogram [13, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:01:15,153 INFO L423 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:01:15,153 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:01:15,153 INFO L82 PathProgramCache]: Analyzing trace with hash 1852322115, now seen corresponding path program 5 times [2018-11-14 17:01:15,153 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:01:15,153 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:01:15,154 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:15,154 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:01:15,154 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:15,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:15,590 INFO L256 TraceCheckUtils]: 0: Hoare triple {15463#true} call ULTIMATE.init(); {15463#true} is VALID [2018-11-14 17:01:15,591 INFO L273 TraceCheckUtils]: 1: Hoare triple {15463#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:15,592 INFO L273 TraceCheckUtils]: 2: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:15,592 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15463#true} #128#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:15,593 INFO L256 TraceCheckUtils]: 4: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:15,594 INFO L273 TraceCheckUtils]: 5: Hoare triple {15465#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,595 INFO L273 TraceCheckUtils]: 6: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,595 INFO L273 TraceCheckUtils]: 7: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,596 INFO L256 TraceCheckUtils]: 8: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,596 INFO L273 TraceCheckUtils]: 9: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,596 INFO L273 TraceCheckUtils]: 10: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,596 INFO L273 TraceCheckUtils]: 11: Hoare triple {15463#true} assume !(~i~0 < ~size); {15463#true} is VALID [2018-11-14 17:01:15,596 INFO L273 TraceCheckUtils]: 12: Hoare triple {15463#true} #res := 0; {15463#true} is VALID [2018-11-14 17:01:15,597 INFO L273 TraceCheckUtils]: 13: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,598 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {15463#true} {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,598 INFO L273 TraceCheckUtils]: 15: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,599 INFO L273 TraceCheckUtils]: 16: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,599 INFO L256 TraceCheckUtils]: 17: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {15463#true} is VALID [2018-11-14 17:01:15,599 INFO L273 TraceCheckUtils]: 18: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {15463#true} is VALID [2018-11-14 17:01:15,599 INFO L273 TraceCheckUtils]: 19: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,600 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {15463#true} {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,607 INFO L273 TraceCheckUtils]: 21: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:15,607 INFO L273 TraceCheckUtils]: 22: Hoare triple {15466#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,607 INFO L273 TraceCheckUtils]: 23: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 24: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,608 INFO L256 TraceCheckUtils]: 25: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 26: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 27: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 28: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 29: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,608 INFO L273 TraceCheckUtils]: 30: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,609 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {15463#true} {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,609 INFO L273 TraceCheckUtils]: 32: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,610 INFO L273 TraceCheckUtils]: 33: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:15,610 INFO L273 TraceCheckUtils]: 34: Hoare triple {15467#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,611 INFO L273 TraceCheckUtils]: 35: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,611 INFO L273 TraceCheckUtils]: 36: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,611 INFO L256 TraceCheckUtils]: 37: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,611 INFO L273 TraceCheckUtils]: 38: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,611 INFO L273 TraceCheckUtils]: 39: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,611 INFO L273 TraceCheckUtils]: 40: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,612 INFO L273 TraceCheckUtils]: 41: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,612 INFO L273 TraceCheckUtils]: 42: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,612 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {15463#true} {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,613 INFO L273 TraceCheckUtils]: 44: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,613 INFO L273 TraceCheckUtils]: 45: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:15,614 INFO L273 TraceCheckUtils]: 46: Hoare triple {15468#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,614 INFO L273 TraceCheckUtils]: 47: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,615 INFO L273 TraceCheckUtils]: 48: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,615 INFO L256 TraceCheckUtils]: 49: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,615 INFO L273 TraceCheckUtils]: 50: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,615 INFO L273 TraceCheckUtils]: 51: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,617 INFO L273 TraceCheckUtils]: 52: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,617 INFO L273 TraceCheckUtils]: 53: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,617 INFO L273 TraceCheckUtils]: 54: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,620 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {15463#true} {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,620 INFO L273 TraceCheckUtils]: 56: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,620 INFO L273 TraceCheckUtils]: 57: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:15,621 INFO L273 TraceCheckUtils]: 58: Hoare triple {15469#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,621 INFO L273 TraceCheckUtils]: 59: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,621 INFO L273 TraceCheckUtils]: 60: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,622 INFO L256 TraceCheckUtils]: 61: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,622 INFO L273 TraceCheckUtils]: 62: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,622 INFO L273 TraceCheckUtils]: 63: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,622 INFO L273 TraceCheckUtils]: 64: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,622 INFO L273 TraceCheckUtils]: 65: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,622 INFO L273 TraceCheckUtils]: 66: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,623 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {15463#true} {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,624 INFO L273 TraceCheckUtils]: 68: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,624 INFO L273 TraceCheckUtils]: 69: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:15,625 INFO L273 TraceCheckUtils]: 70: Hoare triple {15470#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,625 INFO L273 TraceCheckUtils]: 71: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 72: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,626 INFO L256 TraceCheckUtils]: 73: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 74: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 75: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 76: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 77: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,626 INFO L273 TraceCheckUtils]: 78: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,627 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {15463#true} {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,628 INFO L273 TraceCheckUtils]: 80: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,628 INFO L273 TraceCheckUtils]: 81: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:15,629 INFO L273 TraceCheckUtils]: 82: Hoare triple {15471#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,630 INFO L273 TraceCheckUtils]: 83: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,630 INFO L273 TraceCheckUtils]: 84: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,630 INFO L256 TraceCheckUtils]: 85: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,631 INFO L273 TraceCheckUtils]: 86: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,631 INFO L273 TraceCheckUtils]: 87: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,631 INFO L273 TraceCheckUtils]: 88: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,631 INFO L273 TraceCheckUtils]: 89: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,631 INFO L273 TraceCheckUtils]: 90: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,632 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {15463#true} {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,633 INFO L273 TraceCheckUtils]: 92: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,633 INFO L273 TraceCheckUtils]: 93: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:15,634 INFO L273 TraceCheckUtils]: 94: Hoare triple {15472#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,634 INFO L273 TraceCheckUtils]: 95: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,634 INFO L273 TraceCheckUtils]: 96: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,634 INFO L256 TraceCheckUtils]: 97: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,635 INFO L273 TraceCheckUtils]: 98: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,635 INFO L273 TraceCheckUtils]: 99: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,635 INFO L273 TraceCheckUtils]: 100: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,635 INFO L273 TraceCheckUtils]: 101: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,635 INFO L273 TraceCheckUtils]: 102: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,636 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {15463#true} {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} #132#return; {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,637 INFO L273 TraceCheckUtils]: 104: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,637 INFO L273 TraceCheckUtils]: 105: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:15,638 INFO L273 TraceCheckUtils]: 106: Hoare triple {15473#(<= (+ main_~v~0 99993) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,638 INFO L273 TraceCheckUtils]: 107: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} assume true; {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,639 INFO L273 TraceCheckUtils]: 108: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,639 INFO L256 TraceCheckUtils]: 109: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,639 INFO L273 TraceCheckUtils]: 110: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,640 INFO L273 TraceCheckUtils]: 111: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,640 INFO L273 TraceCheckUtils]: 112: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,640 INFO L273 TraceCheckUtils]: 113: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,640 INFO L273 TraceCheckUtils]: 114: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,641 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {15463#true} {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} #132#return; {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,642 INFO L273 TraceCheckUtils]: 116: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,642 INFO L273 TraceCheckUtils]: 117: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:15,643 INFO L273 TraceCheckUtils]: 118: Hoare triple {15474#(<= (+ main_~v~0 99992) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,643 INFO L273 TraceCheckUtils]: 119: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} assume true; {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,643 INFO L273 TraceCheckUtils]: 120: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,643 INFO L256 TraceCheckUtils]: 121: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,644 INFO L273 TraceCheckUtils]: 122: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,644 INFO L273 TraceCheckUtils]: 123: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,644 INFO L273 TraceCheckUtils]: 124: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,644 INFO L273 TraceCheckUtils]: 125: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,644 INFO L273 TraceCheckUtils]: 126: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,646 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {15463#true} {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} #132#return; {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,646 INFO L273 TraceCheckUtils]: 128: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,647 INFO L273 TraceCheckUtils]: 129: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:15,648 INFO L273 TraceCheckUtils]: 130: Hoare triple {15475#(<= (+ main_~v~0 99991) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,648 INFO L273 TraceCheckUtils]: 131: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} assume true; {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,649 INFO L273 TraceCheckUtils]: 132: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,649 INFO L256 TraceCheckUtils]: 133: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,649 INFO L273 TraceCheckUtils]: 134: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,650 INFO L273 TraceCheckUtils]: 135: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,650 INFO L273 TraceCheckUtils]: 136: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,650 INFO L273 TraceCheckUtils]: 137: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,650 INFO L273 TraceCheckUtils]: 138: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,651 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {15463#true} {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} #132#return; {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,651 INFO L273 TraceCheckUtils]: 140: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,652 INFO L273 TraceCheckUtils]: 141: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:15,652 INFO L273 TraceCheckUtils]: 142: Hoare triple {15476#(<= (+ main_~v~0 99990) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,652 INFO L273 TraceCheckUtils]: 143: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} assume true; {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 144: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,653 INFO L256 TraceCheckUtils]: 145: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15463#true} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 146: Hoare triple {15463#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15463#true} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 147: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 148: Hoare triple {15463#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15463#true} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 149: Hoare triple {15463#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15463#true} is VALID [2018-11-14 17:01:15,653 INFO L273 TraceCheckUtils]: 150: Hoare triple {15463#true} assume true; {15463#true} is VALID [2018-11-14 17:01:15,654 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {15463#true} {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} #132#return; {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,655 INFO L273 TraceCheckUtils]: 152: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,655 INFO L273 TraceCheckUtils]: 153: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:15,656 INFO L273 TraceCheckUtils]: 154: Hoare triple {15477#(<= (+ main_~v~0 99989) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15478#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:15,657 INFO L273 TraceCheckUtils]: 155: Hoare triple {15478#(<= (+ main_~v~0 99988) ~SIZE~0)} assume true; {15478#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:15,657 INFO L273 TraceCheckUtils]: 156: Hoare triple {15478#(<= (+ main_~v~0 99988) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 157: Hoare triple {15464#false} ~i~1 := 0; {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 158: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 159: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 160: Hoare triple {15464#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 161: Hoare triple {15464#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15464#false} is VALID [2018-11-14 17:01:15,658 INFO L273 TraceCheckUtils]: 162: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,659 INFO L273 TraceCheckUtils]: 163: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15464#false} is VALID [2018-11-14 17:01:15,659 INFO L273 TraceCheckUtils]: 164: Hoare triple {15464#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {15464#false} is VALID [2018-11-14 17:01:15,659 INFO L273 TraceCheckUtils]: 165: Hoare triple {15464#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15464#false} is VALID [2018-11-14 17:01:15,659 INFO L273 TraceCheckUtils]: 166: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,659 INFO L273 TraceCheckUtils]: 167: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15464#false} is VALID [2018-11-14 17:01:15,660 INFO L273 TraceCheckUtils]: 168: Hoare triple {15464#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {15464#false} is VALID [2018-11-14 17:01:15,660 INFO L273 TraceCheckUtils]: 169: Hoare triple {15464#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15464#false} is VALID [2018-11-14 17:01:15,660 INFO L273 TraceCheckUtils]: 170: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,660 INFO L273 TraceCheckUtils]: 171: Hoare triple {15464#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {15464#false} is VALID [2018-11-14 17:01:15,660 INFO L273 TraceCheckUtils]: 172: Hoare triple {15464#false} assume ~found~0 == 1;~i~1 := ~pos~0; {15464#false} is VALID [2018-11-14 17:01:15,661 INFO L273 TraceCheckUtils]: 173: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,661 INFO L273 TraceCheckUtils]: 174: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {15464#false} is VALID [2018-11-14 17:01:15,661 INFO L273 TraceCheckUtils]: 175: Hoare triple {15464#false} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {15464#false} is VALID [2018-11-14 17:01:15,661 INFO L273 TraceCheckUtils]: 176: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,661 INFO L273 TraceCheckUtils]: 177: Hoare triple {15464#false} assume !(~i~1 < ~SIZE~0 - 1); {15464#false} is VALID [2018-11-14 17:01:15,662 INFO L273 TraceCheckUtils]: 178: Hoare triple {15464#false} assume ~found~0 == 1;~i~1 := 0; {15464#false} is VALID [2018-11-14 17:01:15,662 INFO L273 TraceCheckUtils]: 179: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:15,662 INFO L273 TraceCheckUtils]: 180: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15464#false} is VALID [2018-11-14 17:01:15,662 INFO L256 TraceCheckUtils]: 181: Hoare triple {15464#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {15464#false} is VALID [2018-11-14 17:01:15,662 INFO L273 TraceCheckUtils]: 182: Hoare triple {15464#false} ~cond := #in~cond; {15464#false} is VALID [2018-11-14 17:01:15,663 INFO L273 TraceCheckUtils]: 183: Hoare triple {15464#false} assume ~cond == 0; {15464#false} is VALID [2018-11-14 17:01:15,663 INFO L273 TraceCheckUtils]: 184: Hoare triple {15464#false} assume !false; {15464#false} is VALID [2018-11-14 17:01:15,686 INFO L134 CoverageAnalysis]: Checked inductivity of 825 backedges. 0 proven. 420 refuted. 0 times theorem prover too weak. 405 trivial. 0 not checked. [2018-11-14 17:01:15,686 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:01:15,686 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:01:15,694 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:01:15,812 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2018-11-14 17:01:15,812 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:01:15,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:15,849 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:01:16,231 INFO L256 TraceCheckUtils]: 0: Hoare triple {15463#true} call ULTIMATE.init(); {15463#true} is VALID [2018-11-14 17:01:16,232 INFO L273 TraceCheckUtils]: 1: Hoare triple {15463#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,232 INFO L273 TraceCheckUtils]: 2: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,232 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15463#true} #128#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,233 INFO L256 TraceCheckUtils]: 4: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,233 INFO L273 TraceCheckUtils]: 5: Hoare triple {15465#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,233 INFO L273 TraceCheckUtils]: 6: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,234 INFO L273 TraceCheckUtils]: 7: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,235 INFO L256 TraceCheckUtils]: 8: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,235 INFO L273 TraceCheckUtils]: 9: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,236 INFO L273 TraceCheckUtils]: 10: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,236 INFO L273 TraceCheckUtils]: 11: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,237 INFO L273 TraceCheckUtils]: 12: Hoare triple {15465#(<= 100000 ~SIZE~0)} #res := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,237 INFO L273 TraceCheckUtils]: 13: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,238 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,239 INFO L273 TraceCheckUtils]: 15: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,239 INFO L273 TraceCheckUtils]: 16: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,240 INFO L256 TraceCheckUtils]: 17: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,241 INFO L273 TraceCheckUtils]: 18: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,241 INFO L273 TraceCheckUtils]: 19: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,243 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #134#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,243 INFO L273 TraceCheckUtils]: 21: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,244 INFO L273 TraceCheckUtils]: 22: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,244 INFO L273 TraceCheckUtils]: 23: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,245 INFO L273 TraceCheckUtils]: 24: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,246 INFO L256 TraceCheckUtils]: 25: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,246 INFO L273 TraceCheckUtils]: 26: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,247 INFO L273 TraceCheckUtils]: 27: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,247 INFO L273 TraceCheckUtils]: 28: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,248 INFO L273 TraceCheckUtils]: 29: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,248 INFO L273 TraceCheckUtils]: 30: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,249 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,250 INFO L273 TraceCheckUtils]: 32: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,250 INFO L273 TraceCheckUtils]: 33: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,251 INFO L273 TraceCheckUtils]: 34: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,251 INFO L273 TraceCheckUtils]: 35: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,252 INFO L273 TraceCheckUtils]: 36: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,253 INFO L256 TraceCheckUtils]: 37: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,253 INFO L273 TraceCheckUtils]: 38: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,254 INFO L273 TraceCheckUtils]: 39: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,254 INFO L273 TraceCheckUtils]: 40: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,255 INFO L273 TraceCheckUtils]: 41: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,255 INFO L273 TraceCheckUtils]: 42: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,256 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,257 INFO L273 TraceCheckUtils]: 44: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,257 INFO L273 TraceCheckUtils]: 45: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,258 INFO L273 TraceCheckUtils]: 46: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,258 INFO L273 TraceCheckUtils]: 47: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,259 INFO L273 TraceCheckUtils]: 48: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,260 INFO L256 TraceCheckUtils]: 49: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,260 INFO L273 TraceCheckUtils]: 50: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,261 INFO L273 TraceCheckUtils]: 51: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,261 INFO L273 TraceCheckUtils]: 52: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,262 INFO L273 TraceCheckUtils]: 53: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,262 INFO L273 TraceCheckUtils]: 54: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,263 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,264 INFO L273 TraceCheckUtils]: 56: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,264 INFO L273 TraceCheckUtils]: 57: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,282 INFO L273 TraceCheckUtils]: 58: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,295 INFO L273 TraceCheckUtils]: 59: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,296 INFO L273 TraceCheckUtils]: 60: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,297 INFO L256 TraceCheckUtils]: 61: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,297 INFO L273 TraceCheckUtils]: 62: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,298 INFO L273 TraceCheckUtils]: 63: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,298 INFO L273 TraceCheckUtils]: 64: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,298 INFO L273 TraceCheckUtils]: 65: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,299 INFO L273 TraceCheckUtils]: 66: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,299 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,300 INFO L273 TraceCheckUtils]: 68: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,300 INFO L273 TraceCheckUtils]: 69: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,300 INFO L273 TraceCheckUtils]: 70: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,301 INFO L273 TraceCheckUtils]: 71: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,301 INFO L273 TraceCheckUtils]: 72: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,302 INFO L256 TraceCheckUtils]: 73: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,303 INFO L273 TraceCheckUtils]: 74: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,303 INFO L273 TraceCheckUtils]: 75: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,304 INFO L273 TraceCheckUtils]: 76: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,304 INFO L273 TraceCheckUtils]: 77: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,305 INFO L273 TraceCheckUtils]: 78: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,306 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,306 INFO L273 TraceCheckUtils]: 80: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,307 INFO L273 TraceCheckUtils]: 81: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,307 INFO L273 TraceCheckUtils]: 82: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,308 INFO L273 TraceCheckUtils]: 83: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,308 INFO L273 TraceCheckUtils]: 84: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,309 INFO L256 TraceCheckUtils]: 85: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,310 INFO L273 TraceCheckUtils]: 86: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,310 INFO L273 TraceCheckUtils]: 87: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,311 INFO L273 TraceCheckUtils]: 88: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,311 INFO L273 TraceCheckUtils]: 89: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,312 INFO L273 TraceCheckUtils]: 90: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,313 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,313 INFO L273 TraceCheckUtils]: 92: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,314 INFO L273 TraceCheckUtils]: 93: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,314 INFO L273 TraceCheckUtils]: 94: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,315 INFO L273 TraceCheckUtils]: 95: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,315 INFO L273 TraceCheckUtils]: 96: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,316 INFO L256 TraceCheckUtils]: 97: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,317 INFO L273 TraceCheckUtils]: 98: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,317 INFO L273 TraceCheckUtils]: 99: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,318 INFO L273 TraceCheckUtils]: 100: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,318 INFO L273 TraceCheckUtils]: 101: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,319 INFO L273 TraceCheckUtils]: 102: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,320 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,320 INFO L273 TraceCheckUtils]: 104: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,321 INFO L273 TraceCheckUtils]: 105: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,321 INFO L273 TraceCheckUtils]: 106: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,322 INFO L273 TraceCheckUtils]: 107: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,322 INFO L273 TraceCheckUtils]: 108: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,323 INFO L256 TraceCheckUtils]: 109: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,324 INFO L273 TraceCheckUtils]: 110: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,324 INFO L273 TraceCheckUtils]: 111: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,325 INFO L273 TraceCheckUtils]: 112: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,325 INFO L273 TraceCheckUtils]: 113: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,326 INFO L273 TraceCheckUtils]: 114: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,327 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,327 INFO L273 TraceCheckUtils]: 116: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,328 INFO L273 TraceCheckUtils]: 117: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,328 INFO L273 TraceCheckUtils]: 118: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,329 INFO L273 TraceCheckUtils]: 119: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,329 INFO L273 TraceCheckUtils]: 120: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,330 INFO L256 TraceCheckUtils]: 121: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,331 INFO L273 TraceCheckUtils]: 122: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,331 INFO L273 TraceCheckUtils]: 123: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,332 INFO L273 TraceCheckUtils]: 124: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,332 INFO L273 TraceCheckUtils]: 125: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,333 INFO L273 TraceCheckUtils]: 126: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,334 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,334 INFO L273 TraceCheckUtils]: 128: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,335 INFO L273 TraceCheckUtils]: 129: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,335 INFO L273 TraceCheckUtils]: 130: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,336 INFO L273 TraceCheckUtils]: 131: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,336 INFO L273 TraceCheckUtils]: 132: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,337 INFO L256 TraceCheckUtils]: 133: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,338 INFO L273 TraceCheckUtils]: 134: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,338 INFO L273 TraceCheckUtils]: 135: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,339 INFO L273 TraceCheckUtils]: 136: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,339 INFO L273 TraceCheckUtils]: 137: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,340 INFO L273 TraceCheckUtils]: 138: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,341 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,341 INFO L273 TraceCheckUtils]: 140: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,342 INFO L273 TraceCheckUtils]: 141: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,342 INFO L273 TraceCheckUtils]: 142: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,343 INFO L273 TraceCheckUtils]: 143: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,343 INFO L273 TraceCheckUtils]: 144: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,344 INFO L256 TraceCheckUtils]: 145: Hoare triple {15465#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,345 INFO L273 TraceCheckUtils]: 146: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,345 INFO L273 TraceCheckUtils]: 147: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,346 INFO L273 TraceCheckUtils]: 148: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,346 INFO L273 TraceCheckUtils]: 149: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,347 INFO L273 TraceCheckUtils]: 150: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,348 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {15465#(<= 100000 ~SIZE~0)} {15465#(<= 100000 ~SIZE~0)} #132#return; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,348 INFO L273 TraceCheckUtils]: 152: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,349 INFO L273 TraceCheckUtils]: 153: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,349 INFO L273 TraceCheckUtils]: 154: Hoare triple {15465#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,350 INFO L273 TraceCheckUtils]: 155: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume true; {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,350 INFO L273 TraceCheckUtils]: 156: Hoare triple {15465#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {15465#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:16,351 INFO L273 TraceCheckUtils]: 157: Hoare triple {15465#(<= 100000 ~SIZE~0)} ~i~1 := 0; {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,352 INFO L273 TraceCheckUtils]: 158: Hoare triple {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume true; {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,352 INFO L273 TraceCheckUtils]: 159: Hoare triple {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,353 INFO L273 TraceCheckUtils]: 160: Hoare triple {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,354 INFO L273 TraceCheckUtils]: 161: Hoare triple {15953#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,355 INFO L273 TraceCheckUtils]: 162: Hoare triple {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,355 INFO L273 TraceCheckUtils]: 163: Hoare triple {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,356 INFO L273 TraceCheckUtils]: 164: Hoare triple {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,357 INFO L273 TraceCheckUtils]: 165: Hoare triple {15966#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,357 INFO L273 TraceCheckUtils]: 166: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume true; {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,358 INFO L273 TraceCheckUtils]: 167: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,359 INFO L273 TraceCheckUtils]: 168: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,360 INFO L273 TraceCheckUtils]: 169: Hoare triple {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,360 INFO L273 TraceCheckUtils]: 170: Hoare triple {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} assume true; {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,361 INFO L273 TraceCheckUtils]: 171: Hoare triple {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,362 INFO L273 TraceCheckUtils]: 172: Hoare triple {15989#(and (<= main_~pos~0 2) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,362 INFO L273 TraceCheckUtils]: 173: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume true; {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,363 INFO L273 TraceCheckUtils]: 174: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,364 INFO L273 TraceCheckUtils]: 175: Hoare triple {15979#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {16011#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,364 INFO L273 TraceCheckUtils]: 176: Hoare triple {16011#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} assume true; {16011#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:16,365 INFO L273 TraceCheckUtils]: 177: Hoare triple {16011#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {15464#false} is VALID [2018-11-14 17:01:16,365 INFO L273 TraceCheckUtils]: 178: Hoare triple {15464#false} assume ~found~0 == 1;~i~1 := 0; {15464#false} is VALID [2018-11-14 17:01:16,366 INFO L273 TraceCheckUtils]: 179: Hoare triple {15464#false} assume true; {15464#false} is VALID [2018-11-14 17:01:16,366 INFO L273 TraceCheckUtils]: 180: Hoare triple {15464#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {15464#false} is VALID [2018-11-14 17:01:16,366 INFO L256 TraceCheckUtils]: 181: Hoare triple {15464#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {15464#false} is VALID [2018-11-14 17:01:16,366 INFO L273 TraceCheckUtils]: 182: Hoare triple {15464#false} ~cond := #in~cond; {15464#false} is VALID [2018-11-14 17:01:16,366 INFO L273 TraceCheckUtils]: 183: Hoare triple {15464#false} assume ~cond == 0; {15464#false} is VALID [2018-11-14 17:01:16,367 INFO L273 TraceCheckUtils]: 184: Hoare triple {15464#false} assume !false; {15464#false} is VALID [2018-11-14 17:01:16,392 INFO L134 CoverageAnalysis]: Checked inductivity of 825 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 805 trivial. 0 not checked. [2018-11-14 17:01:16,413 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:01:16,414 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 8] total 21 [2018-11-14 17:01:16,414 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 185 [2018-11-14 17:01:16,415 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:01:16,415 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-14 17:01:16,570 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:16,570 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-14 17:01:16,570 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-14 17:01:16,571 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=129, Invalid=291, Unknown=0, NotChecked=0, Total=420 [2018-11-14 17:01:16,571 INFO L87 Difference]: Start difference. First operand 202 states and 264 transitions. Second operand 21 states. [2018-11-14 17:01:20,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:20,874 INFO L93 Difference]: Finished difference Result 345 states and 435 transitions. [2018-11-14 17:01:20,874 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-14 17:01:20,874 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 185 [2018-11-14 17:01:20,874 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:01:20,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-14 17:01:20,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 318 transitions. [2018-11-14 17:01:20,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-14 17:01:20,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 318 transitions. [2018-11-14 17:01:20,888 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 318 transitions. [2018-11-14 17:01:21,301 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:21,308 INFO L225 Difference]: With dead ends: 345 [2018-11-14 17:01:21,308 INFO L226 Difference]: Without dead ends: 287 [2018-11-14 17:01:21,309 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 194 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=353, Invalid=979, Unknown=0, NotChecked=0, Total=1332 [2018-11-14 17:01:21,309 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 287 states. [2018-11-14 17:01:21,703 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 287 to 212. [2018-11-14 17:01:21,703 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:01:21,703 INFO L82 GeneralOperation]: Start isEquivalent. First operand 287 states. Second operand 212 states. [2018-11-14 17:01:21,703 INFO L74 IsIncluded]: Start isIncluded. First operand 287 states. Second operand 212 states. [2018-11-14 17:01:21,704 INFO L87 Difference]: Start difference. First operand 287 states. Second operand 212 states. [2018-11-14 17:01:21,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:21,712 INFO L93 Difference]: Finished difference Result 287 states and 370 transitions. [2018-11-14 17:01:21,712 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 370 transitions. [2018-11-14 17:01:21,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:21,714 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:21,714 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand 287 states. [2018-11-14 17:01:21,714 INFO L87 Difference]: Start difference. First operand 212 states. Second operand 287 states. [2018-11-14 17:01:21,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:21,722 INFO L93 Difference]: Finished difference Result 287 states and 370 transitions. [2018-11-14 17:01:21,722 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 370 transitions. [2018-11-14 17:01:21,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:21,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:21,724 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:01:21,724 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:01:21,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 212 states. [2018-11-14 17:01:21,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 279 transitions. [2018-11-14 17:01:21,729 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 279 transitions. Word has length 185 [2018-11-14 17:01:21,730 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:01:21,730 INFO L480 AbstractCegarLoop]: Abstraction has 212 states and 279 transitions. [2018-11-14 17:01:21,730 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-14 17:01:21,730 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 279 transitions. [2018-11-14 17:01:21,732 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 199 [2018-11-14 17:01:21,732 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:01:21,733 INFO L375 BasicCegarLoop]: trace histogram [14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:01:21,733 INFO L423 AbstractCegarLoop]: === Iteration 19 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:01:21,733 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:01:21,733 INFO L82 PathProgramCache]: Analyzing trace with hash -846944951, now seen corresponding path program 3 times [2018-11-14 17:01:21,733 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:01:21,734 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:01:21,734 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:21,734 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:01:21,735 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:21,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:22,022 INFO L256 TraceCheckUtils]: 0: Hoare triple {17371#true} call ULTIMATE.init(); {17371#true} is VALID [2018-11-14 17:01:22,023 INFO L273 TraceCheckUtils]: 1: Hoare triple {17371#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,023 INFO L273 TraceCheckUtils]: 2: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,024 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17371#true} #128#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,025 INFO L256 TraceCheckUtils]: 4: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,025 INFO L273 TraceCheckUtils]: 5: Hoare triple {17373#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,026 INFO L273 TraceCheckUtils]: 6: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,026 INFO L273 TraceCheckUtils]: 7: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,026 INFO L256 TraceCheckUtils]: 8: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,027 INFO L273 TraceCheckUtils]: 9: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,027 INFO L273 TraceCheckUtils]: 10: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,027 INFO L273 TraceCheckUtils]: 11: Hoare triple {17371#true} assume !(~i~0 < ~size); {17371#true} is VALID [2018-11-14 17:01:22,027 INFO L273 TraceCheckUtils]: 12: Hoare triple {17371#true} #res := 0; {17371#true} is VALID [2018-11-14 17:01:22,027 INFO L273 TraceCheckUtils]: 13: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,028 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,029 INFO L273 TraceCheckUtils]: 15: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,029 INFO L273 TraceCheckUtils]: 16: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,029 INFO L256 TraceCheckUtils]: 17: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {17371#true} is VALID [2018-11-14 17:01:22,030 INFO L273 TraceCheckUtils]: 18: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {17371#true} is VALID [2018-11-14 17:01:22,030 INFO L273 TraceCheckUtils]: 19: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,030 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #134#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,031 INFO L273 TraceCheckUtils]: 21: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,031 INFO L273 TraceCheckUtils]: 22: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,031 INFO L273 TraceCheckUtils]: 23: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,031 INFO L273 TraceCheckUtils]: 24: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,032 INFO L256 TraceCheckUtils]: 25: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,032 INFO L273 TraceCheckUtils]: 26: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,032 INFO L273 TraceCheckUtils]: 27: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,032 INFO L273 TraceCheckUtils]: 28: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,032 INFO L273 TraceCheckUtils]: 29: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,032 INFO L273 TraceCheckUtils]: 30: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,033 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,034 INFO L273 TraceCheckUtils]: 32: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,034 INFO L273 TraceCheckUtils]: 33: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,035 INFO L273 TraceCheckUtils]: 34: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,035 INFO L273 TraceCheckUtils]: 35: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,035 INFO L273 TraceCheckUtils]: 36: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,035 INFO L256 TraceCheckUtils]: 37: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,035 INFO L273 TraceCheckUtils]: 38: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,035 INFO L273 TraceCheckUtils]: 39: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,036 INFO L273 TraceCheckUtils]: 40: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,036 INFO L273 TraceCheckUtils]: 41: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,036 INFO L273 TraceCheckUtils]: 42: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,037 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,037 INFO L273 TraceCheckUtils]: 44: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,038 INFO L273 TraceCheckUtils]: 45: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,038 INFO L273 TraceCheckUtils]: 46: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,038 INFO L273 TraceCheckUtils]: 47: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 48: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,039 INFO L256 TraceCheckUtils]: 49: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 50: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 51: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 52: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 53: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,039 INFO L273 TraceCheckUtils]: 54: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,040 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,040 INFO L273 TraceCheckUtils]: 56: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,041 INFO L273 TraceCheckUtils]: 57: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,041 INFO L273 TraceCheckUtils]: 58: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,041 INFO L273 TraceCheckUtils]: 59: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,042 INFO L273 TraceCheckUtils]: 60: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,042 INFO L256 TraceCheckUtils]: 61: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,042 INFO L273 TraceCheckUtils]: 62: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,042 INFO L273 TraceCheckUtils]: 63: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,043 INFO L273 TraceCheckUtils]: 64: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,043 INFO L273 TraceCheckUtils]: 65: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,043 INFO L273 TraceCheckUtils]: 66: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,044 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,045 INFO L273 TraceCheckUtils]: 68: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,045 INFO L273 TraceCheckUtils]: 69: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,046 INFO L273 TraceCheckUtils]: 70: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,046 INFO L273 TraceCheckUtils]: 71: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,047 INFO L273 TraceCheckUtils]: 72: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,047 INFO L256 TraceCheckUtils]: 73: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,047 INFO L273 TraceCheckUtils]: 74: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,047 INFO L273 TraceCheckUtils]: 75: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,047 INFO L273 TraceCheckUtils]: 76: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,048 INFO L273 TraceCheckUtils]: 77: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,048 INFO L273 TraceCheckUtils]: 78: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,049 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,049 INFO L273 TraceCheckUtils]: 80: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,049 INFO L273 TraceCheckUtils]: 81: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,050 INFO L273 TraceCheckUtils]: 82: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,050 INFO L273 TraceCheckUtils]: 83: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,050 INFO L273 TraceCheckUtils]: 84: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,050 INFO L256 TraceCheckUtils]: 85: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,051 INFO L273 TraceCheckUtils]: 86: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,051 INFO L273 TraceCheckUtils]: 87: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,051 INFO L273 TraceCheckUtils]: 88: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,051 INFO L273 TraceCheckUtils]: 89: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,051 INFO L273 TraceCheckUtils]: 90: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,052 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,052 INFO L273 TraceCheckUtils]: 92: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,052 INFO L273 TraceCheckUtils]: 93: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,053 INFO L273 TraceCheckUtils]: 94: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,053 INFO L273 TraceCheckUtils]: 95: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,054 INFO L273 TraceCheckUtils]: 96: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,054 INFO L256 TraceCheckUtils]: 97: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,054 INFO L273 TraceCheckUtils]: 98: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,054 INFO L273 TraceCheckUtils]: 99: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,054 INFO L273 TraceCheckUtils]: 100: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,055 INFO L273 TraceCheckUtils]: 101: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,055 INFO L273 TraceCheckUtils]: 102: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,055 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,056 INFO L273 TraceCheckUtils]: 104: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,056 INFO L273 TraceCheckUtils]: 105: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,056 INFO L273 TraceCheckUtils]: 106: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,056 INFO L273 TraceCheckUtils]: 107: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 108: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,057 INFO L256 TraceCheckUtils]: 109: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 110: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 111: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 112: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 113: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,057 INFO L273 TraceCheckUtils]: 114: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,058 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,058 INFO L273 TraceCheckUtils]: 116: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,059 INFO L273 TraceCheckUtils]: 117: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,059 INFO L273 TraceCheckUtils]: 118: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,059 INFO L273 TraceCheckUtils]: 119: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,060 INFO L273 TraceCheckUtils]: 120: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,060 INFO L256 TraceCheckUtils]: 121: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,060 INFO L273 TraceCheckUtils]: 122: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,061 INFO L273 TraceCheckUtils]: 123: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,061 INFO L273 TraceCheckUtils]: 124: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,061 INFO L273 TraceCheckUtils]: 125: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,061 INFO L273 TraceCheckUtils]: 126: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,062 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,063 INFO L273 TraceCheckUtils]: 128: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,063 INFO L273 TraceCheckUtils]: 129: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,064 INFO L273 TraceCheckUtils]: 130: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,064 INFO L273 TraceCheckUtils]: 131: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,065 INFO L273 TraceCheckUtils]: 132: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,065 INFO L256 TraceCheckUtils]: 133: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,065 INFO L273 TraceCheckUtils]: 134: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,065 INFO L273 TraceCheckUtils]: 135: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,065 INFO L273 TraceCheckUtils]: 136: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,066 INFO L273 TraceCheckUtils]: 137: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,066 INFO L273 TraceCheckUtils]: 138: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,067 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,067 INFO L273 TraceCheckUtils]: 140: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,068 INFO L273 TraceCheckUtils]: 141: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,068 INFO L273 TraceCheckUtils]: 142: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 143: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 144: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,069 INFO L256 TraceCheckUtils]: 145: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 146: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 147: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 148: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,069 INFO L273 TraceCheckUtils]: 149: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,070 INFO L273 TraceCheckUtils]: 150: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,070 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,070 INFO L273 TraceCheckUtils]: 152: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,071 INFO L273 TraceCheckUtils]: 153: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,071 INFO L273 TraceCheckUtils]: 154: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,071 INFO L273 TraceCheckUtils]: 155: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 156: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,072 INFO L256 TraceCheckUtils]: 157: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17371#true} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 158: Hoare triple {17371#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17371#true} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 159: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 160: Hoare triple {17371#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17371#true} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 161: Hoare triple {17371#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17371#true} is VALID [2018-11-14 17:01:22,072 INFO L273 TraceCheckUtils]: 162: Hoare triple {17371#true} assume true; {17371#true} is VALID [2018-11-14 17:01:22,073 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {17371#true} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,073 INFO L273 TraceCheckUtils]: 164: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,074 INFO L273 TraceCheckUtils]: 165: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,074 INFO L273 TraceCheckUtils]: 166: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,074 INFO L273 TraceCheckUtils]: 167: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,075 INFO L273 TraceCheckUtils]: 168: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,075 INFO L273 TraceCheckUtils]: 169: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~i~1 := 0; {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,076 INFO L273 TraceCheckUtils]: 170: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,077 INFO L273 TraceCheckUtils]: 171: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,077 INFO L273 TraceCheckUtils]: 172: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,078 INFO L273 TraceCheckUtils]: 173: Hoare triple {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,079 INFO L273 TraceCheckUtils]: 174: Hoare triple {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume true; {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,079 INFO L273 TraceCheckUtils]: 175: Hoare triple {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,080 INFO L273 TraceCheckUtils]: 176: Hoare triple {17375#(and (= 0 main_~pos~0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,081 INFO L273 TraceCheckUtils]: 177: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume true; {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,082 INFO L273 TraceCheckUtils]: 178: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,082 INFO L273 TraceCheckUtils]: 179: Hoare triple {17374#(and (= 0 main_~i~1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:22,083 INFO L273 TraceCheckUtils]: 180: Hoare triple {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} assume true; {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:22,083 INFO L273 TraceCheckUtils]: 181: Hoare triple {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:22,084 INFO L273 TraceCheckUtils]: 182: Hoare triple {17376#(<= (+ main_~i~1 99999) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:22,085 INFO L273 TraceCheckUtils]: 183: Hoare triple {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} assume true; {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:22,085 INFO L273 TraceCheckUtils]: 184: Hoare triple {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:22,086 INFO L273 TraceCheckUtils]: 185: Hoare triple {17377#(<= (+ main_~i~1 99998) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:22,087 INFO L273 TraceCheckUtils]: 186: Hoare triple {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} assume true; {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:22,087 INFO L273 TraceCheckUtils]: 187: Hoare triple {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:22,088 INFO L273 TraceCheckUtils]: 188: Hoare triple {17378#(<= (+ main_~i~1 99997) ~SIZE~0)} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17379#(<= (+ main_~i~1 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:22,088 INFO L273 TraceCheckUtils]: 189: Hoare triple {17379#(<= (+ main_~i~1 99996) ~SIZE~0)} assume true; {17379#(<= (+ main_~i~1 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:22,089 INFO L273 TraceCheckUtils]: 190: Hoare triple {17379#(<= (+ main_~i~1 99996) ~SIZE~0)} assume !(~i~1 < ~SIZE~0 - 1); {17372#false} is VALID [2018-11-14 17:01:22,089 INFO L273 TraceCheckUtils]: 191: Hoare triple {17372#false} assume ~found~0 == 1;~i~1 := 0; {17372#false} is VALID [2018-11-14 17:01:22,090 INFO L273 TraceCheckUtils]: 192: Hoare triple {17372#false} assume true; {17372#false} is VALID [2018-11-14 17:01:22,090 INFO L273 TraceCheckUtils]: 193: Hoare triple {17372#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {17372#false} is VALID [2018-11-14 17:01:22,090 INFO L256 TraceCheckUtils]: 194: Hoare triple {17372#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {17372#false} is VALID [2018-11-14 17:01:22,090 INFO L273 TraceCheckUtils]: 195: Hoare triple {17372#false} ~cond := #in~cond; {17372#false} is VALID [2018-11-14 17:01:22,091 INFO L273 TraceCheckUtils]: 196: Hoare triple {17372#false} assume ~cond == 0; {17372#false} is VALID [2018-11-14 17:01:22,091 INFO L273 TraceCheckUtils]: 197: Hoare triple {17372#false} assume !false; {17372#false} is VALID [2018-11-14 17:01:22,115 INFO L134 CoverageAnalysis]: Checked inductivity of 978 backedges. 0 proven. 28 refuted. 0 times theorem prover too weak. 950 trivial. 0 not checked. [2018-11-14 17:01:22,115 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:01:22,115 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:01:22,123 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-14 17:01:22,211 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-14 17:01:22,211 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:01:22,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:22,248 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:01:22,552 INFO L256 TraceCheckUtils]: 0: Hoare triple {17371#true} call ULTIMATE.init(); {17371#true} is VALID [2018-11-14 17:01:22,553 INFO L273 TraceCheckUtils]: 1: Hoare triple {17371#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,553 INFO L273 TraceCheckUtils]: 2: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,554 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17371#true} #128#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,554 INFO L256 TraceCheckUtils]: 4: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,555 INFO L273 TraceCheckUtils]: 5: Hoare triple {17373#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,555 INFO L273 TraceCheckUtils]: 6: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,556 INFO L273 TraceCheckUtils]: 7: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,557 INFO L256 TraceCheckUtils]: 8: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,557 INFO L273 TraceCheckUtils]: 9: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,558 INFO L273 TraceCheckUtils]: 10: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,558 INFO L273 TraceCheckUtils]: 11: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,559 INFO L273 TraceCheckUtils]: 12: Hoare triple {17373#(<= 100000 ~SIZE~0)} #res := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,559 INFO L273 TraceCheckUtils]: 13: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,560 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,561 INFO L273 TraceCheckUtils]: 15: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,561 INFO L273 TraceCheckUtils]: 16: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,562 INFO L256 TraceCheckUtils]: 17: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,563 INFO L273 TraceCheckUtils]: 18: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,563 INFO L273 TraceCheckUtils]: 19: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,564 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #134#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,565 INFO L273 TraceCheckUtils]: 21: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,565 INFO L273 TraceCheckUtils]: 22: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,566 INFO L273 TraceCheckUtils]: 23: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,566 INFO L273 TraceCheckUtils]: 24: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,567 INFO L256 TraceCheckUtils]: 25: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,568 INFO L273 TraceCheckUtils]: 26: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,568 INFO L273 TraceCheckUtils]: 27: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,569 INFO L273 TraceCheckUtils]: 28: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,569 INFO L273 TraceCheckUtils]: 29: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,570 INFO L273 TraceCheckUtils]: 30: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,571 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,571 INFO L273 TraceCheckUtils]: 32: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,572 INFO L273 TraceCheckUtils]: 33: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,572 INFO L273 TraceCheckUtils]: 34: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,573 INFO L273 TraceCheckUtils]: 35: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,573 INFO L273 TraceCheckUtils]: 36: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,574 INFO L256 TraceCheckUtils]: 37: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,575 INFO L273 TraceCheckUtils]: 38: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,575 INFO L273 TraceCheckUtils]: 39: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,576 INFO L273 TraceCheckUtils]: 40: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,576 INFO L273 TraceCheckUtils]: 41: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,577 INFO L273 TraceCheckUtils]: 42: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,578 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,578 INFO L273 TraceCheckUtils]: 44: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,579 INFO L273 TraceCheckUtils]: 45: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,579 INFO L273 TraceCheckUtils]: 46: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,580 INFO L273 TraceCheckUtils]: 47: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,580 INFO L273 TraceCheckUtils]: 48: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,581 INFO L256 TraceCheckUtils]: 49: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,582 INFO L273 TraceCheckUtils]: 50: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,582 INFO L273 TraceCheckUtils]: 51: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,583 INFO L273 TraceCheckUtils]: 52: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,583 INFO L273 TraceCheckUtils]: 53: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,584 INFO L273 TraceCheckUtils]: 54: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,585 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,585 INFO L273 TraceCheckUtils]: 56: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,586 INFO L273 TraceCheckUtils]: 57: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,586 INFO L273 TraceCheckUtils]: 58: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,587 INFO L273 TraceCheckUtils]: 59: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,587 INFO L273 TraceCheckUtils]: 60: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,588 INFO L256 TraceCheckUtils]: 61: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,589 INFO L273 TraceCheckUtils]: 62: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,589 INFO L273 TraceCheckUtils]: 63: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,590 INFO L273 TraceCheckUtils]: 64: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,590 INFO L273 TraceCheckUtils]: 65: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,591 INFO L273 TraceCheckUtils]: 66: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,592 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,592 INFO L273 TraceCheckUtils]: 68: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,593 INFO L273 TraceCheckUtils]: 69: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,593 INFO L273 TraceCheckUtils]: 70: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,618 INFO L273 TraceCheckUtils]: 71: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,633 INFO L273 TraceCheckUtils]: 72: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,649 INFO L256 TraceCheckUtils]: 73: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,663 INFO L273 TraceCheckUtils]: 74: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,671 INFO L273 TraceCheckUtils]: 75: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,682 INFO L273 TraceCheckUtils]: 76: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,693 INFO L273 TraceCheckUtils]: 77: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,706 INFO L273 TraceCheckUtils]: 78: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,715 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,734 INFO L273 TraceCheckUtils]: 80: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,743 INFO L273 TraceCheckUtils]: 81: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,755 INFO L273 TraceCheckUtils]: 82: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,768 INFO L273 TraceCheckUtils]: 83: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,782 INFO L273 TraceCheckUtils]: 84: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,798 INFO L256 TraceCheckUtils]: 85: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,807 INFO L273 TraceCheckUtils]: 86: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,820 INFO L273 TraceCheckUtils]: 87: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,829 INFO L273 TraceCheckUtils]: 88: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,841 INFO L273 TraceCheckUtils]: 89: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,859 INFO L273 TraceCheckUtils]: 90: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,868 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,881 INFO L273 TraceCheckUtils]: 92: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,894 INFO L273 TraceCheckUtils]: 93: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,906 INFO L273 TraceCheckUtils]: 94: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,919 INFO L273 TraceCheckUtils]: 95: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,920 INFO L273 TraceCheckUtils]: 96: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,920 INFO L256 TraceCheckUtils]: 97: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,922 INFO L273 TraceCheckUtils]: 98: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,922 INFO L273 TraceCheckUtils]: 99: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,924 INFO L273 TraceCheckUtils]: 100: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,924 INFO L273 TraceCheckUtils]: 101: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,924 INFO L273 TraceCheckUtils]: 102: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,926 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,926 INFO L273 TraceCheckUtils]: 104: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,926 INFO L273 TraceCheckUtils]: 105: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,927 INFO L273 TraceCheckUtils]: 106: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,927 INFO L273 TraceCheckUtils]: 107: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,927 INFO L273 TraceCheckUtils]: 108: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,928 INFO L256 TraceCheckUtils]: 109: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,928 INFO L273 TraceCheckUtils]: 110: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,928 INFO L273 TraceCheckUtils]: 111: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,929 INFO L273 TraceCheckUtils]: 112: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,929 INFO L273 TraceCheckUtils]: 113: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,929 INFO L273 TraceCheckUtils]: 114: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,930 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,930 INFO L273 TraceCheckUtils]: 116: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,931 INFO L273 TraceCheckUtils]: 117: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,931 INFO L273 TraceCheckUtils]: 118: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,932 INFO L273 TraceCheckUtils]: 119: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,932 INFO L273 TraceCheckUtils]: 120: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,933 INFO L256 TraceCheckUtils]: 121: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,934 INFO L273 TraceCheckUtils]: 122: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,934 INFO L273 TraceCheckUtils]: 123: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,935 INFO L273 TraceCheckUtils]: 124: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,935 INFO L273 TraceCheckUtils]: 125: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,936 INFO L273 TraceCheckUtils]: 126: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,937 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,937 INFO L273 TraceCheckUtils]: 128: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,938 INFO L273 TraceCheckUtils]: 129: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,938 INFO L273 TraceCheckUtils]: 130: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,939 INFO L273 TraceCheckUtils]: 131: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,939 INFO L273 TraceCheckUtils]: 132: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,940 INFO L256 TraceCheckUtils]: 133: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,941 INFO L273 TraceCheckUtils]: 134: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,941 INFO L273 TraceCheckUtils]: 135: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,942 INFO L273 TraceCheckUtils]: 136: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,942 INFO L273 TraceCheckUtils]: 137: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,943 INFO L273 TraceCheckUtils]: 138: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,944 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,944 INFO L273 TraceCheckUtils]: 140: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,945 INFO L273 TraceCheckUtils]: 141: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,945 INFO L273 TraceCheckUtils]: 142: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,946 INFO L273 TraceCheckUtils]: 143: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,946 INFO L273 TraceCheckUtils]: 144: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,947 INFO L256 TraceCheckUtils]: 145: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,948 INFO L273 TraceCheckUtils]: 146: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,948 INFO L273 TraceCheckUtils]: 147: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,949 INFO L273 TraceCheckUtils]: 148: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,949 INFO L273 TraceCheckUtils]: 149: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,950 INFO L273 TraceCheckUtils]: 150: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,951 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,951 INFO L273 TraceCheckUtils]: 152: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,952 INFO L273 TraceCheckUtils]: 153: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,952 INFO L273 TraceCheckUtils]: 154: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,953 INFO L273 TraceCheckUtils]: 155: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,953 INFO L273 TraceCheckUtils]: 156: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,954 INFO L256 TraceCheckUtils]: 157: Hoare triple {17373#(<= 100000 ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,955 INFO L273 TraceCheckUtils]: 158: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,955 INFO L273 TraceCheckUtils]: 159: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,956 INFO L273 TraceCheckUtils]: 160: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,956 INFO L273 TraceCheckUtils]: 161: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,957 INFO L273 TraceCheckUtils]: 162: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,958 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {17373#(<= 100000 ~SIZE~0)} {17373#(<= 100000 ~SIZE~0)} #132#return; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,958 INFO L273 TraceCheckUtils]: 164: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,959 INFO L273 TraceCheckUtils]: 165: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,959 INFO L273 TraceCheckUtils]: 166: Hoare triple {17373#(<= 100000 ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,960 INFO L273 TraceCheckUtils]: 167: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume true; {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,960 INFO L273 TraceCheckUtils]: 168: Hoare triple {17373#(<= 100000 ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {17373#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:22,961 INFO L273 TraceCheckUtils]: 169: Hoare triple {17373#(<= 100000 ~SIZE~0)} ~i~1 := 0; {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,962 INFO L273 TraceCheckUtils]: 170: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume true; {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,963 INFO L273 TraceCheckUtils]: 171: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,963 INFO L273 TraceCheckUtils]: 172: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,964 INFO L273 TraceCheckUtils]: 173: Hoare triple {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,965 INFO L273 TraceCheckUtils]: 174: Hoare triple {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} assume true; {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,965 INFO L273 TraceCheckUtils]: 175: Hoare triple {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,966 INFO L273 TraceCheckUtils]: 176: Hoare triple {17900#(and (<= main_~pos~0 0) (<= 100000 ~SIZE~0))} assume ~found~0 == 1;~i~1 := ~pos~0; {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,967 INFO L273 TraceCheckUtils]: 177: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume true; {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,967 INFO L273 TraceCheckUtils]: 178: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,968 INFO L273 TraceCheckUtils]: 179: Hoare triple {17890#(and (<= main_~i~1 0) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,969 INFO L273 TraceCheckUtils]: 180: Hoare triple {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume true; {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,970 INFO L273 TraceCheckUtils]: 181: Hoare triple {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,970 INFO L273 TraceCheckUtils]: 182: Hoare triple {17922#(and (<= main_~i~1 1) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,971 INFO L273 TraceCheckUtils]: 183: Hoare triple {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume true; {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,972 INFO L273 TraceCheckUtils]: 184: Hoare triple {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,973 INFO L273 TraceCheckUtils]: 185: Hoare triple {17932#(and (<= main_~i~1 2) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,973 INFO L273 TraceCheckUtils]: 186: Hoare triple {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} assume true; {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,974 INFO L273 TraceCheckUtils]: 187: Hoare triple {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem10 := read~int(~#set~0.base, ~#set~0.offset + (~i~1 + 1) * 4, 4);call write~int(#t~mem10, ~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4);havoc #t~mem10; {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,975 INFO L273 TraceCheckUtils]: 188: Hoare triple {17942#(and (<= main_~i~1 3) (<= 100000 ~SIZE~0))} #t~post9 := ~i~1;~i~1 := #t~post9 + 1;havoc #t~post9; {17952#(and (<= main_~i~1 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,976 INFO L273 TraceCheckUtils]: 189: Hoare triple {17952#(and (<= main_~i~1 4) (<= 100000 ~SIZE~0))} assume true; {17952#(and (<= main_~i~1 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:22,976 INFO L273 TraceCheckUtils]: 190: Hoare triple {17952#(and (<= main_~i~1 4) (<= 100000 ~SIZE~0))} assume !(~i~1 < ~SIZE~0 - 1); {17372#false} is VALID [2018-11-14 17:01:22,977 INFO L273 TraceCheckUtils]: 191: Hoare triple {17372#false} assume ~found~0 == 1;~i~1 := 0; {17372#false} is VALID [2018-11-14 17:01:22,977 INFO L273 TraceCheckUtils]: 192: Hoare triple {17372#false} assume true; {17372#false} is VALID [2018-11-14 17:01:22,977 INFO L273 TraceCheckUtils]: 193: Hoare triple {17372#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {17372#false} is VALID [2018-11-14 17:01:22,977 INFO L256 TraceCheckUtils]: 194: Hoare triple {17372#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {17372#false} is VALID [2018-11-14 17:01:22,977 INFO L273 TraceCheckUtils]: 195: Hoare triple {17372#false} ~cond := #in~cond; {17372#false} is VALID [2018-11-14 17:01:22,978 INFO L273 TraceCheckUtils]: 196: Hoare triple {17372#false} assume ~cond == 0; {17372#false} is VALID [2018-11-14 17:01:22,978 INFO L273 TraceCheckUtils]: 197: Hoare triple {17372#false} assume !false; {17372#false} is VALID [2018-11-14 17:01:23,007 INFO L134 CoverageAnalysis]: Checked inductivity of 978 backedges. 0 proven. 28 refuted. 0 times theorem prover too weak. 950 trivial. 0 not checked. [2018-11-14 17:01:23,029 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:01:23,029 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2018-11-14 17:01:23,030 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 198 [2018-11-14 17:01:23,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:01:23,893 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-14 17:01:24,001 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:24,001 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-14 17:01:24,002 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-14 17:01:24,002 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=135, Unknown=0, NotChecked=0, Total=210 [2018-11-14 17:01:24,002 INFO L87 Difference]: Start difference. First operand 212 states and 279 transitions. Second operand 15 states. [2018-11-14 17:01:25,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:25,663 INFO L93 Difference]: Finished difference Result 309 states and 391 transitions. [2018-11-14 17:01:25,663 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-14 17:01:25,663 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 198 [2018-11-14 17:01:25,664 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-14 17:01:25,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-14 17:01:25,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 187 transitions. [2018-11-14 17:01:25,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-14 17:01:25,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 187 transitions. [2018-11-14 17:01:25,668 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 187 transitions. [2018-11-14 17:01:25,892 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 187 edges. 187 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:25,899 INFO L225 Difference]: With dead ends: 309 [2018-11-14 17:01:25,899 INFO L226 Difference]: Without dead ends: 297 [2018-11-14 17:01:25,899 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 193 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=140, Invalid=240, Unknown=0, NotChecked=0, Total=380 [2018-11-14 17:01:25,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 297 states. [2018-11-14 17:01:26,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 297 to 215. [2018-11-14 17:01:26,467 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-14 17:01:26,467 INFO L82 GeneralOperation]: Start isEquivalent. First operand 297 states. Second operand 215 states. [2018-11-14 17:01:26,467 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand 215 states. [2018-11-14 17:01:26,468 INFO L87 Difference]: Start difference. First operand 297 states. Second operand 215 states. [2018-11-14 17:01:26,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:26,475 INFO L93 Difference]: Finished difference Result 297 states and 378 transitions. [2018-11-14 17:01:26,475 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 378 transitions. [2018-11-14 17:01:26,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:26,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:26,476 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand 297 states. [2018-11-14 17:01:26,476 INFO L87 Difference]: Start difference. First operand 215 states. Second operand 297 states. [2018-11-14 17:01:26,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-14 17:01:26,485 INFO L93 Difference]: Finished difference Result 297 states and 378 transitions. [2018-11-14 17:01:26,485 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 378 transitions. [2018-11-14 17:01:26,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-14 17:01:26,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-14 17:01:26,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-14 17:01:26,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-14 17:01:26,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 215 states. [2018-11-14 17:01:26,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 215 states to 215 states and 282 transitions. [2018-11-14 17:01:26,492 INFO L78 Accepts]: Start accepts. Automaton has 215 states and 282 transitions. Word has length 198 [2018-11-14 17:01:26,492 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-14 17:01:26,492 INFO L480 AbstractCegarLoop]: Abstraction has 215 states and 282 transitions. [2018-11-14 17:01:26,492 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-14 17:01:26,493 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 282 transitions. [2018-11-14 17:01:26,495 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 199 [2018-11-14 17:01:26,495 INFO L367 BasicCegarLoop]: Found error trace [2018-11-14 17:01:26,495 INFO L375 BasicCegarLoop]: trace histogram [14, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 5, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-14 17:01:26,495 INFO L423 AbstractCegarLoop]: === Iteration 20 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-14 17:01:26,496 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-14 17:01:26,496 INFO L82 PathProgramCache]: Analyzing trace with hash -813742626, now seen corresponding path program 5 times [2018-11-14 17:01:26,496 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-14 17:01:26,496 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-14 17:01:26,497 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:26,497 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-14 17:01:26,497 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-14 17:01:26,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:27,392 INFO L256 TraceCheckUtils]: 0: Hoare triple {19269#true} call ULTIMATE.init(); {19269#true} is VALID [2018-11-14 17:01:27,392 INFO L273 TraceCheckUtils]: 1: Hoare triple {19269#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:27,393 INFO L273 TraceCheckUtils]: 2: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:27,393 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19269#true} #128#return; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:27,394 INFO L256 TraceCheckUtils]: 4: Hoare triple {19271#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:27,395 INFO L273 TraceCheckUtils]: 5: Hoare triple {19271#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,395 INFO L273 TraceCheckUtils]: 6: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 7: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,396 INFO L256 TraceCheckUtils]: 8: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 9: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 10: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 11: Hoare triple {19269#true} assume !(~i~0 < ~size); {19269#true} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 12: Hoare triple {19269#true} #res := 0; {19269#true} is VALID [2018-11-14 17:01:27,396 INFO L273 TraceCheckUtils]: 13: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,397 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {19269#true} {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,397 INFO L273 TraceCheckUtils]: 15: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,398 INFO L273 TraceCheckUtils]: 16: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,398 INFO L256 TraceCheckUtils]: 17: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {19269#true} is VALID [2018-11-14 17:01:27,398 INFO L273 TraceCheckUtils]: 18: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {19269#true} is VALID [2018-11-14 17:01:27,398 INFO L273 TraceCheckUtils]: 19: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,399 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {19269#true} {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,399 INFO L273 TraceCheckUtils]: 21: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:27,400 INFO L273 TraceCheckUtils]: 22: Hoare triple {19272#(and (= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,401 INFO L273 TraceCheckUtils]: 23: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} assume true; {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,401 INFO L273 TraceCheckUtils]: 24: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,401 INFO L256 TraceCheckUtils]: 25: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,401 INFO L273 TraceCheckUtils]: 26: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,402 INFO L273 TraceCheckUtils]: 27: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,402 INFO L273 TraceCheckUtils]: 28: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,402 INFO L273 TraceCheckUtils]: 29: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,402 INFO L273 TraceCheckUtils]: 30: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,403 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {19269#true} {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} #132#return; {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,404 INFO L273 TraceCheckUtils]: 32: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,404 INFO L273 TraceCheckUtils]: 33: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} is VALID [2018-11-14 17:01:27,405 INFO L273 TraceCheckUtils]: 34: Hoare triple {19273#(<= (+ main_~v~0 99999) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,405 INFO L273 TraceCheckUtils]: 35: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} assume true; {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,405 INFO L273 TraceCheckUtils]: 36: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,405 INFO L256 TraceCheckUtils]: 37: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,406 INFO L273 TraceCheckUtils]: 38: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,406 INFO L273 TraceCheckUtils]: 39: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,406 INFO L273 TraceCheckUtils]: 40: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,406 INFO L273 TraceCheckUtils]: 41: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,406 INFO L273 TraceCheckUtils]: 42: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,407 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {19269#true} {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} #132#return; {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,407 INFO L273 TraceCheckUtils]: 44: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,408 INFO L273 TraceCheckUtils]: 45: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} is VALID [2018-11-14 17:01:27,409 INFO L273 TraceCheckUtils]: 46: Hoare triple {19274#(<= (+ main_~v~0 99998) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,409 INFO L273 TraceCheckUtils]: 47: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} assume true; {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,410 INFO L273 TraceCheckUtils]: 48: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,410 INFO L256 TraceCheckUtils]: 49: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,410 INFO L273 TraceCheckUtils]: 50: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,410 INFO L273 TraceCheckUtils]: 51: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,410 INFO L273 TraceCheckUtils]: 52: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,411 INFO L273 TraceCheckUtils]: 53: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,411 INFO L273 TraceCheckUtils]: 54: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,412 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {19269#true} {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} #132#return; {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,412 INFO L273 TraceCheckUtils]: 56: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,413 INFO L273 TraceCheckUtils]: 57: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} is VALID [2018-11-14 17:01:27,414 INFO L273 TraceCheckUtils]: 58: Hoare triple {19275#(<= (+ main_~v~0 99997) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,414 INFO L273 TraceCheckUtils]: 59: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} assume true; {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,415 INFO L273 TraceCheckUtils]: 60: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,415 INFO L256 TraceCheckUtils]: 61: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,415 INFO L273 TraceCheckUtils]: 62: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,415 INFO L273 TraceCheckUtils]: 63: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,415 INFO L273 TraceCheckUtils]: 64: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,416 INFO L273 TraceCheckUtils]: 65: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,416 INFO L273 TraceCheckUtils]: 66: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,417 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {19269#true} {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} #132#return; {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,417 INFO L273 TraceCheckUtils]: 68: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,418 INFO L273 TraceCheckUtils]: 69: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} is VALID [2018-11-14 17:01:27,419 INFO L273 TraceCheckUtils]: 70: Hoare triple {19276#(<= (+ main_~v~0 99996) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,419 INFO L273 TraceCheckUtils]: 71: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} assume true; {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,420 INFO L273 TraceCheckUtils]: 72: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,420 INFO L256 TraceCheckUtils]: 73: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,420 INFO L273 TraceCheckUtils]: 74: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,420 INFO L273 TraceCheckUtils]: 75: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,420 INFO L273 TraceCheckUtils]: 76: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,421 INFO L273 TraceCheckUtils]: 77: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,421 INFO L273 TraceCheckUtils]: 78: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,422 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {19269#true} {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} #132#return; {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,422 INFO L273 TraceCheckUtils]: 80: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,423 INFO L273 TraceCheckUtils]: 81: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} is VALID [2018-11-14 17:01:27,424 INFO L273 TraceCheckUtils]: 82: Hoare triple {19277#(<= (+ main_~v~0 99995) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,424 INFO L273 TraceCheckUtils]: 83: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} assume true; {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,425 INFO L273 TraceCheckUtils]: 84: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,425 INFO L256 TraceCheckUtils]: 85: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,425 INFO L273 TraceCheckUtils]: 86: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,425 INFO L273 TraceCheckUtils]: 87: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,426 INFO L273 TraceCheckUtils]: 88: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,426 INFO L273 TraceCheckUtils]: 89: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,426 INFO L273 TraceCheckUtils]: 90: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,427 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {19269#true} {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} #132#return; {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,428 INFO L273 TraceCheckUtils]: 92: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,429 INFO L273 TraceCheckUtils]: 93: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} is VALID [2018-11-14 17:01:27,430 INFO L273 TraceCheckUtils]: 94: Hoare triple {19278#(<= (+ main_~v~0 99994) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,430 INFO L273 TraceCheckUtils]: 95: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} assume true; {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,431 INFO L273 TraceCheckUtils]: 96: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,431 INFO L256 TraceCheckUtils]: 97: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,431 INFO L273 TraceCheckUtils]: 98: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,431 INFO L273 TraceCheckUtils]: 99: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,432 INFO L273 TraceCheckUtils]: 100: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,432 INFO L273 TraceCheckUtils]: 101: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,432 INFO L273 TraceCheckUtils]: 102: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,433 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {19269#true} {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} #132#return; {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,434 INFO L273 TraceCheckUtils]: 104: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,434 INFO L273 TraceCheckUtils]: 105: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} is VALID [2018-11-14 17:01:27,435 INFO L273 TraceCheckUtils]: 106: Hoare triple {19279#(<= (+ main_~v~0 99993) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,435 INFO L273 TraceCheckUtils]: 107: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} assume true; {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,435 INFO L273 TraceCheckUtils]: 108: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,435 INFO L256 TraceCheckUtils]: 109: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,435 INFO L273 TraceCheckUtils]: 110: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,436 INFO L273 TraceCheckUtils]: 111: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,436 INFO L273 TraceCheckUtils]: 112: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,436 INFO L273 TraceCheckUtils]: 113: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,436 INFO L273 TraceCheckUtils]: 114: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,437 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {19269#true} {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} #132#return; {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,437 INFO L273 TraceCheckUtils]: 116: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,438 INFO L273 TraceCheckUtils]: 117: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} is VALID [2018-11-14 17:01:27,438 INFO L273 TraceCheckUtils]: 118: Hoare triple {19280#(<= (+ main_~v~0 99992) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,439 INFO L273 TraceCheckUtils]: 119: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} assume true; {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,439 INFO L273 TraceCheckUtils]: 120: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,440 INFO L256 TraceCheckUtils]: 121: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,440 INFO L273 TraceCheckUtils]: 122: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,440 INFO L273 TraceCheckUtils]: 123: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,440 INFO L273 TraceCheckUtils]: 124: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,440 INFO L273 TraceCheckUtils]: 125: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,441 INFO L273 TraceCheckUtils]: 126: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,442 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {19269#true} {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} #132#return; {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,442 INFO L273 TraceCheckUtils]: 128: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,443 INFO L273 TraceCheckUtils]: 129: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} is VALID [2018-11-14 17:01:27,443 INFO L273 TraceCheckUtils]: 130: Hoare triple {19281#(<= (+ main_~v~0 99991) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,443 INFO L273 TraceCheckUtils]: 131: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} assume true; {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 132: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,444 INFO L256 TraceCheckUtils]: 133: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 134: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 135: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 136: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 137: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,444 INFO L273 TraceCheckUtils]: 138: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,445 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {19269#true} {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} #132#return; {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,445 INFO L273 TraceCheckUtils]: 140: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,446 INFO L273 TraceCheckUtils]: 141: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} is VALID [2018-11-14 17:01:27,446 INFO L273 TraceCheckUtils]: 142: Hoare triple {19282#(<= (+ main_~v~0 99990) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,447 INFO L273 TraceCheckUtils]: 143: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} assume true; {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,447 INFO L273 TraceCheckUtils]: 144: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,448 INFO L256 TraceCheckUtils]: 145: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,448 INFO L273 TraceCheckUtils]: 146: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,448 INFO L273 TraceCheckUtils]: 147: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,448 INFO L273 TraceCheckUtils]: 148: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,448 INFO L273 TraceCheckUtils]: 149: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,449 INFO L273 TraceCheckUtils]: 150: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,450 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {19269#true} {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} #132#return; {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,450 INFO L273 TraceCheckUtils]: 152: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,451 INFO L273 TraceCheckUtils]: 153: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} is VALID [2018-11-14 17:01:27,451 INFO L273 TraceCheckUtils]: 154: Hoare triple {19283#(<= (+ main_~v~0 99989) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,452 INFO L273 TraceCheckUtils]: 155: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} assume true; {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,452 INFO L273 TraceCheckUtils]: 156: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,453 INFO L256 TraceCheckUtils]: 157: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19269#true} is VALID [2018-11-14 17:01:27,453 INFO L273 TraceCheckUtils]: 158: Hoare triple {19269#true} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19269#true} is VALID [2018-11-14 17:01:27,453 INFO L273 TraceCheckUtils]: 159: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,453 INFO L273 TraceCheckUtils]: 160: Hoare triple {19269#true} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19269#true} is VALID [2018-11-14 17:01:27,453 INFO L273 TraceCheckUtils]: 161: Hoare triple {19269#true} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19269#true} is VALID [2018-11-14 17:01:27,454 INFO L273 TraceCheckUtils]: 162: Hoare triple {19269#true} assume true; {19269#true} is VALID [2018-11-14 17:01:27,455 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {19269#true} {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} #132#return; {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,455 INFO L273 TraceCheckUtils]: 164: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,456 INFO L273 TraceCheckUtils]: 165: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} is VALID [2018-11-14 17:01:27,456 INFO L273 TraceCheckUtils]: 166: Hoare triple {19284#(<= (+ main_~v~0 99988) ~SIZE~0)} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19285#(<= (+ main_~v~0 99987) ~SIZE~0)} is VALID [2018-11-14 17:01:27,457 INFO L273 TraceCheckUtils]: 167: Hoare triple {19285#(<= (+ main_~v~0 99987) ~SIZE~0)} assume true; {19285#(<= (+ main_~v~0 99987) ~SIZE~0)} is VALID [2018-11-14 17:01:27,458 INFO L273 TraceCheckUtils]: 168: Hoare triple {19285#(<= (+ main_~v~0 99987) ~SIZE~0)} assume !(~v~0 < ~SIZE~0); {19270#false} is VALID [2018-11-14 17:01:27,458 INFO L273 TraceCheckUtils]: 169: Hoare triple {19270#false} ~i~1 := 0; {19270#false} is VALID [2018-11-14 17:01:27,458 INFO L273 TraceCheckUtils]: 170: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,458 INFO L273 TraceCheckUtils]: 171: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:27,458 INFO L273 TraceCheckUtils]: 172: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:27,459 INFO L273 TraceCheckUtils]: 173: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:27,459 INFO L273 TraceCheckUtils]: 174: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,459 INFO L273 TraceCheckUtils]: 175: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:27,459 INFO L273 TraceCheckUtils]: 176: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:27,459 INFO L273 TraceCheckUtils]: 177: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:27,460 INFO L273 TraceCheckUtils]: 178: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,460 INFO L273 TraceCheckUtils]: 179: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:27,460 INFO L273 TraceCheckUtils]: 180: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:27,460 INFO L273 TraceCheckUtils]: 181: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:27,460 INFO L273 TraceCheckUtils]: 182: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 183: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 184: Hoare triple {19270#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 185: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 186: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 187: Hoare triple {19270#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {19270#false} is VALID [2018-11-14 17:01:27,461 INFO L273 TraceCheckUtils]: 188: Hoare triple {19270#false} assume ~found~0 == 1;~i~1 := ~pos~0; {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L273 TraceCheckUtils]: 189: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L273 TraceCheckUtils]: 190: Hoare triple {19270#false} assume !(~i~1 < ~SIZE~0 - 1); {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L273 TraceCheckUtils]: 191: Hoare triple {19270#false} assume ~found~0 == 1;~i~1 := 0; {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L273 TraceCheckUtils]: 192: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L273 TraceCheckUtils]: 193: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:27,462 INFO L256 TraceCheckUtils]: 194: Hoare triple {19270#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {19270#false} is VALID [2018-11-14 17:01:27,463 INFO L273 TraceCheckUtils]: 195: Hoare triple {19270#false} ~cond := #in~cond; {19270#false} is VALID [2018-11-14 17:01:27,463 INFO L273 TraceCheckUtils]: 196: Hoare triple {19270#false} assume ~cond == 0; {19270#false} is VALID [2018-11-14 17:01:27,463 INFO L273 TraceCheckUtils]: 197: Hoare triple {19270#false} assume !false; {19270#false} is VALID [2018-11-14 17:01:27,489 INFO L134 CoverageAnalysis]: Checked inductivity of 982 backedges. 0 proven. 494 refuted. 0 times theorem prover too weak. 488 trivial. 0 not checked. [2018-11-14 17:01:27,489 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-14 17:01:27,489 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-14 17:01:27,499 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-14 17:01:27,624 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2018-11-14 17:01:27,624 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-14 17:01:27,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-14 17:01:27,665 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-14 17:01:28,244 INFO L256 TraceCheckUtils]: 0: Hoare triple {19269#true} call ULTIMATE.init(); {19269#true} is VALID [2018-11-14 17:01:28,245 INFO L273 TraceCheckUtils]: 1: Hoare triple {19269#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 100000; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,245 INFO L273 TraceCheckUtils]: 2: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,246 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19269#true} #128#return; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,247 INFO L256 TraceCheckUtils]: 4: Hoare triple {19271#(<= 100000 ~SIZE~0)} call #t~ret13 := main(); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,248 INFO L273 TraceCheckUtils]: 5: Hoare triple {19271#(<= 100000 ~SIZE~0)} havoc ~i~1;havoc ~pos~0;~n~0 := 0;~found~0 := 0;call ~#set~0.base, ~#set~0.offset := #Ultimate.alloc(~SIZE~0 * 4);call ~#values~0.base, ~#values~0.offset := #Ultimate.alloc(~SIZE~0 * 4);havoc ~element~0;havoc ~v~0;~v~0 := 0; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,248 INFO L273 TraceCheckUtils]: 6: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume true; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,249 INFO L273 TraceCheckUtils]: 7: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,250 INFO L256 TraceCheckUtils]: 8: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,251 INFO L273 TraceCheckUtils]: 9: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,251 INFO L273 TraceCheckUtils]: 10: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,252 INFO L273 TraceCheckUtils]: 11: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !(~i~0 < ~size); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,252 INFO L273 TraceCheckUtils]: 12: Hoare triple {19271#(<= 100000 ~SIZE~0)} #res := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,253 INFO L273 TraceCheckUtils]: 13: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,254 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #132#return; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,254 INFO L273 TraceCheckUtils]: 15: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,255 INFO L273 TraceCheckUtils]: 16: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume #t~ret4 != 1;havoc #t~ret4;havoc #t~mem3;call #t~mem5 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,256 INFO L256 TraceCheckUtils]: 17: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} call #t~ret6 := insert(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem5); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,257 INFO L273 TraceCheckUtils]: 18: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;call write~int(~value, ~set.base, ~set.offset + ~size * 4, 4);#res := ~size + 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,257 INFO L273 TraceCheckUtils]: 19: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,258 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #134#return; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,259 INFO L273 TraceCheckUtils]: 21: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~n~0 := #t~ret6;havoc #t~ret6;havoc #t~mem5; {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,260 INFO L273 TraceCheckUtils]: 22: Hoare triple {19304#(and (<= main_~v~0 0) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,261 INFO L273 TraceCheckUtils]: 23: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume true; {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,261 INFO L273 TraceCheckUtils]: 24: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,262 INFO L256 TraceCheckUtils]: 25: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,263 INFO L273 TraceCheckUtils]: 26: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,263 INFO L273 TraceCheckUtils]: 27: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,264 INFO L273 TraceCheckUtils]: 28: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,264 INFO L273 TraceCheckUtils]: 29: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,265 INFO L273 TraceCheckUtils]: 30: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,266 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #132#return; {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,267 INFO L273 TraceCheckUtils]: 32: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,267 INFO L273 TraceCheckUtils]: 33: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,268 INFO L273 TraceCheckUtils]: 34: Hoare triple {19356#(and (<= main_~v~0 1) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,269 INFO L273 TraceCheckUtils]: 35: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume true; {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,269 INFO L273 TraceCheckUtils]: 36: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,271 INFO L256 TraceCheckUtils]: 37: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,271 INFO L273 TraceCheckUtils]: 38: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,272 INFO L273 TraceCheckUtils]: 39: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,272 INFO L273 TraceCheckUtils]: 40: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,273 INFO L273 TraceCheckUtils]: 41: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,273 INFO L273 TraceCheckUtils]: 42: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,274 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #132#return; {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,275 INFO L273 TraceCheckUtils]: 44: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,276 INFO L273 TraceCheckUtils]: 45: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,276 INFO L273 TraceCheckUtils]: 46: Hoare triple {19393#(and (<= main_~v~0 2) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,277 INFO L273 TraceCheckUtils]: 47: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume true; {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,278 INFO L273 TraceCheckUtils]: 48: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,279 INFO L256 TraceCheckUtils]: 49: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,279 INFO L273 TraceCheckUtils]: 50: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,280 INFO L273 TraceCheckUtils]: 51: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,280 INFO L273 TraceCheckUtils]: 52: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,281 INFO L273 TraceCheckUtils]: 53: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,281 INFO L273 TraceCheckUtils]: 54: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,282 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #132#return; {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,283 INFO L273 TraceCheckUtils]: 56: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,284 INFO L273 TraceCheckUtils]: 57: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,284 INFO L273 TraceCheckUtils]: 58: Hoare triple {19430#(and (<= main_~v~0 3) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,285 INFO L273 TraceCheckUtils]: 59: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume true; {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,286 INFO L273 TraceCheckUtils]: 60: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,287 INFO L256 TraceCheckUtils]: 61: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,287 INFO L273 TraceCheckUtils]: 62: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,288 INFO L273 TraceCheckUtils]: 63: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,288 INFO L273 TraceCheckUtils]: 64: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,289 INFO L273 TraceCheckUtils]: 65: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,289 INFO L273 TraceCheckUtils]: 66: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,291 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #132#return; {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,291 INFO L273 TraceCheckUtils]: 68: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,292 INFO L273 TraceCheckUtils]: 69: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,293 INFO L273 TraceCheckUtils]: 70: Hoare triple {19467#(and (<= main_~v~0 4) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,293 INFO L273 TraceCheckUtils]: 71: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume true; {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,294 INFO L273 TraceCheckUtils]: 72: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,295 INFO L256 TraceCheckUtils]: 73: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,296 INFO L273 TraceCheckUtils]: 74: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,296 INFO L273 TraceCheckUtils]: 75: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,297 INFO L273 TraceCheckUtils]: 76: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,297 INFO L273 TraceCheckUtils]: 77: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,298 INFO L273 TraceCheckUtils]: 78: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,299 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #132#return; {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,299 INFO L273 TraceCheckUtils]: 80: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,300 INFO L273 TraceCheckUtils]: 81: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,301 INFO L273 TraceCheckUtils]: 82: Hoare triple {19504#(and (<= main_~v~0 5) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,301 INFO L273 TraceCheckUtils]: 83: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume true; {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,302 INFO L273 TraceCheckUtils]: 84: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,303 INFO L256 TraceCheckUtils]: 85: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,304 INFO L273 TraceCheckUtils]: 86: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,304 INFO L273 TraceCheckUtils]: 87: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,305 INFO L273 TraceCheckUtils]: 88: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,305 INFO L273 TraceCheckUtils]: 89: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,306 INFO L273 TraceCheckUtils]: 90: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,307 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #132#return; {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,308 INFO L273 TraceCheckUtils]: 92: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,308 INFO L273 TraceCheckUtils]: 93: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,309 INFO L273 TraceCheckUtils]: 94: Hoare triple {19541#(and (<= main_~v~0 6) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,310 INFO L273 TraceCheckUtils]: 95: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume true; {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,310 INFO L273 TraceCheckUtils]: 96: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,312 INFO L256 TraceCheckUtils]: 97: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,312 INFO L273 TraceCheckUtils]: 98: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,313 INFO L273 TraceCheckUtils]: 99: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,313 INFO L273 TraceCheckUtils]: 100: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,314 INFO L273 TraceCheckUtils]: 101: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,314 INFO L273 TraceCheckUtils]: 102: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,315 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} #132#return; {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,316 INFO L273 TraceCheckUtils]: 104: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,316 INFO L273 TraceCheckUtils]: 105: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,317 INFO L273 TraceCheckUtils]: 106: Hoare triple {19578#(and (<= main_~v~0 7) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,318 INFO L273 TraceCheckUtils]: 107: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume true; {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,319 INFO L273 TraceCheckUtils]: 108: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,320 INFO L256 TraceCheckUtils]: 109: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,320 INFO L273 TraceCheckUtils]: 110: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,321 INFO L273 TraceCheckUtils]: 111: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,321 INFO L273 TraceCheckUtils]: 112: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,322 INFO L273 TraceCheckUtils]: 113: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,322 INFO L273 TraceCheckUtils]: 114: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,323 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} #132#return; {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,324 INFO L273 TraceCheckUtils]: 116: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,325 INFO L273 TraceCheckUtils]: 117: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,326 INFO L273 TraceCheckUtils]: 118: Hoare triple {19615#(and (<= main_~v~0 8) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,326 INFO L273 TraceCheckUtils]: 119: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume true; {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,327 INFO L273 TraceCheckUtils]: 120: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,328 INFO L256 TraceCheckUtils]: 121: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,329 INFO L273 TraceCheckUtils]: 122: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,329 INFO L273 TraceCheckUtils]: 123: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,330 INFO L273 TraceCheckUtils]: 124: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,330 INFO L273 TraceCheckUtils]: 125: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,331 INFO L273 TraceCheckUtils]: 126: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,332 INFO L268 TraceCheckUtils]: 127: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} #132#return; {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,332 INFO L273 TraceCheckUtils]: 128: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,333 INFO L273 TraceCheckUtils]: 129: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,334 INFO L273 TraceCheckUtils]: 130: Hoare triple {19652#(and (<= main_~v~0 9) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,334 INFO L273 TraceCheckUtils]: 131: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume true; {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,335 INFO L273 TraceCheckUtils]: 132: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,336 INFO L256 TraceCheckUtils]: 133: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,337 INFO L273 TraceCheckUtils]: 134: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,337 INFO L273 TraceCheckUtils]: 135: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,338 INFO L273 TraceCheckUtils]: 136: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,338 INFO L273 TraceCheckUtils]: 137: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,339 INFO L273 TraceCheckUtils]: 138: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,340 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} #132#return; {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,341 INFO L273 TraceCheckUtils]: 140: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,341 INFO L273 TraceCheckUtils]: 141: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,342 INFO L273 TraceCheckUtils]: 142: Hoare triple {19689#(and (<= main_~v~0 10) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,343 INFO L273 TraceCheckUtils]: 143: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} assume true; {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,343 INFO L273 TraceCheckUtils]: 144: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,345 INFO L256 TraceCheckUtils]: 145: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,345 INFO L273 TraceCheckUtils]: 146: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,346 INFO L273 TraceCheckUtils]: 147: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,346 INFO L273 TraceCheckUtils]: 148: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,347 INFO L273 TraceCheckUtils]: 149: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,347 INFO L273 TraceCheckUtils]: 150: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,348 INFO L268 TraceCheckUtils]: 151: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} #132#return; {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,349 INFO L273 TraceCheckUtils]: 152: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,349 INFO L273 TraceCheckUtils]: 153: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,350 INFO L273 TraceCheckUtils]: 154: Hoare triple {19726#(and (<= main_~v~0 11) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,351 INFO L273 TraceCheckUtils]: 155: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} assume true; {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,352 INFO L273 TraceCheckUtils]: 156: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} assume !!(~v~0 < ~SIZE~0);call #t~mem3 := read~int(~#values~0.base, ~#values~0.offset + ~v~0 * 4, 4); {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,353 INFO L256 TraceCheckUtils]: 157: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} call #t~ret4 := elem_exists(~#set~0.base, ~#set~0.offset, ~n~0, #t~mem3); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,353 INFO L273 TraceCheckUtils]: 158: Hoare triple {19271#(<= 100000 ~SIZE~0)} ~set.base, ~set.offset := #in~set.base, #in~set.offset;~size := #in~size;~value := #in~value;havoc ~i~0;~i~0 := 0; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,354 INFO L273 TraceCheckUtils]: 159: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,354 INFO L273 TraceCheckUtils]: 160: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume !!(~i~0 < ~size);call #t~mem1 := read~int(~set.base, ~set.offset + ~i~0 * 4, 4); {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,355 INFO L273 TraceCheckUtils]: 161: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume #t~mem1 == ~value;havoc #t~mem1;#res := 1; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,355 INFO L273 TraceCheckUtils]: 162: Hoare triple {19271#(<= 100000 ~SIZE~0)} assume true; {19271#(<= 100000 ~SIZE~0)} is VALID [2018-11-14 17:01:28,356 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {19271#(<= 100000 ~SIZE~0)} {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} #132#return; {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,357 INFO L273 TraceCheckUtils]: 164: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647; {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,358 INFO L273 TraceCheckUtils]: 165: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} assume !(#t~ret4 != 1);havoc #t~ret4;havoc #t~mem3; {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,359 INFO L273 TraceCheckUtils]: 166: Hoare triple {19763#(and (<= main_~v~0 12) (<= 100000 ~SIZE~0))} #t~post2 := ~v~0;~v~0 := #t~post2 + 1;havoc #t~post2; {19800#(and (<= main_~v~0 13) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,359 INFO L273 TraceCheckUtils]: 167: Hoare triple {19800#(and (<= main_~v~0 13) (<= 100000 ~SIZE~0))} assume true; {19800#(and (<= main_~v~0 13) (<= 100000 ~SIZE~0))} is VALID [2018-11-14 17:01:28,360 INFO L273 TraceCheckUtils]: 168: Hoare triple {19800#(and (<= main_~v~0 13) (<= 100000 ~SIZE~0))} assume !(~v~0 < ~SIZE~0); {19270#false} is VALID [2018-11-14 17:01:28,360 INFO L273 TraceCheckUtils]: 169: Hoare triple {19270#false} ~i~1 := 0; {19270#false} is VALID [2018-11-14 17:01:28,360 INFO L273 TraceCheckUtils]: 170: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,360 INFO L273 TraceCheckUtils]: 171: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:28,361 INFO L273 TraceCheckUtils]: 172: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:28,361 INFO L273 TraceCheckUtils]: 173: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:28,361 INFO L273 TraceCheckUtils]: 174: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,361 INFO L273 TraceCheckUtils]: 175: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:28,361 INFO L273 TraceCheckUtils]: 176: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:28,362 INFO L273 TraceCheckUtils]: 177: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:28,362 INFO L273 TraceCheckUtils]: 178: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,362 INFO L273 TraceCheckUtils]: 179: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:28,362 INFO L273 TraceCheckUtils]: 180: Hoare triple {19270#false} assume !(#t~mem8 == ~element~0);havoc #t~mem8; {19270#false} is VALID [2018-11-14 17:01:28,362 INFO L273 TraceCheckUtils]: 181: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 182: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 183: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 && ~found~0 != 1);call #t~mem8 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 184: Hoare triple {19270#false} assume #t~mem8 == ~element~0;havoc #t~mem8;~found~0 := 1;~pos~0 := ~i~1; {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 185: Hoare triple {19270#false} #t~post7 := ~i~1;~i~1 := #t~post7 + 1;havoc #t~post7; {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 186: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,363 INFO L273 TraceCheckUtils]: 187: Hoare triple {19270#false} assume !(~i~1 < ~SIZE~0 && ~found~0 != 1); {19270#false} is VALID [2018-11-14 17:01:28,364 INFO L273 TraceCheckUtils]: 188: Hoare triple {19270#false} assume ~found~0 == 1;~i~1 := ~pos~0; {19270#false} is VALID [2018-11-14 17:01:28,364 INFO L273 TraceCheckUtils]: 189: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,364 INFO L273 TraceCheckUtils]: 190: Hoare triple {19270#false} assume !(~i~1 < ~SIZE~0 - 1); {19270#false} is VALID [2018-11-14 17:01:28,364 INFO L273 TraceCheckUtils]: 191: Hoare triple {19270#false} assume ~found~0 == 1;~i~1 := 0; {19270#false} is VALID [2018-11-14 17:01:28,364 INFO L273 TraceCheckUtils]: 192: Hoare triple {19270#false} assume true; {19270#false} is VALID [2018-11-14 17:01:28,365 INFO L273 TraceCheckUtils]: 193: Hoare triple {19270#false} assume !!(~i~1 < ~SIZE~0 - 1);call #t~mem12 := read~int(~#set~0.base, ~#set~0.offset + ~i~1 * 4, 4); {19270#false} is VALID [2018-11-14 17:01:28,365 INFO L256 TraceCheckUtils]: 194: Hoare triple {19270#false} call __VERIFIER_assert((if #t~mem12 != ~element~0 then 1 else 0)); {19270#false} is VALID [2018-11-14 17:01:28,365 INFO L273 TraceCheckUtils]: 195: Hoare triple {19270#false} ~cond := #in~cond; {19270#false} is VALID [2018-11-14 17:01:28,365 INFO L273 TraceCheckUtils]: 196: Hoare triple {19270#false} assume ~cond == 0; {19270#false} is VALID [2018-11-14 17:01:28,366 INFO L273 TraceCheckUtils]: 197: Hoare triple {19270#false} assume !false; {19270#false} is VALID [2018-11-14 17:01:28,402 INFO L134 CoverageAnalysis]: Checked inductivity of 982 backedges. 0 proven. 494 refuted. 0 times theorem prover too weak. 488 trivial. 0 not checked. [2018-11-14 17:01:28,423 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-14 17:01:28,423 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 31 [2018-11-14 17:01:28,424 INFO L78 Accepts]: Start accepts. Automaton has 31 states. Word has length 198 [2018-11-14 17:01:28,425 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-14 17:01:28,425 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states. [2018-11-14 17:01:28,686 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-14 17:01:28,686 INFO L459 AbstractCegarLoop]: Interpolant automaton has 31 states [2018-11-14 17:01:28,687 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2018-11-14 17:01:28,687 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=374, Invalid=556, Unknown=0, NotChecked=0, Total=930 [2018-11-14 17:01:28,687 INFO L87 Difference]: Start difference. First operand 215 states and 282 transitions. Second operand 31 states.