./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 66c26537aa176e76686ba25b67c86aedfbccc400319942d9855c43a2b470a76b --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 14:16:34,270 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 14:16:34,271 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 14:16:34,299 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 14:16:34,300 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 14:16:34,300 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 14:16:34,301 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 14:16:34,302 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 14:16:34,304 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 14:16:34,304 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 14:16:34,305 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 14:16:34,306 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 14:16:34,306 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 14:16:34,307 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 14:16:34,308 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 14:16:34,308 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 14:16:34,309 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 14:16:34,310 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 14:16:34,311 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 14:16:34,312 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 14:16:34,313 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 14:16:34,314 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 14:16:34,315 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 14:16:34,315 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 14:16:34,317 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 14:16:34,317 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 14:16:34,317 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 14:16:34,318 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 14:16:34,318 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 14:16:34,319 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 14:16:34,319 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 14:16:34,320 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 14:16:34,320 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 14:16:34,321 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 14:16:34,321 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 14:16:34,322 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 14:16:34,322 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 14:16:34,322 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 14:16:34,323 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 14:16:34,323 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 14:16:34,324 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 14:16:34,324 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 14:16:34,340 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 14:16:34,341 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 14:16:34,341 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 14:16:34,341 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 14:16:34,342 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 14:16:34,342 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 14:16:34,342 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 14:16:34,342 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 14:16:34,343 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 14:16:34,343 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 14:16:34,343 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 14:16:34,343 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 14:16:34,343 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 14:16:34,344 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 14:16:34,345 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:16:34,345 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 14:16:34,345 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 14:16:34,346 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 14:16:34,346 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 14:16:34,346 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 14:16:34,346 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 14:16:34,346 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 66c26537aa176e76686ba25b67c86aedfbccc400319942d9855c43a2b470a76b [2022-02-20 14:16:34,526 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 14:16:34,543 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 14:16:34,545 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 14:16:34,547 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 14:16:34,548 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 14:16:34,548 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c [2022-02-20 14:16:34,604 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e3735184e/14a041d38ed043cf990e271ba95b2906/FLAGab6837194 [2022-02-20 14:16:34,947 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 14:16:34,948 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c [2022-02-20 14:16:34,953 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e3735184e/14a041d38ed043cf990e271ba95b2906/FLAGab6837194 [2022-02-20 14:16:34,961 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e3735184e/14a041d38ed043cf990e271ba95b2906 [2022-02-20 14:16:34,963 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 14:16:34,964 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 14:16:34,966 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 14:16:34,966 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 14:16:34,980 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 14:16:34,982 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:16:34" (1/1) ... [2022-02-20 14:16:34,986 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7d5c0e87 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:34, skipping insertion in model container [2022-02-20 14:16:34,986 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:16:34" (1/1) ... [2022-02-20 14:16:34,991 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 14:16:35,003 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 14:16:35,120 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c[331,344] [2022-02-20 14:16:35,159 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:16:35,172 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 14:16:35,183 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-programs/partial_mod_count_limited_4.c[331,344] [2022-02-20 14:16:35,208 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:16:35,219 INFO L208 MainTranslator]: Completed translation [2022-02-20 14:16:35,221 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35 WrapperNode [2022-02-20 14:16:35,221 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 14:16:35,223 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 14:16:35,223 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 14:16:35,223 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 14:16:35,228 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,241 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,273 INFO L137 Inliner]: procedures = 15, calls = 16, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 68 [2022-02-20 14:16:35,279 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 14:16:35,280 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 14:16:35,280 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 14:16:35,281 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 14:16:35,286 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,287 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,288 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,288 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,292 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,301 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,304 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,308 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 14:16:35,314 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 14:16:35,315 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 14:16:35,315 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 14:16:35,317 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (1/1) ... [2022-02-20 14:16:35,323 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:16:35,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:35,364 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 14:16:35,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 14:16:35,393 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 14:16:35,393 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 14:16:35,393 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 14:16:35,393 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 14:16:35,393 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 14:16:35,393 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 14:16:35,394 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 14:16:35,394 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 14:16:35,438 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 14:16:35,443 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 14:16:35,609 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 14:16:35,615 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 14:16:35,616 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 14:16:35,617 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:16:35 BoogieIcfgContainer [2022-02-20 14:16:35,617 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 14:16:35,618 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 14:16:35,618 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 14:16:35,620 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 14:16:35,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 02:16:34" (1/3) ... [2022-02-20 14:16:35,621 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3d5299f0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:16:35, skipping insertion in model container [2022-02-20 14:16:35,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:35" (2/3) ... [2022-02-20 14:16:35,621 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3d5299f0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:16:35, skipping insertion in model container [2022-02-20 14:16:35,622 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:16:35" (3/3) ... [2022-02-20 14:16:35,623 INFO L111 eAbstractionObserver]: Analyzing ICFG partial_mod_count_limited_4.c [2022-02-20 14:16:35,627 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 14:16:35,628 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 14:16:35,696 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 14:16:35,701 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 14:16:35,701 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 14:16:35,732 INFO L276 IsEmpty]: Start isEmpty. Operand has 22 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:35,737 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 14:16:35,738 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:35,739 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:35,739 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:35,749 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:35,750 INFO L85 PathProgramCache]: Analyzing trace with hash -1939796378, now seen corresponding path program 1 times [2022-02-20 14:16:35,761 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:35,763 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1847658703] [2022-02-20 14:16:35,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:35,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:35,896 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:35,902 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1404755637] [2022-02-20 14:16:35,902 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:35,903 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:35,903 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:35,927 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:35,968 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 14:16:36,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:36,045 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 14:16:36,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:36,057 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:36,113 INFO L290 TraceCheckUtils]: 0: Hoare triple {25#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {25#true} is VALID [2022-02-20 14:16:36,114 INFO L290 TraceCheckUtils]: 1: Hoare triple {25#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {25#true} is VALID [2022-02-20 14:16:36,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {25#true} assume 0 == assume_abort_if_not_~cond#1;assume false; {26#false} is VALID [2022-02-20 14:16:36,114 INFO L290 TraceCheckUtils]: 3: Hoare triple {26#false} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {26#false} is VALID [2022-02-20 14:16:36,115 INFO L290 TraceCheckUtils]: 4: Hoare triple {26#false} assume !true; {26#false} is VALID [2022-02-20 14:16:36,115 INFO L290 TraceCheckUtils]: 5: Hoare triple {26#false} main_~i~0#1 := 0; {26#false} is VALID [2022-02-20 14:16:36,116 INFO L290 TraceCheckUtils]: 6: Hoare triple {26#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {26#false} is VALID [2022-02-20 14:16:36,116 INFO L290 TraceCheckUtils]: 7: Hoare triple {26#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {26#false} is VALID [2022-02-20 14:16:36,117 INFO L290 TraceCheckUtils]: 8: Hoare triple {26#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {26#false} is VALID [2022-02-20 14:16:36,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {26#false} assume 0 == __VERIFIER_assert_~cond#1; {26#false} is VALID [2022-02-20 14:16:36,118 INFO L290 TraceCheckUtils]: 10: Hoare triple {26#false} assume !false; {26#false} is VALID [2022-02-20 14:16:36,119 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:36,119 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:36,119 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:36,120 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1847658703] [2022-02-20 14:16:36,120 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:36,120 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1404755637] [2022-02-20 14:16:36,121 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1404755637] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:36,121 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:36,121 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 14:16:36,131 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [102144323] [2022-02-20 14:16:36,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:36,138 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 14:16:36,139 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:36,141 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:36,156 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 14:16:36,156 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:36,186 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 14:16:36,186 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 14:16:36,188 INFO L87 Difference]: Start difference. First operand has 22 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,228 INFO L93 Difference]: Finished difference Result 41 states and 56 transitions. [2022-02-20 14:16:36,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 14:16:36,229 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 14:16:36,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:36,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 56 transitions. [2022-02-20 14:16:36,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 56 transitions. [2022-02-20 14:16:36,245 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 56 transitions. [2022-02-20 14:16:36,299 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:36,305 INFO L225 Difference]: With dead ends: 41 [2022-02-20 14:16:36,305 INFO L226 Difference]: Without dead ends: 18 [2022-02-20 14:16:36,307 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 14:16:36,310 INFO L933 BasicCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 26 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:36,311 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 14:16:36,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2022-02-20 14:16:36,328 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-02-20 14:16:36,328 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:36,329 INFO L82 GeneralOperation]: Start isEquivalent. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,329 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,330 INFO L87 Difference]: Start difference. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,331 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:16:36,332 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:36,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:36,332 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:36,333 INFO L74 IsIncluded]: Start isIncluded. First operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 18 states. [2022-02-20 14:16:36,333 INFO L87 Difference]: Start difference. First operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 18 states. [2022-02-20 14:16:36,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,334 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:16:36,334 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:36,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:36,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:36,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:36,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:36,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 22 transitions. [2022-02-20 14:16:36,337 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 22 transitions. Word has length 11 [2022-02-20 14:16:36,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:36,338 INFO L470 AbstractCegarLoop]: Abstraction has 18 states and 22 transitions. [2022-02-20 14:16:36,338 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,338 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:36,338 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 14:16:36,339 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:36,339 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:36,380 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:36,558 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-02-20 14:16:36,558 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:36,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:36,560 INFO L85 PathProgramCache]: Analyzing trace with hash -54935082, now seen corresponding path program 1 times [2022-02-20 14:16:36,560 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:36,560 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [696269223] [2022-02-20 14:16:36,560 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:36,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:36,588 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:36,591 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1590808271] [2022-02-20 14:16:36,591 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:36,591 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:36,592 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:36,593 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:36,612 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 14:16:36,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:36,655 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 14:16:36,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:36,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:36,778 INFO L290 TraceCheckUtils]: 0: Hoare triple {162#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {167#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:36,778 INFO L290 TraceCheckUtils]: 1: Hoare triple {167#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {167#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:36,779 INFO L290 TraceCheckUtils]: 2: Hoare triple {167#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {167#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:36,780 INFO L290 TraceCheckUtils]: 3: Hoare triple {167#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {177#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 4: Hoare triple {177#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 < ~N~0); {163#false} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {163#false} main_~i~0#1 := 0; {163#false} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 6: Hoare triple {163#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {163#false} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {163#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {163#false} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {163#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {163#false} is VALID [2022-02-20 14:16:36,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {163#false} assume 0 == __VERIFIER_assert_~cond#1; {163#false} is VALID [2022-02-20 14:16:36,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {163#false} assume !false; {163#false} is VALID [2022-02-20 14:16:36,783 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:36,783 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:36,783 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:36,783 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [696269223] [2022-02-20 14:16:36,783 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:36,784 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1590808271] [2022-02-20 14:16:36,784 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1590808271] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:36,785 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:36,785 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 14:16:36,785 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1524068352] [2022-02-20 14:16:36,785 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:36,786 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 14:16:36,786 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:36,786 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:36,796 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 14:16:36,796 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:36,796 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 14:16:36,797 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 14:16:36,797 INFO L87 Difference]: Start difference. First operand 18 states and 22 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,878 INFO L93 Difference]: Finished difference Result 45 states and 57 transitions. [2022-02-20 14:16:36,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 14:16:36,878 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 14:16:36,879 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:36,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 14:16:36,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 14:16:36,883 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 57 transitions. [2022-02-20 14:16:36,952 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:36,955 INFO L225 Difference]: With dead ends: 45 [2022-02-20 14:16:36,955 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 14:16:36,956 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 14:16:36,957 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 31 mSDsluCounter, 9 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 21 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:36,957 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 21 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 14:16:36,958 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 14:16:36,969 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 20. [2022-02-20 14:16:36,969 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:36,970 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,970 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,972 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,975 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2022-02-20 14:16:36,975 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 37 transitions. [2022-02-20 14:16:36,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:36,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:36,977 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 14:16:36,977 INFO L87 Difference]: Start difference. First operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 31 states. [2022-02-20 14:16:36,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:36,979 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2022-02-20 14:16:36,979 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 37 transitions. [2022-02-20 14:16:36,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:36,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:36,979 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:36,979 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:36,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 24 transitions. [2022-02-20 14:16:36,980 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 24 transitions. Word has length 11 [2022-02-20 14:16:36,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:36,980 INFO L470 AbstractCegarLoop]: Abstraction has 20 states and 24 transitions. [2022-02-20 14:16:36,980 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:36,981 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 24 transitions. [2022-02-20 14:16:36,981 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 14:16:36,981 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:36,981 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:37,015 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:37,181 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-02-20 14:16:37,184 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:37,184 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:37,184 INFO L85 PathProgramCache]: Analyzing trace with hash 1485448361, now seen corresponding path program 1 times [2022-02-20 14:16:37,185 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:37,185 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1825137068] [2022-02-20 14:16:37,185 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:37,185 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:37,196 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:37,196 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2113217761] [2022-02-20 14:16:37,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:37,196 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:37,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:37,205 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:37,207 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-20 14:16:37,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:37,246 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 14:16:37,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:37,253 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:37,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {339#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:37,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {339#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {339#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:37,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {339#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {339#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:37,367 INFO L290 TraceCheckUtils]: 3: Hoare triple {339#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:37,373 INFO L290 TraceCheckUtils]: 4: Hoare triple {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:37,374 INFO L290 TraceCheckUtils]: 5: Hoare triple {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:37,374 INFO L290 TraceCheckUtils]: 6: Hoare triple {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:37,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:37,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {349#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {365#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:37,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {365#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 < ~N~0); {335#false} is VALID [2022-02-20 14:16:37,376 INFO L290 TraceCheckUtils]: 10: Hoare triple {335#false} main_~i~0#1 := 0; {335#false} is VALID [2022-02-20 14:16:37,376 INFO L290 TraceCheckUtils]: 11: Hoare triple {335#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {335#false} is VALID [2022-02-20 14:16:37,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {335#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {335#false} is VALID [2022-02-20 14:16:37,377 INFO L290 TraceCheckUtils]: 13: Hoare triple {335#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {335#false} is VALID [2022-02-20 14:16:37,377 INFO L290 TraceCheckUtils]: 14: Hoare triple {335#false} assume 0 == __VERIFIER_assert_~cond#1; {335#false} is VALID [2022-02-20 14:16:37,377 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#false} assume !false; {335#false} is VALID [2022-02-20 14:16:37,377 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:37,377 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:37,451 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#false} assume !false; {335#false} is VALID [2022-02-20 14:16:37,451 INFO L290 TraceCheckUtils]: 14: Hoare triple {335#false} assume 0 == __VERIFIER_assert_~cond#1; {335#false} is VALID [2022-02-20 14:16:37,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {335#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {335#false} is VALID [2022-02-20 14:16:37,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {335#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {335#false} is VALID [2022-02-20 14:16:37,452 INFO L290 TraceCheckUtils]: 11: Hoare triple {335#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {335#false} is VALID [2022-02-20 14:16:37,452 INFO L290 TraceCheckUtils]: 10: Hoare triple {335#false} main_~i~0#1 := 0; {335#false} is VALID [2022-02-20 14:16:37,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {405#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} assume !(main_~i~0#1 < ~N~0); {335#false} is VALID [2022-02-20 14:16:37,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {405#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} is VALID [2022-02-20 14:16:37,453 INFO L290 TraceCheckUtils]: 7: Hoare triple {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:37,454 INFO L290 TraceCheckUtils]: 6: Hoare triple {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:37,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:37,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:37,455 INFO L290 TraceCheckUtils]: 3: Hoare triple {425#(< 1 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {409#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:37,455 INFO L290 TraceCheckUtils]: 2: Hoare triple {425#(< 1 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {425#(< 1 ~N~0)} is VALID [2022-02-20 14:16:37,456 INFO L290 TraceCheckUtils]: 1: Hoare triple {425#(< 1 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {425#(< 1 ~N~0)} is VALID [2022-02-20 14:16:37,456 INFO L290 TraceCheckUtils]: 0: Hoare triple {334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {425#(< 1 ~N~0)} is VALID [2022-02-20 14:16:37,457 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:37,457 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:37,457 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1825137068] [2022-02-20 14:16:37,457 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:37,457 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2113217761] [2022-02-20 14:16:37,457 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2113217761] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:37,457 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:37,457 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 7 [2022-02-20 14:16:37,458 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2106614466] [2022-02-20 14:16:37,458 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:37,458 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 14:16:37,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:37,459 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,476 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:37,477 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 14:16:37,477 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:37,477 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 14:16:37,477 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2022-02-20 14:16:37,477 INFO L87 Difference]: Start difference. First operand 20 states and 24 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,669 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2022-02-20 14:16:37,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 14:16:37,670 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 14:16:37,670 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:37,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 92 transitions. [2022-02-20 14:16:37,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 92 transitions. [2022-02-20 14:16:37,673 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 92 transitions. [2022-02-20 14:16:37,744 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:37,745 INFO L225 Difference]: With dead ends: 73 [2022-02-20 14:16:37,745 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 14:16:37,746 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=50, Unknown=0, NotChecked=0, Total=90 [2022-02-20 14:16:37,746 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 135 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 135 SdHoareTripleChecker+Valid, 38 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:37,747 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [135 Valid, 38 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:16:37,747 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 14:16:37,757 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 34. [2022-02-20 14:16:37,758 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:37,758 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,758 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,760 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,762 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2022-02-20 14:16:37,762 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2022-02-20 14:16:37,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:37,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:37,763 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 14:16:37,763 INFO L87 Difference]: Start difference. First operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 14:16:37,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,765 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2022-02-20 14:16:37,765 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2022-02-20 14:16:37,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:37,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:37,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:37,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:37,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 33 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 42 transitions. [2022-02-20 14:16:37,767 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 42 transitions. Word has length 16 [2022-02-20 14:16:37,767 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:37,767 INFO L470 AbstractCegarLoop]: Abstraction has 34 states and 42 transitions. [2022-02-20 14:16:37,767 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:37,768 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 42 transitions. [2022-02-20 14:16:37,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 14:16:37,768 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:37,768 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:37,787 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:37,981 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:37,983 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:37,987 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:37,988 INFO L85 PathProgramCache]: Analyzing trace with hash -35725226, now seen corresponding path program 1 times [2022-02-20 14:16:37,990 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:37,991 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [230063908] [2022-02-20 14:16:37,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:37,991 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:38,028 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:38,038 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [258546989] [2022-02-20 14:16:38,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:38,038 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:38,038 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:38,039 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:38,040 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-20 14:16:38,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:38,104 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 14:16:38,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:38,114 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:38,362 INFO L290 TraceCheckUtils]: 0: Hoare triple {681#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {686#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:38,363 INFO L290 TraceCheckUtils]: 1: Hoare triple {686#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {686#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:38,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {686#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {686#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:38,363 INFO L290 TraceCheckUtils]: 3: Hoare triple {686#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,364 INFO L290 TraceCheckUtils]: 4: Hoare triple {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,365 INFO L290 TraceCheckUtils]: 5: Hoare triple {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,365 INFO L290 TraceCheckUtils]: 6: Hoare triple {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,366 INFO L290 TraceCheckUtils]: 7: Hoare triple {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,367 INFO L290 TraceCheckUtils]: 8: Hoare triple {696#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:38,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:38,371 INFO L290 TraceCheckUtils]: 10: Hoare triple {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:38,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:38,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:38,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {712#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,375 INFO L290 TraceCheckUtils]: 15: Hoare triple {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,375 INFO L290 TraceCheckUtils]: 16: Hoare triple {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,378 INFO L290 TraceCheckUtils]: 18: Hoare triple {728#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,378 INFO L290 TraceCheckUtils]: 19: Hoare triple {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,379 INFO L290 TraceCheckUtils]: 20: Hoare triple {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,380 INFO L290 TraceCheckUtils]: 21: Hoare triple {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {744#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {760#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:38,381 INFO L290 TraceCheckUtils]: 24: Hoare triple {760#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !(main_~i~0#1 < ~N~0); {682#false} is VALID [2022-02-20 14:16:38,381 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#false} main_~i~0#1 := 0; {682#false} is VALID [2022-02-20 14:16:38,381 INFO L290 TraceCheckUtils]: 26: Hoare triple {682#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {682#false} is VALID [2022-02-20 14:16:38,382 INFO L290 TraceCheckUtils]: 27: Hoare triple {682#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {682#false} is VALID [2022-02-20 14:16:38,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {682#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {682#false} is VALID [2022-02-20 14:16:38,382 INFO L290 TraceCheckUtils]: 29: Hoare triple {682#false} assume 0 == __VERIFIER_assert_~cond#1; {682#false} is VALID [2022-02-20 14:16:38,384 INFO L290 TraceCheckUtils]: 30: Hoare triple {682#false} assume !false; {682#false} is VALID [2022-02-20 14:16:38,385 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 34 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:38,385 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:38,544 INFO L290 TraceCheckUtils]: 30: Hoare triple {682#false} assume !false; {682#false} is VALID [2022-02-20 14:16:38,545 INFO L290 TraceCheckUtils]: 29: Hoare triple {682#false} assume 0 == __VERIFIER_assert_~cond#1; {682#false} is VALID [2022-02-20 14:16:38,545 INFO L290 TraceCheckUtils]: 28: Hoare triple {682#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {682#false} is VALID [2022-02-20 14:16:38,545 INFO L290 TraceCheckUtils]: 27: Hoare triple {682#false} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {682#false} is VALID [2022-02-20 14:16:38,545 INFO L290 TraceCheckUtils]: 26: Hoare triple {682#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {682#false} is VALID [2022-02-20 14:16:38,545 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#false} main_~i~0#1 := 0; {682#false} is VALID [2022-02-20 14:16:38,546 INFO L290 TraceCheckUtils]: 24: Hoare triple {800#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} assume !(main_~i~0#1 < ~N~0); {682#false} is VALID [2022-02-20 14:16:38,546 INFO L290 TraceCheckUtils]: 23: Hoare triple {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {800#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} is VALID [2022-02-20 14:16:38,546 INFO L290 TraceCheckUtils]: 22: Hoare triple {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:38,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:38,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:38,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:38,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {804#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:38,549 INFO L290 TraceCheckUtils]: 17: Hoare triple {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,549 INFO L290 TraceCheckUtils]: 15: Hoare triple {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,550 INFO L290 TraceCheckUtils]: 14: Hoare triple {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,550 INFO L290 TraceCheckUtils]: 13: Hoare triple {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {820#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,550 INFO L290 TraceCheckUtils]: 12: Hoare triple {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,551 INFO L290 TraceCheckUtils]: 11: Hoare triple {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,553 INFO L290 TraceCheckUtils]: 10: Hoare triple {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,554 INFO L290 TraceCheckUtils]: 9: Hoare triple {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,554 INFO L290 TraceCheckUtils]: 8: Hoare triple {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {836#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:38,555 INFO L290 TraceCheckUtils]: 7: Hoare triple {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:38,555 INFO L290 TraceCheckUtils]: 6: Hoare triple {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:38,555 INFO L290 TraceCheckUtils]: 5: Hoare triple {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:38,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:38,557 INFO L290 TraceCheckUtils]: 3: Hoare triple {868#(< 4 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {852#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:38,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {868#(< 4 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {868#(< 4 ~N~0)} is VALID [2022-02-20 14:16:38,559 INFO L290 TraceCheckUtils]: 1: Hoare triple {868#(< 4 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {868#(< 4 ~N~0)} is VALID [2022-02-20 14:16:38,560 INFO L290 TraceCheckUtils]: 0: Hoare triple {681#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {868#(< 4 ~N~0)} is VALID [2022-02-20 14:16:38,560 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 34 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:38,561 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:38,561 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [230063908] [2022-02-20 14:16:38,561 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:38,561 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [258546989] [2022-02-20 14:16:38,561 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [258546989] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:38,561 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:38,561 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2022-02-20 14:16:38,562 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1538528071] [2022-02-20 14:16:38,562 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:38,562 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 31 [2022-02-20 14:16:38,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:38,563 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:38,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:38,620 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 14:16:38,620 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:38,621 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 14:16:38,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=101, Unknown=0, NotChecked=0, Total=182 [2022-02-20 14:16:38,621 INFO L87 Difference]: Start difference. First operand 34 states and 42 transitions. Second operand has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:39,097 INFO L93 Difference]: Finished difference Result 155 states and 195 transitions. [2022-02-20 14:16:39,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 14:16:39,097 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 31 [2022-02-20 14:16:39,097 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:39,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 190 transitions. [2022-02-20 14:16:39,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 190 transitions. [2022-02-20 14:16:39,102 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 190 transitions. [2022-02-20 14:16:39,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:39,255 INFO L225 Difference]: With dead ends: 155 [2022-02-20 14:16:39,256 INFO L226 Difference]: Without dead ends: 137 [2022-02-20 14:16:39,256 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=151, Invalid=191, Unknown=0, NotChecked=0, Total=342 [2022-02-20 14:16:39,257 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 309 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 309 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 141 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 96 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:39,257 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [309 Valid, 89 Invalid, 141 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:16:39,258 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 137 states. [2022-02-20 14:16:39,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 137 to 64. [2022-02-20 14:16:39,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:39,279 INFO L82 GeneralOperation]: Start isEquivalent. First operand 137 states. Second operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,279 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,280 INFO L87 Difference]: Start difference. First operand 137 states. Second operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:39,283 INFO L93 Difference]: Finished difference Result 137 states and 163 transitions. [2022-02-20 14:16:39,283 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 163 transitions. [2022-02-20 14:16:39,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:39,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:39,284 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 137 states. [2022-02-20 14:16:39,284 INFO L87 Difference]: Start difference. First operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 137 states. [2022-02-20 14:16:39,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:39,287 INFO L93 Difference]: Finished difference Result 137 states and 163 transitions. [2022-02-20 14:16:39,287 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 163 transitions. [2022-02-20 14:16:39,288 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:39,288 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:39,288 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:39,288 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:39,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 63 states have (on average 1.2857142857142858) internal successors, (81), 63 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-02-20 14:16:39,290 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 31 [2022-02-20 14:16:39,290 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:39,290 INFO L470 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-02-20 14:16:39,291 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.0) internal successors, (56), 13 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:39,291 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-02-20 14:16:39,292 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 14:16:39,292 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:39,292 INFO L514 BasicCegarLoop]: trace histogram [10, 10, 10, 10, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:39,310 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:39,509 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:39,509 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:39,509 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:39,510 INFO L85 PathProgramCache]: Analyzing trace with hash -1147663820, now seen corresponding path program 2 times [2022-02-20 14:16:39,510 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:39,510 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1026708494] [2022-02-20 14:16:39,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:39,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:39,546 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:39,547 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1474185788] [2022-02-20 14:16:39,547 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:16:39,547 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:39,547 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:39,553 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:39,555 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-02-20 14:16:39,644 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 14:16:39,644 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:16:39,645 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 14:16:39,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:39,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:40,242 INFO L290 TraceCheckUtils]: 0: Hoare triple {1417#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {1422#(= ~N~0 1000)} is VALID [2022-02-20 14:16:40,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {1422#(= ~N~0 1000)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,258 INFO L290 TraceCheckUtils]: 2: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == assume_abort_if_not_~cond#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,258 INFO L290 TraceCheckUtils]: 3: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,259 INFO L290 TraceCheckUtils]: 4: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,263 INFO L290 TraceCheckUtils]: 6: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,264 INFO L290 TraceCheckUtils]: 7: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,264 INFO L290 TraceCheckUtils]: 8: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,265 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,265 INFO L290 TraceCheckUtils]: 10: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,265 INFO L290 TraceCheckUtils]: 11: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,267 INFO L290 TraceCheckUtils]: 14: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,267 INFO L290 TraceCheckUtils]: 15: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,268 INFO L290 TraceCheckUtils]: 17: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,268 INFO L290 TraceCheckUtils]: 18: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,279 INFO L290 TraceCheckUtils]: 19: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,280 INFO L290 TraceCheckUtils]: 20: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,280 INFO L290 TraceCheckUtils]: 21: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,281 INFO L290 TraceCheckUtils]: 22: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,281 INFO L290 TraceCheckUtils]: 23: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,282 INFO L290 TraceCheckUtils]: 24: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,282 INFO L290 TraceCheckUtils]: 26: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,283 INFO L290 TraceCheckUtils]: 28: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,285 INFO L290 TraceCheckUtils]: 32: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,286 INFO L290 TraceCheckUtils]: 33: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,286 INFO L290 TraceCheckUtils]: 34: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,287 INFO L290 TraceCheckUtils]: 35: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,287 INFO L290 TraceCheckUtils]: 36: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,287 INFO L290 TraceCheckUtils]: 37: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,288 INFO L290 TraceCheckUtils]: 38: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,288 INFO L290 TraceCheckUtils]: 39: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,289 INFO L290 TraceCheckUtils]: 40: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,289 INFO L290 TraceCheckUtils]: 41: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,290 INFO L290 TraceCheckUtils]: 42: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,290 INFO L290 TraceCheckUtils]: 43: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,290 INFO L290 TraceCheckUtils]: 44: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,291 INFO L290 TraceCheckUtils]: 45: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,291 INFO L290 TraceCheckUtils]: 46: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,292 INFO L290 TraceCheckUtils]: 47: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,292 INFO L290 TraceCheckUtils]: 48: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,293 INFO L290 TraceCheckUtils]: 49: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,293 INFO L290 TraceCheckUtils]: 50: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,294 INFO L290 TraceCheckUtils]: 51: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,294 INFO L290 TraceCheckUtils]: 52: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,295 INFO L290 TraceCheckUtils]: 53: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,295 INFO L290 TraceCheckUtils]: 54: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 < ~N~0); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,295 INFO L290 TraceCheckUtils]: 55: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_~i~0#1 := 0; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,296 INFO L290 TraceCheckUtils]: 56: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,296 INFO L290 TraceCheckUtils]: 57: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:40,297 INFO L290 TraceCheckUtils]: 58: Hoare triple {1426#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1598#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:16:40,297 INFO L290 TraceCheckUtils]: 59: Hoare triple {1598#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {1418#false} is VALID [2022-02-20 14:16:40,297 INFO L290 TraceCheckUtils]: 60: Hoare triple {1418#false} assume !false; {1418#false} is VALID [2022-02-20 14:16:40,298 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 235 trivial. 0 not checked. [2022-02-20 14:16:40,298 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:40,298 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:40,298 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1026708494] [2022-02-20 14:16:40,298 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:40,298 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1474185788] [2022-02-20 14:16:40,298 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1474185788] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:40,298 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:40,299 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 14:16:40,299 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [86665719] [2022-02-20 14:16:40,299 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:40,299 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 14:16:40,299 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:40,300 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:40,331 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:40,331 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 14:16:40,331 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:40,331 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 14:16:40,331 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 14:16:40,332 INFO L87 Difference]: Start difference. First operand 64 states and 81 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:42,741 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-02-20 14:16:42,742 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 14:16:42,742 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 14:16:42,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:42,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 14:16:42,743 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 14:16:42,743 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2022-02-20 14:16:42,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:42,808 INFO L225 Difference]: With dead ends: 76 [2022-02-20 14:16:42,809 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 14:16:42,809 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 14:16:42,809 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 32 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 32 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:42,810 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 32 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:16:42,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 14:16:42,836 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 70. [2022-02-20 14:16:42,836 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:42,837 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,837 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,837 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:42,839 INFO L93 Difference]: Finished difference Result 74 states and 93 transitions. [2022-02-20 14:16:42,839 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 93 transitions. [2022-02-20 14:16:42,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:42,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:42,840 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 74 states. [2022-02-20 14:16:42,840 INFO L87 Difference]: Start difference. First operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 74 states. [2022-02-20 14:16:42,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:42,842 INFO L93 Difference]: Finished difference Result 74 states and 93 transitions. [2022-02-20 14:16:42,842 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 93 transitions. [2022-02-20 14:16:42,842 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:42,843 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:42,843 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:42,843 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:42,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 69 states have (on average 1.2753623188405796) internal successors, (88), 69 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 88 transitions. [2022-02-20 14:16:42,845 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 88 transitions. Word has length 61 [2022-02-20 14:16:42,845 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:42,846 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 88 transitions. [2022-02-20 14:16:42,846 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:42,846 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 88 transitions. [2022-02-20 14:16:42,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 14:16:42,847 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:42,847 INFO L514 BasicCegarLoop]: trace histogram [10, 10, 10, 10, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:42,864 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-02-20 14:16:43,064 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:43,064 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:43,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:43,065 INFO L85 PathProgramCache]: Analyzing trace with hash -1147723402, now seen corresponding path program 1 times [2022-02-20 14:16:43,065 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:43,065 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [794113936] [2022-02-20 14:16:43,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:43,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:43,090 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:43,091 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [825567925] [2022-02-20 14:16:43,091 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:43,091 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:43,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:43,102 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:43,147 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-02-20 14:16:43,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:43,263 INFO L263 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 14:16:43,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:43,291 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:44,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {1929#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {1934#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:44,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {1934#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1934#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:44,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {1934#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {1934#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:44,054 INFO L290 TraceCheckUtils]: 3: Hoare triple {1934#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,055 INFO L290 TraceCheckUtils]: 4: Hoare triple {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,055 INFO L290 TraceCheckUtils]: 5: Hoare triple {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,056 INFO L290 TraceCheckUtils]: 6: Hoare triple {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,057 INFO L290 TraceCheckUtils]: 8: Hoare triple {1944#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:44,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:44,058 INFO L290 TraceCheckUtils]: 10: Hoare triple {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:44,058 INFO L290 TraceCheckUtils]: 11: Hoare triple {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:44,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:44,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {1960#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,060 INFO L290 TraceCheckUtils]: 14: Hoare triple {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,060 INFO L290 TraceCheckUtils]: 15: Hoare triple {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,061 INFO L290 TraceCheckUtils]: 16: Hoare triple {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,061 INFO L290 TraceCheckUtils]: 17: Hoare triple {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,061 INFO L290 TraceCheckUtils]: 18: Hoare triple {1976#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,062 INFO L290 TraceCheckUtils]: 19: Hoare triple {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,062 INFO L290 TraceCheckUtils]: 20: Hoare triple {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,063 INFO L290 TraceCheckUtils]: 21: Hoare triple {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,063 INFO L290 TraceCheckUtils]: 22: Hoare triple {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {1992#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,064 INFO L290 TraceCheckUtils]: 24: Hoare triple {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,065 INFO L290 TraceCheckUtils]: 25: Hoare triple {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,065 INFO L290 TraceCheckUtils]: 26: Hoare triple {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,069 INFO L290 TraceCheckUtils]: 27: Hoare triple {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,070 INFO L290 TraceCheckUtils]: 28: Hoare triple {2008#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:44,070 INFO L290 TraceCheckUtils]: 29: Hoare triple {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:44,071 INFO L290 TraceCheckUtils]: 30: Hoare triple {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:44,071 INFO L290 TraceCheckUtils]: 31: Hoare triple {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:44,072 INFO L290 TraceCheckUtils]: 32: Hoare triple {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:44,072 INFO L290 TraceCheckUtils]: 33: Hoare triple {2024#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:44,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:44,073 INFO L290 TraceCheckUtils]: 35: Hoare triple {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:44,074 INFO L290 TraceCheckUtils]: 36: Hoare triple {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:44,074 INFO L290 TraceCheckUtils]: 37: Hoare triple {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:44,075 INFO L290 TraceCheckUtils]: 38: Hoare triple {2040#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:44,075 INFO L290 TraceCheckUtils]: 39: Hoare triple {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:44,076 INFO L290 TraceCheckUtils]: 40: Hoare triple {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:44,076 INFO L290 TraceCheckUtils]: 41: Hoare triple {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:44,077 INFO L290 TraceCheckUtils]: 42: Hoare triple {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:44,077 INFO L290 TraceCheckUtils]: 43: Hoare triple {2056#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,078 INFO L290 TraceCheckUtils]: 44: Hoare triple {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,078 INFO L290 TraceCheckUtils]: 45: Hoare triple {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,079 INFO L290 TraceCheckUtils]: 46: Hoare triple {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,079 INFO L290 TraceCheckUtils]: 47: Hoare triple {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,080 INFO L290 TraceCheckUtils]: 48: Hoare triple {2072#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:44,080 INFO L290 TraceCheckUtils]: 49: Hoare triple {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:44,081 INFO L290 TraceCheckUtils]: 50: Hoare triple {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:44,081 INFO L290 TraceCheckUtils]: 51: Hoare triple {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:44,082 INFO L290 TraceCheckUtils]: 52: Hoare triple {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:44,082 INFO L290 TraceCheckUtils]: 53: Hoare triple {2088#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2104#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 54: Hoare triple {2104#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume !(main_~i~0#1 < ~N~0); {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 55: Hoare triple {1930#false} main_~i~0#1 := 0; {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 56: Hoare triple {1930#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 57: Hoare triple {1930#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 58: Hoare triple {1930#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 59: Hoare triple {1930#false} assume 0 == __VERIFIER_assert_~cond#1; {1930#false} is VALID [2022-02-20 14:16:44,083 INFO L290 TraceCheckUtils]: 60: Hoare triple {1930#false} assume !false; {1930#false} is VALID [2022-02-20 14:16:44,084 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 0 proven. 235 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:44,084 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:44,636 INFO L290 TraceCheckUtils]: 60: Hoare triple {1930#false} assume !false; {1930#false} is VALID [2022-02-20 14:16:44,636 INFO L290 TraceCheckUtils]: 59: Hoare triple {1930#false} assume 0 == __VERIFIER_assert_~cond#1; {1930#false} is VALID [2022-02-20 14:16:44,636 INFO L290 TraceCheckUtils]: 58: Hoare triple {1930#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1930#false} is VALID [2022-02-20 14:16:44,637 INFO L290 TraceCheckUtils]: 57: Hoare triple {1930#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {1930#false} is VALID [2022-02-20 14:16:44,637 INFO L290 TraceCheckUtils]: 56: Hoare triple {1930#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {1930#false} is VALID [2022-02-20 14:16:44,637 INFO L290 TraceCheckUtils]: 55: Hoare triple {1930#false} main_~i~0#1 := 0; {1930#false} is VALID [2022-02-20 14:16:44,642 INFO L290 TraceCheckUtils]: 54: Hoare triple {2144#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} assume !(main_~i~0#1 < ~N~0); {1930#false} is VALID [2022-02-20 14:16:44,643 INFO L290 TraceCheckUtils]: 53: Hoare triple {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2144#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} is VALID [2022-02-20 14:16:44,643 INFO L290 TraceCheckUtils]: 52: Hoare triple {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:44,643 INFO L290 TraceCheckUtils]: 51: Hoare triple {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:44,644 INFO L290 TraceCheckUtils]: 50: Hoare triple {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:44,644 INFO L290 TraceCheckUtils]: 49: Hoare triple {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:44,645 INFO L290 TraceCheckUtils]: 48: Hoare triple {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2148#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:44,645 INFO L290 TraceCheckUtils]: 47: Hoare triple {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,645 INFO L290 TraceCheckUtils]: 46: Hoare triple {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,646 INFO L290 TraceCheckUtils]: 45: Hoare triple {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,646 INFO L290 TraceCheckUtils]: 44: Hoare triple {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,647 INFO L290 TraceCheckUtils]: 43: Hoare triple {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2164#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,647 INFO L290 TraceCheckUtils]: 42: Hoare triple {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,647 INFO L290 TraceCheckUtils]: 41: Hoare triple {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,647 INFO L290 TraceCheckUtils]: 40: Hoare triple {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,648 INFO L290 TraceCheckUtils]: 39: Hoare triple {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,648 INFO L290 TraceCheckUtils]: 38: Hoare triple {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2180#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,649 INFO L290 TraceCheckUtils]: 37: Hoare triple {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:44,649 INFO L290 TraceCheckUtils]: 36: Hoare triple {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:44,649 INFO L290 TraceCheckUtils]: 35: Hoare triple {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:44,650 INFO L290 TraceCheckUtils]: 34: Hoare triple {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:44,651 INFO L290 TraceCheckUtils]: 33: Hoare triple {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2196#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:44,651 INFO L290 TraceCheckUtils]: 32: Hoare triple {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,651 INFO L290 TraceCheckUtils]: 31: Hoare triple {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,652 INFO L290 TraceCheckUtils]: 30: Hoare triple {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,652 INFO L290 TraceCheckUtils]: 29: Hoare triple {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,652 INFO L290 TraceCheckUtils]: 28: Hoare triple {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2212#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,653 INFO L290 TraceCheckUtils]: 27: Hoare triple {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,653 INFO L290 TraceCheckUtils]: 26: Hoare triple {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,653 INFO L290 TraceCheckUtils]: 25: Hoare triple {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,654 INFO L290 TraceCheckUtils]: 24: Hoare triple {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,654 INFO L290 TraceCheckUtils]: 23: Hoare triple {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2228#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,655 INFO L290 TraceCheckUtils]: 22: Hoare triple {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,656 INFO L290 TraceCheckUtils]: 21: Hoare triple {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2244#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,658 INFO L290 TraceCheckUtils]: 17: Hoare triple {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:44,658 INFO L290 TraceCheckUtils]: 16: Hoare triple {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:44,658 INFO L290 TraceCheckUtils]: 15: Hoare triple {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:44,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:44,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2260#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:44,660 INFO L290 TraceCheckUtils]: 12: Hoare triple {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,660 INFO L290 TraceCheckUtils]: 11: Hoare triple {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,660 INFO L290 TraceCheckUtils]: 10: Hoare triple {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2276#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:44,661 INFO L290 TraceCheckUtils]: 7: Hoare triple {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:44,662 INFO L290 TraceCheckUtils]: 6: Hoare triple {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:44,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:44,662 INFO L290 TraceCheckUtils]: 4: Hoare triple {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:44,663 INFO L290 TraceCheckUtils]: 3: Hoare triple {2308#(< 10 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {2292#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:44,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {2308#(< 10 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {2308#(< 10 ~N~0)} is VALID [2022-02-20 14:16:44,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {2308#(< 10 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {2308#(< 10 ~N~0)} is VALID [2022-02-20 14:16:44,664 INFO L290 TraceCheckUtils]: 0: Hoare triple {1929#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {2308#(< 10 ~N~0)} is VALID [2022-02-20 14:16:44,664 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 0 proven. 235 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:16:44,664 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:44,665 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [794113936] [2022-02-20 14:16:44,665 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:44,665 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [825567925] [2022-02-20 14:16:44,665 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [825567925] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:44,665 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:44,665 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 25 [2022-02-20 14:16:44,665 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1238833758] [2022-02-20 14:16:44,665 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:44,665 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 14:16:44,666 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:44,666 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:44,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:44,766 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-20 14:16:44,766 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:44,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-20 14:16:44,767 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=303, Invalid=347, Unknown=0, NotChecked=0, Total=650 [2022-02-20 14:16:44,767 INFO L87 Difference]: Start difference. First operand 70 states and 88 transitions. Second operand has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:46,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:46,474 INFO L93 Difference]: Finished difference Result 463 states and 570 transitions. [2022-02-20 14:16:46,474 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-02-20 14:16:46,475 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 14:16:46,475 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:46,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:46,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 385 transitions. [2022-02-20 14:16:46,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:46,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 385 transitions. [2022-02-20 14:16:46,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 385 transitions. [2022-02-20 14:16:46,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 385 edges. 385 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:46,937 INFO L225 Difference]: With dead ends: 463 [2022-02-20 14:16:46,938 INFO L226 Difference]: Without dead ends: 424 [2022-02-20 14:16:46,939 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 253 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=589, Invalid=743, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 14:16:46,942 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 883 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 190 mSolverCounterSat, 110 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 883 SdHoareTripleChecker+Valid, 186 SdHoareTripleChecker+Invalid, 300 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 110 IncrementalHoareTripleChecker+Valid, 190 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:46,942 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [883 Valid, 186 Invalid, 300 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [110 Valid, 190 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 14:16:46,944 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 424 states. [2022-02-20 14:16:47,036 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 424 to 130. [2022-02-20 14:16:47,037 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:47,037 INFO L82 GeneralOperation]: Start isEquivalent. First operand 424 states. Second operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:47,037 INFO L74 IsIncluded]: Start isIncluded. First operand 424 states. Second operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:47,038 INFO L87 Difference]: Start difference. First operand 424 states. Second operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:47,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:47,049 INFO L93 Difference]: Finished difference Result 424 states and 501 transitions. [2022-02-20 14:16:47,049 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 501 transitions. [2022-02-20 14:16:47,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:47,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:47,051 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 424 states. [2022-02-20 14:16:47,051 INFO L87 Difference]: Start difference. First operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 424 states. [2022-02-20 14:16:47,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:47,064 INFO L93 Difference]: Finished difference Result 424 states and 501 transitions. [2022-02-20 14:16:47,065 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 501 transitions. [2022-02-20 14:16:47,065 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:47,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:47,065 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:47,066 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:47,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 129 states have (on average 1.2868217054263567) internal successors, (166), 129 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:47,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 166 transitions. [2022-02-20 14:16:47,069 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 166 transitions. Word has length 61 [2022-02-20 14:16:47,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:47,070 INFO L470 AbstractCegarLoop]: Abstraction has 130 states and 166 transitions. [2022-02-20 14:16:47,070 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 4.461538461538462) internal successors, (116), 25 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:47,070 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 166 transitions. [2022-02-20 14:16:47,071 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2022-02-20 14:16:47,071 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:47,071 INFO L514 BasicCegarLoop]: trace histogram [22, 22, 22, 22, 11, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:47,111 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:47,275 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:47,275 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:47,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:47,276 INFO L85 PathProgramCache]: Analyzing trace with hash 4942966, now seen corresponding path program 2 times [2022-02-20 14:16:47,276 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:47,276 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1214359502] [2022-02-20 14:16:47,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:47,276 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:47,330 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:47,330 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1605705974] [2022-02-20 14:16:47,330 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:16:47,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:47,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:47,331 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:47,360 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-20 14:16:47,441 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 14:16:47,442 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:16:47,443 INFO L263 TraceCheckSpWp]: Trace formula consists of 71 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 14:16:47,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:47,478 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:48,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {3880#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {3885#(= ~N~0 1000)} is VALID [2022-02-20 14:16:48,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {3885#(= ~N~0 1000)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == assume_abort_if_not_~cond#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,627 INFO L290 TraceCheckUtils]: 3: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,627 INFO L290 TraceCheckUtils]: 4: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,628 INFO L290 TraceCheckUtils]: 6: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,630 INFO L290 TraceCheckUtils]: 7: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,630 INFO L290 TraceCheckUtils]: 8: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,630 INFO L290 TraceCheckUtils]: 9: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,631 INFO L290 TraceCheckUtils]: 10: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,631 INFO L290 TraceCheckUtils]: 11: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,632 INFO L290 TraceCheckUtils]: 14: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,633 INFO L290 TraceCheckUtils]: 16: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,634 INFO L290 TraceCheckUtils]: 17: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,634 INFO L290 TraceCheckUtils]: 18: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,635 INFO L290 TraceCheckUtils]: 19: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,636 INFO L290 TraceCheckUtils]: 20: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,636 INFO L290 TraceCheckUtils]: 21: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,636 INFO L290 TraceCheckUtils]: 22: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,637 INFO L290 TraceCheckUtils]: 23: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,637 INFO L290 TraceCheckUtils]: 24: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,638 INFO L290 TraceCheckUtils]: 25: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,639 INFO L290 TraceCheckUtils]: 26: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,640 INFO L290 TraceCheckUtils]: 27: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,640 INFO L290 TraceCheckUtils]: 28: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,640 INFO L290 TraceCheckUtils]: 29: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,641 INFO L290 TraceCheckUtils]: 30: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,641 INFO L290 TraceCheckUtils]: 31: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,642 INFO L290 TraceCheckUtils]: 32: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,642 INFO L290 TraceCheckUtils]: 33: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,642 INFO L290 TraceCheckUtils]: 34: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,643 INFO L290 TraceCheckUtils]: 35: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,643 INFO L290 TraceCheckUtils]: 36: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,643 INFO L290 TraceCheckUtils]: 37: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,644 INFO L290 TraceCheckUtils]: 38: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,644 INFO L290 TraceCheckUtils]: 39: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,645 INFO L290 TraceCheckUtils]: 40: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,645 INFO L290 TraceCheckUtils]: 41: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,645 INFO L290 TraceCheckUtils]: 42: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,646 INFO L290 TraceCheckUtils]: 43: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,646 INFO L290 TraceCheckUtils]: 44: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,646 INFO L290 TraceCheckUtils]: 45: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,647 INFO L290 TraceCheckUtils]: 46: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,647 INFO L290 TraceCheckUtils]: 47: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,647 INFO L290 TraceCheckUtils]: 48: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,648 INFO L290 TraceCheckUtils]: 49: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,648 INFO L290 TraceCheckUtils]: 50: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,648 INFO L290 TraceCheckUtils]: 51: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,649 INFO L290 TraceCheckUtils]: 52: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,649 INFO L290 TraceCheckUtils]: 53: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,649 INFO L290 TraceCheckUtils]: 54: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,650 INFO L290 TraceCheckUtils]: 55: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,650 INFO L290 TraceCheckUtils]: 56: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,650 INFO L290 TraceCheckUtils]: 57: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,651 INFO L290 TraceCheckUtils]: 58: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,651 INFO L290 TraceCheckUtils]: 59: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,652 INFO L290 TraceCheckUtils]: 60: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,652 INFO L290 TraceCheckUtils]: 61: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,652 INFO L290 TraceCheckUtils]: 62: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,653 INFO L290 TraceCheckUtils]: 63: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,653 INFO L290 TraceCheckUtils]: 64: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,653 INFO L290 TraceCheckUtils]: 65: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,654 INFO L290 TraceCheckUtils]: 66: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,654 INFO L290 TraceCheckUtils]: 67: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,654 INFO L290 TraceCheckUtils]: 68: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,655 INFO L290 TraceCheckUtils]: 69: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,655 INFO L290 TraceCheckUtils]: 70: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,656 INFO L290 TraceCheckUtils]: 71: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,660 INFO L290 TraceCheckUtils]: 72: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,662 INFO L290 TraceCheckUtils]: 73: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,663 INFO L290 TraceCheckUtils]: 74: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,663 INFO L290 TraceCheckUtils]: 75: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,664 INFO L290 TraceCheckUtils]: 76: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,664 INFO L290 TraceCheckUtils]: 77: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,666 INFO L290 TraceCheckUtils]: 78: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,666 INFO L290 TraceCheckUtils]: 79: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,667 INFO L290 TraceCheckUtils]: 80: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,668 INFO L290 TraceCheckUtils]: 81: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,668 INFO L290 TraceCheckUtils]: 82: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,668 INFO L290 TraceCheckUtils]: 83: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,669 INFO L290 TraceCheckUtils]: 84: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,669 INFO L290 TraceCheckUtils]: 85: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,670 INFO L290 TraceCheckUtils]: 86: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,670 INFO L290 TraceCheckUtils]: 87: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,670 INFO L290 TraceCheckUtils]: 88: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,672 INFO L290 TraceCheckUtils]: 89: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,673 INFO L290 TraceCheckUtils]: 90: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,673 INFO L290 TraceCheckUtils]: 91: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,673 INFO L290 TraceCheckUtils]: 92: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,674 INFO L290 TraceCheckUtils]: 93: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,674 INFO L290 TraceCheckUtils]: 94: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,675 INFO L290 TraceCheckUtils]: 95: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,675 INFO L290 TraceCheckUtils]: 96: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,675 INFO L290 TraceCheckUtils]: 97: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,676 INFO L290 TraceCheckUtils]: 98: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,676 INFO L290 TraceCheckUtils]: 99: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,676 INFO L290 TraceCheckUtils]: 100: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,677 INFO L290 TraceCheckUtils]: 101: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,677 INFO L290 TraceCheckUtils]: 102: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,677 INFO L290 TraceCheckUtils]: 103: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,678 INFO L290 TraceCheckUtils]: 104: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,678 INFO L290 TraceCheckUtils]: 105: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,679 INFO L290 TraceCheckUtils]: 106: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,679 INFO L290 TraceCheckUtils]: 107: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,679 INFO L290 TraceCheckUtils]: 108: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,680 INFO L290 TraceCheckUtils]: 109: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,680 INFO L290 TraceCheckUtils]: 110: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,689 INFO L290 TraceCheckUtils]: 111: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,689 INFO L290 TraceCheckUtils]: 112: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,690 INFO L290 TraceCheckUtils]: 113: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,690 INFO L290 TraceCheckUtils]: 114: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 < ~N~0); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,691 INFO L290 TraceCheckUtils]: 115: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} main_~i~0#1 := 0; {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,691 INFO L290 TraceCheckUtils]: 116: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:48,691 INFO L290 TraceCheckUtils]: 117: Hoare triple {3889#(and (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4) (= |ULTIMATE.start_main_~j~0#1| 0))} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {4238#(and (= (+ (- 1) |ULTIMATE.start_main_~j~0#1|) 0) (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4))} is VALID [2022-02-20 14:16:48,692 INFO L290 TraceCheckUtils]: 118: Hoare triple {4238#(and (= (+ (- 1) |ULTIMATE.start_main_~j~0#1|) 0) (= ~N~0 1000) (= |ULTIMATE.start_main_~R~0#1| 4))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4242#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:16:48,692 INFO L290 TraceCheckUtils]: 119: Hoare triple {4242#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {3881#false} is VALID [2022-02-20 14:16:48,692 INFO L290 TraceCheckUtils]: 120: Hoare triple {3881#false} assume !false; {3881#false} is VALID [2022-02-20 14:16:48,693 INFO L134 CoverageAnalysis]: Checked inductivity of 1177 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1177 trivial. 0 not checked. [2022-02-20 14:16:48,693 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:48,693 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:48,694 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1214359502] [2022-02-20 14:16:48,694 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:48,694 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1605705974] [2022-02-20 14:16:48,694 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1605705974] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:48,694 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:48,694 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 14:16:48,694 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1892532165] [2022-02-20 14:16:48,694 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:48,696 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 121 [2022-02-20 14:16:48,696 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:48,697 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:48,715 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:48,715 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 14:16:48,716 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:48,716 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 14:16:48,716 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 14:16:48,716 INFO L87 Difference]: Start difference. First operand 130 states and 166 transitions. Second operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:49,043 INFO L93 Difference]: Finished difference Result 143 states and 181 transitions. [2022-02-20 14:16:49,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 14:16:49,043 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 121 [2022-02-20 14:16:49,043 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:49,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 14:16:49,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 14:16:49,044 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 44 transitions. [2022-02-20 14:16:49,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:49,097 INFO L225 Difference]: With dead ends: 143 [2022-02-20 14:16:49,097 INFO L226 Difference]: Without dead ends: 141 [2022-02-20 14:16:49,097 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 116 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 14:16:49,098 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 43 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:49,098 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 47 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:16:49,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states. [2022-02-20 14:16:49,165 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 136. [2022-02-20 14:16:49,165 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:49,165 INFO L82 GeneralOperation]: Start isEquivalent. First operand 141 states. Second operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,165 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,166 INFO L87 Difference]: Start difference. First operand 141 states. Second operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:49,168 INFO L93 Difference]: Finished difference Result 141 states and 179 transitions. [2022-02-20 14:16:49,168 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 179 transitions. [2022-02-20 14:16:49,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:49,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:49,168 INFO L74 IsIncluded]: Start isIncluded. First operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 141 states. [2022-02-20 14:16:49,169 INFO L87 Difference]: Start difference. First operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 141 states. [2022-02-20 14:16:49,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:49,170 INFO L93 Difference]: Finished difference Result 141 states and 179 transitions. [2022-02-20 14:16:49,171 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 179 transitions. [2022-02-20 14:16:49,171 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:49,171 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:49,171 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:49,171 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:49,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 136 states, 135 states have (on average 1.2814814814814814) internal successors, (173), 135 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 173 transitions. [2022-02-20 14:16:49,173 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 173 transitions. Word has length 121 [2022-02-20 14:16:49,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:49,173 INFO L470 AbstractCegarLoop]: Abstraction has 136 states and 173 transitions. [2022-02-20 14:16:49,173 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:49,173 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 173 transitions. [2022-02-20 14:16:49,174 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-02-20 14:16:49,174 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:49,174 INFO L514 BasicCegarLoop]: trace histogram [22, 22, 22, 22, 11, 11, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:49,205 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-02-20 14:16:49,387 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:49,388 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:49,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:49,389 INFO L85 PathProgramCache]: Analyzing trace with hash 1531894057, now seen corresponding path program 1 times [2022-02-20 14:16:49,389 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:49,389 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1534754028] [2022-02-20 14:16:49,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:49,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:49,425 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:49,425 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [445506181] [2022-02-20 14:16:49,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:49,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:49,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:49,426 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:16:49,428 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-02-20 14:16:49,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:49,561 INFO L263 TraceCheckSpWp]: Trace formula consists of 449 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 14:16:49,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:49,593 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:50,766 INFO L290 TraceCheckUtils]: 0: Hoare triple {4868#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {4873#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:50,766 INFO L290 TraceCheckUtils]: 1: Hoare triple {4873#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4873#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:50,766 INFO L290 TraceCheckUtils]: 2: Hoare triple {4873#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {4873#(<= 1000 ~N~0)} is VALID [2022-02-20 14:16:50,767 INFO L290 TraceCheckUtils]: 3: Hoare triple {4873#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,767 INFO L290 TraceCheckUtils]: 4: Hoare triple {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,768 INFO L290 TraceCheckUtils]: 5: Hoare triple {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,768 INFO L290 TraceCheckUtils]: 6: Hoare triple {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,769 INFO L290 TraceCheckUtils]: 7: Hoare triple {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,770 INFO L290 TraceCheckUtils]: 8: Hoare triple {4883#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:50,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:50,771 INFO L290 TraceCheckUtils]: 10: Hoare triple {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:50,771 INFO L290 TraceCheckUtils]: 11: Hoare triple {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:50,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:16:50,772 INFO L290 TraceCheckUtils]: 13: Hoare triple {4899#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,779 INFO L290 TraceCheckUtils]: 15: Hoare triple {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,782 INFO L290 TraceCheckUtils]: 17: Hoare triple {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {4915#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,785 INFO L290 TraceCheckUtils]: 22: Hoare triple {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {4931#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,786 INFO L290 TraceCheckUtils]: 24: Hoare triple {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,787 INFO L290 TraceCheckUtils]: 25: Hoare triple {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,787 INFO L290 TraceCheckUtils]: 26: Hoare triple {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,788 INFO L290 TraceCheckUtils]: 27: Hoare triple {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,788 INFO L290 TraceCheckUtils]: 28: Hoare triple {4947#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:50,789 INFO L290 TraceCheckUtils]: 29: Hoare triple {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:50,789 INFO L290 TraceCheckUtils]: 30: Hoare triple {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:50,790 INFO L290 TraceCheckUtils]: 31: Hoare triple {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:50,790 INFO L290 TraceCheckUtils]: 32: Hoare triple {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:16:50,791 INFO L290 TraceCheckUtils]: 33: Hoare triple {4963#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:50,791 INFO L290 TraceCheckUtils]: 34: Hoare triple {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:50,792 INFO L290 TraceCheckUtils]: 35: Hoare triple {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:50,792 INFO L290 TraceCheckUtils]: 36: Hoare triple {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:50,793 INFO L290 TraceCheckUtils]: 37: Hoare triple {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:16:50,793 INFO L290 TraceCheckUtils]: 38: Hoare triple {4979#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:50,794 INFO L290 TraceCheckUtils]: 39: Hoare triple {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:50,794 INFO L290 TraceCheckUtils]: 40: Hoare triple {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:50,795 INFO L290 TraceCheckUtils]: 41: Hoare triple {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:50,795 INFO L290 TraceCheckUtils]: 42: Hoare triple {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:16:50,796 INFO L290 TraceCheckUtils]: 43: Hoare triple {4995#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,796 INFO L290 TraceCheckUtils]: 44: Hoare triple {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,804 INFO L290 TraceCheckUtils]: 45: Hoare triple {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,804 INFO L290 TraceCheckUtils]: 46: Hoare triple {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,805 INFO L290 TraceCheckUtils]: 47: Hoare triple {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,806 INFO L290 TraceCheckUtils]: 48: Hoare triple {5011#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:50,806 INFO L290 TraceCheckUtils]: 49: Hoare triple {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:50,807 INFO L290 TraceCheckUtils]: 50: Hoare triple {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:50,807 INFO L290 TraceCheckUtils]: 51: Hoare triple {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:50,807 INFO L290 TraceCheckUtils]: 52: Hoare triple {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:16:50,808 INFO L290 TraceCheckUtils]: 53: Hoare triple {5027#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,808 INFO L290 TraceCheckUtils]: 54: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,809 INFO L290 TraceCheckUtils]: 55: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,809 INFO L290 TraceCheckUtils]: 56: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,810 INFO L290 TraceCheckUtils]: 57: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,810 INFO L290 TraceCheckUtils]: 58: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,811 INFO L290 TraceCheckUtils]: 59: Hoare triple {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,811 INFO L290 TraceCheckUtils]: 60: Hoare triple {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,812 INFO L290 TraceCheckUtils]: 61: Hoare triple {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,812 INFO L290 TraceCheckUtils]: 62: Hoare triple {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,813 INFO L290 TraceCheckUtils]: 63: Hoare triple {5059#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,813 INFO L290 TraceCheckUtils]: 64: Hoare triple {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,813 INFO L290 TraceCheckUtils]: 65: Hoare triple {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,814 INFO L290 TraceCheckUtils]: 66: Hoare triple {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,814 INFO L290 TraceCheckUtils]: 67: Hoare triple {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,815 INFO L290 TraceCheckUtils]: 68: Hoare triple {5075#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,815 INFO L290 TraceCheckUtils]: 69: Hoare triple {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,816 INFO L290 TraceCheckUtils]: 70: Hoare triple {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,816 INFO L290 TraceCheckUtils]: 71: Hoare triple {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,816 INFO L290 TraceCheckUtils]: 72: Hoare triple {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,817 INFO L290 TraceCheckUtils]: 73: Hoare triple {5091#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:16:50,817 INFO L290 TraceCheckUtils]: 74: Hoare triple {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:16:50,818 INFO L290 TraceCheckUtils]: 75: Hoare triple {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:16:50,818 INFO L290 TraceCheckUtils]: 76: Hoare triple {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:16:50,818 INFO L290 TraceCheckUtils]: 77: Hoare triple {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:16:50,821 INFO L290 TraceCheckUtils]: 78: Hoare triple {5107#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:16:50,822 INFO L290 TraceCheckUtils]: 79: Hoare triple {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:16:50,823 INFO L290 TraceCheckUtils]: 80: Hoare triple {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:16:50,823 INFO L290 TraceCheckUtils]: 81: Hoare triple {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:16:50,824 INFO L290 TraceCheckUtils]: 82: Hoare triple {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:16:50,825 INFO L290 TraceCheckUtils]: 83: Hoare triple {5123#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,825 INFO L290 TraceCheckUtils]: 84: Hoare triple {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,826 INFO L290 TraceCheckUtils]: 85: Hoare triple {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,827 INFO L290 TraceCheckUtils]: 86: Hoare triple {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,827 INFO L290 TraceCheckUtils]: 87: Hoare triple {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,827 INFO L290 TraceCheckUtils]: 88: Hoare triple {5139#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:16:50,828 INFO L290 TraceCheckUtils]: 89: Hoare triple {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:16:50,828 INFO L290 TraceCheckUtils]: 90: Hoare triple {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:16:50,829 INFO L290 TraceCheckUtils]: 91: Hoare triple {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:16:50,830 INFO L290 TraceCheckUtils]: 92: Hoare triple {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:16:50,831 INFO L290 TraceCheckUtils]: 93: Hoare triple {5155#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:16:50,831 INFO L290 TraceCheckUtils]: 94: Hoare triple {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:16:50,832 INFO L290 TraceCheckUtils]: 95: Hoare triple {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:16:50,832 INFO L290 TraceCheckUtils]: 96: Hoare triple {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:16:50,833 INFO L290 TraceCheckUtils]: 97: Hoare triple {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:16:50,833 INFO L290 TraceCheckUtils]: 98: Hoare triple {5171#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,833 INFO L290 TraceCheckUtils]: 99: Hoare triple {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,834 INFO L290 TraceCheckUtils]: 100: Hoare triple {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,834 INFO L290 TraceCheckUtils]: 101: Hoare triple {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,835 INFO L290 TraceCheckUtils]: 102: Hoare triple {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,835 INFO L290 TraceCheckUtils]: 103: Hoare triple {5187#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,836 INFO L290 TraceCheckUtils]: 104: Hoare triple {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,836 INFO L290 TraceCheckUtils]: 105: Hoare triple {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,837 INFO L290 TraceCheckUtils]: 106: Hoare triple {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,837 INFO L290 TraceCheckUtils]: 107: Hoare triple {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:16:50,838 INFO L290 TraceCheckUtils]: 108: Hoare triple {5203#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:16:50,838 INFO L290 TraceCheckUtils]: 109: Hoare triple {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:16:50,839 INFO L290 TraceCheckUtils]: 110: Hoare triple {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:16:50,839 INFO L290 TraceCheckUtils]: 111: Hoare triple {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:16:50,839 INFO L290 TraceCheckUtils]: 112: Hoare triple {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:16:50,840 INFO L290 TraceCheckUtils]: 113: Hoare triple {5219#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5235#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 114: Hoare triple {5235#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} assume !(main_~i~0#1 < ~N~0); {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 115: Hoare triple {4869#false} main_~i~0#1 := 0; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 116: Hoare triple {4869#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 117: Hoare triple {4869#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 118: Hoare triple {4869#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 119: Hoare triple {4869#false} assume !(0 == __VERIFIER_assert_~cond#1); {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 120: Hoare triple {4869#false} assume { :end_inline___VERIFIER_assert } true; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 121: Hoare triple {4869#false} main_#t~post8#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 122: Hoare triple {4869#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 123: Hoare triple {4869#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 124: Hoare triple {4869#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4869#false} is VALID [2022-02-20 14:16:50,841 INFO L290 TraceCheckUtils]: 125: Hoare triple {4869#false} assume 0 == __VERIFIER_assert_~cond#1; {4869#false} is VALID [2022-02-20 14:16:50,842 INFO L290 TraceCheckUtils]: 126: Hoare triple {4869#false} assume !false; {4869#false} is VALID [2022-02-20 14:16:50,843 INFO L134 CoverageAnalysis]: Checked inductivity of 1181 backedges. 0 proven. 1177 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 14:16:50,843 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 126: Hoare triple {4869#false} assume !false; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 125: Hoare triple {4869#false} assume 0 == __VERIFIER_assert_~cond#1; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 124: Hoare triple {4869#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 123: Hoare triple {4869#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 122: Hoare triple {4869#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 121: Hoare triple {4869#false} main_#t~post8#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 120: Hoare triple {4869#false} assume { :end_inline___VERIFIER_assert } true; {4869#false} is VALID [2022-02-20 14:16:52,536 INFO L290 TraceCheckUtils]: 119: Hoare triple {4869#false} assume !(0 == __VERIFIER_assert_~cond#1); {4869#false} is VALID [2022-02-20 14:16:52,537 INFO L290 TraceCheckUtils]: 118: Hoare triple {4869#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4869#false} is VALID [2022-02-20 14:16:52,537 INFO L290 TraceCheckUtils]: 117: Hoare triple {4869#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {4869#false} is VALID [2022-02-20 14:16:52,537 INFO L290 TraceCheckUtils]: 116: Hoare triple {4869#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {4869#false} is VALID [2022-02-20 14:16:52,537 INFO L290 TraceCheckUtils]: 115: Hoare triple {4869#false} main_~i~0#1 := 0; {4869#false} is VALID [2022-02-20 14:16:52,539 INFO L290 TraceCheckUtils]: 114: Hoare triple {5311#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} assume !(main_~i~0#1 < ~N~0); {4869#false} is VALID [2022-02-20 14:16:52,540 INFO L290 TraceCheckUtils]: 113: Hoare triple {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5311#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} is VALID [2022-02-20 14:16:52,540 INFO L290 TraceCheckUtils]: 112: Hoare triple {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:52,541 INFO L290 TraceCheckUtils]: 111: Hoare triple {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:52,541 INFO L290 TraceCheckUtils]: 110: Hoare triple {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:52,541 INFO L290 TraceCheckUtils]: 109: Hoare triple {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:52,542 INFO L290 TraceCheckUtils]: 108: Hoare triple {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5315#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:16:52,543 INFO L290 TraceCheckUtils]: 107: Hoare triple {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,543 INFO L290 TraceCheckUtils]: 106: Hoare triple {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,543 INFO L290 TraceCheckUtils]: 105: Hoare triple {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,544 INFO L290 TraceCheckUtils]: 104: Hoare triple {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,545 INFO L290 TraceCheckUtils]: 103: Hoare triple {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5331#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,545 INFO L290 TraceCheckUtils]: 102: Hoare triple {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,545 INFO L290 TraceCheckUtils]: 101: Hoare triple {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,546 INFO L290 TraceCheckUtils]: 100: Hoare triple {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,546 INFO L290 TraceCheckUtils]: 99: Hoare triple {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,554 INFO L290 TraceCheckUtils]: 98: Hoare triple {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5347#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,554 INFO L290 TraceCheckUtils]: 97: Hoare triple {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:52,555 INFO L290 TraceCheckUtils]: 96: Hoare triple {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:52,555 INFO L290 TraceCheckUtils]: 95: Hoare triple {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:52,562 INFO L290 TraceCheckUtils]: 94: Hoare triple {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:52,564 INFO L290 TraceCheckUtils]: 93: Hoare triple {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5363#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:16:52,564 INFO L290 TraceCheckUtils]: 92: Hoare triple {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,565 INFO L290 TraceCheckUtils]: 91: Hoare triple {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,565 INFO L290 TraceCheckUtils]: 90: Hoare triple {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,566 INFO L290 TraceCheckUtils]: 89: Hoare triple {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,567 INFO L290 TraceCheckUtils]: 88: Hoare triple {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5379#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,567 INFO L290 TraceCheckUtils]: 87: Hoare triple {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,568 INFO L290 TraceCheckUtils]: 86: Hoare triple {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,568 INFO L290 TraceCheckUtils]: 85: Hoare triple {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,568 INFO L290 TraceCheckUtils]: 84: Hoare triple {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,570 INFO L290 TraceCheckUtils]: 83: Hoare triple {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5395#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,570 INFO L290 TraceCheckUtils]: 82: Hoare triple {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,570 INFO L290 TraceCheckUtils]: 81: Hoare triple {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,571 INFO L290 TraceCheckUtils]: 80: Hoare triple {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,571 INFO L290 TraceCheckUtils]: 79: Hoare triple {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,573 INFO L290 TraceCheckUtils]: 78: Hoare triple {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5411#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,573 INFO L290 TraceCheckUtils]: 77: Hoare triple {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:52,574 INFO L290 TraceCheckUtils]: 76: Hoare triple {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:52,574 INFO L290 TraceCheckUtils]: 75: Hoare triple {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:52,575 INFO L290 TraceCheckUtils]: 74: Hoare triple {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:52,576 INFO L290 TraceCheckUtils]: 73: Hoare triple {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5427#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:16:52,576 INFO L290 TraceCheckUtils]: 72: Hoare triple {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,577 INFO L290 TraceCheckUtils]: 71: Hoare triple {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,577 INFO L290 TraceCheckUtils]: 70: Hoare triple {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,578 INFO L290 TraceCheckUtils]: 69: Hoare triple {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,579 INFO L290 TraceCheckUtils]: 68: Hoare triple {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5443#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,579 INFO L290 TraceCheckUtils]: 67: Hoare triple {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:52,579 INFO L290 TraceCheckUtils]: 66: Hoare triple {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:52,580 INFO L290 TraceCheckUtils]: 65: Hoare triple {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:52,580 INFO L290 TraceCheckUtils]: 64: Hoare triple {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:52,581 INFO L290 TraceCheckUtils]: 63: Hoare triple {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5459#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:16:52,582 INFO L290 TraceCheckUtils]: 62: Hoare triple {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:16:52,582 INFO L290 TraceCheckUtils]: 61: Hoare triple {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:16:52,583 INFO L290 TraceCheckUtils]: 60: Hoare triple {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:16:52,583 INFO L290 TraceCheckUtils]: 59: Hoare triple {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:16:52,584 INFO L290 TraceCheckUtils]: 58: Hoare triple {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5475#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:16:52,584 INFO L290 TraceCheckUtils]: 57: Hoare triple {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:16:52,585 INFO L290 TraceCheckUtils]: 56: Hoare triple {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:16:52,585 INFO L290 TraceCheckUtils]: 55: Hoare triple {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:16:52,586 INFO L290 TraceCheckUtils]: 54: Hoare triple {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:16:52,587 INFO L290 TraceCheckUtils]: 53: Hoare triple {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5491#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:16:52,587 INFO L290 TraceCheckUtils]: 52: Hoare triple {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:16:52,588 INFO L290 TraceCheckUtils]: 51: Hoare triple {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:16:52,588 INFO L290 TraceCheckUtils]: 50: Hoare triple {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:16:52,589 INFO L290 TraceCheckUtils]: 49: Hoare triple {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:16:52,590 INFO L290 TraceCheckUtils]: 48: Hoare triple {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5507#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:16:52,590 INFO L290 TraceCheckUtils]: 47: Hoare triple {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,590 INFO L290 TraceCheckUtils]: 46: Hoare triple {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,591 INFO L290 TraceCheckUtils]: 45: Hoare triple {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,591 INFO L290 TraceCheckUtils]: 44: Hoare triple {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,592 INFO L290 TraceCheckUtils]: 43: Hoare triple {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5523#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,593 INFO L290 TraceCheckUtils]: 42: Hoare triple {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:16:52,594 INFO L290 TraceCheckUtils]: 41: Hoare triple {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:16:52,594 INFO L290 TraceCheckUtils]: 40: Hoare triple {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:16:52,595 INFO L290 TraceCheckUtils]: 39: Hoare triple {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:16:52,595 INFO L290 TraceCheckUtils]: 38: Hoare triple {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5539#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:16:52,596 INFO L290 TraceCheckUtils]: 37: Hoare triple {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,596 INFO L290 TraceCheckUtils]: 36: Hoare triple {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,597 INFO L290 TraceCheckUtils]: 35: Hoare triple {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,597 INFO L290 TraceCheckUtils]: 34: Hoare triple {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5555#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,598 INFO L290 TraceCheckUtils]: 32: Hoare triple {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:16:52,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:16:52,599 INFO L290 TraceCheckUtils]: 30: Hoare triple {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:16:52,599 INFO L290 TraceCheckUtils]: 29: Hoare triple {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:16:52,600 INFO L290 TraceCheckUtils]: 28: Hoare triple {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5571#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:16:52,601 INFO L290 TraceCheckUtils]: 27: Hoare triple {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:16:52,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:16:52,601 INFO L290 TraceCheckUtils]: 25: Hoare triple {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:16:52,601 INFO L290 TraceCheckUtils]: 24: Hoare triple {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:16:52,602 INFO L290 TraceCheckUtils]: 23: Hoare triple {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5587#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:16:52,602 INFO L290 TraceCheckUtils]: 22: Hoare triple {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,603 INFO L290 TraceCheckUtils]: 21: Hoare triple {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,603 INFO L290 TraceCheckUtils]: 20: Hoare triple {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,603 INFO L290 TraceCheckUtils]: 19: Hoare triple {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,604 INFO L290 TraceCheckUtils]: 18: Hoare triple {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5603#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,604 INFO L290 TraceCheckUtils]: 17: Hoare triple {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:16:52,605 INFO L290 TraceCheckUtils]: 16: Hoare triple {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:16:52,605 INFO L290 TraceCheckUtils]: 15: Hoare triple {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:16:52,606 INFO L290 TraceCheckUtils]: 14: Hoare triple {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:16:52,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5619#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:16:52,607 INFO L290 TraceCheckUtils]: 12: Hoare triple {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,607 INFO L290 TraceCheckUtils]: 11: Hoare triple {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,607 INFO L290 TraceCheckUtils]: 10: Hoare triple {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,608 INFO L290 TraceCheckUtils]: 9: Hoare triple {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,608 INFO L290 TraceCheckUtils]: 8: Hoare triple {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5635#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,609 INFO L290 TraceCheckUtils]: 7: Hoare triple {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,609 INFO L290 TraceCheckUtils]: 6: Hoare triple {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,609 INFO L290 TraceCheckUtils]: 5: Hoare triple {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,610 INFO L290 TraceCheckUtils]: 4: Hoare triple {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,610 INFO L290 TraceCheckUtils]: 3: Hoare triple {5667#(< 22 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {5651#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:16:52,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {5667#(< 22 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {5667#(< 22 ~N~0)} is VALID [2022-02-20 14:16:52,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {5667#(< 22 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {5667#(< 22 ~N~0)} is VALID [2022-02-20 14:16:52,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {4868#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {5667#(< 22 ~N~0)} is VALID [2022-02-20 14:16:52,612 INFO L134 CoverageAnalysis]: Checked inductivity of 1181 backedges. 0 proven. 1177 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 14:16:52,612 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:52,612 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1534754028] [2022-02-20 14:16:52,612 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:52,612 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [445506181] [2022-02-20 14:16:52,612 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [445506181] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:52,612 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:52,612 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 25] total 49 [2022-02-20 14:16:52,612 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1582360153] [2022-02-20 14:16:52,612 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:52,613 INFO L78 Accepts]: Start accepts. Automaton has has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 127 [2022-02-20 14:16:52,613 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:52,614 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:16:52,848 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:16:52,849 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 50 states [2022-02-20 14:16:52,849 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:52,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 50 interpolants. [2022-02-20 14:16:52,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1179, Invalid=1271, Unknown=0, NotChecked=0, Total=2450 [2022-02-20 14:16:52,850 INFO L87 Difference]: Start difference. First operand 136 states and 173 transitions. Second operand has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:00,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:00,038 INFO L93 Difference]: Finished difference Result 1222 states and 1488 transitions. [2022-02-20 14:17:00,038 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2022-02-20 14:17:00,039 INFO L78 Accepts]: Start accepts. Automaton has has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 127 [2022-02-20 14:17:00,039 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:17:00,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:00,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 773 transitions. [2022-02-20 14:17:00,045 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:00,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 773 transitions. [2022-02-20 14:17:00,049 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 49 states and 773 transitions. [2022-02-20 14:17:01,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 773 edges. 773 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:17:01,121 INFO L225 Difference]: With dead ends: 1222 [2022-02-20 14:17:01,121 INFO L226 Difference]: Without dead ends: 1147 [2022-02-20 14:17:01,123 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 275 GetRequests, 204 SyntacticMatches, 0 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1081 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=2329, Invalid=2927, Unknown=0, NotChecked=0, Total=5256 [2022-02-20 14:17:01,124 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 2497 mSDsluCounter, 364 mSDsCounter, 0 mSdLazyCounter, 364 mSolverCounterSat, 344 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2497 SdHoareTripleChecker+Valid, 376 SdHoareTripleChecker+Invalid, 708 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 344 IncrementalHoareTripleChecker+Valid, 364 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:17:01,124 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2497 Valid, 376 Invalid, 708 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [344 Valid, 364 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 14:17:01,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1147 states. [2022-02-20 14:17:01,260 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1147 to 256. [2022-02-20 14:17:01,260 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:17:01,261 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1147 states. Second operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:01,261 INFO L74 IsIncluded]: Start isIncluded. First operand 1147 states. Second operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:01,261 INFO L87 Difference]: Start difference. First operand 1147 states. Second operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:01,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:01,302 INFO L93 Difference]: Finished difference Result 1147 states and 1352 transitions. [2022-02-20 14:17:01,303 INFO L276 IsEmpty]: Start isEmpty. Operand 1147 states and 1352 transitions. [2022-02-20 14:17:01,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:01,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:01,306 INFO L74 IsIncluded]: Start isIncluded. First operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 1147 states. [2022-02-20 14:17:01,306 INFO L87 Difference]: Start difference. First operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 1147 states. [2022-02-20 14:17:01,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:01,350 INFO L93 Difference]: Finished difference Result 1147 states and 1352 transitions. [2022-02-20 14:17:01,350 INFO L276 IsEmpty]: Start isEmpty. Operand 1147 states and 1352 transitions. [2022-02-20 14:17:01,352 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:01,352 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:01,352 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:17:01,352 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:17:01,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 256 states, 255 states have (on average 1.2901960784313726) internal successors, (329), 255 states have internal predecessors, (329), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:01,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 256 states to 256 states and 329 transitions. [2022-02-20 14:17:01,356 INFO L78 Accepts]: Start accepts. Automaton has 256 states and 329 transitions. Word has length 127 [2022-02-20 14:17:01,356 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:17:01,357 INFO L470 AbstractCegarLoop]: Abstraction has 256 states and 329 transitions. [2022-02-20 14:17:01,357 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 50 states, 50 states have (on average 4.78) internal successors, (239), 49 states have internal predecessors, (239), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:01,357 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 329 transitions. [2022-02-20 14:17:01,358 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 248 [2022-02-20 14:17:01,359 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:17:01,359 INFO L514 BasicCegarLoop]: trace histogram [46, 46, 46, 46, 23, 23, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:17:01,381 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-02-20 14:17:01,579 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-02-20 14:17:01,579 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:17:01,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:17:01,580 INFO L85 PathProgramCache]: Analyzing trace with hash -456351959, now seen corresponding path program 2 times [2022-02-20 14:17:01,580 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:17:01,580 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1675616501] [2022-02-20 14:17:01,580 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:17:01,580 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:17:01,668 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:17:01,668 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1073998656] [2022-02-20 14:17:01,669 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:17:01,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:17:01,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:17:01,670 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:17:01,671 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-20 14:17:02,010 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 14:17:02,010 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:17:02,015 INFO L263 TraceCheckSpWp]: Trace formula consists of 845 conjuncts, 49 conjunts are in the unsatisfiable core [2022-02-20 14:17:02,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:17:02,087 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:17:05,831 INFO L290 TraceCheckUtils]: 0: Hoare triple {9743#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {9748#(<= 1000 ~N~0)} is VALID [2022-02-20 14:17:05,832 INFO L290 TraceCheckUtils]: 1: Hoare triple {9748#(<= 1000 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {9748#(<= 1000 ~N~0)} is VALID [2022-02-20 14:17:05,832 INFO L290 TraceCheckUtils]: 2: Hoare triple {9748#(<= 1000 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {9748#(<= 1000 ~N~0)} is VALID [2022-02-20 14:17:05,832 INFO L290 TraceCheckUtils]: 3: Hoare triple {9748#(<= 1000 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,833 INFO L290 TraceCheckUtils]: 4: Hoare triple {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,834 INFO L290 TraceCheckUtils]: 5: Hoare triple {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,834 INFO L290 TraceCheckUtils]: 6: Hoare triple {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {9758#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:17:05,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:17:05,838 INFO L290 TraceCheckUtils]: 10: Hoare triple {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:17:05,839 INFO L290 TraceCheckUtils]: 11: Hoare triple {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:17:05,839 INFO L290 TraceCheckUtils]: 12: Hoare triple {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 14:17:05,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {9774#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,843 INFO L290 TraceCheckUtils]: 15: Hoare triple {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,843 INFO L290 TraceCheckUtils]: 16: Hoare triple {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,844 INFO L290 TraceCheckUtils]: 17: Hoare triple {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,846 INFO L290 TraceCheckUtils]: 18: Hoare triple {9790#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,847 INFO L290 TraceCheckUtils]: 19: Hoare triple {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,847 INFO L290 TraceCheckUtils]: 20: Hoare triple {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,848 INFO L290 TraceCheckUtils]: 21: Hoare triple {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,848 INFO L290 TraceCheckUtils]: 22: Hoare triple {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,851 INFO L290 TraceCheckUtils]: 23: Hoare triple {9806#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,851 INFO L290 TraceCheckUtils]: 24: Hoare triple {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,852 INFO L290 TraceCheckUtils]: 25: Hoare triple {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,852 INFO L290 TraceCheckUtils]: 26: Hoare triple {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,853 INFO L290 TraceCheckUtils]: 27: Hoare triple {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,855 INFO L290 TraceCheckUtils]: 28: Hoare triple {9822#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:17:05,856 INFO L290 TraceCheckUtils]: 29: Hoare triple {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:17:05,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:17:05,857 INFO L290 TraceCheckUtils]: 31: Hoare triple {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:17:05,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 14:17:05,859 INFO L290 TraceCheckUtils]: 33: Hoare triple {9838#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:17:05,859 INFO L290 TraceCheckUtils]: 34: Hoare triple {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:17:05,860 INFO L290 TraceCheckUtils]: 35: Hoare triple {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:17:05,860 INFO L290 TraceCheckUtils]: 36: Hoare triple {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:17:05,861 INFO L290 TraceCheckUtils]: 37: Hoare triple {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 14:17:05,862 INFO L290 TraceCheckUtils]: 38: Hoare triple {9854#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 6))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:17:05,863 INFO L290 TraceCheckUtils]: 39: Hoare triple {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:17:05,863 INFO L290 TraceCheckUtils]: 40: Hoare triple {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:17:05,864 INFO L290 TraceCheckUtils]: 41: Hoare triple {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:17:05,864 INFO L290 TraceCheckUtils]: 42: Hoare triple {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 14:17:05,866 INFO L290 TraceCheckUtils]: 43: Hoare triple {9870#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 7))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,867 INFO L290 TraceCheckUtils]: 44: Hoare triple {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,867 INFO L290 TraceCheckUtils]: 45: Hoare triple {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,867 INFO L290 TraceCheckUtils]: 46: Hoare triple {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,868 INFO L290 TraceCheckUtils]: 47: Hoare triple {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,869 INFO L290 TraceCheckUtils]: 48: Hoare triple {9886#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:17:05,869 INFO L290 TraceCheckUtils]: 49: Hoare triple {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:17:05,870 INFO L290 TraceCheckUtils]: 50: Hoare triple {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:17:05,870 INFO L290 TraceCheckUtils]: 51: Hoare triple {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:17:05,871 INFO L290 TraceCheckUtils]: 52: Hoare triple {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} is VALID [2022-02-20 14:17:05,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {9902#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 9))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,873 INFO L290 TraceCheckUtils]: 54: Hoare triple {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,873 INFO L290 TraceCheckUtils]: 55: Hoare triple {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,874 INFO L290 TraceCheckUtils]: 56: Hoare triple {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,874 INFO L290 TraceCheckUtils]: 57: Hoare triple {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,876 INFO L290 TraceCheckUtils]: 58: Hoare triple {9918#(and (<= |ULTIMATE.start_main_~i~0#1| 10) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,876 INFO L290 TraceCheckUtils]: 59: Hoare triple {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,877 INFO L290 TraceCheckUtils]: 60: Hoare triple {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,877 INFO L290 TraceCheckUtils]: 61: Hoare triple {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,878 INFO L290 TraceCheckUtils]: 62: Hoare triple {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,880 INFO L290 TraceCheckUtils]: 63: Hoare triple {9934#(and (<= |ULTIMATE.start_main_~i~0#1| 11) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,880 INFO L290 TraceCheckUtils]: 64: Hoare triple {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,881 INFO L290 TraceCheckUtils]: 65: Hoare triple {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,881 INFO L290 TraceCheckUtils]: 66: Hoare triple {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,882 INFO L290 TraceCheckUtils]: 67: Hoare triple {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,883 INFO L290 TraceCheckUtils]: 68: Hoare triple {9950#(and (<= |ULTIMATE.start_main_~i~0#1| 12) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,884 INFO L290 TraceCheckUtils]: 69: Hoare triple {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,884 INFO L290 TraceCheckUtils]: 70: Hoare triple {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,885 INFO L290 TraceCheckUtils]: 71: Hoare triple {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,885 INFO L290 TraceCheckUtils]: 72: Hoare triple {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,887 INFO L290 TraceCheckUtils]: 73: Hoare triple {9966#(and (<= |ULTIMATE.start_main_~i~0#1| 13) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:17:05,888 INFO L290 TraceCheckUtils]: 74: Hoare triple {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:17:05,888 INFO L290 TraceCheckUtils]: 75: Hoare triple {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:17:05,889 INFO L290 TraceCheckUtils]: 76: Hoare triple {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:17:05,889 INFO L290 TraceCheckUtils]: 77: Hoare triple {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} is VALID [2022-02-20 14:17:05,891 INFO L290 TraceCheckUtils]: 78: Hoare triple {9982#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 14))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:17:05,892 INFO L290 TraceCheckUtils]: 79: Hoare triple {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:17:05,892 INFO L290 TraceCheckUtils]: 80: Hoare triple {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:17:05,893 INFO L290 TraceCheckUtils]: 81: Hoare triple {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:17:05,893 INFO L290 TraceCheckUtils]: 82: Hoare triple {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} is VALID [2022-02-20 14:17:05,895 INFO L290 TraceCheckUtils]: 83: Hoare triple {9998#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 15))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,896 INFO L290 TraceCheckUtils]: 84: Hoare triple {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,896 INFO L290 TraceCheckUtils]: 85: Hoare triple {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,897 INFO L290 TraceCheckUtils]: 86: Hoare triple {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,897 INFO L290 TraceCheckUtils]: 87: Hoare triple {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,899 INFO L290 TraceCheckUtils]: 88: Hoare triple {10014#(and (<= |ULTIMATE.start_main_~i~0#1| 16) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:17:05,900 INFO L290 TraceCheckUtils]: 89: Hoare triple {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:17:05,901 INFO L290 TraceCheckUtils]: 90: Hoare triple {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:17:05,901 INFO L290 TraceCheckUtils]: 91: Hoare triple {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:17:05,901 INFO L290 TraceCheckUtils]: 92: Hoare triple {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} is VALID [2022-02-20 14:17:05,905 INFO L290 TraceCheckUtils]: 93: Hoare triple {10030#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 17))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:17:05,905 INFO L290 TraceCheckUtils]: 94: Hoare triple {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:17:05,906 INFO L290 TraceCheckUtils]: 95: Hoare triple {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:17:05,906 INFO L290 TraceCheckUtils]: 96: Hoare triple {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:17:05,907 INFO L290 TraceCheckUtils]: 97: Hoare triple {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} is VALID [2022-02-20 14:17:05,909 INFO L290 TraceCheckUtils]: 98: Hoare triple {10046#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 18))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,909 INFO L290 TraceCheckUtils]: 99: Hoare triple {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,910 INFO L290 TraceCheckUtils]: 100: Hoare triple {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,910 INFO L290 TraceCheckUtils]: 101: Hoare triple {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,911 INFO L290 TraceCheckUtils]: 102: Hoare triple {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,913 INFO L290 TraceCheckUtils]: 103: Hoare triple {10062#(and (<= |ULTIMATE.start_main_~i~0#1| 19) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,913 INFO L290 TraceCheckUtils]: 104: Hoare triple {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,914 INFO L290 TraceCheckUtils]: 105: Hoare triple {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,914 INFO L290 TraceCheckUtils]: 106: Hoare triple {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,915 INFO L290 TraceCheckUtils]: 107: Hoare triple {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,917 INFO L290 TraceCheckUtils]: 108: Hoare triple {10078#(and (<= |ULTIMATE.start_main_~i~0#1| 20) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:17:05,918 INFO L290 TraceCheckUtils]: 109: Hoare triple {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:17:05,918 INFO L290 TraceCheckUtils]: 110: Hoare triple {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:17:05,919 INFO L290 TraceCheckUtils]: 111: Hoare triple {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:17:05,919 INFO L290 TraceCheckUtils]: 112: Hoare triple {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} is VALID [2022-02-20 14:17:05,921 INFO L290 TraceCheckUtils]: 113: Hoare triple {10094#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 21))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:17:05,922 INFO L290 TraceCheckUtils]: 114: Hoare triple {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:17:05,948 INFO L290 TraceCheckUtils]: 115: Hoare triple {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:17:05,948 INFO L290 TraceCheckUtils]: 116: Hoare triple {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:17:05,949 INFO L290 TraceCheckUtils]: 117: Hoare triple {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} is VALID [2022-02-20 14:17:05,951 INFO L290 TraceCheckUtils]: 118: Hoare triple {10110#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 22))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,952 INFO L290 TraceCheckUtils]: 119: Hoare triple {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,952 INFO L290 TraceCheckUtils]: 120: Hoare triple {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,953 INFO L290 TraceCheckUtils]: 121: Hoare triple {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,953 INFO L290 TraceCheckUtils]: 122: Hoare triple {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,955 INFO L290 TraceCheckUtils]: 123: Hoare triple {10126#(and (<= |ULTIMATE.start_main_~i~0#1| 23) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} is VALID [2022-02-20 14:17:05,956 INFO L290 TraceCheckUtils]: 124: Hoare triple {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} is VALID [2022-02-20 14:17:05,957 INFO L290 TraceCheckUtils]: 125: Hoare triple {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} is VALID [2022-02-20 14:17:05,957 INFO L290 TraceCheckUtils]: 126: Hoare triple {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} is VALID [2022-02-20 14:17:05,958 INFO L290 TraceCheckUtils]: 127: Hoare triple {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} is VALID [2022-02-20 14:17:05,960 INFO L290 TraceCheckUtils]: 128: Hoare triple {10142#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 24))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} is VALID [2022-02-20 14:17:05,961 INFO L290 TraceCheckUtils]: 129: Hoare triple {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} is VALID [2022-02-20 14:17:05,961 INFO L290 TraceCheckUtils]: 130: Hoare triple {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} is VALID [2022-02-20 14:17:05,962 INFO L290 TraceCheckUtils]: 131: Hoare triple {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} is VALID [2022-02-20 14:17:05,962 INFO L290 TraceCheckUtils]: 132: Hoare triple {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} is VALID [2022-02-20 14:17:05,965 INFO L290 TraceCheckUtils]: 133: Hoare triple {10158#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 25))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} is VALID [2022-02-20 14:17:05,965 INFO L290 TraceCheckUtils]: 134: Hoare triple {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} is VALID [2022-02-20 14:17:05,966 INFO L290 TraceCheckUtils]: 135: Hoare triple {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} is VALID [2022-02-20 14:17:05,967 INFO L290 TraceCheckUtils]: 136: Hoare triple {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} is VALID [2022-02-20 14:17:05,967 INFO L290 TraceCheckUtils]: 137: Hoare triple {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} is VALID [2022-02-20 14:17:05,979 INFO L290 TraceCheckUtils]: 138: Hoare triple {10174#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 26))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,980 INFO L290 TraceCheckUtils]: 139: Hoare triple {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,980 INFO L290 TraceCheckUtils]: 140: Hoare triple {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,981 INFO L290 TraceCheckUtils]: 141: Hoare triple {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,981 INFO L290 TraceCheckUtils]: 142: Hoare triple {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,983 INFO L290 TraceCheckUtils]: 143: Hoare triple {10190#(and (<= |ULTIMATE.start_main_~i~0#1| 27) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,984 INFO L290 TraceCheckUtils]: 144: Hoare triple {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,985 INFO L290 TraceCheckUtils]: 145: Hoare triple {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,985 INFO L290 TraceCheckUtils]: 146: Hoare triple {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,986 INFO L290 TraceCheckUtils]: 147: Hoare triple {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,988 INFO L290 TraceCheckUtils]: 148: Hoare triple {10206#(and (<= |ULTIMATE.start_main_~i~0#1| 28) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,989 INFO L290 TraceCheckUtils]: 149: Hoare triple {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,989 INFO L290 TraceCheckUtils]: 150: Hoare triple {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,990 INFO L290 TraceCheckUtils]: 151: Hoare triple {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,990 INFO L290 TraceCheckUtils]: 152: Hoare triple {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,992 INFO L290 TraceCheckUtils]: 153: Hoare triple {10222#(and (<= |ULTIMATE.start_main_~i~0#1| 29) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,993 INFO L290 TraceCheckUtils]: 154: Hoare triple {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,994 INFO L290 TraceCheckUtils]: 155: Hoare triple {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,994 INFO L290 TraceCheckUtils]: 156: Hoare triple {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,995 INFO L290 TraceCheckUtils]: 157: Hoare triple {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:05,997 INFO L290 TraceCheckUtils]: 158: Hoare triple {10238#(and (<= |ULTIMATE.start_main_~i~0#1| 30) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} is VALID [2022-02-20 14:17:05,998 INFO L290 TraceCheckUtils]: 159: Hoare triple {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} is VALID [2022-02-20 14:17:05,998 INFO L290 TraceCheckUtils]: 160: Hoare triple {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} is VALID [2022-02-20 14:17:05,999 INFO L290 TraceCheckUtils]: 161: Hoare triple {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} is VALID [2022-02-20 14:17:05,999 INFO L290 TraceCheckUtils]: 162: Hoare triple {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} is VALID [2022-02-20 14:17:06,001 INFO L290 TraceCheckUtils]: 163: Hoare triple {10254#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 31))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} is VALID [2022-02-20 14:17:06,002 INFO L290 TraceCheckUtils]: 164: Hoare triple {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} is VALID [2022-02-20 14:17:06,003 INFO L290 TraceCheckUtils]: 165: Hoare triple {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} is VALID [2022-02-20 14:17:06,003 INFO L290 TraceCheckUtils]: 166: Hoare triple {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} is VALID [2022-02-20 14:17:06,003 INFO L290 TraceCheckUtils]: 167: Hoare triple {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} is VALID [2022-02-20 14:17:06,005 INFO L290 TraceCheckUtils]: 168: Hoare triple {10270#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 32))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} is VALID [2022-02-20 14:17:06,005 INFO L290 TraceCheckUtils]: 169: Hoare triple {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} is VALID [2022-02-20 14:17:06,006 INFO L290 TraceCheckUtils]: 170: Hoare triple {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} is VALID [2022-02-20 14:17:06,006 INFO L290 TraceCheckUtils]: 171: Hoare triple {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} is VALID [2022-02-20 14:17:06,006 INFO L290 TraceCheckUtils]: 172: Hoare triple {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} is VALID [2022-02-20 14:17:06,008 INFO L290 TraceCheckUtils]: 173: Hoare triple {10286#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 33))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} is VALID [2022-02-20 14:17:06,008 INFO L290 TraceCheckUtils]: 174: Hoare triple {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} is VALID [2022-02-20 14:17:06,009 INFO L290 TraceCheckUtils]: 175: Hoare triple {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} is VALID [2022-02-20 14:17:06,009 INFO L290 TraceCheckUtils]: 176: Hoare triple {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} is VALID [2022-02-20 14:17:06,009 INFO L290 TraceCheckUtils]: 177: Hoare triple {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} is VALID [2022-02-20 14:17:06,011 INFO L290 TraceCheckUtils]: 178: Hoare triple {10302#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 34))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} is VALID [2022-02-20 14:17:06,011 INFO L290 TraceCheckUtils]: 179: Hoare triple {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} is VALID [2022-02-20 14:17:06,012 INFO L290 TraceCheckUtils]: 180: Hoare triple {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} is VALID [2022-02-20 14:17:06,012 INFO L290 TraceCheckUtils]: 181: Hoare triple {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} is VALID [2022-02-20 14:17:06,013 INFO L290 TraceCheckUtils]: 182: Hoare triple {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} is VALID [2022-02-20 14:17:06,014 INFO L290 TraceCheckUtils]: 183: Hoare triple {10318#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 35))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} is VALID [2022-02-20 14:17:06,015 INFO L290 TraceCheckUtils]: 184: Hoare triple {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} is VALID [2022-02-20 14:17:06,015 INFO L290 TraceCheckUtils]: 185: Hoare triple {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} is VALID [2022-02-20 14:17:06,016 INFO L290 TraceCheckUtils]: 186: Hoare triple {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} is VALID [2022-02-20 14:17:06,016 INFO L290 TraceCheckUtils]: 187: Hoare triple {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} is VALID [2022-02-20 14:17:06,018 INFO L290 TraceCheckUtils]: 188: Hoare triple {10334#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 36))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,018 INFO L290 TraceCheckUtils]: 189: Hoare triple {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,019 INFO L290 TraceCheckUtils]: 190: Hoare triple {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,020 INFO L290 TraceCheckUtils]: 191: Hoare triple {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,020 INFO L290 TraceCheckUtils]: 192: Hoare triple {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,021 INFO L290 TraceCheckUtils]: 193: Hoare triple {10350#(and (<= |ULTIMATE.start_main_~i~0#1| 37) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,022 INFO L290 TraceCheckUtils]: 194: Hoare triple {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,022 INFO L290 TraceCheckUtils]: 195: Hoare triple {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,023 INFO L290 TraceCheckUtils]: 196: Hoare triple {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,023 INFO L290 TraceCheckUtils]: 197: Hoare triple {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,025 INFO L290 TraceCheckUtils]: 198: Hoare triple {10366#(and (<= |ULTIMATE.start_main_~i~0#1| 38) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} is VALID [2022-02-20 14:17:06,025 INFO L290 TraceCheckUtils]: 199: Hoare triple {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} is VALID [2022-02-20 14:17:06,026 INFO L290 TraceCheckUtils]: 200: Hoare triple {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} is VALID [2022-02-20 14:17:06,026 INFO L290 TraceCheckUtils]: 201: Hoare triple {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} is VALID [2022-02-20 14:17:06,027 INFO L290 TraceCheckUtils]: 202: Hoare triple {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} is VALID [2022-02-20 14:17:06,028 INFO L290 TraceCheckUtils]: 203: Hoare triple {10382#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 39))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,029 INFO L290 TraceCheckUtils]: 204: Hoare triple {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,029 INFO L290 TraceCheckUtils]: 205: Hoare triple {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,030 INFO L290 TraceCheckUtils]: 206: Hoare triple {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,030 INFO L290 TraceCheckUtils]: 207: Hoare triple {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,032 INFO L290 TraceCheckUtils]: 208: Hoare triple {10398#(and (<= |ULTIMATE.start_main_~i~0#1| 40) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,032 INFO L290 TraceCheckUtils]: 209: Hoare triple {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,033 INFO L290 TraceCheckUtils]: 210: Hoare triple {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,033 INFO L290 TraceCheckUtils]: 211: Hoare triple {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,034 INFO L290 TraceCheckUtils]: 212: Hoare triple {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,035 INFO L290 TraceCheckUtils]: 213: Hoare triple {10414#(and (<= |ULTIMATE.start_main_~i~0#1| 41) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} is VALID [2022-02-20 14:17:06,036 INFO L290 TraceCheckUtils]: 214: Hoare triple {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} is VALID [2022-02-20 14:17:06,036 INFO L290 TraceCheckUtils]: 215: Hoare triple {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} is VALID [2022-02-20 14:17:06,037 INFO L290 TraceCheckUtils]: 216: Hoare triple {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} is VALID [2022-02-20 14:17:06,037 INFO L290 TraceCheckUtils]: 217: Hoare triple {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} is VALID [2022-02-20 14:17:06,038 INFO L290 TraceCheckUtils]: 218: Hoare triple {10430#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 42))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,039 INFO L290 TraceCheckUtils]: 219: Hoare triple {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,039 INFO L290 TraceCheckUtils]: 220: Hoare triple {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,040 INFO L290 TraceCheckUtils]: 221: Hoare triple {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,040 INFO L290 TraceCheckUtils]: 222: Hoare triple {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,041 INFO L290 TraceCheckUtils]: 223: Hoare triple {10446#(and (<= |ULTIMATE.start_main_~i~0#1| 43) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} is VALID [2022-02-20 14:17:06,042 INFO L290 TraceCheckUtils]: 224: Hoare triple {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} is VALID [2022-02-20 14:17:06,042 INFO L290 TraceCheckUtils]: 225: Hoare triple {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} is VALID [2022-02-20 14:17:06,043 INFO L290 TraceCheckUtils]: 226: Hoare triple {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} is VALID [2022-02-20 14:17:06,043 INFO L290 TraceCheckUtils]: 227: Hoare triple {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} is VALID [2022-02-20 14:17:06,045 INFO L290 TraceCheckUtils]: 228: Hoare triple {10462#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 44))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,045 INFO L290 TraceCheckUtils]: 229: Hoare triple {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,046 INFO L290 TraceCheckUtils]: 230: Hoare triple {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,046 INFO L290 TraceCheckUtils]: 231: Hoare triple {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,047 INFO L290 TraceCheckUtils]: 232: Hoare triple {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} is VALID [2022-02-20 14:17:06,048 INFO L290 TraceCheckUtils]: 233: Hoare triple {10478#(and (<= |ULTIMATE.start_main_~i~0#1| 45) (<= 1000 ~N~0))} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10494#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 46))} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 234: Hoare triple {10494#(and (<= 1000 ~N~0) (<= |ULTIMATE.start_main_~i~0#1| 46))} assume !(main_~i~0#1 < ~N~0); {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 235: Hoare triple {9744#false} main_~i~0#1 := 0; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 236: Hoare triple {9744#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 237: Hoare triple {9744#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 238: Hoare triple {9744#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 239: Hoare triple {9744#false} assume !(0 == __VERIFIER_assert_~cond#1); {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 240: Hoare triple {9744#false} assume { :end_inline___VERIFIER_assert } true; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 241: Hoare triple {9744#false} main_#t~post8#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 242: Hoare triple {9744#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 243: Hoare triple {9744#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {9744#false} is VALID [2022-02-20 14:17:06,049 INFO L290 TraceCheckUtils]: 244: Hoare triple {9744#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {9744#false} is VALID [2022-02-20 14:17:06,050 INFO L290 TraceCheckUtils]: 245: Hoare triple {9744#false} assume 0 == __VERIFIER_assert_~cond#1; {9744#false} is VALID [2022-02-20 14:17:06,050 INFO L290 TraceCheckUtils]: 246: Hoare triple {9744#false} assume !false; {9744#false} is VALID [2022-02-20 14:17:06,052 INFO L134 CoverageAnalysis]: Checked inductivity of 5225 backedges. 0 proven. 5221 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 14:17:06,052 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:17:12,445 INFO L290 TraceCheckUtils]: 246: Hoare triple {9744#false} assume !false; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 245: Hoare triple {9744#false} assume 0 == __VERIFIER_assert_~cond#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 244: Hoare triple {9744#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 243: Hoare triple {9744#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 242: Hoare triple {9744#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 241: Hoare triple {9744#false} main_#t~post8#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 240: Hoare triple {9744#false} assume { :end_inline___VERIFIER_assert } true; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 239: Hoare triple {9744#false} assume !(0 == __VERIFIER_assert_~cond#1); {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 238: Hoare triple {9744#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_~j~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (2 * main_~R~0#1 % 4294967296) then (if 2 * main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (2 * main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 237: Hoare triple {9744#false} assume 0 == main_#t~mem9#1;havoc main_#t~mem9#1;main_#t~post10#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1; {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 236: Hoare triple {9744#false} assume !!(main_~i~0#1 < ~N~0);call main_#t~mem9#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {9744#false} is VALID [2022-02-20 14:17:12,446 INFO L290 TraceCheckUtils]: 235: Hoare triple {9744#false} main_~i~0#1 := 0; {9744#false} is VALID [2022-02-20 14:17:12,447 INFO L290 TraceCheckUtils]: 234: Hoare triple {10570#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} assume !(main_~i~0#1 < ~N~0); {9744#false} is VALID [2022-02-20 14:17:12,450 INFO L290 TraceCheckUtils]: 233: Hoare triple {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10570#(< |ULTIMATE.start_main_~i~0#1| ~N~0)} is VALID [2022-02-20 14:17:12,450 INFO L290 TraceCheckUtils]: 232: Hoare triple {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:17:12,450 INFO L290 TraceCheckUtils]: 231: Hoare triple {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:17:12,451 INFO L290 TraceCheckUtils]: 230: Hoare triple {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:17:12,451 INFO L290 TraceCheckUtils]: 229: Hoare triple {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:17:12,453 INFO L290 TraceCheckUtils]: 228: Hoare triple {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10574#(< (+ |ULTIMATE.start_main_~i~0#1| 1) ~N~0)} is VALID [2022-02-20 14:17:12,453 INFO L290 TraceCheckUtils]: 227: Hoare triple {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,453 INFO L290 TraceCheckUtils]: 226: Hoare triple {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,454 INFO L290 TraceCheckUtils]: 225: Hoare triple {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,454 INFO L290 TraceCheckUtils]: 224: Hoare triple {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,455 INFO L290 TraceCheckUtils]: 223: Hoare triple {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10590#(< (+ 2 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,456 INFO L290 TraceCheckUtils]: 222: Hoare triple {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,456 INFO L290 TraceCheckUtils]: 221: Hoare triple {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,456 INFO L290 TraceCheckUtils]: 220: Hoare triple {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,457 INFO L290 TraceCheckUtils]: 219: Hoare triple {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,458 INFO L290 TraceCheckUtils]: 218: Hoare triple {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10606#(< (+ 3 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,459 INFO L290 TraceCheckUtils]: 217: Hoare triple {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:17:12,459 INFO L290 TraceCheckUtils]: 216: Hoare triple {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:17:12,459 INFO L290 TraceCheckUtils]: 215: Hoare triple {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:17:12,460 INFO L290 TraceCheckUtils]: 214: Hoare triple {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:17:12,461 INFO L290 TraceCheckUtils]: 213: Hoare triple {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10622#(< (+ |ULTIMATE.start_main_~i~0#1| 4) ~N~0)} is VALID [2022-02-20 14:17:12,461 INFO L290 TraceCheckUtils]: 212: Hoare triple {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,462 INFO L290 TraceCheckUtils]: 211: Hoare triple {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,462 INFO L290 TraceCheckUtils]: 210: Hoare triple {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,462 INFO L290 TraceCheckUtils]: 209: Hoare triple {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,463 INFO L290 TraceCheckUtils]: 208: Hoare triple {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10638#(< (+ 5 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,464 INFO L290 TraceCheckUtils]: 207: Hoare triple {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,464 INFO L290 TraceCheckUtils]: 206: Hoare triple {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,464 INFO L290 TraceCheckUtils]: 205: Hoare triple {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,464 INFO L290 TraceCheckUtils]: 204: Hoare triple {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,466 INFO L290 TraceCheckUtils]: 203: Hoare triple {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10654#(< (+ 6 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,466 INFO L290 TraceCheckUtils]: 202: Hoare triple {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,466 INFO L290 TraceCheckUtils]: 201: Hoare triple {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,467 INFO L290 TraceCheckUtils]: 200: Hoare triple {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,467 INFO L290 TraceCheckUtils]: 199: Hoare triple {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,468 INFO L290 TraceCheckUtils]: 198: Hoare triple {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10670#(< (+ 7 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,469 INFO L290 TraceCheckUtils]: 197: Hoare triple {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:17:12,469 INFO L290 TraceCheckUtils]: 196: Hoare triple {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:17:12,470 INFO L290 TraceCheckUtils]: 195: Hoare triple {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:17:12,470 INFO L290 TraceCheckUtils]: 194: Hoare triple {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:17:12,472 INFO L290 TraceCheckUtils]: 193: Hoare triple {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10686#(< (+ |ULTIMATE.start_main_~i~0#1| 8) ~N~0)} is VALID [2022-02-20 14:17:12,473 INFO L290 TraceCheckUtils]: 192: Hoare triple {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,473 INFO L290 TraceCheckUtils]: 191: Hoare triple {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,473 INFO L290 TraceCheckUtils]: 190: Hoare triple {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,474 INFO L290 TraceCheckUtils]: 189: Hoare triple {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,475 INFO L290 TraceCheckUtils]: 188: Hoare triple {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10702#(< (+ 9 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,475 INFO L290 TraceCheckUtils]: 187: Hoare triple {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:17:12,475 INFO L290 TraceCheckUtils]: 186: Hoare triple {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:17:12,476 INFO L290 TraceCheckUtils]: 185: Hoare triple {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:17:12,476 INFO L290 TraceCheckUtils]: 184: Hoare triple {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:17:12,477 INFO L290 TraceCheckUtils]: 183: Hoare triple {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10718#(< (+ |ULTIMATE.start_main_~i~0#1| 10) ~N~0)} is VALID [2022-02-20 14:17:12,478 INFO L290 TraceCheckUtils]: 182: Hoare triple {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:17:12,478 INFO L290 TraceCheckUtils]: 181: Hoare triple {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:17:12,478 INFO L290 TraceCheckUtils]: 180: Hoare triple {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:17:12,479 INFO L290 TraceCheckUtils]: 179: Hoare triple {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:17:12,480 INFO L290 TraceCheckUtils]: 178: Hoare triple {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10734#(< (+ |ULTIMATE.start_main_~i~0#1| 11) ~N~0)} is VALID [2022-02-20 14:17:12,481 INFO L290 TraceCheckUtils]: 177: Hoare triple {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:17:12,481 INFO L290 TraceCheckUtils]: 176: Hoare triple {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:17:12,482 INFO L290 TraceCheckUtils]: 175: Hoare triple {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:17:12,482 INFO L290 TraceCheckUtils]: 174: Hoare triple {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:17:12,484 INFO L290 TraceCheckUtils]: 173: Hoare triple {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10750#(< (+ |ULTIMATE.start_main_~i~0#1| 12) ~N~0)} is VALID [2022-02-20 14:17:12,484 INFO L290 TraceCheckUtils]: 172: Hoare triple {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:17:12,499 INFO L290 TraceCheckUtils]: 171: Hoare triple {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:17:12,499 INFO L290 TraceCheckUtils]: 170: Hoare triple {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:17:12,499 INFO L290 TraceCheckUtils]: 169: Hoare triple {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:17:12,502 INFO L290 TraceCheckUtils]: 168: Hoare triple {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10766#(< (+ |ULTIMATE.start_main_~i~0#1| 13) ~N~0)} is VALID [2022-02-20 14:17:12,503 INFO L290 TraceCheckUtils]: 167: Hoare triple {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,503 INFO L290 TraceCheckUtils]: 166: Hoare triple {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,504 INFO L290 TraceCheckUtils]: 165: Hoare triple {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,504 INFO L290 TraceCheckUtils]: 164: Hoare triple {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,508 INFO L290 TraceCheckUtils]: 163: Hoare triple {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10782#(< (+ 14 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,508 INFO L290 TraceCheckUtils]: 162: Hoare triple {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:17:12,509 INFO L290 TraceCheckUtils]: 161: Hoare triple {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:17:12,509 INFO L290 TraceCheckUtils]: 160: Hoare triple {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:17:12,510 INFO L290 TraceCheckUtils]: 159: Hoare triple {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:17:12,512 INFO L290 TraceCheckUtils]: 158: Hoare triple {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10798#(< (+ |ULTIMATE.start_main_~i~0#1| 15) ~N~0)} is VALID [2022-02-20 14:17:12,512 INFO L290 TraceCheckUtils]: 157: Hoare triple {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,512 INFO L290 TraceCheckUtils]: 156: Hoare triple {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,513 INFO L290 TraceCheckUtils]: 155: Hoare triple {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,513 INFO L290 TraceCheckUtils]: 154: Hoare triple {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,514 INFO L290 TraceCheckUtils]: 153: Hoare triple {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10814#(< (+ 16 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,515 INFO L290 TraceCheckUtils]: 152: Hoare triple {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:17:12,515 INFO L290 TraceCheckUtils]: 151: Hoare triple {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:17:12,515 INFO L290 TraceCheckUtils]: 150: Hoare triple {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:17:12,516 INFO L290 TraceCheckUtils]: 149: Hoare triple {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:17:12,517 INFO L290 TraceCheckUtils]: 148: Hoare triple {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10830#(< (+ |ULTIMATE.start_main_~i~0#1| 17) ~N~0)} is VALID [2022-02-20 14:17:12,518 INFO L290 TraceCheckUtils]: 147: Hoare triple {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:17:12,518 INFO L290 TraceCheckUtils]: 146: Hoare triple {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:17:12,518 INFO L290 TraceCheckUtils]: 145: Hoare triple {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:17:12,518 INFO L290 TraceCheckUtils]: 144: Hoare triple {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:17:12,520 INFO L290 TraceCheckUtils]: 143: Hoare triple {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10846#(< (+ |ULTIMATE.start_main_~i~0#1| 18) ~N~0)} is VALID [2022-02-20 14:17:12,520 INFO L290 TraceCheckUtils]: 142: Hoare triple {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,521 INFO L290 TraceCheckUtils]: 141: Hoare triple {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,521 INFO L290 TraceCheckUtils]: 140: Hoare triple {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,521 INFO L290 TraceCheckUtils]: 139: Hoare triple {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,522 INFO L290 TraceCheckUtils]: 138: Hoare triple {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10862#(< (+ 19 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,523 INFO L290 TraceCheckUtils]: 137: Hoare triple {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:17:12,523 INFO L290 TraceCheckUtils]: 136: Hoare triple {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:17:12,524 INFO L290 TraceCheckUtils]: 135: Hoare triple {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:17:12,524 INFO L290 TraceCheckUtils]: 134: Hoare triple {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:17:12,525 INFO L290 TraceCheckUtils]: 133: Hoare triple {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10878#(< (+ |ULTIMATE.start_main_~i~0#1| 20) ~N~0)} is VALID [2022-02-20 14:17:12,526 INFO L290 TraceCheckUtils]: 132: Hoare triple {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,526 INFO L290 TraceCheckUtils]: 131: Hoare triple {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,526 INFO L290 TraceCheckUtils]: 130: Hoare triple {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,526 INFO L290 TraceCheckUtils]: 129: Hoare triple {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,528 INFO L290 TraceCheckUtils]: 128: Hoare triple {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10894#(< (+ 21 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,528 INFO L290 TraceCheckUtils]: 127: Hoare triple {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,528 INFO L290 TraceCheckUtils]: 126: Hoare triple {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,529 INFO L290 TraceCheckUtils]: 125: Hoare triple {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,529 INFO L290 TraceCheckUtils]: 124: Hoare triple {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,530 INFO L290 TraceCheckUtils]: 123: Hoare triple {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10910#(< (+ 22 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,531 INFO L290 TraceCheckUtils]: 122: Hoare triple {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,531 INFO L290 TraceCheckUtils]: 121: Hoare triple {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,531 INFO L290 TraceCheckUtils]: 120: Hoare triple {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1;call write~int((if (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 <= 2147483647 then (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 else (if main_~i~0#1 % 4294967296 < 0 && 0 != main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) + main_~R~0#1 % 4294967296 else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296) - main_~R~0#1 % 4294967296) else main_~i~0#1 % 4294967296 % (main_~R~0#1 % 4294967296)) % 4294967296 % 4294967296 - 4294967296), main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,532 INFO L290 TraceCheckUtils]: 119: Hoare triple {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,533 INFO L290 TraceCheckUtils]: 118: Hoare triple {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10926#(< (+ 23 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,534 INFO L290 TraceCheckUtils]: 117: Hoare triple {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} is VALID [2022-02-20 14:17:12,534 INFO L290 TraceCheckUtils]: 116: Hoare triple {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} is VALID [2022-02-20 14:17:12,534 INFO L290 TraceCheckUtils]: 115: Hoare triple {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} is VALID [2022-02-20 14:17:12,535 INFO L290 TraceCheckUtils]: 114: Hoare triple {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} is VALID [2022-02-20 14:17:12,536 INFO L290 TraceCheckUtils]: 113: Hoare triple {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10942#(< (+ |ULTIMATE.start_main_~i~0#1| 24) ~N~0)} is VALID [2022-02-20 14:17:12,536 INFO L290 TraceCheckUtils]: 112: Hoare triple {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} is VALID [2022-02-20 14:17:12,537 INFO L290 TraceCheckUtils]: 111: Hoare triple {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} is VALID [2022-02-20 14:17:12,537 INFO L290 TraceCheckUtils]: 110: Hoare triple {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} is VALID [2022-02-20 14:17:12,537 INFO L290 TraceCheckUtils]: 109: Hoare triple {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} is VALID [2022-02-20 14:17:12,538 INFO L290 TraceCheckUtils]: 108: Hoare triple {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10958#(< (+ |ULTIMATE.start_main_~i~0#1| 25) ~N~0)} is VALID [2022-02-20 14:17:12,539 INFO L290 TraceCheckUtils]: 107: Hoare triple {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} is VALID [2022-02-20 14:17:12,539 INFO L290 TraceCheckUtils]: 106: Hoare triple {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} is VALID [2022-02-20 14:17:12,539 INFO L290 TraceCheckUtils]: 105: Hoare triple {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} is VALID [2022-02-20 14:17:12,539 INFO L290 TraceCheckUtils]: 104: Hoare triple {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} is VALID [2022-02-20 14:17:12,541 INFO L290 TraceCheckUtils]: 103: Hoare triple {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10974#(< (+ |ULTIMATE.start_main_~i~0#1| 26) ~N~0)} is VALID [2022-02-20 14:17:12,541 INFO L290 TraceCheckUtils]: 102: Hoare triple {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} is VALID [2022-02-20 14:17:12,541 INFO L290 TraceCheckUtils]: 101: Hoare triple {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} is VALID [2022-02-20 14:17:12,542 INFO L290 TraceCheckUtils]: 100: Hoare triple {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} is VALID [2022-02-20 14:17:12,542 INFO L290 TraceCheckUtils]: 99: Hoare triple {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} is VALID [2022-02-20 14:17:12,543 INFO L290 TraceCheckUtils]: 98: Hoare triple {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {10990#(< (+ |ULTIMATE.start_main_~i~0#1| 27) ~N~0)} is VALID [2022-02-20 14:17:12,544 INFO L290 TraceCheckUtils]: 97: Hoare triple {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} is VALID [2022-02-20 14:17:12,544 INFO L290 TraceCheckUtils]: 96: Hoare triple {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} is VALID [2022-02-20 14:17:12,544 INFO L290 TraceCheckUtils]: 95: Hoare triple {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} is VALID [2022-02-20 14:17:12,545 INFO L290 TraceCheckUtils]: 94: Hoare triple {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} is VALID [2022-02-20 14:17:12,546 INFO L290 TraceCheckUtils]: 93: Hoare triple {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11006#(< (+ |ULTIMATE.start_main_~i~0#1| 28) ~N~0)} is VALID [2022-02-20 14:17:12,547 INFO L290 TraceCheckUtils]: 92: Hoare triple {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,547 INFO L290 TraceCheckUtils]: 91: Hoare triple {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,547 INFO L290 TraceCheckUtils]: 90: Hoare triple {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,548 INFO L290 TraceCheckUtils]: 89: Hoare triple {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,549 INFO L290 TraceCheckUtils]: 88: Hoare triple {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11022#(< (+ 29 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,549 INFO L290 TraceCheckUtils]: 87: Hoare triple {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,550 INFO L290 TraceCheckUtils]: 86: Hoare triple {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,550 INFO L290 TraceCheckUtils]: 85: Hoare triple {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,550 INFO L290 TraceCheckUtils]: 84: Hoare triple {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,552 INFO L290 TraceCheckUtils]: 83: Hoare triple {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11038#(< (+ 30 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,552 INFO L290 TraceCheckUtils]: 82: Hoare triple {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,552 INFO L290 TraceCheckUtils]: 81: Hoare triple {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,553 INFO L290 TraceCheckUtils]: 80: Hoare triple {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,553 INFO L290 TraceCheckUtils]: 79: Hoare triple {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,554 INFO L290 TraceCheckUtils]: 78: Hoare triple {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11054#(< (+ 31 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,554 INFO L290 TraceCheckUtils]: 77: Hoare triple {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,555 INFO L290 TraceCheckUtils]: 76: Hoare triple {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,555 INFO L290 TraceCheckUtils]: 75: Hoare triple {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,555 INFO L290 TraceCheckUtils]: 74: Hoare triple {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,557 INFO L290 TraceCheckUtils]: 73: Hoare triple {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11070#(< (+ 32 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,557 INFO L290 TraceCheckUtils]: 72: Hoare triple {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} is VALID [2022-02-20 14:17:12,558 INFO L290 TraceCheckUtils]: 71: Hoare triple {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} is VALID [2022-02-20 14:17:12,558 INFO L290 TraceCheckUtils]: 70: Hoare triple {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} is VALID [2022-02-20 14:17:12,558 INFO L290 TraceCheckUtils]: 69: Hoare triple {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} is VALID [2022-02-20 14:17:12,560 INFO L290 TraceCheckUtils]: 68: Hoare triple {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11086#(< (+ |ULTIMATE.start_main_~i~0#1| 33) ~N~0)} is VALID [2022-02-20 14:17:12,560 INFO L290 TraceCheckUtils]: 67: Hoare triple {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} is VALID [2022-02-20 14:17:12,561 INFO L290 TraceCheckUtils]: 66: Hoare triple {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} is VALID [2022-02-20 14:17:12,561 INFO L290 TraceCheckUtils]: 65: Hoare triple {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} is VALID [2022-02-20 14:17:12,561 INFO L290 TraceCheckUtils]: 64: Hoare triple {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} is VALID [2022-02-20 14:17:12,563 INFO L290 TraceCheckUtils]: 63: Hoare triple {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11102#(< (+ |ULTIMATE.start_main_~i~0#1| 34) ~N~0)} is VALID [2022-02-20 14:17:12,564 INFO L290 TraceCheckUtils]: 62: Hoare triple {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,564 INFO L290 TraceCheckUtils]: 61: Hoare triple {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,565 INFO L290 TraceCheckUtils]: 60: Hoare triple {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,565 INFO L290 TraceCheckUtils]: 59: Hoare triple {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,567 INFO L290 TraceCheckUtils]: 58: Hoare triple {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11118#(< (+ 35 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,568 INFO L290 TraceCheckUtils]: 57: Hoare triple {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} is VALID [2022-02-20 14:17:12,568 INFO L290 TraceCheckUtils]: 56: Hoare triple {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} is VALID [2022-02-20 14:17:12,568 INFO L290 TraceCheckUtils]: 55: Hoare triple {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} is VALID [2022-02-20 14:17:12,569 INFO L290 TraceCheckUtils]: 54: Hoare triple {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} is VALID [2022-02-20 14:17:12,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11134#(< (+ |ULTIMATE.start_main_~i~0#1| 36) ~N~0)} is VALID [2022-02-20 14:17:12,572 INFO L290 TraceCheckUtils]: 52: Hoare triple {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} is VALID [2022-02-20 14:17:12,572 INFO L290 TraceCheckUtils]: 51: Hoare triple {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} is VALID [2022-02-20 14:17:12,572 INFO L290 TraceCheckUtils]: 50: Hoare triple {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} is VALID [2022-02-20 14:17:12,573 INFO L290 TraceCheckUtils]: 49: Hoare triple {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} is VALID [2022-02-20 14:17:12,575 INFO L290 TraceCheckUtils]: 48: Hoare triple {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11150#(< (+ |ULTIMATE.start_main_~i~0#1| 37) ~N~0)} is VALID [2022-02-20 14:17:12,575 INFO L290 TraceCheckUtils]: 47: Hoare triple {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} is VALID [2022-02-20 14:17:12,575 INFO L290 TraceCheckUtils]: 46: Hoare triple {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} is VALID [2022-02-20 14:17:12,576 INFO L290 TraceCheckUtils]: 45: Hoare triple {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} is VALID [2022-02-20 14:17:12,576 INFO L290 TraceCheckUtils]: 44: Hoare triple {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} is VALID [2022-02-20 14:17:12,577 INFO L290 TraceCheckUtils]: 43: Hoare triple {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11166#(< (+ |ULTIMATE.start_main_~i~0#1| 38) ~N~0)} is VALID [2022-02-20 14:17:12,578 INFO L290 TraceCheckUtils]: 42: Hoare triple {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} is VALID [2022-02-20 14:17:12,578 INFO L290 TraceCheckUtils]: 41: Hoare triple {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} is VALID [2022-02-20 14:17:12,578 INFO L290 TraceCheckUtils]: 40: Hoare triple {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} is VALID [2022-02-20 14:17:12,579 INFO L290 TraceCheckUtils]: 39: Hoare triple {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} is VALID [2022-02-20 14:17:12,581 INFO L290 TraceCheckUtils]: 38: Hoare triple {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11182#(< (+ |ULTIMATE.start_main_~i~0#1| 39) ~N~0)} is VALID [2022-02-20 14:17:12,581 INFO L290 TraceCheckUtils]: 37: Hoare triple {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,582 INFO L290 TraceCheckUtils]: 34: Hoare triple {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,584 INFO L290 TraceCheckUtils]: 33: Hoare triple {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11198#(< (+ 40 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,585 INFO L290 TraceCheckUtils]: 32: Hoare triple {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,585 INFO L290 TraceCheckUtils]: 31: Hoare triple {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,586 INFO L290 TraceCheckUtils]: 30: Hoare triple {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,586 INFO L290 TraceCheckUtils]: 29: Hoare triple {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,588 INFO L290 TraceCheckUtils]: 28: Hoare triple {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11214#(< (+ 41 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,589 INFO L290 TraceCheckUtils]: 27: Hoare triple {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,589 INFO L290 TraceCheckUtils]: 26: Hoare triple {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,589 INFO L290 TraceCheckUtils]: 25: Hoare triple {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,590 INFO L290 TraceCheckUtils]: 24: Hoare triple {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11230#(< (+ 42 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} is VALID [2022-02-20 14:17:12,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} is VALID [2022-02-20 14:17:12,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} is VALID [2022-02-20 14:17:12,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} is VALID [2022-02-20 14:17:12,594 INFO L290 TraceCheckUtils]: 18: Hoare triple {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11246#(< (+ |ULTIMATE.start_main_~i~0#1| 43) ~N~0)} is VALID [2022-02-20 14:17:12,595 INFO L290 TraceCheckUtils]: 17: Hoare triple {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,595 INFO L290 TraceCheckUtils]: 16: Hoare triple {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,595 INFO L290 TraceCheckUtils]: 15: Hoare triple {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,597 INFO L290 TraceCheckUtils]: 13: Hoare triple {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11262#(< (+ 44 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,597 INFO L290 TraceCheckUtils]: 12: Hoare triple {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} is VALID [2022-02-20 14:17:12,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} is VALID [2022-02-20 14:17:12,598 INFO L290 TraceCheckUtils]: 10: Hoare triple {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} is VALID [2022-02-20 14:17:12,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} is VALID [2022-02-20 14:17:12,599 INFO L290 TraceCheckUtils]: 8: Hoare triple {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} main_#t~post5#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {11278#(< (+ |ULTIMATE.start_main_~i~0#1| 45) ~N~0)} is VALID [2022-02-20 14:17:12,600 INFO L290 TraceCheckUtils]: 7: Hoare triple {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume 0 == main_#t~mem6#1;havoc main_#t~mem6#1;main_#t~post7#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,600 INFO L290 TraceCheckUtils]: 6: Hoare triple {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} call main_#t~mem6#1 := read~int(main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,600 INFO L290 TraceCheckUtils]: 5: Hoare triple {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !(main_~i~0#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2) && main_~k~0#1 < main_~lim~0#1); {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,601 INFO L290 TraceCheckUtils]: 4: Hoare triple {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} assume !!(main_~i~0#1 < ~N~0);call write~int(1 + main_~i~0#1, main_~#a~0#1.base, main_~#a~0#1.offset + 4 * main_~i~0#1, 4); {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,601 INFO L290 TraceCheckUtils]: 3: Hoare triple {11310#(< 46 ~N~0)} assume { :end_inline_assume_abort_if_not } true;main_~i~0#1 := 0; {11294#(< (+ 46 |ULTIMATE.start_main_~i~0#1|) ~N~0)} is VALID [2022-02-20 14:17:12,601 INFO L290 TraceCheckUtils]: 2: Hoare triple {11310#(< 46 ~N~0)} assume !(0 == assume_abort_if_not_~cond#1); {11310#(< 46 ~N~0)} is VALID [2022-02-20 14:17:12,601 INFO L290 TraceCheckUtils]: 1: Hoare triple {11310#(< 46 ~N~0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~mem6#1, main_#t~post7#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post10#1, main_#t~post8#1, main_~i~0#1, main_~j~0#1, main_~k~0#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~lim~0#1, main_~R~0#1;havoc main_~i~0#1;main_~j~0#1 := 0;main_~k~0#1 := 0;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0);assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~lim~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := 4;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if 0 < main_~lim~0#1 && main_~lim~0#1 % 4294967296 < (if ~N~0 % 4294967296 < 0 && 0 != ~N~0 % 4294967296 % (main_~R~0#1 % 4294967296) then (if main_~R~0#1 % 4294967296 < 0 then ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296) - 1 else 1 + ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) else ~N~0 % 4294967296 / (main_~R~0#1 % 4294967296)) % 4294967296 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {11310#(< 46 ~N~0)} is VALID [2022-02-20 14:17:12,602 INFO L290 TraceCheckUtils]: 0: Hoare triple {9743#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(30, 2);call #Ultimate.allocInit(12, 3);~N~0 := 1000; {11310#(< 46 ~N~0)} is VALID [2022-02-20 14:17:12,604 INFO L134 CoverageAnalysis]: Checked inductivity of 5225 backedges. 0 proven. 5221 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 14:17:12,604 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:17:12,604 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1675616501] [2022-02-20 14:17:12,604 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:17:12,604 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1073998656] [2022-02-20 14:17:12,604 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1073998656] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:17:12,604 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:17:12,605 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [49, 49] total 97 [2022-02-20 14:17:12,605 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1454411658] [2022-02-20 14:17:12,605 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:17:12,606 INFO L78 Accepts]: Start accepts. Automaton has has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 247 [2022-02-20 14:17:12,606 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:17:12,606 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:13,262 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 479 edges. 479 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:17:13,262 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 98 states [2022-02-20 14:17:13,262 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:17:13,263 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 98 interpolants. [2022-02-20 14:17:13,265 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=4659, Invalid=4847, Unknown=0, NotChecked=0, Total=9506 [2022-02-20 14:17:13,265 INFO L87 Difference]: Start difference. First operand 256 states and 329 transitions. Second operand has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:44,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:44,754 INFO L93 Difference]: Finished difference Result 2482 states and 3024 transitions. [2022-02-20 14:17:44,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 97 states. [2022-02-20 14:17:44,755 INFO L78 Accepts]: Start accepts. Automaton has has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 247 [2022-02-20 14:17:44,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:17:44,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:44,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 1553 transitions. [2022-02-20 14:17:44,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:44,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 1553 transitions. [2022-02-20 14:17:44,773 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 97 states and 1553 transitions. [2022-02-20 14:17:47,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1553 edges. 1553 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:17:47,997 INFO L225 Difference]: With dead ends: 2482 [2022-02-20 14:17:47,997 INFO L226 Difference]: Without dead ends: 2347 [2022-02-20 14:17:48,002 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 539 GetRequests, 396 SyntacticMatches, 0 SemanticMatches, 143 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4465 ImplicationChecksByTransitivity, 14.7s TimeCoverageRelationStatistics Valid=9265, Invalid=11615, Unknown=0, NotChecked=0, Total=20880 [2022-02-20 14:17:48,017 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 5888 mSDsluCounter, 749 mSDsCounter, 0 mSdLazyCounter, 730 mSolverCounterSat, 756 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5888 SdHoareTripleChecker+Valid, 761 SdHoareTripleChecker+Invalid, 1486 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 756 IncrementalHoareTripleChecker+Valid, 730 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:17:48,017 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5888 Valid, 761 Invalid, 1486 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [756 Valid, 730 Invalid, 0 Unknown, 0 Unchecked, 3.0s Time] [2022-02-20 14:17:48,019 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2347 states. [2022-02-20 14:17:48,319 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2347 to 496. [2022-02-20 14:17:48,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:17:48,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2347 states. Second operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:48,336 INFO L74 IsIncluded]: Start isIncluded. First operand 2347 states. Second operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:48,336 INFO L87 Difference]: Start difference. First operand 2347 states. Second operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:48,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:48,618 INFO L93 Difference]: Finished difference Result 2347 states and 2768 transitions. [2022-02-20 14:17:48,619 INFO L276 IsEmpty]: Start isEmpty. Operand 2347 states and 2768 transitions. [2022-02-20 14:17:48,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:48,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:48,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 2347 states. [2022-02-20 14:17:48,622 INFO L87 Difference]: Start difference. First operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 2347 states. [2022-02-20 14:17:48,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:48,760 INFO L93 Difference]: Finished difference Result 2347 states and 2768 transitions. [2022-02-20 14:17:48,760 INFO L276 IsEmpty]: Start isEmpty. Operand 2347 states and 2768 transitions. [2022-02-20 14:17:48,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:48,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:48,763 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:17:48,763 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:17:48,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 496 states, 495 states have (on average 1.2949494949494949) internal successors, (641), 495 states have internal predecessors, (641), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:48,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 496 states to 496 states and 641 transitions. [2022-02-20 14:17:48,773 INFO L78 Accepts]: Start accepts. Automaton has 496 states and 641 transitions. Word has length 247 [2022-02-20 14:17:48,773 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:17:48,773 INFO L470 AbstractCegarLoop]: Abstraction has 496 states and 641 transitions. [2022-02-20 14:17:48,773 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 98 states, 98 states have (on average 4.887755102040816) internal successors, (479), 97 states have internal predecessors, (479), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:17:48,773 INFO L276 IsEmpty]: Start isEmpty. Operand 496 states and 641 transitions. [2022-02-20 14:17:48,777 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 488 [2022-02-20 14:17:48,777 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:17:48,778 INFO L514 BasicCegarLoop]: trace histogram [94, 94, 94, 94, 47, 47, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:17:48,796 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-20 14:17:48,996 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:17:48,996 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:17:48,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:17:48,997 INFO L85 PathProgramCache]: Analyzing trace with hash 1703865129, now seen corresponding path program 3 times [2022-02-20 14:17:48,997 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:17:48,997 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2118466784] [2022-02-20 14:17:48,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:17:48,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:17:49,120 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:17:49,120 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [229831169] [2022-02-20 14:17:49,120 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 14:17:49,120 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:17:49,120 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:17:49,121 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:17:49,124 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-02-20 14:17:49,458 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-02-20 14:17:49,459 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:17:49,460 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 14:17:49,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:17:49,530 INFO L286 TraceCheckSpWp]: Computing forward predicates...