java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf -i ../../../trunk/examples/svcomp/list-simple/dll2c_update_all_reverse_true-unreach-call_true-valid-memsafety.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 11:12:04,000 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 11:12:04,002 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 11:12:04,014 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 11:12:04,015 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 11:12:04,016 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 11:12:04,017 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 11:12:04,019 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 11:12:04,021 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 11:12:04,022 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 11:12:04,023 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 11:12:04,023 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 11:12:04,024 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 11:12:04,025 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 11:12:04,026 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 11:12:04,027 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 11:12:04,027 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 11:12:04,029 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 11:12:04,031 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 11:12:04,033 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 11:12:04,034 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 11:12:04,036 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 11:12:04,038 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 11:12:04,038 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 11:12:04,039 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 11:12:04,040 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 11:12:04,041 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 11:12:04,042 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 11:12:04,042 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 11:12:04,044 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 11:12:04,044 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 11:12:04,045 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 11:12:04,045 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 11:12:04,045 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 11:12:04,046 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 11:12:04,047 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 11:12:04,048 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 11:12:04,063 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 11:12:04,063 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 11:12:04,064 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 11:12:04,064 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 11:12:04,065 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 11:12:04,065 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 11:12:04,065 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 11:12:04,066 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 11:12:04,066 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 11:12:04,066 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 11:12:04,066 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 11:12:04,067 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 11:12:04,067 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 11:12:04,067 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 11:12:04,067 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 11:12:04,067 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 11:12:04,068 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 11:12:04,068 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 11:12:04,068 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 11:12:04,068 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 11:12:04,069 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 11:12:04,069 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 11:12:04,069 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 11:12:04,069 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 11:12:04,069 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 11:12:04,070 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 11:12:04,070 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 11:12:04,070 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 11:12:04,070 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 11:12:04,070 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 11:12:04,071 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 11:12:04,071 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 11:12:04,071 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 11:12:04,118 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 11:12:04,131 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 11:12:04,134 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 11:12:04,136 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 11:12:04,136 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 11:12:04,137 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/list-simple/dll2c_update_all_reverse_true-unreach-call_true-valid-memsafety.i [2018-11-23 11:12:04,201 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/959343c15/cb6cd45b23254e1bbd180f6f9676aaa8/FLAG9cbbc68f0 [2018-11-23 11:12:04,727 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 11:12:04,728 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/list-simple/dll2c_update_all_reverse_true-unreach-call_true-valid-memsafety.i [2018-11-23 11:12:04,743 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/959343c15/cb6cd45b23254e1bbd180f6f9676aaa8/FLAG9cbbc68f0 [2018-11-23 11:12:05,025 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/959343c15/cb6cd45b23254e1bbd180f6f9676aaa8 [2018-11-23 11:12:05,037 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 11:12:05,038 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 11:12:05,039 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 11:12:05,039 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 11:12:05,043 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 11:12:05,045 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,048 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2d5a07bb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05, skipping insertion in model container [2018-11-23 11:12:05,048 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,059 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 11:12:05,128 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 11:12:05,582 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:12:05,599 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 11:12:05,776 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:12:05,833 INFO L195 MainTranslator]: Completed translation [2018-11-23 11:12:05,833 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05 WrapperNode [2018-11-23 11:12:05,833 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 11:12:05,834 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 11:12:05,835 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 11:12:05,835 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 11:12:05,845 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,876 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,890 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 11:12:05,891 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 11:12:05,891 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 11:12:05,891 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 11:12:05,903 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,904 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,915 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,916 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,961 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,975 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,980 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... [2018-11-23 11:12:05,993 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 11:12:05,994 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 11:12:05,994 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 11:12:05,994 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 11:12:05,995 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 11:12:06,046 INFO L130 BoogieDeclarations]: Found specification of procedure dll_circular_update_at [2018-11-23 11:12:06,047 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_circular_update_at [2018-11-23 11:12:06,047 INFO L130 BoogieDeclarations]: Found specification of procedure dll_circular_create [2018-11-23 11:12:06,047 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_circular_create [2018-11-23 11:12:06,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 11:12:06,047 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2018-11-23 11:12:06,048 INFO L130 BoogieDeclarations]: Found specification of procedure dll_circular_get_data_at [2018-11-23 11:12:06,048 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_circular_get_data_at [2018-11-23 11:12:06,048 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2018-11-23 11:12:06,048 INFO L138 BoogieDeclarations]: Found implementation of procedure exit [2018-11-23 11:12:06,048 INFO L130 BoogieDeclarations]: Found specification of procedure node_create [2018-11-23 11:12:06,049 INFO L138 BoogieDeclarations]: Found implementation of procedure node_create [2018-11-23 11:12:06,049 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 11:12:06,049 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 11:12:06,049 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 11:12:06,049 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 11:12:06,049 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2018-11-23 11:12:06,050 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2018-11-23 11:12:06,050 INFO L130 BoogieDeclarations]: Found specification of procedure dll_circular_destroy [2018-11-23 11:12:06,050 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_circular_destroy [2018-11-23 11:12:06,050 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 11:12:06,050 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2018-11-23 11:12:06,050 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 11:12:06,051 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 11:12:07,427 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 11:12:07,427 INFO L280 CfgBuilder]: Removed 6 assue(true) statements. [2018-11-23 11:12:07,428 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:12:07 BoogieIcfgContainer [2018-11-23 11:12:07,428 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 11:12:07,429 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 11:12:07,429 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 11:12:07,432 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 11:12:07,433 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 11:12:05" (1/3) ... [2018-11-23 11:12:07,433 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f714649 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:12:07, skipping insertion in model container [2018-11-23 11:12:07,434 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:12:05" (2/3) ... [2018-11-23 11:12:07,434 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f714649 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:12:07, skipping insertion in model container [2018-11-23 11:12:07,434 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:12:07" (3/3) ... [2018-11-23 11:12:07,436 INFO L112 eAbstractionObserver]: Analyzing ICFG dll2c_update_all_reverse_true-unreach-call_true-valid-memsafety.i [2018-11-23 11:12:07,445 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 11:12:07,454 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 11:12:07,471 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 11:12:07,499 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 11:12:07,499 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 11:12:07,499 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 11:12:07,500 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 11:12:07,500 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 11:12:07,500 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 11:12:07,500 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 11:12:07,500 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 11:12:07,500 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 11:12:07,518 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states. [2018-11-23 11:12:07,526 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2018-11-23 11:12:07,526 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:07,527 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:12:07,529 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:07,535 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:07,535 INFO L82 PathProgramCache]: Analyzing trace with hash -1202603355, now seen corresponding path program 1 times [2018-11-23 11:12:07,541 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:07,541 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:07,560 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:12:07,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:07,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:07,725 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:08,091 INFO L256 TraceCheckUtils]: 0: Hoare triple {62#true} call ULTIMATE.init(); {62#true} is VALID [2018-11-23 11:12:08,094 INFO L273 TraceCheckUtils]: 1: Hoare triple {62#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {62#true} is VALID [2018-11-23 11:12:08,095 INFO L273 TraceCheckUtils]: 2: Hoare triple {62#true} assume true; {62#true} is VALID [2018-11-23 11:12:08,096 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {62#true} {62#true} #152#return; {62#true} is VALID [2018-11-23 11:12:08,096 INFO L256 TraceCheckUtils]: 4: Hoare triple {62#true} call #t~ret17 := main(); {62#true} is VALID [2018-11-23 11:12:08,098 INFO L273 TraceCheckUtils]: 5: Hoare triple {62#true} ~len~0 := 2bv32;~data~0 := 1bv32; {82#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:08,099 INFO L256 TraceCheckUtils]: 6: Hoare triple {82#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {62#true} is VALID [2018-11-23 11:12:08,112 INFO L273 TraceCheckUtils]: 7: Hoare triple {62#true} ~len := #in~len;~data := #in~data; {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} is VALID [2018-11-23 11:12:08,112 INFO L256 TraceCheckUtils]: 8: Hoare triple {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} call #t~ret3.base, #t~ret3.offset := node_create(~data); {62#true} is VALID [2018-11-23 11:12:08,113 INFO L273 TraceCheckUtils]: 9: Hoare triple {62#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {62#true} is VALID [2018-11-23 11:12:08,113 INFO L273 TraceCheckUtils]: 10: Hoare triple {62#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {62#true} is VALID [2018-11-23 11:12:08,114 INFO L273 TraceCheckUtils]: 11: Hoare triple {62#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {62#true} is VALID [2018-11-23 11:12:08,114 INFO L273 TraceCheckUtils]: 12: Hoare triple {62#true} assume true; {62#true} is VALID [2018-11-23 11:12:08,128 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {62#true} {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} #148#return; {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} is VALID [2018-11-23 11:12:08,134 INFO L273 TraceCheckUtils]: 14: Hoare triple {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} is VALID [2018-11-23 11:12:08,135 INFO L273 TraceCheckUtils]: 15: Hoare triple {89#(= |dll_circular_create_#in~len| dll_circular_create_~len)} assume !~bvsgt32(~len, 1bv32); {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} is VALID [2018-11-23 11:12:08,139 INFO L273 TraceCheckUtils]: 16: Hoare triple {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} is VALID [2018-11-23 11:12:08,141 INFO L273 TraceCheckUtils]: 17: Hoare triple {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} assume true; {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} is VALID [2018-11-23 11:12:08,143 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {114#(not (bvsgt |dll_circular_create_#in~len| (_ bv1 32)))} {82#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {63#false} is VALID [2018-11-23 11:12:08,144 INFO L273 TraceCheckUtils]: 19: Hoare triple {63#false} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {63#false} is VALID [2018-11-23 11:12:08,144 INFO L273 TraceCheckUtils]: 20: Hoare triple {63#false} assume !~bvsgt32(~i~0, 4294967295bv32); {63#false} is VALID [2018-11-23 11:12:08,145 INFO L273 TraceCheckUtils]: 21: Hoare triple {63#false} ~i~0 := ~bvsub32(~len~0, 1bv32); {63#false} is VALID [2018-11-23 11:12:08,145 INFO L273 TraceCheckUtils]: 22: Hoare triple {63#false} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {63#false} is VALID [2018-11-23 11:12:08,146 INFO L256 TraceCheckUtils]: 23: Hoare triple {63#false} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {63#false} is VALID [2018-11-23 11:12:08,146 INFO L273 TraceCheckUtils]: 24: Hoare triple {63#false} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {63#false} is VALID [2018-11-23 11:12:08,147 INFO L273 TraceCheckUtils]: 25: Hoare triple {63#false} assume !~bvsgt32(~index, 0bv32); {63#false} is VALID [2018-11-23 11:12:08,147 INFO L273 TraceCheckUtils]: 26: Hoare triple {63#false} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {63#false} is VALID [2018-11-23 11:12:08,147 INFO L273 TraceCheckUtils]: 27: Hoare triple {63#false} assume true; {63#false} is VALID [2018-11-23 11:12:08,147 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {63#false} {63#false} #144#return; {63#false} is VALID [2018-11-23 11:12:08,148 INFO L273 TraceCheckUtils]: 29: Hoare triple {63#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {63#false} is VALID [2018-11-23 11:12:08,148 INFO L273 TraceCheckUtils]: 30: Hoare triple {63#false} assume !false; {63#false} is VALID [2018-11-23 11:12:08,154 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-23 11:12:08,155 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 11:12:08,161 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:12:08,162 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 11:12:08,167 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 31 [2018-11-23 11:12:08,170 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:12:08,173 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 11:12:08,474 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:08,474 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 11:12:08,485 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 11:12:08,485 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 11:12:08,488 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 5 states. [2018-11-23 11:12:09,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:09,832 INFO L93 Difference]: Finished difference Result 103 states and 137 transitions. [2018-11-23 11:12:09,833 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 11:12:09,833 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 31 [2018-11-23 11:12:09,833 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:12:09,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 11:12:09,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 137 transitions. [2018-11-23 11:12:09,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 11:12:09,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 137 transitions. [2018-11-23 11:12:09,860 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 137 transitions. [2018-11-23 11:12:10,239 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:10,255 INFO L225 Difference]: With dead ends: 103 [2018-11-23 11:12:10,255 INFO L226 Difference]: Without dead ends: 49 [2018-11-23 11:12:10,259 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:12:10,277 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2018-11-23 11:12:10,328 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 45. [2018-11-23 11:12:10,328 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:12:10,329 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand 45 states. [2018-11-23 11:12:10,330 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 45 states. [2018-11-23 11:12:10,330 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 45 states. [2018-11-23 11:12:10,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:10,338 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2018-11-23 11:12:10,338 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2018-11-23 11:12:10,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:10,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:10,340 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 49 states. [2018-11-23 11:12:10,340 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 49 states. [2018-11-23 11:12:10,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:10,347 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2018-11-23 11:12:10,347 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2018-11-23 11:12:10,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:10,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:10,349 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:12:10,349 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:12:10,349 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-23 11:12:10,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 51 transitions. [2018-11-23 11:12:10,356 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 51 transitions. Word has length 31 [2018-11-23 11:12:10,356 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:12:10,356 INFO L480 AbstractCegarLoop]: Abstraction has 45 states and 51 transitions. [2018-11-23 11:12:10,356 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 11:12:10,357 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2018-11-23 11:12:10,358 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2018-11-23 11:12:10,359 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:10,359 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 11:12:10,359 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:10,360 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:10,360 INFO L82 PathProgramCache]: Analyzing trace with hash -745395055, now seen corresponding path program 1 times [2018-11-23 11:12:10,361 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:10,361 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:10,384 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:12:10,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:10,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:10,511 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:10,590 INFO L256 TraceCheckUtils]: 0: Hoare triple {466#true} call ULTIMATE.init(); {466#true} is VALID [2018-11-23 11:12:10,591 INFO L273 TraceCheckUtils]: 1: Hoare triple {466#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {466#true} is VALID [2018-11-23 11:12:10,591 INFO L273 TraceCheckUtils]: 2: Hoare triple {466#true} assume true; {466#true} is VALID [2018-11-23 11:12:10,592 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {466#true} {466#true} #152#return; {466#true} is VALID [2018-11-23 11:12:10,592 INFO L256 TraceCheckUtils]: 4: Hoare triple {466#true} call #t~ret17 := main(); {466#true} is VALID [2018-11-23 11:12:10,593 INFO L273 TraceCheckUtils]: 5: Hoare triple {466#true} ~len~0 := 2bv32;~data~0 := 1bv32; {486#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:10,593 INFO L256 TraceCheckUtils]: 6: Hoare triple {486#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {466#true} is VALID [2018-11-23 11:12:10,594 INFO L273 TraceCheckUtils]: 7: Hoare triple {466#true} ~len := #in~len;~data := #in~data; {466#true} is VALID [2018-11-23 11:12:10,594 INFO L256 TraceCheckUtils]: 8: Hoare triple {466#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {466#true} is VALID [2018-11-23 11:12:10,594 INFO L273 TraceCheckUtils]: 9: Hoare triple {466#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {466#true} is VALID [2018-11-23 11:12:10,595 INFO L273 TraceCheckUtils]: 10: Hoare triple {466#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {466#true} is VALID [2018-11-23 11:12:10,595 INFO L273 TraceCheckUtils]: 11: Hoare triple {466#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {466#true} is VALID [2018-11-23 11:12:10,595 INFO L273 TraceCheckUtils]: 12: Hoare triple {466#true} assume true; {466#true} is VALID [2018-11-23 11:12:10,595 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {466#true} {466#true} #148#return; {466#true} is VALID [2018-11-23 11:12:10,596 INFO L273 TraceCheckUtils]: 14: Hoare triple {466#true} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {466#true} is VALID [2018-11-23 11:12:10,596 INFO L273 TraceCheckUtils]: 15: Hoare triple {466#true} assume !!~bvsgt32(~len, 1bv32); {466#true} is VALID [2018-11-23 11:12:10,596 INFO L256 TraceCheckUtils]: 16: Hoare triple {466#true} call #t~ret4.base, #t~ret4.offset := node_create(~data); {466#true} is VALID [2018-11-23 11:12:10,596 INFO L273 TraceCheckUtils]: 17: Hoare triple {466#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {466#true} is VALID [2018-11-23 11:12:10,597 INFO L273 TraceCheckUtils]: 18: Hoare triple {466#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {466#true} is VALID [2018-11-23 11:12:10,597 INFO L273 TraceCheckUtils]: 19: Hoare triple {466#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {466#true} is VALID [2018-11-23 11:12:10,597 INFO L273 TraceCheckUtils]: 20: Hoare triple {466#true} assume true; {466#true} is VALID [2018-11-23 11:12:10,598 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {466#true} {466#true} #150#return; {466#true} is VALID [2018-11-23 11:12:10,598 INFO L273 TraceCheckUtils]: 22: Hoare triple {466#true} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {466#true} is VALID [2018-11-23 11:12:10,599 INFO L273 TraceCheckUtils]: 23: Hoare triple {466#true} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {466#true} is VALID [2018-11-23 11:12:10,599 INFO L273 TraceCheckUtils]: 24: Hoare triple {466#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {466#true} is VALID [2018-11-23 11:12:10,599 INFO L273 TraceCheckUtils]: 25: Hoare triple {466#true} assume !~bvsgt32(~len, 1bv32); {466#true} is VALID [2018-11-23 11:12:10,600 INFO L273 TraceCheckUtils]: 26: Hoare triple {466#true} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {466#true} is VALID [2018-11-23 11:12:10,600 INFO L273 TraceCheckUtils]: 27: Hoare triple {466#true} assume true; {466#true} is VALID [2018-11-23 11:12:10,626 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {466#true} {486#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {486#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:10,633 INFO L273 TraceCheckUtils]: 29: Hoare triple {486#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {559#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:10,637 INFO L273 TraceCheckUtils]: 30: Hoare triple {559#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !~bvsgt32(~i~0, 4294967295bv32); {467#false} is VALID [2018-11-23 11:12:10,637 INFO L273 TraceCheckUtils]: 31: Hoare triple {467#false} ~i~0 := ~bvsub32(~len~0, 1bv32); {467#false} is VALID [2018-11-23 11:12:10,637 INFO L273 TraceCheckUtils]: 32: Hoare triple {467#false} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {467#false} is VALID [2018-11-23 11:12:10,638 INFO L256 TraceCheckUtils]: 33: Hoare triple {467#false} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {467#false} is VALID [2018-11-23 11:12:10,638 INFO L273 TraceCheckUtils]: 34: Hoare triple {467#false} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {467#false} is VALID [2018-11-23 11:12:10,638 INFO L273 TraceCheckUtils]: 35: Hoare triple {467#false} assume !~bvsgt32(~index, 0bv32); {467#false} is VALID [2018-11-23 11:12:10,639 INFO L273 TraceCheckUtils]: 36: Hoare triple {467#false} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {467#false} is VALID [2018-11-23 11:12:10,639 INFO L273 TraceCheckUtils]: 37: Hoare triple {467#false} assume true; {467#false} is VALID [2018-11-23 11:12:10,639 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {467#false} {467#false} #144#return; {467#false} is VALID [2018-11-23 11:12:10,640 INFO L273 TraceCheckUtils]: 39: Hoare triple {467#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {467#false} is VALID [2018-11-23 11:12:10,640 INFO L273 TraceCheckUtils]: 40: Hoare triple {467#false} assume !false; {467#false} is VALID [2018-11-23 11:12:10,643 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 11:12:10,643 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 11:12:10,645 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:12:10,645 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 11:12:10,647 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 41 [2018-11-23 11:12:10,649 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:12:10,649 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 11:12:10,743 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-23 11:12:10,744 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 11:12:10,744 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 11:12:10,744 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 11:12:10,745 INFO L87 Difference]: Start difference. First operand 45 states and 51 transitions. Second operand 4 states. [2018-11-23 11:12:11,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:11,579 INFO L93 Difference]: Finished difference Result 66 states and 76 transitions. [2018-11-23 11:12:11,579 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 11:12:11,579 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 41 [2018-11-23 11:12:11,579 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:12:11,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 11:12:11,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 75 transitions. [2018-11-23 11:12:11,585 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 11:12:11,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 75 transitions. [2018-11-23 11:12:11,590 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 75 transitions. [2018-11-23 11:12:11,745 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:11,750 INFO L225 Difference]: With dead ends: 66 [2018-11-23 11:12:11,750 INFO L226 Difference]: Without dead ends: 54 [2018-11-23 11:12:11,751 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 38 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2018-11-23 11:12:11,752 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-11-23 11:12:11,813 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 46. [2018-11-23 11:12:11,813 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:12:11,814 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand 46 states. [2018-11-23 11:12:11,814 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 46 states. [2018-11-23 11:12:11,814 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 46 states. [2018-11-23 11:12:11,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:11,819 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2018-11-23 11:12:11,819 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2018-11-23 11:12:11,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:11,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:11,821 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 54 states. [2018-11-23 11:12:11,821 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 54 states. [2018-11-23 11:12:11,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:11,826 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2018-11-23 11:12:11,827 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2018-11-23 11:12:11,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:11,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:11,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:12:11,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:12:11,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 46 states. [2018-11-23 11:12:11,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 52 transitions. [2018-11-23 11:12:11,832 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 52 transitions. Word has length 41 [2018-11-23 11:12:11,832 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:12:11,832 INFO L480 AbstractCegarLoop]: Abstraction has 46 states and 52 transitions. [2018-11-23 11:12:11,833 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 11:12:11,833 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 52 transitions. [2018-11-23 11:12:11,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2018-11-23 11:12:11,835 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:11,835 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:12:11,835 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:11,836 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:11,836 INFO L82 PathProgramCache]: Analyzing trace with hash -558481625, now seen corresponding path program 1 times [2018-11-23 11:12:11,836 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:11,837 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:11,856 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:12:11,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:11,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:11,999 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:12,227 INFO L256 TraceCheckUtils]: 0: Hoare triple {865#true} call ULTIMATE.init(); {865#true} is VALID [2018-11-23 11:12:12,227 INFO L273 TraceCheckUtils]: 1: Hoare triple {865#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {865#true} is VALID [2018-11-23 11:12:12,228 INFO L273 TraceCheckUtils]: 2: Hoare triple {865#true} assume true; {865#true} is VALID [2018-11-23 11:12:12,228 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {865#true} {865#true} #152#return; {865#true} is VALID [2018-11-23 11:12:12,228 INFO L256 TraceCheckUtils]: 4: Hoare triple {865#true} call #t~ret17 := main(); {865#true} is VALID [2018-11-23 11:12:12,236 INFO L273 TraceCheckUtils]: 5: Hoare triple {865#true} ~len~0 := 2bv32;~data~0 := 1bv32; {885#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:12,236 INFO L256 TraceCheckUtils]: 6: Hoare triple {885#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {865#true} is VALID [2018-11-23 11:12:12,236 INFO L273 TraceCheckUtils]: 7: Hoare triple {865#true} ~len := #in~len;~data := #in~data; {865#true} is VALID [2018-11-23 11:12:12,237 INFO L256 TraceCheckUtils]: 8: Hoare triple {865#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {865#true} is VALID [2018-11-23 11:12:12,237 INFO L273 TraceCheckUtils]: 9: Hoare triple {865#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {865#true} is VALID [2018-11-23 11:12:12,237 INFO L273 TraceCheckUtils]: 10: Hoare triple {865#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {865#true} is VALID [2018-11-23 11:12:12,238 INFO L273 TraceCheckUtils]: 11: Hoare triple {865#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {865#true} is VALID [2018-11-23 11:12:12,238 INFO L273 TraceCheckUtils]: 12: Hoare triple {865#true} assume true; {865#true} is VALID [2018-11-23 11:12:12,238 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {865#true} {865#true} #148#return; {865#true} is VALID [2018-11-23 11:12:12,239 INFO L273 TraceCheckUtils]: 14: Hoare triple {865#true} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {865#true} is VALID [2018-11-23 11:12:12,239 INFO L273 TraceCheckUtils]: 15: Hoare triple {865#true} assume !!~bvsgt32(~len, 1bv32); {865#true} is VALID [2018-11-23 11:12:12,239 INFO L256 TraceCheckUtils]: 16: Hoare triple {865#true} call #t~ret4.base, #t~ret4.offset := node_create(~data); {865#true} is VALID [2018-11-23 11:12:12,240 INFO L273 TraceCheckUtils]: 17: Hoare triple {865#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {865#true} is VALID [2018-11-23 11:12:12,240 INFO L273 TraceCheckUtils]: 18: Hoare triple {865#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {865#true} is VALID [2018-11-23 11:12:12,241 INFO L273 TraceCheckUtils]: 19: Hoare triple {865#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {865#true} is VALID [2018-11-23 11:12:12,241 INFO L273 TraceCheckUtils]: 20: Hoare triple {865#true} assume true; {865#true} is VALID [2018-11-23 11:12:12,241 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {865#true} {865#true} #150#return; {865#true} is VALID [2018-11-23 11:12:12,242 INFO L273 TraceCheckUtils]: 22: Hoare triple {865#true} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {865#true} is VALID [2018-11-23 11:12:12,242 INFO L273 TraceCheckUtils]: 23: Hoare triple {865#true} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {865#true} is VALID [2018-11-23 11:12:12,242 INFO L273 TraceCheckUtils]: 24: Hoare triple {865#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {865#true} is VALID [2018-11-23 11:12:12,243 INFO L273 TraceCheckUtils]: 25: Hoare triple {865#true} assume !~bvsgt32(~len, 1bv32); {865#true} is VALID [2018-11-23 11:12:12,243 INFO L273 TraceCheckUtils]: 26: Hoare triple {865#true} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {865#true} is VALID [2018-11-23 11:12:12,243 INFO L273 TraceCheckUtils]: 27: Hoare triple {865#true} assume true; {865#true} is VALID [2018-11-23 11:12:12,246 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {865#true} {885#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {885#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:12,247 INFO L273 TraceCheckUtils]: 29: Hoare triple {885#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {958#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:12,247 INFO L273 TraceCheckUtils]: 30: Hoare triple {958#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {958#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:12,248 INFO L256 TraceCheckUtils]: 31: Hoare triple {958#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {865#true} is VALID [2018-11-23 11:12:12,253 INFO L273 TraceCheckUtils]: 32: Hoare triple {865#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {968#(= dll_circular_update_at_~index |dll_circular_update_at_#in~index|)} is VALID [2018-11-23 11:12:12,255 INFO L273 TraceCheckUtils]: 33: Hoare triple {968#(= dll_circular_update_at_~index |dll_circular_update_at_#in~index|)} assume !~bvsgt32(~index, 0bv32); {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:12,255 INFO L273 TraceCheckUtils]: 34: Hoare triple {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:12,257 INFO L273 TraceCheckUtils]: 35: Hoare triple {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} assume true; {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:12,258 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {972#(not (bvsgt |dll_circular_update_at_#in~index| (_ bv0 32)))} {958#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} #142#return; {866#false} is VALID [2018-11-23 11:12:12,258 INFO L273 TraceCheckUtils]: 37: Hoare triple {866#false} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {866#false} is VALID [2018-11-23 11:12:12,258 INFO L273 TraceCheckUtils]: 38: Hoare triple {866#false} assume !~bvsgt32(~i~0, 4294967295bv32); {866#false} is VALID [2018-11-23 11:12:12,259 INFO L273 TraceCheckUtils]: 39: Hoare triple {866#false} ~i~0 := ~bvsub32(~len~0, 1bv32); {866#false} is VALID [2018-11-23 11:12:12,259 INFO L273 TraceCheckUtils]: 40: Hoare triple {866#false} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {866#false} is VALID [2018-11-23 11:12:12,259 INFO L256 TraceCheckUtils]: 41: Hoare triple {866#false} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {866#false} is VALID [2018-11-23 11:12:12,259 INFO L273 TraceCheckUtils]: 42: Hoare triple {866#false} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {866#false} is VALID [2018-11-23 11:12:12,260 INFO L273 TraceCheckUtils]: 43: Hoare triple {866#false} assume !~bvsgt32(~index, 0bv32); {866#false} is VALID [2018-11-23 11:12:12,260 INFO L273 TraceCheckUtils]: 44: Hoare triple {866#false} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {866#false} is VALID [2018-11-23 11:12:12,260 INFO L273 TraceCheckUtils]: 45: Hoare triple {866#false} assume true; {866#false} is VALID [2018-11-23 11:12:12,260 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {866#false} {866#false} #144#return; {866#false} is VALID [2018-11-23 11:12:12,261 INFO L273 TraceCheckUtils]: 47: Hoare triple {866#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {866#false} is VALID [2018-11-23 11:12:12,261 INFO L273 TraceCheckUtils]: 48: Hoare triple {866#false} assume !false; {866#false} is VALID [2018-11-23 11:12:12,266 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 11:12:12,266 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 11:12:12,270 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:12:12,270 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 11:12:12,271 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 49 [2018-11-23 11:12:12,271 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:12:12,271 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 11:12:12,426 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-23 11:12:12,427 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 11:12:12,427 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 11:12:12,427 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:12:12,428 INFO L87 Difference]: Start difference. First operand 46 states and 52 transitions. Second operand 6 states. [2018-11-23 11:12:13,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:13,706 INFO L93 Difference]: Finished difference Result 78 states and 91 transitions. [2018-11-23 11:12:13,706 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 11:12:13,706 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 49 [2018-11-23 11:12:13,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:12:13,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:12:13,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2018-11-23 11:12:13,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:12:13,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2018-11-23 11:12:13,720 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2018-11-23 11:12:13,922 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:13,927 INFO L225 Difference]: With dead ends: 78 [2018-11-23 11:12:13,928 INFO L226 Difference]: Without dead ends: 58 [2018-11-23 11:12:13,928 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:12:13,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2018-11-23 11:12:13,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 51. [2018-11-23 11:12:13,996 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:12:13,996 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 51 states. [2018-11-23 11:12:13,997 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 51 states. [2018-11-23 11:12:13,997 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 51 states. [2018-11-23 11:12:14,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:14,002 INFO L93 Difference]: Finished difference Result 58 states and 67 transitions. [2018-11-23 11:12:14,002 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 67 transitions. [2018-11-23 11:12:14,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:14,003 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:14,003 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 58 states. [2018-11-23 11:12:14,004 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 58 states. [2018-11-23 11:12:14,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:14,008 INFO L93 Difference]: Finished difference Result 58 states and 67 transitions. [2018-11-23 11:12:14,008 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 67 transitions. [2018-11-23 11:12:14,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:14,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:14,010 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:12:14,010 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:12:14,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 11:12:14,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2018-11-23 11:12:14,014 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 49 [2018-11-23 11:12:14,014 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:12:14,014 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2018-11-23 11:12:14,014 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 11:12:14,014 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2018-11-23 11:12:14,016 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 11:12:14,016 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:14,016 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:12:14,017 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:14,017 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:14,017 INFO L82 PathProgramCache]: Analyzing trace with hash 307665392, now seen corresponding path program 1 times [2018-11-23 11:12:14,018 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:14,018 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:14,049 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:12:14,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:14,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:14,195 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:14,287 INFO L256 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2018-11-23 11:12:14,288 INFO L273 TraceCheckUtils]: 1: Hoare triple {1324#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1324#true} is VALID [2018-11-23 11:12:14,289 INFO L273 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,289 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #152#return; {1324#true} is VALID [2018-11-23 11:12:14,290 INFO L256 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret17 := main(); {1324#true} is VALID [2018-11-23 11:12:14,293 INFO L273 TraceCheckUtils]: 5: Hoare triple {1324#true} ~len~0 := 2bv32;~data~0 := 1bv32; {1344#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:14,294 INFO L256 TraceCheckUtils]: 6: Hoare triple {1344#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {1324#true} is VALID [2018-11-23 11:12:14,294 INFO L273 TraceCheckUtils]: 7: Hoare triple {1324#true} ~len := #in~len;~data := #in~data; {1324#true} is VALID [2018-11-23 11:12:14,294 INFO L256 TraceCheckUtils]: 8: Hoare triple {1324#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {1324#true} is VALID [2018-11-23 11:12:14,295 INFO L273 TraceCheckUtils]: 9: Hoare triple {1324#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1324#true} is VALID [2018-11-23 11:12:14,295 INFO L273 TraceCheckUtils]: 10: Hoare triple {1324#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1324#true} is VALID [2018-11-23 11:12:14,295 INFO L273 TraceCheckUtils]: 11: Hoare triple {1324#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,296 INFO L273 TraceCheckUtils]: 12: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,296 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {1324#true} {1324#true} #148#return; {1324#true} is VALID [2018-11-23 11:12:14,296 INFO L273 TraceCheckUtils]: 14: Hoare triple {1324#true} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,296 INFO L273 TraceCheckUtils]: 15: Hoare triple {1324#true} assume !!~bvsgt32(~len, 1bv32); {1324#true} is VALID [2018-11-23 11:12:14,297 INFO L256 TraceCheckUtils]: 16: Hoare triple {1324#true} call #t~ret4.base, #t~ret4.offset := node_create(~data); {1324#true} is VALID [2018-11-23 11:12:14,297 INFO L273 TraceCheckUtils]: 17: Hoare triple {1324#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1324#true} is VALID [2018-11-23 11:12:14,297 INFO L273 TraceCheckUtils]: 18: Hoare triple {1324#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1324#true} is VALID [2018-11-23 11:12:14,298 INFO L273 TraceCheckUtils]: 19: Hoare triple {1324#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,298 INFO L273 TraceCheckUtils]: 20: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,298 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1324#true} {1324#true} #150#return; {1324#true} is VALID [2018-11-23 11:12:14,299 INFO L273 TraceCheckUtils]: 22: Hoare triple {1324#true} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,299 INFO L273 TraceCheckUtils]: 23: Hoare triple {1324#true} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,299 INFO L273 TraceCheckUtils]: 24: Hoare triple {1324#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {1324#true} is VALID [2018-11-23 11:12:14,299 INFO L273 TraceCheckUtils]: 25: Hoare triple {1324#true} assume !~bvsgt32(~len, 1bv32); {1324#true} is VALID [2018-11-23 11:12:14,300 INFO L273 TraceCheckUtils]: 26: Hoare triple {1324#true} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,300 INFO L273 TraceCheckUtils]: 27: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,301 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1324#true} {1344#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {1344#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:14,305 INFO L273 TraceCheckUtils]: 29: Hoare triple {1344#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:14,305 INFO L273 TraceCheckUtils]: 30: Hoare triple {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:14,306 INFO L256 TraceCheckUtils]: 31: Hoare triple {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {1324#true} is VALID [2018-11-23 11:12:14,306 INFO L273 TraceCheckUtils]: 32: Hoare triple {1324#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {1324#true} is VALID [2018-11-23 11:12:14,306 INFO L273 TraceCheckUtils]: 33: Hoare triple {1324#true} assume !!~bvsgt32(~index, 0bv32);call #t~mem11.base, #t~mem11.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32);~head.base, ~head.offset := #t~mem11.base, #t~mem11.offset;havoc #t~mem11.base, #t~mem11.offset;#t~post12 := ~index;~index := ~bvsub32(#t~post12, 1bv32);havoc #t~post12; {1324#true} is VALID [2018-11-23 11:12:14,307 INFO L273 TraceCheckUtils]: 34: Hoare triple {1324#true} assume !~bvsgt32(~index, 0bv32); {1324#true} is VALID [2018-11-23 11:12:14,307 INFO L273 TraceCheckUtils]: 35: Hoare triple {1324#true} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,307 INFO L273 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,312 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1324#true} {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} #142#return; {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:14,313 INFO L273 TraceCheckUtils]: 38: Hoare triple {1417#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {1445#(= main_~i~0 (_ bv0 32))} is VALID [2018-11-23 11:12:14,314 INFO L273 TraceCheckUtils]: 39: Hoare triple {1445#(= main_~i~0 (_ bv0 32))} assume !~bvsgt32(~i~0, 4294967295bv32); {1325#false} is VALID [2018-11-23 11:12:14,314 INFO L273 TraceCheckUtils]: 40: Hoare triple {1325#false} ~i~0 := ~bvsub32(~len~0, 1bv32); {1325#false} is VALID [2018-11-23 11:12:14,314 INFO L273 TraceCheckUtils]: 41: Hoare triple {1325#false} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {1325#false} is VALID [2018-11-23 11:12:14,314 INFO L256 TraceCheckUtils]: 42: Hoare triple {1325#false} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {1325#false} is VALID [2018-11-23 11:12:14,315 INFO L273 TraceCheckUtils]: 43: Hoare triple {1325#false} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {1325#false} is VALID [2018-11-23 11:12:14,315 INFO L273 TraceCheckUtils]: 44: Hoare triple {1325#false} assume !~bvsgt32(~index, 0bv32); {1325#false} is VALID [2018-11-23 11:12:14,315 INFO L273 TraceCheckUtils]: 45: Hoare triple {1325#false} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {1325#false} is VALID [2018-11-23 11:12:14,316 INFO L273 TraceCheckUtils]: 46: Hoare triple {1325#false} assume true; {1325#false} is VALID [2018-11-23 11:12:14,316 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {1325#false} {1325#false} #144#return; {1325#false} is VALID [2018-11-23 11:12:14,316 INFO L273 TraceCheckUtils]: 48: Hoare triple {1325#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {1325#false} is VALID [2018-11-23 11:12:14,317 INFO L273 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2018-11-23 11:12:14,320 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 11:12:14,321 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:12:14,506 INFO L273 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2018-11-23 11:12:14,506 INFO L273 TraceCheckUtils]: 48: Hoare triple {1325#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {1325#false} is VALID [2018-11-23 11:12:14,506 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {1324#true} {1325#false} #144#return; {1325#false} is VALID [2018-11-23 11:12:14,507 INFO L273 TraceCheckUtils]: 46: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,507 INFO L273 TraceCheckUtils]: 45: Hoare triple {1324#true} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {1324#true} is VALID [2018-11-23 11:12:14,507 INFO L273 TraceCheckUtils]: 44: Hoare triple {1324#true} assume !~bvsgt32(~index, 0bv32); {1324#true} is VALID [2018-11-23 11:12:14,507 INFO L273 TraceCheckUtils]: 43: Hoare triple {1324#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {1324#true} is VALID [2018-11-23 11:12:14,507 INFO L256 TraceCheckUtils]: 42: Hoare triple {1325#false} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {1324#true} is VALID [2018-11-23 11:12:14,508 INFO L273 TraceCheckUtils]: 41: Hoare triple {1325#false} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {1325#false} is VALID [2018-11-23 11:12:14,508 INFO L273 TraceCheckUtils]: 40: Hoare triple {1325#false} ~i~0 := ~bvsub32(~len~0, 1bv32); {1325#false} is VALID [2018-11-23 11:12:14,508 INFO L273 TraceCheckUtils]: 39: Hoare triple {1509#(bvsgt main_~i~0 (_ bv4294967295 32))} assume !~bvsgt32(~i~0, 4294967295bv32); {1325#false} is VALID [2018-11-23 11:12:14,509 INFO L273 TraceCheckUtils]: 38: Hoare triple {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {1509#(bvsgt main_~i~0 (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,510 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1324#true} {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} #142#return; {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,510 INFO L273 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,510 INFO L273 TraceCheckUtils]: 35: Hoare triple {1324#true} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,510 INFO L273 TraceCheckUtils]: 34: Hoare triple {1324#true} assume !~bvsgt32(~index, 0bv32); {1324#true} is VALID [2018-11-23 11:12:14,510 INFO L273 TraceCheckUtils]: 33: Hoare triple {1324#true} assume !!~bvsgt32(~index, 0bv32);call #t~mem11.base, #t~mem11.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32);~head.base, ~head.offset := #t~mem11.base, #t~mem11.offset;havoc #t~mem11.base, #t~mem11.offset;#t~post12 := ~index;~index := ~bvsub32(#t~post12, 1bv32);havoc #t~post12; {1324#true} is VALID [2018-11-23 11:12:14,510 INFO L273 TraceCheckUtils]: 32: Hoare triple {1324#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {1324#true} is VALID [2018-11-23 11:12:14,511 INFO L256 TraceCheckUtils]: 31: Hoare triple {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {1324#true} is VALID [2018-11-23 11:12:14,511 INFO L273 TraceCheckUtils]: 30: Hoare triple {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,515 INFO L273 TraceCheckUtils]: 29: Hoare triple {1541#(bvsgt (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv4294967295 32))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {1513#(bvsgt (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,516 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1324#true} {1541#(bvsgt (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv4294967295 32))} #140#return; {1541#(bvsgt (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,516 INFO L273 TraceCheckUtils]: 27: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,516 INFO L273 TraceCheckUtils]: 26: Hoare triple {1324#true} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,517 INFO L273 TraceCheckUtils]: 25: Hoare triple {1324#true} assume !~bvsgt32(~len, 1bv32); {1324#true} is VALID [2018-11-23 11:12:14,517 INFO L273 TraceCheckUtils]: 24: Hoare triple {1324#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {1324#true} is VALID [2018-11-23 11:12:14,517 INFO L273 TraceCheckUtils]: 23: Hoare triple {1324#true} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,517 INFO L273 TraceCheckUtils]: 22: Hoare triple {1324#true} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {1324#true} is VALID [2018-11-23 11:12:14,517 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1324#true} {1324#true} #150#return; {1324#true} is VALID [2018-11-23 11:12:14,518 INFO L273 TraceCheckUtils]: 20: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,518 INFO L273 TraceCheckUtils]: 19: Hoare triple {1324#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,518 INFO L273 TraceCheckUtils]: 18: Hoare triple {1324#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1324#true} is VALID [2018-11-23 11:12:14,518 INFO L273 TraceCheckUtils]: 17: Hoare triple {1324#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1324#true} is VALID [2018-11-23 11:12:14,519 INFO L256 TraceCheckUtils]: 16: Hoare triple {1324#true} call #t~ret4.base, #t~ret4.offset := node_create(~data); {1324#true} is VALID [2018-11-23 11:12:14,519 INFO L273 TraceCheckUtils]: 15: Hoare triple {1324#true} assume !!~bvsgt32(~len, 1bv32); {1324#true} is VALID [2018-11-23 11:12:14,519 INFO L273 TraceCheckUtils]: 14: Hoare triple {1324#true} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,519 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {1324#true} {1324#true} #148#return; {1324#true} is VALID [2018-11-23 11:12:14,520 INFO L273 TraceCheckUtils]: 12: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,520 INFO L273 TraceCheckUtils]: 11: Hoare triple {1324#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1324#true} is VALID [2018-11-23 11:12:14,520 INFO L273 TraceCheckUtils]: 10: Hoare triple {1324#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1324#true} is VALID [2018-11-23 11:12:14,520 INFO L273 TraceCheckUtils]: 9: Hoare triple {1324#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1324#true} is VALID [2018-11-23 11:12:14,521 INFO L256 TraceCheckUtils]: 8: Hoare triple {1324#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {1324#true} is VALID [2018-11-23 11:12:14,521 INFO L273 TraceCheckUtils]: 7: Hoare triple {1324#true} ~len := #in~len;~data := #in~data; {1324#true} is VALID [2018-11-23 11:12:14,521 INFO L256 TraceCheckUtils]: 6: Hoare triple {1541#(bvsgt (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv4294967295 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {1324#true} is VALID [2018-11-23 11:12:14,528 INFO L273 TraceCheckUtils]: 5: Hoare triple {1324#true} ~len~0 := 2bv32;~data~0 := 1bv32; {1541#(bvsgt (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv4294967295 32))} is VALID [2018-11-23 11:12:14,529 INFO L256 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret17 := main(); {1324#true} is VALID [2018-11-23 11:12:14,529 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #152#return; {1324#true} is VALID [2018-11-23 11:12:14,529 INFO L273 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2018-11-23 11:12:14,529 INFO L273 TraceCheckUtils]: 1: Hoare triple {1324#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1324#true} is VALID [2018-11-23 11:12:14,529 INFO L256 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2018-11-23 11:12:14,533 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 11:12:14,539 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:12:14,539 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2018-11-23 11:12:14,540 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 50 [2018-11-23 11:12:14,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:12:14,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 11:12:14,656 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:14,656 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 11:12:14,656 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 11:12:14,657 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:12:14,657 INFO L87 Difference]: Start difference. First operand 51 states and 59 transitions. Second operand 8 states. [2018-11-23 11:12:16,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:16,455 INFO L93 Difference]: Finished difference Result 79 states and 93 transitions. [2018-11-23 11:12:16,455 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 11:12:16,456 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 50 [2018-11-23 11:12:16,456 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:12:16,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 11:12:16,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 86 transitions. [2018-11-23 11:12:16,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 11:12:16,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 86 transitions. [2018-11-23 11:12:16,463 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 86 transitions. [2018-11-23 11:12:16,616 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:16,621 INFO L225 Difference]: With dead ends: 79 [2018-11-23 11:12:16,621 INFO L226 Difference]: Without dead ends: 67 [2018-11-23 11:12:16,622 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 93 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-23 11:12:16,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2018-11-23 11:12:16,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 53. [2018-11-23 11:12:16,704 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:12:16,704 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand 53 states. [2018-11-23 11:12:16,705 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand 53 states. [2018-11-23 11:12:16,705 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 53 states. [2018-11-23 11:12:16,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:16,710 INFO L93 Difference]: Finished difference Result 67 states and 79 transitions. [2018-11-23 11:12:16,710 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 79 transitions. [2018-11-23 11:12:16,711 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:16,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:16,712 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 67 states. [2018-11-23 11:12:16,712 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 67 states. [2018-11-23 11:12:16,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:16,716 INFO L93 Difference]: Finished difference Result 67 states and 79 transitions. [2018-11-23 11:12:16,716 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 79 transitions. [2018-11-23 11:12:16,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:16,718 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:16,718 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:12:16,718 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:12:16,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 53 states. [2018-11-23 11:12:16,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 61 transitions. [2018-11-23 11:12:16,722 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 61 transitions. Word has length 50 [2018-11-23 11:12:16,722 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:12:16,722 INFO L480 AbstractCegarLoop]: Abstraction has 53 states and 61 transitions. [2018-11-23 11:12:16,722 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 11:12:16,722 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2018-11-23 11:12:16,726 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-23 11:12:16,726 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:16,726 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:12:16,730 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:16,730 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:16,730 INFO L82 PathProgramCache]: Analyzing trace with hash 1109581190, now seen corresponding path program 2 times [2018-11-23 11:12:16,731 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:16,731 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:16,755 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-23 11:12:16,832 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2018-11-23 11:12:16,851 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:12:16,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:16,896 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:17,088 INFO L256 TraceCheckUtils]: 0: Hoare triple {1963#true} call ULTIMATE.init(); {1963#true} is VALID [2018-11-23 11:12:17,088 INFO L273 TraceCheckUtils]: 1: Hoare triple {1963#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {1963#true} is VALID [2018-11-23 11:12:17,088 INFO L273 TraceCheckUtils]: 2: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,089 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1963#true} {1963#true} #152#return; {1963#true} is VALID [2018-11-23 11:12:17,089 INFO L256 TraceCheckUtils]: 4: Hoare triple {1963#true} call #t~ret17 := main(); {1963#true} is VALID [2018-11-23 11:12:17,090 INFO L273 TraceCheckUtils]: 5: Hoare triple {1963#true} ~len~0 := 2bv32;~data~0 := 1bv32; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,090 INFO L256 TraceCheckUtils]: 6: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {1963#true} is VALID [2018-11-23 11:12:17,090 INFO L273 TraceCheckUtils]: 7: Hoare triple {1963#true} ~len := #in~len;~data := #in~data; {1963#true} is VALID [2018-11-23 11:12:17,090 INFO L256 TraceCheckUtils]: 8: Hoare triple {1963#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {1963#true} is VALID [2018-11-23 11:12:17,090 INFO L273 TraceCheckUtils]: 9: Hoare triple {1963#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1963#true} is VALID [2018-11-23 11:12:17,091 INFO L273 TraceCheckUtils]: 10: Hoare triple {1963#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1963#true} is VALID [2018-11-23 11:12:17,091 INFO L273 TraceCheckUtils]: 11: Hoare triple {1963#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1963#true} is VALID [2018-11-23 11:12:17,091 INFO L273 TraceCheckUtils]: 12: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,091 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {1963#true} {1963#true} #148#return; {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L273 TraceCheckUtils]: 14: Hoare triple {1963#true} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L273 TraceCheckUtils]: 15: Hoare triple {1963#true} assume !!~bvsgt32(~len, 1bv32); {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L256 TraceCheckUtils]: 16: Hoare triple {1963#true} call #t~ret4.base, #t~ret4.offset := node_create(~data); {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L273 TraceCheckUtils]: 17: Hoare triple {1963#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L273 TraceCheckUtils]: 18: Hoare triple {1963#true} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {1963#true} is VALID [2018-11-23 11:12:17,092 INFO L273 TraceCheckUtils]: 19: Hoare triple {1963#true} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L273 TraceCheckUtils]: 20: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1963#true} {1963#true} #150#return; {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L273 TraceCheckUtils]: 22: Hoare triple {1963#true} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L273 TraceCheckUtils]: 23: Hoare triple {1963#true} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L273 TraceCheckUtils]: 24: Hoare triple {1963#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {1963#true} is VALID [2018-11-23 11:12:17,093 INFO L273 TraceCheckUtils]: 25: Hoare triple {1963#true} assume !~bvsgt32(~len, 1bv32); {1963#true} is VALID [2018-11-23 11:12:17,094 INFO L273 TraceCheckUtils]: 26: Hoare triple {1963#true} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {1963#true} is VALID [2018-11-23 11:12:17,094 INFO L273 TraceCheckUtils]: 27: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,096 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1963#true} {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,099 INFO L273 TraceCheckUtils]: 29: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,099 INFO L273 TraceCheckUtils]: 30: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,100 INFO L256 TraceCheckUtils]: 31: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {1963#true} is VALID [2018-11-23 11:12:17,100 INFO L273 TraceCheckUtils]: 32: Hoare triple {1963#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {1963#true} is VALID [2018-11-23 11:12:17,100 INFO L273 TraceCheckUtils]: 33: Hoare triple {1963#true} assume !!~bvsgt32(~index, 0bv32);call #t~mem11.base, #t~mem11.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32);~head.base, ~head.offset := #t~mem11.base, #t~mem11.offset;havoc #t~mem11.base, #t~mem11.offset;#t~post12 := ~index;~index := ~bvsub32(#t~post12, 1bv32);havoc #t~post12; {1963#true} is VALID [2018-11-23 11:12:17,101 INFO L273 TraceCheckUtils]: 34: Hoare triple {1963#true} assume !~bvsgt32(~index, 0bv32); {1963#true} is VALID [2018-11-23 11:12:17,101 INFO L273 TraceCheckUtils]: 35: Hoare triple {1963#true} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {1963#true} is VALID [2018-11-23 11:12:17,101 INFO L273 TraceCheckUtils]: 36: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,119 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {1963#true} {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #142#return; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,134 INFO L273 TraceCheckUtils]: 38: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,142 INFO L273 TraceCheckUtils]: 39: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,142 INFO L256 TraceCheckUtils]: 40: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {1963#true} is VALID [2018-11-23 11:12:17,142 INFO L273 TraceCheckUtils]: 41: Hoare triple {1963#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {1963#true} is VALID [2018-11-23 11:12:17,142 INFO L273 TraceCheckUtils]: 42: Hoare triple {1963#true} assume !~bvsgt32(~index, 0bv32); {1963#true} is VALID [2018-11-23 11:12:17,143 INFO L273 TraceCheckUtils]: 43: Hoare triple {1963#true} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {1963#true} is VALID [2018-11-23 11:12:17,143 INFO L273 TraceCheckUtils]: 44: Hoare triple {1963#true} assume true; {1963#true} is VALID [2018-11-23 11:12:17,144 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {1963#true} {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #142#return; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,144 INFO L273 TraceCheckUtils]: 46: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,146 INFO L273 TraceCheckUtils]: 47: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} assume !~bvsgt32(~i~0, 4294967295bv32); {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,146 INFO L273 TraceCheckUtils]: 48: Hoare triple {1983#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} ~i~0 := ~bvsub32(~len~0, 1bv32); {2113#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,148 INFO L273 TraceCheckUtils]: 49: Hoare triple {2113#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {2113#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:12:17,148 INFO L256 TraceCheckUtils]: 50: Hoare triple {2113#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {1963#true} is VALID [2018-11-23 11:12:17,148 INFO L273 TraceCheckUtils]: 51: Hoare triple {1963#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {2123#(= |dll_circular_get_data_at_#in~index| dll_circular_get_data_at_~index)} is VALID [2018-11-23 11:12:17,150 INFO L273 TraceCheckUtils]: 52: Hoare triple {2123#(= |dll_circular_get_data_at_#in~index| dll_circular_get_data_at_~index)} assume !~bvsgt32(~index, 0bv32); {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:17,150 INFO L273 TraceCheckUtils]: 53: Hoare triple {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:17,153 INFO L273 TraceCheckUtils]: 54: Hoare triple {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} assume true; {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} is VALID [2018-11-23 11:12:17,171 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {2127#(not (bvsgt |dll_circular_get_data_at_#in~index| (_ bv0 32)))} {2113#(= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32))} #144#return; {1964#false} is VALID [2018-11-23 11:12:17,171 INFO L273 TraceCheckUtils]: 56: Hoare triple {1964#false} assume ~expected~0 != #t~ret16;havoc #t~ret16; {1964#false} is VALID [2018-11-23 11:12:17,171 INFO L273 TraceCheckUtils]: 57: Hoare triple {1964#false} assume !false; {1964#false} is VALID [2018-11-23 11:12:17,175 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 11:12:17,175 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 11:12:17,179 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:12:17,179 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 11:12:17,180 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 58 [2018-11-23 11:12:17,180 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:12:17,180 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 11:12:17,296 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:12:17,296 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 11:12:17,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 11:12:17,297 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:12:17,297 INFO L87 Difference]: Start difference. First operand 53 states and 61 transitions. Second operand 6 states. [2018-11-23 11:12:18,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:18,254 INFO L93 Difference]: Finished difference Result 74 states and 86 transitions. [2018-11-23 11:12:18,254 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 11:12:18,254 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 58 [2018-11-23 11:12:18,255 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:12:18,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:12:18,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2018-11-23 11:12:18,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:12:18,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2018-11-23 11:12:18,260 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 79 transitions. [2018-11-23 11:12:18,435 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-23 11:12:18,438 INFO L225 Difference]: With dead ends: 74 [2018-11-23 11:12:18,438 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 11:12:18,439 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:12:18,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 11:12:18,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 59. [2018-11-23 11:12:18,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:12:18,518 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand 59 states. [2018-11-23 11:12:18,518 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 59 states. [2018-11-23 11:12:18,519 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 59 states. [2018-11-23 11:12:18,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:18,523 INFO L93 Difference]: Finished difference Result 63 states and 73 transitions. [2018-11-23 11:12:18,523 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 73 transitions. [2018-11-23 11:12:18,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:18,524 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:18,524 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 63 states. [2018-11-23 11:12:18,524 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 63 states. [2018-11-23 11:12:18,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:12:18,527 INFO L93 Difference]: Finished difference Result 63 states and 73 transitions. [2018-11-23 11:12:18,527 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 73 transitions. [2018-11-23 11:12:18,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:12:18,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:12:18,528 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:12:18,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:12:18,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 59 states. [2018-11-23 11:12:18,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2018-11-23 11:12:18,531 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 58 [2018-11-23 11:12:18,531 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:12:18,531 INFO L480 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2018-11-23 11:12:18,531 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 11:12:18,531 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2018-11-23 11:12:18,532 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2018-11-23 11:12:18,533 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:12:18,533 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:12:18,533 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:12:18,533 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:12:18,533 INFO L82 PathProgramCache]: Analyzing trace with hash 1638297524, now seen corresponding path program 1 times [2018-11-23 11:12:18,534 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:12:18,534 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:12:18,554 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:12:18,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:18,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:12:18,855 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:12:18,919 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 11:12:18,923 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:18,933 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:18,933 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2018-11-23 11:12:18,937 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:12:18,937 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#valid_41|]. (and (= node_create_~temp~0.offset (_ bv0 32)) (= |#valid| (store |v_#valid_41| node_create_~temp~0.base (_ bv1 1)))) [2018-11-23 11:12:18,938 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (= node_create_~temp~0.offset (_ bv0 32))) [2018-11-23 11:12:19,342 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:19,344 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:19,345 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 4 [2018-11-23 11:12:19,346 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,360 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,360 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:20, output treesize:14 [2018-11-23 11:12:19,363 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:12:19,364 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_old(#valid)_AFTER_CALL_29|]. (and (= (select |v_old(#valid)_AFTER_CALL_29| |dll_circular_create_#t~ret4.base|) (_ bv0 1)) (= (_ bv0 32) |dll_circular_create_#t~ret4.offset|) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (_ bv1 1) (select |v_old(#valid)_AFTER_CALL_29| dll_circular_create_~head~0.base)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)) [2018-11-23 11:12:19,364 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= dll_circular_create_~head~0.base |dll_circular_create_#t~ret4.base|)) (= (_ bv0 32) |dll_circular_create_#t~ret4.offset|) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)) [2018-11-23 11:12:19,435 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 8 [2018-11-23 11:12:19,442 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:12:19,444 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,449 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,483 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 8 [2018-11-23 11:12:19,489 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:12:19,490 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,494 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,529 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,529 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:36, output treesize:28 [2018-11-23 11:12:19,638 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 24 [2018-11-23 11:12:19,649 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 11:12:19,651 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,665 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,712 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 31 [2018-11-23 11:12:19,718 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:12:19,720 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,735 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,761 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:19,761 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:44, output treesize:40 [2018-11-23 11:12:20,028 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 64 treesize of output 46 [2018-11-23 11:12:20,049 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 23 [2018-11-23 11:12:20,082 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,186 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 46 [2018-11-23 11:12:20,200 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:20,205 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 11:12:20,208 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,251 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,283 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,398 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 91 treesize of output 68 [2018-11-23 11:12:20,492 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 29 [2018-11-23 11:12:20,522 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,607 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:20,609 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 76 treesize of output 75 [2018-11-23 11:12:20,650 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:20,652 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 76 treesize of output 90 [2018-11-23 11:12:20,661 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,693 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,723 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,771 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:20,771 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 3 variables, input treesize:135, output treesize:92 [2018-11-23 11:12:21,137 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:12:21,137 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_54|, |v_#memory_$Pointer$.offset_54|, dll_circular_create_~last~0.offset]. (let ((.cse2 (select (select |v_#memory_$Pointer$.base_54| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|))) (let ((.cse1 (bvadd |dll_circular_create_#res.offset| (_ bv4 32))) (.cse3 (select |v_#memory_$Pointer$.base_54| .cse2)) (.cse5 (select |v_#memory_$Pointer$.offset_54| .cse2))) (and (= (let ((.cse0 (store |v_#memory_$Pointer$.base_54| .cse2 (store .cse3 dll_circular_create_~last~0.offset |dll_circular_create_#res.base|)))) (store .cse0 |dll_circular_create_#res.base| (store (select .cse0 |dll_circular_create_#res.base|) .cse1 .cse2))) |#memory_$Pointer$.base|) (= |#memory_$Pointer$.offset| (let ((.cse4 (store |v_#memory_$Pointer$.offset_54| .cse2 (store .cse5 dll_circular_create_~last~0.offset |dll_circular_create_#res.offset|)))) (store .cse4 |dll_circular_create_#res.base| (store (select .cse4 |dll_circular_create_#res.base|) .cse1 dll_circular_create_~last~0.offset)))) (= |dll_circular_create_#res.base| (select .cse3 (_ bv4 32))) (= |dll_circular_create_#res.offset| (select .cse5 (_ bv4 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (not (= .cse2 |dll_circular_create_#res.base|)) (= (select (select |v_#memory_$Pointer$.offset_54| |dll_circular_create_#res.base|) (_ bv0 32)) (_ bv0 32))))) [2018-11-23 11:12:21,137 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse3 (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|))) (let ((.cse2 (select .cse3 |dll_circular_create_#res.offset|)) (.cse6 (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|)) (.cse4 (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (let ((.cse1 (select .cse6 .cse4)) (.cse0 (select |#memory_$Pointer$.base| .cse2)) (.cse5 (select |#memory_$Pointer$.offset| .cse2))) (and (= |dll_circular_create_#res.base| (select .cse0 .cse1)) (= .cse2 (select .cse3 .cse4)) (= (select .cse5 .cse1) |dll_circular_create_#res.offset|) (= (_ bv0 32) (select .cse6 (_ bv0 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select .cse0 (_ bv4 32))) (not (= .cse3 .cse0)) (= |dll_circular_create_#res.offset| (select .cse5 (_ bv4 32))))))) [2018-11-23 11:12:22,393 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 18 [2018-11-23 11:12:22,406 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 17 [2018-11-23 11:12:22,410 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:22,420 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:22,456 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:22,456 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:104, output treesize:96 [2018-11-23 11:12:22,831 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:22,842 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:22,881 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:22,883 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 182 treesize of output 199 [2018-11-23 11:12:22,944 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:23,011 INFO L303 Elim1Store]: Index analysis took 103 ms [2018-11-23 11:12:27,286 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 6 case distinctions, treesize of input 86 treesize of output 151 [2018-11-23 11:12:27,326 INFO L267 ElimStorePlain]: Start of recursive call 3: 4 dim-0 vars, End of recursive call: 4 dim-0 vars, and 7 xjuncts. [2018-11-23 11:12:27,756 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 6 xjuncts. [2018-11-23 11:12:28,394 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 166 treesize of output 149 [2018-11-23 11:12:28,414 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,425 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 92 [2018-11-23 11:12:28,427 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:28,470 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:28,524 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,527 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,536 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,538 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 152 treesize of output 178 [2018-11-23 11:12:28,562 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,716 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 4 case distinctions, treesize of input 86 treesize of output 141 [2018-11-23 11:12:28,728 INFO L267 ElimStorePlain]: Start of recursive call 7: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:28,890 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:28,901 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,903 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,914 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:28,916 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 166 treesize of output 192 [2018-11-23 11:12:28,995 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,067 INFO L303 Elim1Store]: Index analysis took 121 ms [2018-11-23 11:12:29,279 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 4 case distinctions, treesize of input 86 treesize of output 141 [2018-11-23 11:12:29,333 INFO L267 ElimStorePlain]: Start of recursive call 9: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:29,517 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:29,533 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,554 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 160 treesize of output 151 [2018-11-23 11:12:29,587 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,635 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 2 case distinctions, treesize of input 51 treesize of output 92 [2018-11-23 11:12:29,640 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 2 xjuncts. [2018-11-23 11:12:29,735 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:12:29,749 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,752 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,763 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:29,764 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 159 treesize of output 185 [2018-11-23 11:12:29,878 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:30,069 INFO L303 Elim1Store]: Index analysis took 237 ms [2018-11-23 11:12:30,214 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 4 case distinctions, treesize of input 86 treesize of output 141 [2018-11-23 11:12:30,243 INFO L267 ElimStorePlain]: Start of recursive call 13: 2 dim-0 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:30,430 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:12:30,446 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:30,466 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 163 treesize of output 154 [2018-11-23 11:12:30,543 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:30,586 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 2 case distinctions, treesize of input 51 treesize of output 92 [2018-11-23 11:12:30,589 INFO L267 ElimStorePlain]: Start of recursive call 15: End of recursive call: and 2 xjuncts. [2018-11-23 11:12:30,690 INFO L267 ElimStorePlain]: Start of recursive call 14: 1 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:12:32,042 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: 14 dim-0 vars, and 12 xjuncts. [2018-11-23 11:12:32,043 INFO L202 ElimStorePlain]: Needed 15 recursive calls to eliminate 2 variables, input treesize:197, output treesize:1627 [2018-11-23 11:12:34,392 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:12:34,393 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_BEFORE_CALL_2|, |v_#memory_$Pointer$.offset_BEFORE_CALL_2|]. (let ((.cse5 (select |v_#memory_$Pointer$.base_BEFORE_CALL_2| main_~s~0.base))) (let ((.cse6 (bvadd main_~s~0.offset (_ bv4 32))) (.cse7 (select |v_#memory_$Pointer$.offset_BEFORE_CALL_2| main_~s~0.base)) (.cse3 (select .cse5 main_~s~0.offset))) (let ((.cse1 (select |v_#memory_$Pointer$.base_BEFORE_CALL_2| .cse3)) (.cse4 (bvadd (select .cse7 main_~s~0.offset) (_ bv8 32))) (.cse0 (select |v_#memory_$Pointer$.offset_BEFORE_CALL_2| .cse3)) (.cse2 (select .cse7 .cse6))) (and (= main_~s~0.offset (select .cse0 (_ bv4 32))) (= main_~s~0.base (select .cse1 .cse2)) (= (store |v_#memory_$Pointer$.offset_BEFORE_CALL_2| .cse3 (store .cse0 .cse4 (select (select |#memory_$Pointer$.offset| .cse3) .cse4))) |#memory_$Pointer$.offset|) (= .cse3 (select .cse5 .cse6)) (= (select .cse1 (_ bv4 32)) main_~s~0.base) (= (store |v_#memory_$Pointer$.base_BEFORE_CALL_2| .cse3 (store .cse1 .cse4 (select (select |#memory_$Pointer$.base| .cse3) .cse4))) |#memory_$Pointer$.base|) (= main_~s~0.offset (_ bv0 32)) (not (= .cse1 .cse5)) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select .cse7 (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_int| .cse3) .cse4) (bvadd main_~len~0 (bvneg (bvneg main_~len~0)) (_ bv4294967295 32))) (= main_~s~0.offset (select .cse0 .cse2)))))) [2018-11-23 11:12:34,393 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ [v_prenex_8, v_prenex_6, v_prenex_3, v_antiDerIndex_2, v_prenex_5, v_prenex_7, v_antiDerIndex_3, v_prenex_2, v_prenex_10, v_prenex_1, v_prenex_4, v_antiDerIndex_1, v_antiDerIndex_4, v_prenex_9]. (let ((.cse0 (select |#memory_$Pointer$.base| main_~s~0.base)) (.cse21 (bvadd main_~s~0.offset (_ bv4 32)))) (let ((.cse4 (select |#memory_$Pointer$.offset| main_~s~0.base)) (.cse20 (select .cse0 .cse21))) (let ((.cse9 (select |#memory_$Pointer$.offset| .cse20)) (.cse19 (select .cse0 main_~s~0.offset)) (.cse17 (bvadd (select .cse4 main_~s~0.offset) (_ bv8 32))) (.cse2 (select |#memory_$Pointer$.base| .cse20)) (.cse16 (select .cse4 .cse21))) (let ((.cse12 (= (select .cse2 .cse16) main_~s~0.base)) (.cse1 (= .cse16 .cse17)) (.cse14 (not (= (select .cse0 .cse17) main_~s~0.base))) (.cse3 (= (select .cse2 (_ bv4 32)) main_~s~0.base)) (.cse5 (= main_~s~0.offset (_ bv0 32))) (.cse6 (= .cse20 .cse19)) (.cse7 (= (select (select |#memory_int| .cse19) .cse17) (bvadd main_~len~0 (bvneg (bvneg main_~len~0)) (_ bv4294967295 32)))) (.cse8 (= main_~s~0.offset (select .cse9 (_ bv4 32)))) (.cse10 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse11 (= (select .cse4 (_ bv0 32)) (_ bv0 32))) (.cse18 (not (= main_~s~0.offset (select .cse4 .cse17))))) (or (and (not (= (select .cse0 v_prenex_8) main_~s~0.base)) .cse1 (= (select .cse2 v_prenex_8) main_~s~0.base) .cse3 (not (= (select .cse4 v_prenex_6) main_~s~0.offset)) .cse5 .cse6 .cse7 .cse8 (= (select .cse9 v_prenex_6) main_~s~0.offset) .cse10 .cse11) (and .cse1 .cse3 .cse5 .cse6 .cse7 .cse8 .cse11 .cse10 .cse12 (= (select .cse2 v_prenex_3) main_~s~0.base) (not (= (select .cse0 v_prenex_3) main_~s~0.base))) (let ((.cse13 (select .cse9 v_antiDerIndex_2))) (and (= main_~s~0.offset .cse13) .cse1 .cse14 .cse3 .cse5 .cse6 .cse7 (not (= (select .cse4 v_antiDerIndex_2) .cse13)) .cse8 .cse11 .cse10)) (let ((.cse15 (select .cse9 v_prenex_5))) (and (not (= (select .cse4 v_prenex_5) .cse15)) .cse1 .cse3 .cse5 .cse6 .cse7 .cse8 .cse11 .cse10 (not (= (select .cse2 v_prenex_7) (select .cse0 v_prenex_7))) (= main_~s~0.offset .cse15) (not (= .cse16 v_prenex_7)))) (and (not (= .cse17 v_antiDerIndex_3)) .cse1 .cse3 .cse5 .cse6 .cse7 .cse8 .cse10 .cse11 (not (= (select .cse2 v_prenex_2) (select .cse0 v_prenex_2))) (not (= (select .cse4 v_antiDerIndex_3) (select .cse9 v_antiDerIndex_3))) (not (= .cse16 v_prenex_2))) (and .cse1 .cse3 .cse5 .cse6 .cse7 .cse8 .cse11 .cse10 (not (= (select .cse2 v_prenex_10) (select .cse0 v_prenex_10))) .cse18 (not (= .cse16 v_prenex_10))) (and (not (= (select .cse2 v_prenex_1) (select .cse0 v_prenex_1))) .cse1 .cse3 .cse5 .cse6 .cse7 .cse8 .cse10 .cse11 .cse12) (and .cse1 .cse14 .cse3 (not (= (select .cse4 v_prenex_4) (select .cse9 v_prenex_4))) .cse5 .cse6 (not (= .cse17 v_prenex_4)) .cse7 .cse8 .cse11 .cse10) (and (not (= (select .cse0 v_antiDerIndex_1) main_~s~0.base)) .cse1 (= (select .cse2 v_antiDerIndex_1) main_~s~0.base) (not (= (select .cse4 v_antiDerIndex_4) (select .cse9 v_antiDerIndex_4))) .cse3 .cse5 .cse6 .cse7 .cse8 (not (= .cse17 v_antiDerIndex_4)) .cse10 .cse11) (and (not (= (select .cse0 v_prenex_9) main_~s~0.base)) .cse1 (= (select .cse2 v_prenex_9) main_~s~0.base) .cse3 .cse5 .cse6 .cse7 .cse8 .cse10 .cse11 .cse18) (and (not .cse1) .cse3 .cse5 .cse6 (not (= main_~s~0.base .cse19)) .cse7 .cse8 .cse11 .cse10 (= main_~s~0.offset (select .cse9 .cse16)) .cse12) (and .cse1 .cse14 .cse3 .cse5 .cse6 .cse7 .cse8 .cse10 .cse11 .cse18)))))) [2018-11-23 11:12:35,679 WARN L180 SmtUtils]: Spent 588.00 ms on a formula simplification. DAG size of input: 183 DAG size of output: 50 [2018-11-23 11:12:48,639 WARN L180 SmtUtils]: Spent 2.08 s on a formula simplification that was a NOOP. DAG size: 29 [2018-11-23 11:12:48,774 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:48,787 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:48,801 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:48,825 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 175 treesize of output 184 [2018-11-23 11:12:48,902 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:48,925 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:48,946 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:49,033 INFO L303 Elim1Store]: Index analysis took 150 ms [2018-11-23 11:12:49,172 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 5 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 4 case distinctions, treesize of input 140 treesize of output 172 [2018-11-23 11:12:49,182 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 2 xjuncts. [2018-11-23 11:12:49,553 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:52,037 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:52,080 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 156 treesize of output 163 [2018-11-23 11:12:52,089 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 11:12:52,090 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:52,268 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:53,350 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:53,372 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 150 treesize of output 149 [2018-11-23 11:12:53,389 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:53,392 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:53,396 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:53,429 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 77 treesize of output 92 [2018-11-23 11:12:53,436 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:53,533 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:54,241 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,252 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,268 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,293 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 144 treesize of output 163 [2018-11-23 11:12:54,327 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,346 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,364 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:54,429 INFO L303 Elim1Store]: Index analysis took 118 ms [2018-11-23 11:12:54,799 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 5 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 4 case distinctions, treesize of input 102 treesize of output 128 [2018-11-23 11:12:54,813 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 2 xjuncts. [2018-11-23 11:12:55,072 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:55,454 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,460 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,467 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,480 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 123 treesize of output 157 [2018-11-23 11:12:55,519 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,530 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,540 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,557 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:55,610 INFO L303 Elim1Store]: Index analysis took 101 ms [2018-11-23 11:12:55,643 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 5 case distinctions, treesize of input 89 treesize of output 124 [2018-11-23 11:12:55,658 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 2 xjuncts. [2018-11-23 11:12:55,822 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:56,029 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:12:56,043 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 104 treesize of output 111 [2018-11-23 11:12:56,051 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 11:12:56,053 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 11:12:56,115 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:12:56,299 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 6 dim-2 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:12:56,299 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 8 variables, input treesize:320, output treesize:216 [2018-11-23 11:12:58,309 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:12:58,310 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_BEFORE_CALL_4|, |v_old(#memory_int)_AFTER_CALL_30|, |v_#memory_$Pointer$.offset_BEFORE_CALL_4|, dll_circular_update_at_~data, v_prenex_12, v_prenex_14, v_prenex_13, v_prenex_11]. (let ((.cse5 (bvadd main_~s~0.offset (_ bv8 32)))) (let ((.cse7 (select (select |#memory_$Pointer$.offset| main_~s~0.base) .cse5)) (.cse11 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse10 (select (select |#memory_$Pointer$.base| main_~s~0.base) .cse5)) (.cse4 (bvadd (bvneg (bvneg main_~len~0)) main_~len~0)) (.cse8 (= main_~s~0.offset (_ bv0 32))) (.cse1 (bvadd main_~s~0.offset (_ bv4 32)))) (or (let ((.cse9 (select |v_#memory_$Pointer$.base_BEFORE_CALL_4| main_~s~0.base)) (.cse0 (select |v_#memory_$Pointer$.offset_BEFORE_CALL_4| main_~s~0.base))) (let ((.cse2 (select .cse0 main_~s~0.offset)) (.cse3 (select .cse9 main_~s~0.offset)) (.cse6 (select .cse9 .cse1))) (and (= (bvadd (select .cse0 .cse1) (_ bv4294967288 32)) .cse2) (= (bvadd (select (select |v_old(#memory_int)_AFTER_CALL_30| .cse3) (bvadd .cse2 (_ bv8 32))) (_ bv1 32)) .cse4) (= (store |v_old(#memory_int)_AFTER_CALL_30| main_~s~0.base (store (select |v_old(#memory_int)_AFTER_CALL_30| main_~s~0.base) .cse5 dll_circular_update_at_~data)) |#memory_int|) (= .cse3 .cse6) (= (store |v_#memory_$Pointer$.offset_BEFORE_CALL_4| main_~s~0.base (store .cse0 .cse5 .cse7)) |#memory_$Pointer$.offset|) .cse8 (= |#memory_$Pointer$.base| (store |v_#memory_$Pointer$.base_BEFORE_CALL_4| main_~s~0.base (store .cse9 .cse5 .cse10))) (= (select (select |v_#memory_$Pointer$.offset_BEFORE_CALL_4| .cse6) (_ bv4 32)) main_~s~0.offset) .cse11 (= (_ bv0 32) (select .cse0 (_ bv0 32))) (= (select (select |v_#memory_$Pointer$.base_BEFORE_CALL_4| .cse6) (_ bv4 32)) main_~s~0.base)))) (let ((.cse14 (select v_prenex_12 main_~s~0.base))) (let ((.cse12 (select v_prenex_13 main_~s~0.base)) (.cse18 (select .cse14 .cse1))) (let ((.cse13 (select .cse14 main_~s~0.offset)) (.cse15 (select v_prenex_13 .cse18)) (.cse17 (select .cse12 .cse1)) (.cse16 (select v_prenex_12 .cse18))) (and (= (_ bv0 32) (select .cse12 (_ bv0 32))) (= (store v_prenex_13 main_~s~0.base (store .cse12 .cse5 .cse7)) |#memory_$Pointer$.offset|) (= (store v_prenex_14 main_~s~0.base (store (select v_prenex_14 main_~s~0.base) .cse5 v_prenex_11)) |#memory_int|) .cse11 (not (= .cse13 main_~s~0.base)) (= |#memory_$Pointer$.base| (store v_prenex_12 main_~s~0.base (store .cse14 .cse5 .cse10))) (= (select .cse15 (_ bv4 32)) main_~s~0.offset) (= (bvadd (select (select v_prenex_14 .cse13) (bvadd (select .cse12 main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) .cse4) (= (select .cse16 .cse17) main_~s~0.base) (= .cse13 .cse18) (= (select .cse15 .cse17) main_~s~0.offset) .cse8 (= (select .cse16 (_ bv4 32)) main_~s~0.base)))))))) [2018-11-23 11:12:58,310 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse15 (select |#memory_$Pointer$.base| main_~s~0.base)) (.cse13 (bvadd main_~s~0.offset (_ bv4 32)))) (let ((.cse12 (select |#memory_$Pointer$.offset| main_~s~0.base)) (.cse14 (select .cse15 .cse13)) (.cse3 (select .cse15 main_~s~0.offset))) (let ((.cse4 (select |#memory_$Pointer$.base| .cse3)) (.cse8 (select |#memory_$Pointer$.offset| .cse14)) (.cse11 (select .cse12 main_~s~0.offset))) (let ((.cse0 (= (bvadd (select (select |#memory_int| .cse14) (bvadd .cse11 (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (.cse1 (= main_~s~0.offset (_ bv0 32))) (.cse2 (= .cse14 .cse3)) (.cse6 (= main_~s~0.offset (select .cse8 (_ bv4 32)))) (.cse7 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse9 (= (select .cse4 (_ bv4 32)) main_~s~0.base)) (.cse5 (select .cse12 .cse13)) (.cse10 (= .cse11 (_ bv0 32)))) (or (and .cse0 .cse1 .cse2 (not (= main_~s~0.base .cse3)) (= (select .cse4 .cse5) main_~s~0.base) .cse6 .cse7 (= main_~s~0.offset (select .cse8 .cse5)) .cse9 .cse10) (and .cse0 .cse1 .cse2 .cse6 .cse7 .cse9 (= .cse11 (bvadd .cse5 (_ bv4294967288 32))) .cse10)))))) [2018-11-23 11:12:59,126 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification that was a NOOP. DAG size: 54 [2018-11-23 11:12:59,556 WARN L180 SmtUtils]: Spent 149.00 ms on a formula simplification that was a NOOP. DAG size: 44 [2018-11-23 11:13:00,419 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification that was a NOOP. DAG size: 67 [2018-11-23 11:13:00,978 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification that was a NOOP. DAG size: 71 [2018-11-23 11:13:01,565 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification that was a NOOP. DAG size: 72 [2018-11-23 11:13:02,512 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:02,515 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:02,535 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:02,538 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:02,623 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 4 case distinctions, treesize of input 211 treesize of output 223 [2018-11-23 11:13:02,927 WARN L288 Elim1Store]: Array PQE input equivalent to false [2018-11-23 11:13:02,928 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:03,673 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:03,674 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:13:03,676 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 121 treesize of output 109 [2018-11-23 11:13:03,680 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:04,079 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 97 treesize of output 83 [2018-11-23 11:13:04,086 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:04,454 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:04,455 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:13:04,457 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 101 treesize of output 87 [2018-11-23 11:13:04,460 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:04,800 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 78 treesize of output 62 [2018-11-23 11:13:04,803 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:05,148 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 185 treesize of output 169 [2018-11-23 11:13:05,166 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:06,528 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 166 treesize of output 152 [2018-11-23 11:13:06,555 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:06,840 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 152 treesize of output 134 [2018-11-23 11:13:06,848 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:07,611 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 131 treesize of output 117 [2018-11-23 11:13:07,642 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:08,372 INFO L267 ElimStorePlain]: Start of recursive call 2: 17 dim-1 vars, End of recursive call: 3 dim-0 vars, and 3 xjuncts. [2018-11-23 11:13:09,674 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 79 treesize of output 63 [2018-11-23 11:13:09,684 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 20 [2018-11-23 11:13:09,702 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:09,780 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 7 [2018-11-23 11:13:09,803 INFO L267 ElimStorePlain]: Start of recursive call 14: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:09,931 INFO L267 ElimStorePlain]: Start of recursive call 12: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,054 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 117 treesize of output 95 [2018-11-23 11:13:10,071 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 1 [2018-11-23 11:13:10,074 INFO L267 ElimStorePlain]: Start of recursive call 16: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,170 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 20 [2018-11-23 11:13:10,176 INFO L267 ElimStorePlain]: Start of recursive call 17: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:10,253 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 7 [2018-11-23 11:13:10,254 INFO L267 ElimStorePlain]: Start of recursive call 18: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,346 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 1 [2018-11-23 11:13:10,348 INFO L267 ElimStorePlain]: Start of recursive call 19: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,525 INFO L267 ElimStorePlain]: Start of recursive call 15: 4 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,540 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 62 treesize of output 54 [2018-11-23 11:13:10,556 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 20 [2018-11-23 11:13:10,561 INFO L267 ElimStorePlain]: Start of recursive call 21: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:10,599 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 1 [2018-11-23 11:13:10,600 INFO L267 ElimStorePlain]: Start of recursive call 22: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:10,620 INFO L267 ElimStorePlain]: Start of recursive call 20: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:11,674 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 186 treesize of output 184 [2018-11-23 11:13:11,715 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 180 treesize of output 161 [2018-11-23 11:13:11,718 INFO L267 ElimStorePlain]: Start of recursive call 24: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:12,061 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 161 treesize of output 150 [2018-11-23 11:13:12,064 INFO L267 ElimStorePlain]: Start of recursive call 25: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:12,375 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:13:12,376 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 159 treesize of output 155 [2018-11-23 11:13:12,379 INFO L267 ElimStorePlain]: Start of recursive call 26: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:12,678 INFO L267 ElimStorePlain]: Start of recursive call 23: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:13,646 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 186 treesize of output 184 [2018-11-23 11:13:13,681 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 180 treesize of output 161 [2018-11-23 11:13:13,683 INFO L267 ElimStorePlain]: Start of recursive call 28: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:14,012 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 161 treesize of output 150 [2018-11-23 11:13:14,015 INFO L267 ElimStorePlain]: Start of recursive call 29: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:14,299 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 159 treesize of output 140 [2018-11-23 11:13:14,302 INFO L267 ElimStorePlain]: Start of recursive call 30: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:14,477 INFO L267 ElimStorePlain]: Start of recursive call 27: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:15,396 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,403 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,405 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,410 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,421 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,432 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,476 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 140 treesize of output 174 [2018-11-23 11:13:15,559 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:15,669 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 5 case distinctions, treesize of input 166 treesize of output 205 [2018-11-23 11:13:15,951 INFO L267 ElimStorePlain]: Start of recursive call 32: 24 dim-0 vars, End of recursive call: 24 dim-0 vars, and 15 xjuncts. [2018-11-23 11:13:17,258 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:17,259 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 133 treesize of output 122 [2018-11-23 11:13:17,264 INFO L267 ElimStorePlain]: Start of recursive call 33: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:17,879 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 115 treesize of output 105 [2018-11-23 11:13:17,881 INFO L267 ElimStorePlain]: Start of recursive call 34: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:18,413 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 116 treesize of output 111 [2018-11-23 11:13:18,415 INFO L267 ElimStorePlain]: Start of recursive call 35: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:18,957 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 111 treesize of output 102 [2018-11-23 11:13:18,960 INFO L267 ElimStorePlain]: Start of recursive call 36: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:19,438 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 102 treesize of output 92 [2018-11-23 11:13:19,443 INFO L267 ElimStorePlain]: Start of recursive call 37: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:19,891 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 105 treesize of output 100 [2018-11-23 11:13:19,893 INFO L267 ElimStorePlain]: Start of recursive call 38: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:20,347 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 125 treesize of output 116 [2018-11-23 11:13:20,352 INFO L267 ElimStorePlain]: Start of recursive call 39: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:20,767 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 116 treesize of output 106 [2018-11-23 11:13:20,769 INFO L267 ElimStorePlain]: Start of recursive call 40: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:21,200 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:21,201 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 116 treesize of output 105 [2018-11-23 11:13:21,205 INFO L267 ElimStorePlain]: Start of recursive call 41: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:21,584 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 98 treesize of output 88 [2018-11-23 11:13:21,587 INFO L267 ElimStorePlain]: Start of recursive call 42: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:21,886 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:21,887 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 106 treesize of output 101 [2018-11-23 11:13:21,891 INFO L267 ElimStorePlain]: Start of recursive call 43: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:22,141 INFO L267 ElimStorePlain]: Start of recursive call 31: 12 dim-1 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:13:23,463 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 161 treesize of output 159 [2018-11-23 11:13:23,480 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:13:23,481 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 143 treesize of output 128 [2018-11-23 11:13:23,483 INFO L267 ElimStorePlain]: Start of recursive call 45: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:23,790 INFO L267 ElimStorePlain]: Start of recursive call 44: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:25,054 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,061 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,065 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,071 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,074 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,086 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:25,137 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 140 treesize of output 174 [2018-11-23 11:13:25,238 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 166 treesize of output 174 [2018-11-23 11:13:25,250 INFO L267 ElimStorePlain]: Start of recursive call 47: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 2 xjuncts. [2018-11-23 11:13:26,131 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:26,132 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 126 treesize of output 121 [2018-11-23 11:13:26,137 INFO L267 ElimStorePlain]: Start of recursive call 48: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:26,700 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 112 treesize of output 105 [2018-11-23 11:13:26,706 INFO L267 ElimStorePlain]: Start of recursive call 49: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:27,231 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 125 treesize of output 113 [2018-11-23 11:13:27,235 INFO L267 ElimStorePlain]: Start of recursive call 50: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:27,777 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:27,778 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 133 treesize of output 122 [2018-11-23 11:13:27,784 INFO L267 ElimStorePlain]: Start of recursive call 51: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:28,271 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 115 treesize of output 110 [2018-11-23 11:13:28,286 INFO L267 ElimStorePlain]: Start of recursive call 52: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:28,766 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 110 treesize of output 100 [2018-11-23 11:13:28,769 INFO L267 ElimStorePlain]: Start of recursive call 53: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:29,248 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:29,249 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 116 treesize of output 105 [2018-11-23 11:13:29,259 INFO L267 ElimStorePlain]: Start of recursive call 54: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:29,648 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 105 treesize of output 100 [2018-11-23 11:13:29,650 INFO L267 ElimStorePlain]: Start of recursive call 55: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:30,048 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:30,049 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 113 treesize of output 108 [2018-11-23 11:13:30,054 INFO L267 ElimStorePlain]: Start of recursive call 56: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:30,412 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 99 treesize of output 92 [2018-11-23 11:13:30,415 INFO L267 ElimStorePlain]: Start of recursive call 57: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:30,742 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 98 treesize of output 88 [2018-11-23 11:13:30,744 INFO L267 ElimStorePlain]: Start of recursive call 58: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:31,007 INFO L267 ElimStorePlain]: Start of recursive call 46: 12 dim-1 vars, End of recursive call: 2 dim-0 vars, and 3 xjuncts. [2018-11-23 11:13:32,519 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,521 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,523 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,525 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,527 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,529 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,555 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,581 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:32,583 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 12 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 0 case distinctions, treesize of input 92 treesize of output 108 [2018-11-23 11:13:32,768 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 6 case distinctions, treesize of input 18 treesize of output 67 [2018-11-23 11:13:32,768 WARN L138 XnfTransformerHelper]: expecting exponential blowup for input size 6 [2018-11-23 11:13:34,553 INFO L267 ElimStorePlain]: Start of recursive call 60: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:34,656 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 18 [2018-11-23 11:13:34,660 INFO L267 ElimStorePlain]: Start of recursive call 61: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:34,704 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 12 [2018-11-23 11:13:34,706 INFO L267 ElimStorePlain]: Start of recursive call 62: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:34,734 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 1 [2018-11-23 11:13:34,736 INFO L267 ElimStorePlain]: Start of recursive call 63: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:34,746 INFO L267 ElimStorePlain]: Start of recursive call 59: 4 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:34,758 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:34,765 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:34,772 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:34,773 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:34,779 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:34,816 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 8 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 2 case distinctions, treesize of input 88 treesize of output 104 [2018-11-23 11:13:34,886 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 47 treesize of output 57 [2018-11-23 11:13:34,910 INFO L267 ElimStorePlain]: Start of recursive call 65: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,046 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2018-11-23 11:13:35,047 INFO L267 ElimStorePlain]: Start of recursive call 66: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,133 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 60 [2018-11-23 11:13:35,140 INFO L267 ElimStorePlain]: Start of recursive call 67: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,198 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 35 [2018-11-23 11:13:35,203 INFO L267 ElimStorePlain]: Start of recursive call 68: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,281 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 14 [2018-11-23 11:13:35,283 INFO L267 ElimStorePlain]: Start of recursive call 69: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,313 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2018-11-23 11:13:35,315 INFO L267 ElimStorePlain]: Start of recursive call 70: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,338 INFO L267 ElimStorePlain]: Start of recursive call 64: 9 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:35,368 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,370 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,376 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,378 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,381 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,383 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,385 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,388 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:35,389 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 12 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 0 case distinctions, treesize of input 92 treesize of output 108 [2018-11-23 11:13:35,548 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 6 new quantified variables, introduced 6 case distinctions, treesize of input 18 treesize of output 67 [2018-11-23 11:13:35,549 WARN L138 XnfTransformerHelper]: expecting exponential blowup for input size 6 [2018-11-23 11:13:36,734 INFO L267 ElimStorePlain]: Start of recursive call 72: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:36,836 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 18 [2018-11-23 11:13:36,840 INFO L267 ElimStorePlain]: Start of recursive call 73: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:36,890 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 1 [2018-11-23 11:13:36,891 INFO L267 ElimStorePlain]: Start of recursive call 74: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:36,923 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 12 [2018-11-23 11:13:36,925 INFO L267 ElimStorePlain]: Start of recursive call 75: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:36,937 INFO L267 ElimStorePlain]: Start of recursive call 71: 4 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:37,111 INFO L267 ElimStorePlain]: Start of recursive call 1: 8 dim-0 vars, 12 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:37,112 INFO L202 ElimStorePlain]: Needed 75 recursive calls to eliminate 20 variables, input treesize:745, output treesize:9 [2018-11-23 11:13:37,165 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:37,166 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_$Pointer$.base|, main_~s~0.base, |#memory_int|, |#memory_$Pointer$.offset|, v_prenex_15, v_prenex_19, v_prenex_17, v_prenex_16, v_prenex_18, v_main_~s~0.base_BEFORE_CALL_3, v_prenex_28, v_prenex_26, v_prenex_24, v_prenex_27, v_prenex_25, v_prenex_23, v_prenex_21, v_prenex_20, v_prenex_22, v_prenex_29]. (let ((.cse3 (= (_ bv3 32) main_~expected~0))) (or (let ((.cse4 (select |#memory_$Pointer$.offset| main_~s~0.base)) (.cse11 (select |#memory_$Pointer$.base| main_~s~0.base))) (let ((.cse7 (select |#memory_$Pointer$.offset| v_prenex_15)) (.cse10 (select |#memory_$Pointer$.base| v_prenex_15)) (.cse9 (select .cse11 (_ bv0 32))) (.cse5 (select .cse4 (_ bv0 32)))) (let ((.cse0 (select (select |#memory_int| .cse9) (bvadd .cse5 (_ bv8 32)))) (.cse2 (select .cse10 (_ bv0 32))) (.cse6 (select .cse7 (_ bv0 32))) (.cse8 (select .cse11 (_ bv4 32))) (.cse1 (select .cse10 (_ bv4 32)))) (and (= (_ bv3 32) .cse0) (= .cse1 .cse2) (= |main_#t~ret16| .cse0) .cse3 (= (bvadd (select .cse4 (_ bv4 32)) (_ bv4294967288 32)) .cse5) (= (_ bv0 32) .cse6) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| .cse1) (_ bv4 32))) (= (bvadd (select .cse7 (_ bv4 32)) (_ bv4294967288 32)) .cse6) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| .cse8) (_ bv4 32))) (= .cse8 .cse9) (= (_ bv3 32) (select (select |#memory_int| .cse2) (bvadd .cse6 (_ bv8 32)))) (= .cse5 (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| .cse8) (_ bv4 32)) main_~s~0.base) (= v_prenex_15 (select (select |#memory_$Pointer$.base| .cse1) (_ bv4 32))))))) (let ((.cse24 (select v_prenex_19 v_main_~s~0.base_BEFORE_CALL_3)) (.cse18 (select v_prenex_18 v_prenex_17)) (.cse25 (select v_prenex_19 v_prenex_17))) (let ((.cse20 (select .cse25 (_ bv0 32))) (.cse19 (select .cse18 (_ bv0 32))) (.cse23 (select v_prenex_18 v_main_~s~0.base_BEFORE_CALL_3)) (.cse22 (select .cse24 (_ bv4 32)))) (let ((.cse12 (select v_prenex_19 .cse22)) (.cse14 (select v_prenex_18 .cse22)) (.cse13 (select .cse23 (_ bv4 32))) (.cse17 (select (select v_prenex_16 .cse20) (bvadd .cse19 (_ bv8 32)))) (.cse16 (select .cse25 (_ bv4 32))) (.cse21 (select .cse24 (_ bv0 32))) (.cse15 (select .cse23 (_ bv0 32)))) (and (= v_main_~s~0.base_BEFORE_CALL_3 (select .cse12 .cse13)) (= (_ bv0 32) (select .cse14 (_ bv4 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select .cse12 (_ bv4 32))) (= (_ bv0 32) .cse15) (= (select .cse14 .cse13) (_ bv0 32)) (= (select (select v_prenex_19 .cse16) (_ bv4 32)) v_prenex_17) .cse3 (= |main_#t~ret16| .cse17) (= (_ bv0 32) (select (select v_prenex_18 .cse16) (_ bv4 32))) (= (bvadd (select .cse18 (_ bv4 32)) (_ bv4294967288 32)) .cse19) (= .cse19 (_ bv0 32)) (= (_ bv3 32) .cse17) (= .cse16 .cse20) (not (= v_main_~s~0.base_BEFORE_CALL_3 .cse21)) (= .cse22 .cse21) (= (_ bv3 32) (select (select v_prenex_16 .cse21) (bvadd .cse15 (_ bv8 32)))))))) (let ((.cse37 (select v_prenex_27 v_prenex_26)) (.cse39 (select v_prenex_28 v_prenex_26))) (let ((.cse36 (select v_prenex_27 v_prenex_25)) (.cse26 (select .cse39 (_ bv0 32))) (.cse30 (select .cse37 (_ bv0 32))) (.cse38 (select v_prenex_28 v_prenex_25)) (.cse31 (select .cse39 (_ bv4 32)))) (let ((.cse32 (select v_prenex_27 .cse31)) (.cse28 (select .cse38 (_ bv0 32))) (.cse27 (select (select v_prenex_24 .cse26) (bvadd .cse30 (_ bv8 32)))) (.cse34 (select .cse38 (_ bv4 32))) (.cse29 (select .cse36 (_ bv0 32))) (.cse35 (select v_prenex_28 .cse31)) (.cse33 (select .cse37 (_ bv4 32)))) (and (not (= .cse26 v_prenex_26)) (= |main_#t~ret16| .cse27) (= (_ bv3 32) (select (select v_prenex_24 .cse28) (bvadd .cse29 (_ bv8 32)))) (= .cse30 (_ bv0 32)) (= .cse31 .cse26) .cse3 (= (_ bv0 32) (select .cse32 (_ bv4 32))) (= (_ bv0 32) (select .cse32 .cse33)) (= .cse34 .cse28) (= v_prenex_25 (select (select v_prenex_28 .cse34) (_ bv4 32))) (= (_ bv0 32) .cse29) (= (select .cse35 (_ bv4 32)) v_prenex_26) (= (_ bv3 32) .cse27) (= (_ bv0 32) (select (select v_prenex_27 .cse34) (_ bv4 32))) (= (bvadd (select .cse36 (_ bv4 32)) (_ bv4294967288 32)) .cse29) (= (select .cse35 .cse33) v_prenex_26))))) (let ((.cse54 (select v_prenex_23 v_prenex_29)) (.cse53 (select v_prenex_22 v_prenex_21)) (.cse56 (select v_prenex_23 v_prenex_21))) (let ((.cse40 (select .cse56 (_ bv4 32))) (.cse41 (select .cse56 (_ bv0 32))) (.cse50 (select .cse53 (_ bv0 32))) (.cse44 (select .cse54 (_ bv4 32))) (.cse55 (select v_prenex_22 v_prenex_29))) (let ((.cse48 (select .cse55 (_ bv0 32))) (.cse43 (select .cse55 (_ bv4 32))) (.cse42 (select v_prenex_22 .cse44)) (.cse49 (select v_prenex_23 .cse44)) (.cse45 (select .cse54 (_ bv0 32))) (.cse46 (select (select v_prenex_20 .cse41) (bvadd .cse50 (_ bv8 32)))) (.cse47 (select v_prenex_23 .cse40)) (.cse51 (select v_prenex_22 .cse40)) (.cse52 (select .cse53 (_ bv4 32)))) (and (= .cse40 .cse41) (= (select .cse42 .cse43) (_ bv0 32)) (= .cse44 .cse45) .cse3 (= (_ bv3 32) .cse46) (= (select .cse47 (_ bv4 32)) v_prenex_21) (= (_ bv3 32) (select (select v_prenex_20 .cse45) (bvadd .cse48 (_ bv8 32)))) (= (_ bv0 32) .cse48) (= v_prenex_29 (select .cse49 .cse43)) (not (= .cse41 v_prenex_21)) (= .cse50 (_ bv0 32)) (= (_ bv0 32) (select .cse42 (_ bv4 32))) (= (_ bv0 32) (select .cse51 (_ bv4 32))) (= v_prenex_29 (select .cse49 (_ bv4 32))) (not (= v_prenex_29 .cse45)) (= |main_#t~ret16| .cse46) (= (select .cse47 .cse52) v_prenex_21) (= (_ bv0 32) (select .cse51 .cse52)))))))) [2018-11-23 11:13:37,166 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (_ bv0 32) (bvadd |main_#t~ret16| (_ bv4294967293 32))) (= (_ bv3 32) main_~expected~0)) [2018-11-23 11:13:37,289 INFO L256 TraceCheckUtils]: 0: Hoare triple {2465#true} call ULTIMATE.init(); {2465#true} is VALID [2018-11-23 11:13:37,289 INFO L273 TraceCheckUtils]: 1: Hoare triple {2465#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1]; {2465#true} is VALID [2018-11-23 11:13:37,290 INFO L273 TraceCheckUtils]: 2: Hoare triple {2465#true} assume true; {2465#true} is VALID [2018-11-23 11:13:37,290 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2465#true} {2465#true} #152#return; {2465#true} is VALID [2018-11-23 11:13:37,290 INFO L256 TraceCheckUtils]: 4: Hoare triple {2465#true} call #t~ret17 := main(); {2465#true} is VALID [2018-11-23 11:13:37,291 INFO L273 TraceCheckUtils]: 5: Hoare triple {2465#true} ~len~0 := 2bv32;~data~0 := 1bv32; {2485#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} is VALID [2018-11-23 11:13:37,291 INFO L256 TraceCheckUtils]: 6: Hoare triple {2485#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} call #t~ret13.base, #t~ret13.offset := dll_circular_create(~len~0, ~data~0); {2465#true} is VALID [2018-11-23 11:13:37,291 INFO L273 TraceCheckUtils]: 7: Hoare triple {2465#true} ~len := #in~len;~data := #in~data; {2465#true} is VALID [2018-11-23 11:13:37,291 INFO L256 TraceCheckUtils]: 8: Hoare triple {2465#true} call #t~ret3.base, #t~ret3.offset := node_create(~data); {2465#true} is VALID [2018-11-23 11:13:37,292 INFO L273 TraceCheckUtils]: 9: Hoare triple {2465#true} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {2498#(and (= (bvadd (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (_ bv0 1)) (= node_create_~temp~0.offset (_ bv0 32)))} is VALID [2018-11-23 11:13:37,293 INFO L273 TraceCheckUtils]: 10: Hoare triple {2498#(and (= (bvadd (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (_ bv0 1)) (= node_create_~temp~0.offset (_ bv0 32)))} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {2498#(and (= (bvadd (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (_ bv0 1)) (= node_create_~temp~0.offset (_ bv0 32)))} is VALID [2018-11-23 11:13:37,294 INFO L273 TraceCheckUtils]: 11: Hoare triple {2498#(and (= (bvadd (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (_ bv0 1)) (= node_create_~temp~0.offset (_ bv0 32)))} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {2505#(and (= (_ bv1 1) (select |#valid| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,295 INFO L273 TraceCheckUtils]: 12: Hoare triple {2505#(and (= (_ bv1 1) (select |#valid| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} assume true; {2505#(and (= (_ bv1 1) (select |#valid| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,297 INFO L268 TraceCheckUtils]: 13: Hoare quadruple {2505#(and (= (_ bv1 1) (select |#valid| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} {2465#true} #148#return; {2512#(and (= (_ bv1 1) (select |#valid| |dll_circular_create_#t~ret3.base|)) (= |dll_circular_create_#t~ret3.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,298 INFO L273 TraceCheckUtils]: 14: Hoare triple {2512#(and (= (_ bv1 1) (select |#valid| |dll_circular_create_#t~ret3.base|)) (= |dll_circular_create_#t~ret3.offset| (_ bv0 32)))} ~head~0.base, ~head~0.offset := #t~ret3.base, #t~ret3.offset;havoc #t~ret3.base, #t~ret3.offset;~last~0.base, ~last~0.offset := ~head~0.base, ~head~0.offset; {2516#(and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (bvadd (select |#valid| dll_circular_create_~head~0.base) (_ bv1 1)) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} is VALID [2018-11-23 11:13:37,299 INFO L273 TraceCheckUtils]: 15: Hoare triple {2516#(and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (bvadd (select |#valid| dll_circular_create_~head~0.base) (_ bv1 1)) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} assume !!~bvsgt32(~len, 1bv32); {2516#(and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (bvadd (select |#valid| dll_circular_create_~head~0.base) (_ bv1 1)) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} is VALID [2018-11-23 11:13:37,299 INFO L256 TraceCheckUtils]: 16: Hoare triple {2516#(and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (bvadd (select |#valid| dll_circular_create_~head~0.base) (_ bv1 1)) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} call #t~ret4.base, #t~ret4.offset := node_create(~data); {2523#(= |#valid| |old(#valid)|)} is VALID [2018-11-23 11:13:37,307 INFO L273 TraceCheckUtils]: 17: Hoare triple {2523#(= |#valid| |old(#valid)|)} ~data := #in~data;call #t~malloc2.base, #t~malloc2.offset := #Ultimate.alloc(12bv32);~temp~0.base, ~temp~0.offset := #t~malloc2.base, #t~malloc2.offset; {2527#(and (= node_create_~temp~0.offset (_ bv0 32)) (= (_ bv0 1) (select |old(#valid)| node_create_~temp~0.base)))} is VALID [2018-11-23 11:13:37,307 INFO L273 TraceCheckUtils]: 18: Hoare triple {2527#(and (= node_create_~temp~0.offset (_ bv0 32)) (= (_ bv0 1) (select |old(#valid)| node_create_~temp~0.base)))} assume !(0bv32 == ~temp~0.base && 0bv32 == ~temp~0.offset); {2527#(and (= node_create_~temp~0.offset (_ bv0 32)) (= (_ bv0 1) (select |old(#valid)| node_create_~temp~0.base)))} is VALID [2018-11-23 11:13:37,310 INFO L273 TraceCheckUtils]: 19: Hoare triple {2527#(and (= node_create_~temp~0.offset (_ bv0 32)) (= (_ bv0 1) (select |old(#valid)| node_create_~temp~0.base)))} call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~temp~0.offset, 4bv32);call write~$Pointer$(0bv32, 0bv32, ~temp~0.base, ~bvadd32(4bv32, ~temp~0.offset), 4bv32);call write~intINTTYPE4(~data, ~temp~0.base, ~bvadd32(8bv32, ~temp~0.offset), 4bv32);#res.base, #res.offset := ~temp~0.base, ~temp~0.offset; {2534#(and (= (_ bv0 1) (select |old(#valid)| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,310 INFO L273 TraceCheckUtils]: 20: Hoare triple {2534#(and (= (_ bv0 1) (select |old(#valid)| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} assume true; {2534#(and (= (_ bv0 1) (select |old(#valid)| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,312 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {2534#(and (= (_ bv0 1) (select |old(#valid)| |node_create_#res.base|)) (= |node_create_#res.offset| (_ bv0 32)))} {2516#(and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (bvadd (select |#valid| dll_circular_create_~head~0.base) (_ bv1 1)) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} #150#return; {2541#(and (not (= dll_circular_create_~head~0.base |dll_circular_create_#t~ret4.base|)) (= (_ bv0 32) |dll_circular_create_#t~ret4.offset|) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} is VALID [2018-11-23 11:13:37,314 INFO L273 TraceCheckUtils]: 22: Hoare triple {2541#(and (not (= dll_circular_create_~head~0.base |dll_circular_create_#t~ret4.base|)) (= (_ bv0 32) |dll_circular_create_#t~ret4.offset|) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} ~new_head~0.base, ~new_head~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4bv32); {2545#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~new_head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~new_head~0.base)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~new_head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} is VALID [2018-11-23 11:13:37,316 INFO L273 TraceCheckUtils]: 23: Hoare triple {2545#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~new_head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~new_head~0.base)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~new_head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base))} assume ~head~0.base != 0bv32 || ~head~0.offset != 0bv32;call write~$Pointer$(~new_head~0.base, ~new_head~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32); {2549#(and (= dll_circular_create_~last~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (= dll_circular_create_~new_head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (_ bv0 32) dll_circular_create_~new_head~0.offset) (not (= dll_circular_create_~new_head~0.base dll_circular_create_~last~0.base)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| dll_circular_create_~new_head~0.base) (_ bv0 32))) (= dll_circular_create_~new_head~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (_ bv4 32))))} is VALID [2018-11-23 11:13:37,318 INFO L273 TraceCheckUtils]: 24: Hoare triple {2549#(and (= dll_circular_create_~last~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (= dll_circular_create_~new_head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (_ bv0 32) dll_circular_create_~new_head~0.offset) (not (= dll_circular_create_~new_head~0.base dll_circular_create_~last~0.base)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| dll_circular_create_~new_head~0.base) (_ bv0 32))) (= dll_circular_create_~new_head~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~new_head~0.base) dll_circular_create_~new_head~0.offset)) (_ bv4 32))))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset;#t~post5 := ~len;~len := ~bvsub32(#t~post5, 1bv32);havoc #t~post5; {2553#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~head~0.base) (_ bv0 32)) (_ bv0 32)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~last~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset)) (_ bv4 32)) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)))} is VALID [2018-11-23 11:13:37,320 INFO L273 TraceCheckUtils]: 25: Hoare triple {2553#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~head~0.base) (_ bv0 32)) (_ bv0 32)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~last~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset)) (_ bv4 32)) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)))} assume !~bvsgt32(~len, 1bv32); {2553#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~head~0.base) (_ bv0 32)) (_ bv0 32)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~last~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset)) (_ bv4 32)) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)))} is VALID [2018-11-23 11:13:37,326 INFO L273 TraceCheckUtils]: 26: Hoare triple {2553#(and (= (select (select |#memory_$Pointer$.offset| dll_circular_create_~head~0.base) (_ bv0 32)) (_ bv0 32)) (= dll_circular_create_~head~0.base (select (select |#memory_$Pointer$.base| dll_circular_create_~last~0.base) (_ bv4 32))) (= (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset) dll_circular_create_~last~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| dll_circular_create_~head~0.base) dll_circular_create_~head~0.offset)) (_ bv4 32)) dll_circular_create_~head~0.offset) (= (_ bv0 32) dll_circular_create_~head~0.offset) (not (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)))} call write~$Pointer$(~head~0.base, ~head~0.offset, ~last~0.base, ~last~0.offset, 4bv32);call write~$Pointer$(~last~0.base, ~last~0.offset, ~head~0.base, ~bvadd32(4bv32, ~head~0.offset), 4bv32);#res.base, #res.offset := ~head~0.base, ~head~0.offset; {2560#(and (= (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|) (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32))))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (_ bv0 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))) (not (= (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)))) (= |dll_circular_create_#res.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))))} is VALID [2018-11-23 11:13:37,328 INFO L273 TraceCheckUtils]: 27: Hoare triple {2560#(and (= (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|) (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32))))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (_ bv0 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))) (not (= (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)))) (= |dll_circular_create_#res.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))))} assume true; {2560#(and (= (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|) (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32))))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (_ bv0 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))) (not (= (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)))) (= |dll_circular_create_#res.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))))} is VALID [2018-11-23 11:13:37,330 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {2560#(and (= (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|) (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (bvadd |dll_circular_create_#res.offset| (_ bv4 32))))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|) (_ bv0 32))) (= (_ bv0 32) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))) (not (= (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)))) (= |dll_circular_create_#res.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|)) (_ bv4 32))))} {2485#(= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))} #140#return; {2567#(and (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select |#memory_$Pointer$.base| |main_#t~ret13.base|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (_ bv0 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (_ bv4 32)) |main_#t~ret13.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (_ bv4 32)) |main_#t~ret13.base|) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) |main_#t~ret13.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) |main_#t~ret13.base|) (= (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|) (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) (= |main_#t~ret13.offset| (_ bv0 32)))} is VALID [2018-11-23 11:13:37,334 INFO L273 TraceCheckUtils]: 29: Hoare triple {2567#(and (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select |#memory_$Pointer$.base| |main_#t~ret13.base|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (_ bv0 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (_ bv4 32)) |main_#t~ret13.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (_ bv4 32)) |main_#t~ret13.base|) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) |main_#t~ret13.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) |main_#t~ret13.base|) (= (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) |main_#t~ret13.offset|) (select (select |#memory_$Pointer$.base| |main_#t~ret13.base|) (bvadd |main_#t~ret13.offset| (_ bv4 32)))) (= |main_#t~ret13.offset| (_ bv0 32)))} ~s~0.base, ~s~0.offset := #t~ret13.base, #t~ret13.offset;havoc #t~ret13.base, #t~ret13.offset;~i~0 := 0bv32;~i~0 := ~bvsub32(~len~0, 1bv32); {2571#(and (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32))) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32)) main_~s~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.offset) (= (bvadd main_~i~0 (_ bv1 32)) main_~len~0) (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select |#memory_$Pointer$.base| main_~s~0.base))))} is VALID [2018-11-23 11:13:37,337 INFO L273 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32))) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32)) main_~s~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.offset) (= (bvadd main_~i~0 (_ bv1 32)) main_~len~0) (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select |#memory_$Pointer$.base| main_~s~0.base))))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {2575#(and (= (bvadd main_~len~0 (_ bv4294967295 32)) (bvadd (bvneg main_~len~0) main_~new_data~0)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32))) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32)) main_~s~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.offset) (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select |#memory_$Pointer$.base| main_~s~0.base))))} is VALID [2018-11-23 11:13:37,338 INFO L256 TraceCheckUtils]: 31: Hoare triple {2575#(and (= (bvadd main_~len~0 (_ bv4294967295 32)) (bvadd (bvneg main_~len~0) main_~new_data~0)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32))) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32)) main_~s~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.offset) (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select |#memory_$Pointer$.base| main_~s~0.base))))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {2579#(and (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2018-11-23 11:13:37,339 INFO L273 TraceCheckUtils]: 32: Hoare triple {2579#(and (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {2583#(and (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} is VALID [2018-11-23 11:13:37,342 INFO L273 TraceCheckUtils]: 33: Hoare triple {2583#(and (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} assume !!~bvsgt32(~index, 0bv32);call #t~mem11.base, #t~mem11.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32);~head.base, ~head.offset := #t~mem11.base, #t~mem11.offset;havoc #t~mem11.base, #t~mem11.offset;#t~post12 := ~index;~index := ~bvsub32(#t~post12, 1bv32);havoc #t~post12; {2587#(and (= dll_circular_update_at_~head.base (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) dll_circular_update_at_~head.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} is VALID [2018-11-23 11:13:37,343 INFO L273 TraceCheckUtils]: 34: Hoare triple {2587#(and (= dll_circular_update_at_~head.base (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) dll_circular_update_at_~head.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} assume !~bvsgt32(~index, 0bv32); {2587#(and (= dll_circular_update_at_~head.base (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) dll_circular_update_at_~head.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} is VALID [2018-11-23 11:13:37,346 INFO L273 TraceCheckUtils]: 35: Hoare triple {2587#(and (= dll_circular_update_at_~head.base (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) dll_circular_update_at_~head.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~data| dll_circular_update_at_~data))} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {2594#(and (= (store |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.offset| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32))))) |#memory_$Pointer$.offset|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.base| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))) (= |dll_circular_update_at_#in~data| (select (select |#memory_int| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))} is VALID [2018-11-23 11:13:37,347 INFO L273 TraceCheckUtils]: 36: Hoare triple {2594#(and (= (store |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.offset| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32))))) |#memory_$Pointer$.offset|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.base| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))) (= |dll_circular_update_at_#in~data| (select (select |#memory_int| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))} assume true; {2594#(and (= (store |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.offset| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32))))) |#memory_$Pointer$.offset|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.base| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))) (= |dll_circular_update_at_#in~data| (select (select |#memory_int| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))} is VALID [2018-11-23 11:13:37,361 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {2594#(and (= (store |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.offset)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.offset| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32))))) |#memory_$Pointer$.offset|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (store (select |old(#memory_$Pointer$.base)| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)) (select (select |#memory_$Pointer$.base| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))) (= |dll_circular_update_at_#in~data| (select (select |#memory_int| (select (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|)) (bvadd (select (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) |dll_circular_update_at_#in~head.offset|) (_ bv8 32)))))} {2575#(and (= (bvadd main_~len~0 (_ bv4294967295 32)) (bvadd (bvneg main_~len~0) main_~new_data~0)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32))) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (_ bv4 32)) main_~s~0.base) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.offset) (not (= (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (select |#memory_$Pointer$.base| main_~s~0.base))))} #142#return; {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,361 INFO L273 TraceCheckUtils]: 38: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,362 INFO L273 TraceCheckUtils]: 39: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} assume !!~bvsgt32(~i~0, 4294967295bv32);~new_data~0 := ~bvadd32(~i~0, ~len~0); {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,364 INFO L256 TraceCheckUtils]: 40: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} call dll_circular_update_at(~s~0.base, ~s~0.offset, ~new_data~0, ~i~0); {2611#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2018-11-23 11:13:37,365 INFO L273 TraceCheckUtils]: 41: Hoare triple {2611#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~data := #in~data;~index := #in~index; {2615#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset))} is VALID [2018-11-23 11:13:37,366 INFO L273 TraceCheckUtils]: 42: Hoare triple {2615#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset))} assume !~bvsgt32(~index, 0bv32); {2615#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset))} is VALID [2018-11-23 11:13:37,398 INFO L273 TraceCheckUtils]: 43: Hoare triple {2615#(and (= |old(#memory_int)| |#memory_int|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |dll_circular_update_at_#in~head.base| dll_circular_update_at_~head.base) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (= |dll_circular_update_at_#in~head.offset| dll_circular_update_at_~head.offset))} call write~intINTTYPE4(~data, ~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32); {2622#(and (= (store |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32))))) |#memory_$Pointer$.offset|) (exists ((dll_circular_update_at_~data (_ BitVec 32))) (= (store |old(#memory_int)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_int)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) dll_circular_update_at_~data)) |#memory_int|)) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)))))))} is VALID [2018-11-23 11:13:37,399 INFO L273 TraceCheckUtils]: 44: Hoare triple {2622#(and (= (store |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32))))) |#memory_$Pointer$.offset|) (exists ((dll_circular_update_at_~data (_ BitVec 32))) (= (store |old(#memory_int)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_int)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) dll_circular_update_at_~data)) |#memory_int|)) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)))))))} assume true; {2622#(and (= (store |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32))))) |#memory_$Pointer$.offset|) (exists ((dll_circular_update_at_~data (_ BitVec 32))) (= (store |old(#memory_int)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_int)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) dll_circular_update_at_~data)) |#memory_int|)) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)))))))} is VALID [2018-11-23 11:13:37,410 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {2622#(and (= (store |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.offset)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.offset| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32))))) |#memory_$Pointer$.offset|) (exists ((dll_circular_update_at_~data (_ BitVec 32))) (= (store |old(#memory_int)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_int)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) dll_circular_update_at_~data)) |#memory_int|)) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base| (store (select |old(#memory_$Pointer$.base)| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)) (select (select |#memory_$Pointer$.base| |dll_circular_update_at_#in~head.base|) (bvadd |dll_circular_update_at_#in~head.offset| (_ bv8 32)))))))} {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} #142#return; {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,411 INFO L273 TraceCheckUtils]: 46: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} #t~post14 := ~i~0;~i~0 := ~bvsub32(#t~post14, 1bv32);havoc #t~post14; {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,412 INFO L273 TraceCheckUtils]: 47: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} assume !~bvsgt32(~i~0, 4294967295bv32); {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} is VALID [2018-11-23 11:13:37,413 INFO L273 TraceCheckUtils]: 48: Hoare triple {2601#(or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))))} ~i~0 := ~bvsub32(~len~0, 1bv32); {2638#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0)))) (= (bvadd main_~i~0 (_ bv1 32)) main_~len~0))} is VALID [2018-11-23 11:13:37,418 INFO L273 TraceCheckUtils]: 49: Hoare triple {2638#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0))) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base) (= (bvadd (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32))) (_ bv1 32)) (bvadd (bvneg (bvneg main_~len~0)) main_~len~0)))) (= (bvadd main_~i~0 (_ bv1 32)) main_~len~0))} assume !!~bvsgt32(~i~0, 4294967295bv32);~expected~0 := ~bvadd32(~i~0, ~len~0); {2642#(or (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (_ bv3 32) main_~expected~0) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base)) (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (_ bv3 32) main_~expected~0)))} is VALID [2018-11-23 11:13:37,427 INFO L256 TraceCheckUtils]: 50: Hoare triple {2642#(or (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (_ bv3 32) main_~expected~0) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base)) (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (_ bv3 32) main_~expected~0)))} call #t~ret16 := dll_circular_get_data_at(~s~0.base, ~s~0.offset, ~i~0); {2646#(or (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))))} is VALID [2018-11-23 11:13:37,436 INFO L273 TraceCheckUtils]: 51: Hoare triple {2646#(or (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~index := #in~index; {2650#(or (and (= |dll_circular_get_data_at_#in~head.base| dll_circular_get_data_at_~head.base) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= dll_circular_get_data_at_~head.offset |dll_circular_get_data_at_#in~head.offset|)) (and (= |dll_circular_get_data_at_#in~head.base| dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= dll_circular_get_data_at_~head.offset |dll_circular_get_data_at_#in~head.offset|)))} is VALID [2018-11-23 11:13:37,449 INFO L273 TraceCheckUtils]: 52: Hoare triple {2650#(or (and (= |dll_circular_get_data_at_#in~head.base| dll_circular_get_data_at_~head.base) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= dll_circular_get_data_at_~head.offset |dll_circular_get_data_at_#in~head.offset|)) (and (= |dll_circular_get_data_at_#in~head.base| dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= dll_circular_get_data_at_~head.offset |dll_circular_get_data_at_#in~head.offset|)))} assume !!~bvsgt32(~index, 0bv32);call #t~mem8.base, #t~mem8.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32);~head.base, ~head.offset := #t~mem8.base, #t~mem8.offset;havoc #t~mem8.base, #t~mem8.offset;#t~post9 := ~index;~index := ~bvsub32(#t~post9, 1bv32);havoc #t~post9; {2654#(or (and (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)) (and (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)))} is VALID [2018-11-23 11:13:37,450 INFO L273 TraceCheckUtils]: 53: Hoare triple {2654#(or (and (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)) (and (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)))} assume !~bvsgt32(~index, 0bv32); {2654#(or (and (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)) (and (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)))} is VALID [2018-11-23 11:13:37,696 INFO L273 TraceCheckUtils]: 54: Hoare triple {2654#(or (and (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)))))) (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)) (and (= (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.base) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))))) (= (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) dll_circular_get_data_at_~head.offset)))} call #t~mem10 := read~intINTTYPE4(~head.base, ~bvadd32(8bv32, ~head.offset), 4bv32);#res := #t~mem10;havoc #t~mem10; {2661#(or (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32)))))) (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))))))))} is VALID [2018-11-23 11:13:37,697 INFO L273 TraceCheckUtils]: 55: Hoare triple {2661#(or (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32)))))) (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))))))))} assume true; {2661#(or (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32)))))) (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))))))))} is VALID [2018-11-23 11:13:37,705 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {2661#(or (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_prenex_15 (_ BitVec 32))) (and (= (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv4 32)) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32)) (_ bv8 32)))) (= v_prenex_15 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_prenex_15) (_ bv0 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_prenex_15) (_ bv4 32))) (_ bv4 32)))))) (and (= |dll_circular_get_data_at_#res| (select (select |#memory_int| (select (select |#memory_$Pointer$.base| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|)) (bvadd (select (select |#memory_$Pointer$.offset| |dll_circular_get_data_at_#in~head.base|) |dll_circular_get_data_at_#in~head.offset|) (_ bv8 32)))) (exists ((v_main_~s~0.base_BEFORE_CALL_3 (_ BitVec 32))) (and (not (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (bvadd (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32)) (_ bv8 32)))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32)) (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv0 32))) (= v_main_~s~0.base_BEFORE_CALL_3 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))) (select (select |#memory_$Pointer$.offset| v_main_~s~0.base_BEFORE_CALL_3) (_ bv4 32))))))))} {2642#(or (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (not (= main_~s~0.base (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset))) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))))) (= (_ bv3 32) main_~expected~0) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) main_~s~0.base)) (and (= (_ bv3 32) (select (select |#memory_int| (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset) (_ bv8 32)))) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32)) main_~s~0.base) (= (bvadd (select (select |#memory_$Pointer$.offset| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (_ bv4294967288 32)) (select (select |#memory_$Pointer$.offset| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32))) (select (select |#memory_$Pointer$.base| main_~s~0.base) main_~s~0.offset)) (= main_~s~0.offset (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| main_~s~0.base) (bvadd main_~s~0.offset (_ bv4 32)))) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| main_~s~0.base) (_ bv0 32)) (_ bv0 32)) (= (_ bv3 32) main_~expected~0)))} #144#return; {2668#(and (= (_ bv3 32) main_~expected~0) (= (_ bv3 32) |main_#t~ret16|))} is VALID [2018-11-23 11:13:37,705 INFO L273 TraceCheckUtils]: 57: Hoare triple {2668#(and (= (_ bv3 32) main_~expected~0) (= (_ bv3 32) |main_#t~ret16|))} assume ~expected~0 != #t~ret16;havoc #t~ret16; {2466#false} is VALID [2018-11-23 11:13:37,706 INFO L273 TraceCheckUtils]: 58: Hoare triple {2466#false} assume !false; {2466#false} is VALID [2018-11-23 11:13:37,732 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 2 proven. 15 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 11:13:37,733 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:13:42,091 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification that was a NOOP. DAG size: 32 [2018-11-23 11:13:42,192 WARN L180 SmtUtils]: Spent 100.00 ms on a formula simplification that was a NOOP. DAG size: 32 [2018-11-23 11:13:42,459 WARN L180 SmtUtils]: Spent 264.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 11:13:42,672 WARN L180 SmtUtils]: Spent 212.00 ms on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 11:13:42,978 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:42,994 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:43,045 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:43,058 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:43,068 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2018-11-23 11:13:43,068 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:72, output treesize:41 [2018-11-23 11:13:45,104 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:45,104 WARN L384 uantifierElimination]: Input elimination task: ∀ [v_dll_circular_update_at_~data_8, |v_#memory_$Pointer$.base_66|, |v_#memory_$Pointer$.offset_66|]. (let ((.cse0 (bvadd main_~s~0.offset (_ bv8 32))) (.cse2 (select |v_#memory_$Pointer$.base_66| main_~s~0.base)) (.cse1 (select |v_#memory_$Pointer$.offset_66| main_~s~0.base))) (or (not (= |v_#memory_$Pointer$.offset_66| (store |#memory_$Pointer$.offset| main_~s~0.base (store (select |#memory_$Pointer$.offset| main_~s~0.base) .cse0 (select .cse1 .cse0))))) (not (= (store |#memory_$Pointer$.base| main_~s~0.base (store (select |#memory_$Pointer$.base| main_~s~0.base) .cse0 (select .cse2 .cse0))) |v_#memory_$Pointer$.base_66|)) (= (bvadd (bvmul (_ bv2 32) main_~len~0) (_ bv4294967295 32)) (select (select (store |#memory_int| main_~s~0.base (store (select |#memory_int| main_~s~0.base) .cse0 v_dll_circular_update_at_~data_8)) (select .cse2 main_~s~0.offset)) (bvadd (select .cse1 main_~s~0.offset) (_ bv8 32)))))) [2018-11-23 11:13:45,104 WARN L385 uantifierElimination]: ElimStorePlain result: ∀ [v_dll_circular_update_at_~data_8, v_DerPreprocessor_4, v_DerPreprocessor_2]. (= (bvadd (bvmul (_ bv2 32) main_~len~0) (_ bv4294967295 32)) (let ((.cse0 (bvadd main_~s~0.offset (_ bv8 32)))) (select (select (store |#memory_int| main_~s~0.base (store (select |#memory_int| main_~s~0.base) .cse0 v_dll_circular_update_at_~data_8)) (select (store (select |#memory_$Pointer$.base| main_~s~0.base) .cse0 v_DerPreprocessor_4) main_~s~0.offset)) (bvadd (select (store (select |#memory_$Pointer$.offset| main_~s~0.base) .cse0 v_DerPreprocessor_2) main_~s~0.offset) (_ bv8 32))))) [2018-11-23 11:13:45,609 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:13:45,609 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FPBP 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-23 11:13:45,619 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:13:45,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:13:45,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:13:45,726 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:13:45,750 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2018-11-23 11:13:45,752 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:45,758 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:45,758 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2018-11-23 11:13:45,762 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:45,762 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#valid_43|]. (and (= |#valid| (store |v_#valid_43| node_create_~temp~0.base (_ bv1 1))) (= node_create_~temp~0.offset (_ bv0 32))) [2018-11-23 11:13:45,763 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| node_create_~temp~0.base) (_ bv1 1)) (= node_create_~temp~0.offset (_ bv0 32))) [2018-11-23 11:13:46,194 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:46,195 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:46,196 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 4 [2018-11-23 11:13:46,197 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,209 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,209 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:19, output treesize:11 [2018-11-23 11:13:46,214 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:46,214 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#valid_BEFORE_CALL_4|]. (and (= (_ bv0 32) dll_circular_create_~head~0.offset) (= (_ bv0 1) (bvadd (select |v_#valid_BEFORE_CALL_4| dll_circular_create_~head~0.base) (_ bv1 1))) (= (select |v_#valid_BEFORE_CALL_4| |dll_circular_create_#t~ret4.base|) (_ bv0 1)) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)) [2018-11-23 11:13:46,214 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= dll_circular_create_~head~0.base |dll_circular_create_#t~ret4.base|)) (= (_ bv0 32) dll_circular_create_~head~0.offset) (= dll_circular_create_~head~0.base dll_circular_create_~last~0.base)) [2018-11-23 11:13:46,438 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 8 [2018-11-23 11:13:46,444 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:13:46,447 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,452 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,483 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 8 [2018-11-23 11:13:46,489 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:13:46,490 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,494 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,515 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,515 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:33, output treesize:25 [2018-11-23 11:13:46,781 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 24 [2018-11-23 11:13:46,787 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 11:13:46,788 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,804 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,858 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 31 [2018-11-23 11:13:46,865 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 7 [2018-11-23 11:13:46,866 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,889 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,910 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:46,911 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 2 variables, input treesize:41, output treesize:37 [2018-11-23 11:13:47,560 INFO L303 Elim1Store]: Index analysis took 105 ms [2018-11-23 11:13:47,561 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 125 treesize of output 102 [2018-11-23 11:13:47,601 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 23 [2018-11-23 11:13:47,603 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:47,813 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 104 treesize of output 84 [2018-11-23 11:13:47,837 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:47,838 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 83 treesize of output 106 [2018-11-23 11:13:47,840 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:47,921 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:47,996 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,142 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 64 treesize of output 48 [2018-11-23 11:13:48,157 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 27 [2018-11-23 11:13:48,159 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,207 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:48,225 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 47 treesize of output 52 [2018-11-23 11:13:48,239 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:48,244 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 23 [2018-11-23 11:13:48,246 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,280 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,304 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,355 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:48,355 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 3 variables, input treesize:132, output treesize:89 [2018-11-23 11:13:50,440 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:50,441 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_69|, |v_#memory_$Pointer$.offset_69|, dll_circular_create_~last~0.offset]. (let ((.cse2 (select (select |v_#memory_$Pointer$.base_69| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|))) (let ((.cse3 (select |v_#memory_$Pointer$.offset_69| .cse2)) (.cse1 (bvadd |dll_circular_create_#res.offset| (_ bv4 32))) (.cse4 (select |v_#memory_$Pointer$.base_69| .cse2))) (and (= (let ((.cse0 (store |v_#memory_$Pointer$.offset_69| .cse2 (store .cse3 dll_circular_create_~last~0.offset |dll_circular_create_#res.offset|)))) (store .cse0 |dll_circular_create_#res.base| (store (select .cse0 |dll_circular_create_#res.base|) .cse1 dll_circular_create_~last~0.offset))) |#memory_$Pointer$.offset|) (not (= .cse2 |dll_circular_create_#res.base|)) (= |dll_circular_create_#res.offset| (select .cse3 (_ bv4 32))) (= |dll_circular_create_#res.base| (select .cse4 (_ bv4 32))) (= (select (select |v_#memory_$Pointer$.offset_69| |dll_circular_create_#res.base|) |dll_circular_create_#res.offset|) (_ bv0 32)) (= |#memory_$Pointer$.base| (let ((.cse5 (store |v_#memory_$Pointer$.base_69| .cse2 (store .cse4 dll_circular_create_~last~0.offset |dll_circular_create_#res.base|)))) (store .cse5 |dll_circular_create_#res.base| (store (select .cse5 |dll_circular_create_#res.base|) .cse1 .cse2))))))) [2018-11-23 11:13:50,441 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse7 (select |#memory_$Pointer$.base| |dll_circular_create_#res.base|)) (.cse6 (bvadd |dll_circular_create_#res.offset| (_ bv4 32)))) (let ((.cse5 (select |#memory_$Pointer$.offset| |dll_circular_create_#res.base|)) (.cse1 (select .cse7 .cse6)) (.cse0 (select .cse7 |dll_circular_create_#res.offset|))) (let ((.cse3 (select |#memory_$Pointer$.base| .cse0)) (.cse2 (select |#memory_$Pointer$.offset| .cse1)) (.cse4 (select .cse5 .cse6))) (and (= .cse0 .cse1) (= (select .cse2 (_ bv4 32)) |dll_circular_create_#res.offset|) (= |dll_circular_create_#res.base| (select .cse3 .cse4)) (= (_ bv0 32) (select .cse5 |dll_circular_create_#res.offset|)) (not (= .cse0 |dll_circular_create_#res.base|)) (= |dll_circular_create_#res.base| (select .cse3 (_ bv4 32))) (= |dll_circular_create_#res.offset| (select .cse2 .cse4)))))) [2018-11-23 11:13:52,328 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 39 DAG size of output: 38 [2018-11-23 11:13:52,424 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 18 [2018-11-23 11:13:52,433 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 17 [2018-11-23 11:13:52,435 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:52,449 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:52,497 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:52,498 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:104, output treesize:96 [2018-11-23 11:13:52,681 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 157 treesize of output 155 [2018-11-23 11:13:52,705 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:52,755 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 2 case distinctions, treesize of input 49 treesize of output 55 [2018-11-23 11:13:52,758 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 2 xjuncts. [2018-11-23 11:13:52,894 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:13:53,180 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 144 treesize of output 130 [2018-11-23 11:13:53,193 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:53,204 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 82 [2018-11-23 11:13:53,207 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:53,257 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:53,295 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 146 treesize of output 132 [2018-11-23 11:13:53,315 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:53,379 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 2 case distinctions, treesize of input 51 treesize of output 92 [2018-11-23 11:13:53,384 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 2 xjuncts. [2018-11-23 11:13:53,486 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:13:53,648 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:13:53,648 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 2 variables, input treesize:194, output treesize:212 [2018-11-23 11:13:56,302 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:13:56,303 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_old(#memory_$Pointer$.base)_AFTER_CALL_35|, |v_old(#memory_$Pointer$.offset)_AFTER_CALL_35|]. (let ((.cse8 (bvadd main_~s~0.offset (_ bv4 32))) (.cse7 (select |v_old(#memory_$Pointer$.offset)_AFTER_CALL_35| main_~s~0.base)) (.cse9 (select |v_old(#memory_$Pointer$.base)_AFTER_CALL_35| main_~s~0.base))) (let ((.cse2 (select .cse9 main_~s~0.offset)) (.cse0 (select .cse7 main_~s~0.offset)) (.cse4 (select .cse9 .cse8))) (let ((.cse5 (select |v_old(#memory_$Pointer$.offset)_AFTER_CALL_35| .cse4)) (.cse3 (bvadd .cse0 (_ bv8 32))) (.cse1 (select |v_old(#memory_$Pointer$.base)_AFTER_CALL_35| .cse2)) (.cse6 (select .cse7 .cse8))) (and (= .cse0 (_ bv0 32)) (= (select .cse1 (_ bv4 32)) main_~s~0.base) (= (store |v_old(#memory_$Pointer$.offset)_AFTER_CALL_35| .cse2 (store (select |v_old(#memory_$Pointer$.offset)_AFTER_CALL_35| .cse2) .cse3 (select (select |#memory_$Pointer$.offset| .cse2) .cse3))) |#memory_$Pointer$.offset|) (= (bvadd main_~len~0 (bvneg (bvneg main_~len~0)) (_ bv4294967295 32)) (select (select |#memory_int| .cse2) .cse3)) (not (= .cse2 main_~s~0.base)) (= .cse4 .cse2) (= main_~s~0.offset (select .cse5 .cse6)) (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32)) (= (select .cse5 (_ bv4 32)) main_~s~0.offset) (= (store |v_old(#memory_$Pointer$.base)_AFTER_CALL_35| .cse2 (store .cse1 .cse3 (select (select |#memory_$Pointer$.base| .cse2) .cse3))) |#memory_$Pointer$.base|) (= (select .cse1 .cse6) main_~s~0.base))))) [2018-11-23 11:13:56,303 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse14 (select |#memory_$Pointer$.offset| main_~s~0.base)) (.cse15 (bvadd main_~s~0.offset (_ bv4 32))) (.cse16 (select |#memory_$Pointer$.base| main_~s~0.base))) (let ((.cse12 (select .cse16 main_~s~0.offset)) (.cse13 (select .cse16 .cse15)) (.cse11 (select .cse14 main_~s~0.offset))) (let ((.cse10 (bvadd .cse11 (_ bv8 32))) (.cse9 (select |#memory_$Pointer$.base| .cse13)) (.cse6 (select |#memory_$Pointer$.offset| .cse12))) (let ((.cse7 (select .cse14 .cse15)) (.cse0 (= main_~s~0.offset (select .cse6 (_ bv4 32)))) (.cse1 (= (select .cse9 (_ bv4 32)) main_~s~0.base)) (.cse2 (= .cse13 .cse12)) (.cse3 (not (= main_~s~0.base .cse12))) (.cse4 (= (select (select |#memory_int| .cse12) .cse10) (bvadd main_~len~0 (bvneg (bvneg main_~len~0)) (_ bv4294967295 32)))) (.cse5 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse8 (= .cse11 (_ bv0 32)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (= (select .cse6 .cse7) main_~s~0.offset) .cse8 (= (select .cse9 .cse7) main_~s~0.base)) (and (= .cse7 .cse10) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse8)))))) [2018-11-23 11:13:57,015 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification that was a NOOP. DAG size: 48 [2018-11-23 11:13:57,261 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 147 treesize of output 146 [2018-11-23 11:13:57,274 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 11:13:57,275 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:57,412 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:13:59,720 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 145 treesize of output 136 [2018-11-23 11:13:59,768 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:59,773 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:59,778 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:59,786 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:13:59,802 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 82 [2018-11-23 11:13:59,805 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:13:59,921 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:14:01,168 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:01,188 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 128 treesize of output 122 [2018-11-23 11:14:01,211 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:01,215 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:01,218 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:01,230 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 83 treesize of output 101 [2018-11-23 11:14:01,234 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:01,355 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:14:02,083 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 168 treesize of output 165 [2018-11-23 11:14:02,095 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 11:14:02,096 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:02,293 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:14:02,727 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:02,756 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 164 treesize of output 150 [2018-11-23 11:14:02,811 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:02,815 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:02,819 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:02,833 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 109 treesize of output 131 [2018-11-23 11:14:02,835 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:02,958 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:14:03,248 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 141 treesize of output 134 [2018-11-23 11:14:03,262 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:03,266 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:03,269 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:03,291 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 75 treesize of output 87 [2018-11-23 11:14:03,296 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:03,390 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:14:03,567 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 6 dim-2 vars, End of recursive call: and 2 xjuncts. [2018-11-23 11:14:03,568 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 8 variables, input treesize:316, output treesize:216 [2018-11-23 11:14:05,579 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:14:05,580 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_old(#memory_$Pointer$.base)_AFTER_CALL_36|, |v_#memory_int_BEFORE_CALL_6|, |v_#memory_$Pointer$.offset_BEFORE_CALL_10|, dll_circular_update_at_~data, v_prenex_91, v_prenex_90, v_prenex_92, v_prenex_89]. (let ((.cse3 (bvadd main_~s~0.offset (_ bv8 32)))) (let ((.cse9 (select (select |#memory_$Pointer$.offset| main_~s~0.base) .cse3)) (.cse4 (select (select |#memory_$Pointer$.base| main_~s~0.base) .cse3)) (.cse12 (bvadd (bvneg (bvneg main_~len~0)) main_~len~0)) (.cse11 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse13 (bvadd main_~s~0.offset (_ bv4 32)))) (or (let ((.cse2 (select |v_old(#memory_$Pointer$.base)_AFTER_CALL_36| main_~s~0.base))) (let ((.cse7 (select .cse2 main_~s~0.offset)) (.cse8 (select |v_#memory_$Pointer$.offset_BEFORE_CALL_10| main_~s~0.base)) (.cse6 (select .cse2 .cse13))) (let ((.cse0 (select |v_old(#memory_$Pointer$.base)_AFTER_CALL_36| .cse6)) (.cse1 (select .cse8 .cse13)) (.cse5 (select .cse8 main_~s~0.offset)) (.cse10 (select |v_#memory_$Pointer$.offset_BEFORE_CALL_10| .cse7))) (and (= (select .cse0 .cse1) main_~s~0.base) (= |#memory_$Pointer$.base| (store |v_old(#memory_$Pointer$.base)_AFTER_CALL_36| main_~s~0.base (store .cse2 .cse3 .cse4))) (= (_ bv0 32) .cse5) (= .cse6 .cse7) (= (store |v_#memory_$Pointer$.offset_BEFORE_CALL_10| main_~s~0.base (store .cse8 .cse3 .cse9)) |#memory_$Pointer$.offset|) (not (= .cse7 main_~s~0.base)) (= (select .cse0 (_ bv4 32)) main_~s~0.base) (= (select .cse10 .cse1) main_~s~0.offset) .cse11 (= |#memory_int| (store |v_#memory_int_BEFORE_CALL_6| main_~s~0.base (store (select |v_#memory_int_BEFORE_CALL_6| main_~s~0.base) .cse3 dll_circular_update_at_~data))) (= .cse12 (bvadd (select (select |v_#memory_int_BEFORE_CALL_6| .cse7) (bvadd .cse5 (_ bv8 32))) (_ bv1 32))) (= (select .cse10 (_ bv4 32)) main_~s~0.offset))))) (let ((.cse18 (select v_prenex_91 main_~s~0.base)) (.cse16 (select v_prenex_92 main_~s~0.base))) (let ((.cse17 (select .cse16 main_~s~0.offset)) (.cse14 (select .cse18 .cse13)) (.cse15 (select .cse18 main_~s~0.offset))) (and (= (select (select v_prenex_91 .cse14) (_ bv4 32)) main_~s~0.base) (not (= .cse15 main_~s~0.base)) (= (bvadd (select .cse16 .cse13) (_ bv4294967288 32)) .cse17) (= (store v_prenex_92 main_~s~0.base (store .cse16 .cse3 .cse9)) |#memory_$Pointer$.offset|) (= |#memory_$Pointer$.base| (store v_prenex_91 main_~s~0.base (store .cse18 .cse3 .cse4))) (= .cse12 (bvadd (select (select v_prenex_90 .cse15) (bvadd .cse17 (_ bv8 32))) (_ bv1 32))) (= |#memory_int| (store v_prenex_90 main_~s~0.base (store (select v_prenex_90 main_~s~0.base) .cse3 v_prenex_89))) .cse11 (= (select (select v_prenex_92 .cse15) (_ bv4 32)) main_~s~0.offset) (= (_ bv0 32) .cse17) (= .cse14 .cse15))))))) [2018-11-23 11:14:05,580 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (let ((.cse16 (select |#memory_$Pointer$.base| main_~s~0.base)) (.cse15 (bvadd main_~s~0.offset (_ bv4 32)))) (let ((.cse0 (select .cse16 .cse15)) (.cse13 (select .cse16 main_~s~0.offset)) (.cse14 (select |#memory_$Pointer$.offset| main_~s~0.base))) (let ((.cse8 (select .cse14 main_~s~0.offset)) (.cse11 (select |#memory_$Pointer$.base| .cse13)) (.cse12 (select |#memory_$Pointer$.offset| .cse0))) (let ((.cse3 (= .cse0 .cse13)) (.cse4 (not (= main_~s~0.base .cse13))) (.cse5 (= main_~s~0.offset (select .cse12 (_ bv4 32)))) (.cse6 (= (bvadd main_~len~0 (_ bv4294967294 32)) (_ bv0 32))) (.cse9 (select .cse14 .cse15)) (.cse7 (= (select .cse11 (_ bv4 32)) main_~s~0.base)) (.cse10 (= .cse8 (_ bv0 32))) (.cse2 (bvadd (bvneg (bvneg main_~len~0)) main_~len~0)) (.cse1 (bvadd .cse8 (_ bv8 32)))) (or (and (= (bvadd (select (select |#memory_int| .cse0) .cse1) (_ bv1 32)) .cse2) .cse3 .cse4 .cse5 .cse6 .cse7 (= .cse8 (bvadd .cse9 (_ bv4294967288 32))) .cse10) (and .cse3 .cse4 (= (select .cse11 .cse9) main_~s~0.base) .cse5 .cse6 (= main_~s~0.offset (select .cse12 .cse9)) .cse7 .cse10 (= .cse2 (bvadd (select (select |#memory_int| .cse13) .cse1) (_ bv1 32))))))))) [2018-11-23 11:14:06,891 WARN L180 SmtUtils]: Spent 180.00 ms on a formula simplification that was a NOOP. DAG size: 52 [2018-11-23 11:14:07,487 WARN L180 SmtUtils]: Spent 143.00 ms on a formula simplification that was a NOOP. DAG size: 42 [2018-11-23 11:14:12,694 WARN L180 SmtUtils]: Spent 367.00 ms on a formula simplification that was a NOOP. DAG size: 75 [2018-11-23 11:14:17,404 WARN L180 SmtUtils]: Spent 422.00 ms on a formula simplification that was a NOOP. DAG size: 79 [2018-11-23 11:14:18,624 WARN L180 SmtUtils]: Spent 367.00 ms on a formula simplification that was a NOOP. DAG size: 80 [2018-11-23 11:14:19,658 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 191 treesize of output 233 [2018-11-23 11:14:19,823 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,826 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,829 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,832 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,833 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:14:19,841 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,850 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:19,851 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 5 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 193 treesize of output 184 [2018-11-23 11:14:19,875 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:32,414 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:32,420 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:32,433 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:32,454 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 163 treesize of output 163 [2018-11-23 11:14:32,460 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 2 xjuncts. [2018-11-23 11:14:43,500 WARN L687 Elim1Store]: solver failed to check if following not equals relation is implied: (= (bvadd v_prenex_111 (_ bv4 32)) v_prenex_108) [2018-11-23 11:14:43,505 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:43,508 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:45,521 WARN L687 Elim1Store]: solver failed to check if following not equals relation is implied: (= (bvadd v_prenex_108 (_ bv4 32)) v_prenex_111) [2018-11-23 11:14:45,524 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:45,526 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 11:14:45,527 INFO L303 Elim1Store]: Index analysis took 4047 ms [2018-11-23 11:14:45,529 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 197 treesize of output 196 [2018-11-23 11:14:45,550 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-23 11:14:54,540 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:54,544 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:54,547 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:54,550 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:54,558 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:14:54,559 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 5 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 145 treesize of output 139 [2018-11-23 11:14:54,562 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:00,406 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 167 treesize of output 162 [2018-11-23 11:15:00,409 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:04,728 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 162 treesize of output 155 [2018-11-23 11:15:04,731 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:12,389 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:15:14,434 WARN L687 Elim1Store]: solver failed to check if following not equals relation is implied: (= (select v_prenex_127 (bvadd v_prenex_111 (_ bv4 32))) (select v_prenex_127 v_prenex_108)) [2018-11-23 11:15:16,439 WARN L687 Elim1Store]: solver failed to check if following not equals relation is implied: (= (select v_prenex_127 (bvadd v_prenex_111 (_ bv4 32))) (select v_prenex_127 v_prenex_111)) [2018-11-23 11:15:16,440 INFO L303 Elim1Store]: Index analysis took 4060 ms [2018-11-23 11:15:16,441 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 155 treesize of output 141 [2018-11-23 11:15:16,446 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:19,731 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 127 treesize of output 120 [2018-11-23 11:15:19,734 INFO L267 ElimStorePlain]: Start of recursive call 10: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:26,271 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:15:26,274 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 11:15:26,276 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 185 treesize of output 180 [2018-11-23 11:15:26,283 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:32,580 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 165 treesize of output 160 [2018-11-23 11:15:32,583 INFO L267 ElimStorePlain]: Start of recursive call 12: End of recursive call: and 1 xjuncts. [2018-11-23 11:15:38,842 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 160 treesize of output 155 [2018-11-23 11:15:38,845 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts.