./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/array-programs/partial_mod_count_limited_2.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_2.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 d1c5dbef70eb17e658ce13a53ba3c925aaef4da45bcaa9e57399f7ada50ab560 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 14:16:25,863 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 14:16:25,866 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 14:16:25,898 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 14:16:25,899 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 14:16:25,902 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 14:16:25,903 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 14:16:25,905 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 14:16:25,906 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 14:16:25,910 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 14:16:25,910 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 14:16:25,911 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 14:16:25,912 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 14:16:25,913 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 14:16:25,914 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 14:16:25,917 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 14:16:25,917 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 14:16:25,918 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 14:16:25,919 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 14:16:25,924 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 14:16:25,925 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 14:16:25,925 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 14:16:25,927 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 14:16:25,927 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 14:16:25,932 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 14:16:25,932 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 14:16:25,932 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 14:16:25,933 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 14:16:25,934 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 14:16:25,934 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 14:16:25,935 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 14:16:25,935 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 14:16:25,936 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 14:16:25,937 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 14:16:25,938 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 14:16:25,938 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 14:16:25,939 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 14:16:25,939 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 14:16:25,939 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 14:16:25,940 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 14:16:25,940 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 14:16:25,941 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:25,966 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 14:16:25,967 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 14:16:25,967 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 14:16:25,967 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 14:16:25,968 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 14:16:25,968 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 14:16:25,969 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 14:16:25,969 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 14:16:25,969 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 14:16:25,969 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 14:16:25,970 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 14:16:25,970 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 14:16:25,970 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 14:16:25,970 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 14:16:25,970 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 14:16:25,971 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 14:16:25,972 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 14:16:25,972 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 14:16:25,972 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 14:16:25,972 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:16:25,972 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 14:16:25,972 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 14:16:25,973 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 14:16:25,974 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 14:16:25,974 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 14:16:25,974 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 14:16:25,974 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 14:16:25,974 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 14:16:25,974 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 -> d1c5dbef70eb17e658ce13a53ba3c925aaef4da45bcaa9e57399f7ada50ab560 [2022-02-20 14:16:26,180 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 14:16:26,198 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 14:16:26,201 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 14:16:26,202 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 14:16:26,203 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 14:16:26,204 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_2.c [2022-02-20 14:16:26,255 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7c3a79289/e1b55cf32aa8417181ecd258de756090/FLAGd75b66aed [2022-02-20 14:16:26,631 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 14:16:26,631 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-programs/partial_mod_count_limited_2.c [2022-02-20 14:16:26,636 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7c3a79289/e1b55cf32aa8417181ecd258de756090/FLAGd75b66aed [2022-02-20 14:16:26,647 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7c3a79289/e1b55cf32aa8417181ecd258de756090 [2022-02-20 14:16:26,649 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 14:16:26,650 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 14:16:26,652 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 14:16:26,652 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 14:16:26,654 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 14:16:26,655 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:16:26" (1/1) ... [2022-02-20 14:16:26,656 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@791f08be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:26, skipping insertion in model container [2022-02-20 14:16:26,656 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:16:26" (1/1) ... [2022-02-20 14:16:26,661 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 14:16:26,672 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 14:16:26,784 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_2.c[331,344] [2022-02-20 14:16:26,819 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:16:26,828 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 14:16:26,840 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_2.c[331,344] [2022-02-20 14:16:26,846 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:16:26,854 INFO L208 MainTranslator]: Completed translation [2022-02-20 14:16:26,855 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:26 WrapperNode [2022-02-20 14:16:26,855 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 14:16:26,855 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 14:16:26,856 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 14:16:26,856 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 14:16:26,860 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:26" (1/1) ... [2022-02-20 14:16:26,864 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:26" (1/1) ... [2022-02-20 14:16:26,887 INFO L137 Inliner]: procedures = 15, calls = 16, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 68 [2022-02-20 14:16:26,887 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 14:16:26,888 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 14:16:26,888 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 14:16:26,888 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 14:16:26,894 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:26" (1/1) ... [2022-02-20 14:16:26,894 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:26" (1/1) ... [2022-02-20 14:16:26,896 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:26" (1/1) ... [2022-02-20 14:16:26,896 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:26" (1/1) ... [2022-02-20 14:16:26,901 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:26" (1/1) ... [2022-02-20 14:16:26,904 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:26" (1/1) ... [2022-02-20 14:16:26,905 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:26" (1/1) ... [2022-02-20 14:16:26,907 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 14:16:26,907 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 14:16:26,907 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 14:16:26,908 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 14:16:26,908 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:26" (1/1) ... [2022-02-20 14:16:26,928 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:16:26,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:26,950 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:26,969 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:26,987 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 14:16:26,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 14:16:26,988 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 14:16:26,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 14:16:26,988 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 14:16:26,988 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 14:16:26,988 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 14:16:26,989 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 14:16:27,035 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 14:16:27,037 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 14:16:27,263 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 14:16:27,274 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 14:16:27,274 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 14:16:27,275 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:16:27 BoogieIcfgContainer [2022-02-20 14:16:27,275 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 14:16:27,276 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 14:16:27,276 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 14:16:27,280 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 14:16:27,280 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 02:16:26" (1/3) ... [2022-02-20 14:16:27,281 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3021e9ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:16:27, skipping insertion in model container [2022-02-20 14:16:27,281 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:16:26" (2/3) ... [2022-02-20 14:16:27,281 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3021e9ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:16:27, skipping insertion in model container [2022-02-20 14:16:27,282 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:16:27" (3/3) ... [2022-02-20 14:16:27,283 INFO L111 eAbstractionObserver]: Analyzing ICFG partial_mod_count_limited_2.c [2022-02-20 14:16:27,286 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 14:16:27,286 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 14:16:27,321 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 14:16:27,326 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:27,326 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 14:16:27,339 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:27,343 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 14:16:27,343 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:27,343 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:27,344 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:27,347 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:27,348 INFO L85 PathProgramCache]: Analyzing trace with hash -1939796378, now seen corresponding path program 1 times [2022-02-20 14:16:27,354 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:27,355 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1481642531] [2022-02-20 14:16:27,355 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:27,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:27,425 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:27,425 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1196692947] [2022-02-20 14:16:27,426 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:27,426 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:27,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:27,444 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:27,446 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:27,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:27,504 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 14:16:27,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:27,514 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:27,567 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:27,568 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 := 2;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:27,568 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:27,569 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:27,569 INFO L290 TraceCheckUtils]: 4: Hoare triple {26#false} assume !true; {26#false} is VALID [2022-02-20 14:16:27,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {26#false} main_~i~0#1 := 0; {26#false} is VALID [2022-02-20 14:16:27,569 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:27,569 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:27,570 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:27,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {26#false} assume 0 == __VERIFIER_assert_~cond#1; {26#false} is VALID [2022-02-20 14:16:27,570 INFO L290 TraceCheckUtils]: 10: Hoare triple {26#false} assume !false; {26#false} is VALID [2022-02-20 14:16:27,571 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:27,571 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:27,571 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:27,571 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1481642531] [2022-02-20 14:16:27,572 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:27,572 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1196692947] [2022-02-20 14:16:27,572 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1196692947] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:27,572 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:27,573 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 14:16:27,574 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [590925000] [2022-02-20 14:16:27,575 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:27,578 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:27,579 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:27,581 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:27,591 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:27,592 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 14:16:27,592 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:27,606 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 14:16:27,607 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 14:16:27,609 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:27,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:27,639 INFO L93 Difference]: Finished difference Result 41 states and 56 transitions. [2022-02-20 14:16:27,639 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 14:16:27,640 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:27,640 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:27,641 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:27,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 56 transitions. [2022-02-20 14:16:27,644 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:27,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 56 transitions. [2022-02-20 14:16:27,649 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 56 transitions. [2022-02-20 14:16:27,726 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:27,732 INFO L225 Difference]: With dead ends: 41 [2022-02-20 14:16:27,732 INFO L226 Difference]: Without dead ends: 18 [2022-02-20 14:16:27,735 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:27,738 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:27,739 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:27,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2022-02-20 14:16:27,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-02-20 14:16:27,774 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:27,775 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:27,776 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:27,776 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:27,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:27,778 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:16:27,778 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:27,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:27,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:27,779 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:27,779 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:27,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:27,781 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:16:27,781 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:27,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:27,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:27,782 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:27,782 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:27,782 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:27,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 22 transitions. [2022-02-20 14:16:27,790 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 22 transitions. Word has length 11 [2022-02-20 14:16:27,790 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:27,791 INFO L470 AbstractCegarLoop]: Abstraction has 18 states and 22 transitions. [2022-02-20 14:16:27,791 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:27,791 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:16:27,792 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 14:16:27,792 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:27,792 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:16:27,817 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:28,008 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:28,008 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:28,009 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:28,009 INFO L85 PathProgramCache]: Analyzing trace with hash -54935082, now seen corresponding path program 1 times [2022-02-20 14:16:28,009 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:28,009 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1960405857] [2022-02-20 14:16:28,010 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:28,010 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:28,021 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:28,022 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [67659288] [2022-02-20 14:16:28,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:28,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:28,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:28,027 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:28,029 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:28,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:28,078 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 14:16:28,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:28,091 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:28,216 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:28,216 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 := 2;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:28,217 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:28,218 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:28,219 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:28,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {163#false} main_~i~0#1 := 0; {163#false} is VALID [2022-02-20 14:16:28,220 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:28,220 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:28,220 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:28,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {163#false} assume 0 == __VERIFIER_assert_~cond#1; {163#false} is VALID [2022-02-20 14:16:28,220 INFO L290 TraceCheckUtils]: 10: Hoare triple {163#false} assume !false; {163#false} is VALID [2022-02-20 14:16:28,220 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:28,221 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:28,221 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:28,221 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1960405857] [2022-02-20 14:16:28,221 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:28,221 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [67659288] [2022-02-20 14:16:28,222 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [67659288] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:28,223 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:28,223 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 14:16:28,223 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1475946426] [2022-02-20 14:16:28,224 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:28,225 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:28,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:28,225 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:28,235 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:28,235 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 14:16:28,235 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:28,236 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 14:16:28,236 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 14:16:28,236 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:28,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:28,307 INFO L93 Difference]: Finished difference Result 45 states and 57 transitions. [2022-02-20 14:16:28,307 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 14:16:28,307 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:28,308 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:28,308 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:28,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 14:16:28,309 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:28,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 14:16:28,310 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 57 transitions. [2022-02-20 14:16:28,353 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:28,355 INFO L225 Difference]: With dead ends: 45 [2022-02-20 14:16:28,355 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 14:16:28,355 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:28,356 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:28,357 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:28,357 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 14:16:28,361 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 20. [2022-02-20 14:16:28,362 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:28,362 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:28,362 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:28,363 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:28,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:28,364 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2022-02-20 14:16:28,364 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 37 transitions. [2022-02-20 14:16:28,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:28,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:28,365 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:28,365 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:28,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:28,366 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2022-02-20 14:16:28,367 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 37 transitions. [2022-02-20 14:16:28,367 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:28,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:28,367 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:28,367 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:28,367 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:28,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 24 transitions. [2022-02-20 14:16:28,368 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 24 transitions. Word has length 11 [2022-02-20 14:16:28,368 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:28,369 INFO L470 AbstractCegarLoop]: Abstraction has 20 states and 24 transitions. [2022-02-20 14:16:28,369 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:28,369 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 24 transitions. [2022-02-20 14:16:28,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 14:16:28,369 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:28,370 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:28,390 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:28,587 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:28,587 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:28,588 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:28,588 INFO L85 PathProgramCache]: Analyzing trace with hash 1485448361, now seen corresponding path program 1 times [2022-02-20 14:16:28,588 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:28,588 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477014056] [2022-02-20 14:16:28,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:28,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:28,627 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:28,628 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [9210802] [2022-02-20 14:16:28,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:28,628 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:28,628 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:28,629 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:28,631 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:28,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:28,693 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 14:16:28,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:28,703 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:28,847 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:28,848 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 := 2;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:28,848 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:28,849 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:28,850 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:28,850 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:28,851 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:28,856 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:28,857 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:28,860 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:28,860 INFO L290 TraceCheckUtils]: 10: Hoare triple {335#false} main_~i~0#1 := 0; {335#false} is VALID [2022-02-20 14:16:28,860 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:28,861 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:28,861 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:28,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {335#false} assume 0 == __VERIFIER_assert_~cond#1; {335#false} is VALID [2022-02-20 14:16:28,861 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#false} assume !false; {335#false} is VALID [2022-02-20 14:16:28,861 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:28,862 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:28,965 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#false} assume !false; {335#false} is VALID [2022-02-20 14:16:28,965 INFO L290 TraceCheckUtils]: 14: Hoare triple {335#false} assume 0 == __VERIFIER_assert_~cond#1; {335#false} is VALID [2022-02-20 14:16:28,966 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:28,966 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:28,966 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:28,966 INFO L290 TraceCheckUtils]: 10: Hoare triple {335#false} main_~i~0#1 := 0; {335#false} is VALID [2022-02-20 14:16:28,966 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:28,967 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:28,967 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:28,968 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:28,968 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:28,969 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:28,969 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:28,973 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:28,973 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 := 2;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:28,975 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:28,976 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:28,976 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:28,977 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [477014056] [2022-02-20 14:16:28,977 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:28,977 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [9210802] [2022-02-20 14:16:28,977 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [9210802] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:28,977 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:28,977 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 7 [2022-02-20 14:16:28,978 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876612511] [2022-02-20 14:16:28,978 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:28,979 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:28,979 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:28,980 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:29,002 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:29,003 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 14:16:29,003 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:29,003 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 14:16:29,004 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2022-02-20 14:16:29,004 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:29,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:29,260 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2022-02-20 14:16:29,261 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 14:16:29,261 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:29,261 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:29,261 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:29,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 92 transitions. [2022-02-20 14:16:29,262 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:29,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 92 transitions. [2022-02-20 14:16:29,263 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 92 transitions. [2022-02-20 14:16:29,334 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:29,336 INFO L225 Difference]: With dead ends: 73 [2022-02-20 14:16:29,336 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 14:16:29,336 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:29,337 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 135 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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:29,337 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:29,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 14:16:29,346 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 34. [2022-02-20 14:16:29,347 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:29,347 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:29,347 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:29,348 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:29,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:29,349 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2022-02-20 14:16:29,349 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2022-02-20 14:16:29,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:29,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:29,350 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:29,350 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:29,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:29,352 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2022-02-20 14:16:29,352 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2022-02-20 14:16:29,352 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:29,352 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:29,352 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:29,352 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:29,353 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:29,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 42 transitions. [2022-02-20 14:16:29,353 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 42 transitions. Word has length 16 [2022-02-20 14:16:29,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:29,354 INFO L470 AbstractCegarLoop]: Abstraction has 34 states and 42 transitions. [2022-02-20 14:16:29,354 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:29,354 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 42 transitions. [2022-02-20 14:16:29,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 14:16:29,354 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:29,354 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:29,374 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:29,555 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:29,555 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:29,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:29,556 INFO L85 PathProgramCache]: Analyzing trace with hash -35725226, now seen corresponding path program 1 times [2022-02-20 14:16:29,556 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:29,556 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [395698275] [2022-02-20 14:16:29,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:29,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:29,574 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:29,575 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [861409656] [2022-02-20 14:16:29,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:29,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:29,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:29,576 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:29,577 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:29,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:29,628 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 14:16:29,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:29,636 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:29,942 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:29,942 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 := 2;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:29,944 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:29,945 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:29,945 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:29,946 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:29,946 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:29,946 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:29,947 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:29,950 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:29,950 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:29,951 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:29,951 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:29,953 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:29,953 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:29,954 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:29,955 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:29,955 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:29,958 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:29,958 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:29,959 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:29,959 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:29,960 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:29,960 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:29,961 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:29,961 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#false} main_~i~0#1 := 0; {682#false} is VALID [2022-02-20 14:16:29,961 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:29,961 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:29,961 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:29,961 INFO L290 TraceCheckUtils]: 29: Hoare triple {682#false} assume 0 == __VERIFIER_assert_~cond#1; {682#false} is VALID [2022-02-20 14:16:29,962 INFO L290 TraceCheckUtils]: 30: Hoare triple {682#false} assume !false; {682#false} is VALID [2022-02-20 14:16:29,962 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:29,962 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:30,131 INFO L290 TraceCheckUtils]: 30: Hoare triple {682#false} assume !false; {682#false} is VALID [2022-02-20 14:16:30,131 INFO L290 TraceCheckUtils]: 29: Hoare triple {682#false} assume 0 == __VERIFIER_assert_~cond#1; {682#false} is VALID [2022-02-20 14:16:30,132 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:30,132 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:30,132 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:30,132 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#false} main_~i~0#1 := 0; {682#false} is VALID [2022-02-20 14:16:30,133 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:30,134 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:30,134 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:30,139 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:30,140 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:30,140 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:30,141 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:30,141 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:30,141 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:30,142 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:30,142 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:30,143 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:30,143 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:30,143 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:30,143 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:30,146 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:30,147 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:30,147 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:30,147 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:30,148 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:30,148 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:30,148 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:30,149 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:30,149 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 := 2;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:30,151 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:30,151 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:30,151 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:30,151 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [395698275] [2022-02-20 14:16:30,151 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:30,152 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [861409656] [2022-02-20 14:16:30,152 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [861409656] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:30,152 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:30,152 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2022-02-20 14:16:30,152 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [367336578] [2022-02-20 14:16:30,152 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:30,153 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:30,153 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:30,153 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:30,202 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:30,203 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 14:16:30,203 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:30,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 14:16:30,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=101, Unknown=0, NotChecked=0, Total=182 [2022-02-20 14:16:30,204 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:30,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:30,644 INFO L93 Difference]: Finished difference Result 155 states and 195 transitions. [2022-02-20 14:16:30,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 14:16:30,644 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:30,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:30,645 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:30,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 190 transitions. [2022-02-20 14:16:30,647 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:30,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 190 transitions. [2022-02-20 14:16:30,649 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 190 transitions. [2022-02-20 14:16:30,781 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:30,783 INFO L225 Difference]: With dead ends: 155 [2022-02-20 14:16:30,783 INFO L226 Difference]: Without dead ends: 137 [2022-02-20 14:16:30,784 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:30,785 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:30,785 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:30,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 137 states. [2022-02-20 14:16:30,803 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 137 to 64. [2022-02-20 14:16:30,803 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:30,804 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:30,804 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:30,804 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:30,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:30,807 INFO L93 Difference]: Finished difference Result 137 states and 163 transitions. [2022-02-20 14:16:30,807 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 163 transitions. [2022-02-20 14:16:30,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:30,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:30,808 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:30,808 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:30,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:30,811 INFO L93 Difference]: Finished difference Result 137 states and 163 transitions. [2022-02-20 14:16:30,812 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 163 transitions. [2022-02-20 14:16:30,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:30,812 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:30,812 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:30,812 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:30,813 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:30,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-02-20 14:16:30,814 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 31 [2022-02-20 14:16:30,814 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:30,814 INFO L470 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-02-20 14:16:30,815 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:30,815 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-02-20 14:16:30,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 14:16:30,816 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:30,816 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:30,834 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:31,033 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:31,034 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:31,034 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:31,034 INFO L85 PathProgramCache]: Analyzing trace with hash -1147663820, now seen corresponding path program 2 times [2022-02-20 14:16:31,034 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:31,034 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1302741498] [2022-02-20 14:16:31,034 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:31,034 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:31,068 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:31,068 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [31757163] [2022-02-20 14:16:31,069 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:16:31,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:31,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:31,070 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:31,071 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:31,157 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 14:16:31,157 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:16:31,158 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 14:16:31,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:31,173 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:31,743 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:31,744 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 := 2;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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == assume_abort_if_not_~cond#1); {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,747 INFO L290 TraceCheckUtils]: 3: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,760 INFO L290 TraceCheckUtils]: 4: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,761 INFO L290 TraceCheckUtils]: 6: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,762 INFO L290 TraceCheckUtils]: 7: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,763 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,764 INFO L290 TraceCheckUtils]: 10: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,765 INFO L290 TraceCheckUtils]: 14: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,766 INFO L290 TraceCheckUtils]: 15: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,768 INFO L290 TraceCheckUtils]: 19: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,770 INFO L290 TraceCheckUtils]: 23: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,770 INFO L290 TraceCheckUtils]: 24: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,771 INFO L290 TraceCheckUtils]: 25: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,771 INFO L290 TraceCheckUtils]: 26: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,772 INFO L290 TraceCheckUtils]: 27: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,772 INFO L290 TraceCheckUtils]: 28: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,773 INFO L290 TraceCheckUtils]: 31: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,774 INFO L290 TraceCheckUtils]: 32: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,774 INFO L290 TraceCheckUtils]: 33: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,775 INFO L290 TraceCheckUtils]: 35: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,776 INFO L290 TraceCheckUtils]: 36: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,776 INFO L290 TraceCheckUtils]: 37: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,777 INFO L290 TraceCheckUtils]: 38: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,777 INFO L290 TraceCheckUtils]: 39: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,778 INFO L290 TraceCheckUtils]: 40: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,778 INFO L290 TraceCheckUtils]: 41: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,779 INFO L290 TraceCheckUtils]: 42: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,779 INFO L290 TraceCheckUtils]: 43: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,780 INFO L290 TraceCheckUtils]: 44: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,780 INFO L290 TraceCheckUtils]: 45: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,781 INFO L290 TraceCheckUtils]: 46: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,781 INFO L290 TraceCheckUtils]: 47: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,782 INFO L290 TraceCheckUtils]: 48: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,782 INFO L290 TraceCheckUtils]: 49: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,783 INFO L290 TraceCheckUtils]: 50: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,783 INFO L290 TraceCheckUtils]: 51: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,784 INFO L290 TraceCheckUtils]: 52: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,784 INFO L290 TraceCheckUtils]: 53: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,785 INFO L290 TraceCheckUtils]: 54: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 < ~N~0); {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,785 INFO L290 TraceCheckUtils]: 55: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} main_~i~0#1 := 0; {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,786 INFO L290 TraceCheckUtils]: 56: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,786 INFO L290 TraceCheckUtils]: 57: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == main_#t~mem9#1);havoc main_#t~mem9#1; {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:31,787 INFO L290 TraceCheckUtils]: 58: Hoare triple {1426#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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:31,787 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:31,787 INFO L290 TraceCheckUtils]: 60: Hoare triple {1418#false} assume !false; {1418#false} is VALID [2022-02-20 14:16:31,788 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:31,788 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:31,788 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:31,788 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1302741498] [2022-02-20 14:16:31,789 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:31,789 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [31757163] [2022-02-20 14:16:31,789 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [31757163] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:31,789 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:31,789 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 14:16:31,789 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054788250] [2022-02-20 14:16:31,789 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:31,790 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:31,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:31,790 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:31,807 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:31,808 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 14:16:31,808 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:31,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 14:16:31,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 14:16:31,808 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:31,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:31,937 INFO L93 Difference]: Finished difference Result 76 states and 95 transitions. [2022-02-20 14:16:31,937 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 14:16:31,937 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:31,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:31,937 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:31,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 14:16:31,938 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:31,939 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 14:16:31,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2022-02-20 14:16:31,975 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:31,977 INFO L225 Difference]: With dead ends: 76 [2022-02-20 14:16:31,977 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 14:16:31,977 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:31,978 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 32 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:31,978 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.0s Time] [2022-02-20 14:16:31,978 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 14:16:32,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 70. [2022-02-20 14:16:32,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:32,010 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:32,011 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:32,011 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:32,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:32,013 INFO L93 Difference]: Finished difference Result 74 states and 93 transitions. [2022-02-20 14:16:32,013 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 93 transitions. [2022-02-20 14:16:32,013 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:32,013 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:32,014 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:32,014 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:32,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:32,016 INFO L93 Difference]: Finished difference Result 74 states and 93 transitions. [2022-02-20 14:16:32,016 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 93 transitions. [2022-02-20 14:16:32,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:32,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:32,017 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:32,017 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:32,017 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:32,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 88 transitions. [2022-02-20 14:16:32,019 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 88 transitions. Word has length 61 [2022-02-20 14:16:32,019 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:32,019 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 88 transitions. [2022-02-20 14:16:32,019 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:32,020 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 88 transitions. [2022-02-20 14:16:32,020 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 14:16:32,020 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:32,021 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:32,048 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:32,231 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:32,232 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:32,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:32,232 INFO L85 PathProgramCache]: Analyzing trace with hash -1147723402, now seen corresponding path program 1 times [2022-02-20 14:16:32,232 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:32,232 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [15810800] [2022-02-20 14:16:32,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:32,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:32,264 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:32,265 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [519722031] [2022-02-20 14:16:32,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:32,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:32,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:32,266 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:32,267 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:32,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:32,343 INFO L263 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 14:16:32,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:32,357 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:33,036 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:33,037 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 := 2;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:33,037 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:33,038 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:33,038 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:33,039 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:33,039 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:33,040 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:33,040 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:33,041 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:33,041 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:33,042 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:33,042 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:33,043 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:33,043 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:33,044 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:33,045 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:33,045 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:33,046 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:33,046 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:33,047 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:33,047 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:33,048 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:33,048 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:33,049 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:33,049 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:33,050 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:33,050 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:33,054 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:33,055 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:33,056 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:33,056 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:33,057 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:33,057 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:33,058 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:33,058 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:33,059 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:33,059 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:33,060 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:33,061 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:33,061 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:33,062 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:33,062 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:33,063 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:33,063 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:33,064 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:33,065 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:33,065 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:33,066 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:33,066 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:33,067 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:33,067 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:33,068 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:33,069 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:33,069 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:33,069 INFO L290 TraceCheckUtils]: 55: Hoare triple {1930#false} main_~i~0#1 := 0; {1930#false} is VALID [2022-02-20 14:16:33,070 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:33,070 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:33,070 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:33,070 INFO L290 TraceCheckUtils]: 59: Hoare triple {1930#false} assume 0 == __VERIFIER_assert_~cond#1; {1930#false} is VALID [2022-02-20 14:16:33,070 INFO L290 TraceCheckUtils]: 60: Hoare triple {1930#false} assume !false; {1930#false} is VALID [2022-02-20 14:16:33,071 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:33,071 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:33,546 INFO L290 TraceCheckUtils]: 60: Hoare triple {1930#false} assume !false; {1930#false} is VALID [2022-02-20 14:16:33,546 INFO L290 TraceCheckUtils]: 59: Hoare triple {1930#false} assume 0 == __VERIFIER_assert_~cond#1; {1930#false} is VALID [2022-02-20 14:16:33,546 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:33,546 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:33,547 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:33,547 INFO L290 TraceCheckUtils]: 55: Hoare triple {1930#false} main_~i~0#1 := 0; {1930#false} is VALID [2022-02-20 14:16:33,552 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:33,553 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:33,554 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:33,555 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:33,557 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:33,557 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:33,558 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:33,558 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:33,558 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:33,559 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:33,560 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:33,563 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:33,564 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:33,565 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:33,565 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:33,565 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:33,566 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:33,566 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:33,566 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:33,567 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:33,567 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:33,567 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:33,568 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:33,568 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:33,568 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:33,568 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:33,569 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:33,569 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:33,569 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:33,570 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:33,570 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:33,570 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:33,571 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:33,571 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:33,572 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:33,572 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:33,573 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:33,574 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:33,575 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:33,575 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:33,576 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:33,577 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:33,578 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:33,578 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:33,578 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:33,578 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:33,579 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:33,586 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:33,587 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:33,587 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:33,587 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:33,588 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:33,588 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:33,588 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 := 2;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:33,589 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:33,589 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:33,589 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:33,589 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [15810800] [2022-02-20 14:16:33,590 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:33,590 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [519722031] [2022-02-20 14:16:33,590 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [519722031] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:33,590 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:33,590 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 25 [2022-02-20 14:16:33,590 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [638098445] [2022-02-20 14:16:33,590 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:33,590 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:33,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:33,591 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:33,681 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:33,681 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-20 14:16:33,681 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:33,681 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-20 14:16:33,682 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=303, Invalid=347, Unknown=0, NotChecked=0, Total=650 [2022-02-20 14:16:33,682 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:35,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:35,033 INFO L93 Difference]: Finished difference Result 463 states and 570 transitions. [2022-02-20 14:16:35,034 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-02-20 14:16:35,034 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:35,034 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:35,034 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:35,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 385 transitions. [2022-02-20 14:16:35,040 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:35,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 385 transitions. [2022-02-20 14:16:35,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 385 transitions. [2022-02-20 14:16:35,397 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:35,405 INFO L225 Difference]: With dead ends: 463 [2022-02-20 14:16:35,405 INFO L226 Difference]: Without dead ends: 424 [2022-02-20 14:16:35,406 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 253 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=589, Invalid=743, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 14:16:35,408 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 883 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 190 mSolverCounterSat, 110 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:35,408 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.2s Time] [2022-02-20 14:16:35,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 424 states. [2022-02-20 14:16:35,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 424 to 130. [2022-02-20 14:16:35,465 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:35,465 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:35,466 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:35,466 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:35,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:35,475 INFO L93 Difference]: Finished difference Result 424 states and 501 transitions. [2022-02-20 14:16:35,475 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 501 transitions. [2022-02-20 14:16:35,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:35,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:35,477 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:35,477 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:35,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:35,486 INFO L93 Difference]: Finished difference Result 424 states and 501 transitions. [2022-02-20 14:16:35,487 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 501 transitions. [2022-02-20 14:16:35,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:35,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:35,487 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:35,487 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:35,488 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:35,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 166 transitions. [2022-02-20 14:16:35,490 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 166 transitions. Word has length 61 [2022-02-20 14:16:35,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:35,490 INFO L470 AbstractCegarLoop]: Abstraction has 130 states and 166 transitions. [2022-02-20 14:16:35,491 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:35,491 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 166 transitions. [2022-02-20 14:16:35,492 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2022-02-20 14:16:35,492 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:35,492 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:35,514 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:35,707 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:35,708 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:35,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:35,708 INFO L85 PathProgramCache]: Analyzing trace with hash 4942966, now seen corresponding path program 2 times [2022-02-20 14:16:35,708 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:35,708 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [743031385] [2022-02-20 14:16:35,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:35,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:35,765 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:35,766 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [537662861] [2022-02-20 14:16:35,766 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:16:35,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:35,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:35,767 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:35,791 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:35,871 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 14:16:35,871 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:16:35,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 71 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 14:16:35,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:35,899 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:36,877 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:36,878 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 := 2;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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,879 INFO L290 TraceCheckUtils]: 2: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(0 == assume_abort_if_not_~cond#1); {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,879 INFO L290 TraceCheckUtils]: 3: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,880 INFO L290 TraceCheckUtils]: 4: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,880 INFO L290 TraceCheckUtils]: 5: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,880 INFO L290 TraceCheckUtils]: 6: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,881 INFO L290 TraceCheckUtils]: 7: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,882 INFO L290 TraceCheckUtils]: 8: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,883 INFO L290 TraceCheckUtils]: 10: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,883 INFO L290 TraceCheckUtils]: 11: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,885 INFO L290 TraceCheckUtils]: 14: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,885 INFO L290 TraceCheckUtils]: 15: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,885 INFO L290 TraceCheckUtils]: 16: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,886 INFO L290 TraceCheckUtils]: 17: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,886 INFO L290 TraceCheckUtils]: 18: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,886 INFO L290 TraceCheckUtils]: 19: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,889 INFO L290 TraceCheckUtils]: 25: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,889 INFO L290 TraceCheckUtils]: 26: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,890 INFO L290 TraceCheckUtils]: 27: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,890 INFO L290 TraceCheckUtils]: 28: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,890 INFO L290 TraceCheckUtils]: 29: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,891 INFO L290 TraceCheckUtils]: 30: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,891 INFO L290 TraceCheckUtils]: 31: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,891 INFO L290 TraceCheckUtils]: 32: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,892 INFO L290 TraceCheckUtils]: 33: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,892 INFO L290 TraceCheckUtils]: 34: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,893 INFO L290 TraceCheckUtils]: 36: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,894 INFO L290 TraceCheckUtils]: 37: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,894 INFO L290 TraceCheckUtils]: 38: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,894 INFO L290 TraceCheckUtils]: 39: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,895 INFO L290 TraceCheckUtils]: 40: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,895 INFO L290 TraceCheckUtils]: 41: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,896 INFO L290 TraceCheckUtils]: 42: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,896 INFO L290 TraceCheckUtils]: 43: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,896 INFO L290 TraceCheckUtils]: 44: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,897 INFO L290 TraceCheckUtils]: 45: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,897 INFO L290 TraceCheckUtils]: 46: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,898 INFO L290 TraceCheckUtils]: 47: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,898 INFO L290 TraceCheckUtils]: 48: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,899 INFO L290 TraceCheckUtils]: 49: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,899 INFO L290 TraceCheckUtils]: 50: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,899 INFO L290 TraceCheckUtils]: 51: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,900 INFO L290 TraceCheckUtils]: 52: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,900 INFO L290 TraceCheckUtils]: 53: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,902 INFO L290 TraceCheckUtils]: 54: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,903 INFO L290 TraceCheckUtils]: 55: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,904 INFO L290 TraceCheckUtils]: 56: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,904 INFO L290 TraceCheckUtils]: 57: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,906 INFO L290 TraceCheckUtils]: 58: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,907 INFO L290 TraceCheckUtils]: 59: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,907 INFO L290 TraceCheckUtils]: 60: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,908 INFO L290 TraceCheckUtils]: 61: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,908 INFO L290 TraceCheckUtils]: 62: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,909 INFO L290 TraceCheckUtils]: 63: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,909 INFO L290 TraceCheckUtils]: 64: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,910 INFO L290 TraceCheckUtils]: 65: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,910 INFO L290 TraceCheckUtils]: 66: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,911 INFO L290 TraceCheckUtils]: 67: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,911 INFO L290 TraceCheckUtils]: 68: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,911 INFO L290 TraceCheckUtils]: 69: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,912 INFO L290 TraceCheckUtils]: 70: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,912 INFO L290 TraceCheckUtils]: 71: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,913 INFO L290 TraceCheckUtils]: 72: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,914 INFO L290 TraceCheckUtils]: 73: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,915 INFO L290 TraceCheckUtils]: 74: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,919 INFO L290 TraceCheckUtils]: 75: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,920 INFO L290 TraceCheckUtils]: 76: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,922 INFO L290 TraceCheckUtils]: 77: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,923 INFO L290 TraceCheckUtils]: 78: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,923 INFO L290 TraceCheckUtils]: 79: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,924 INFO L290 TraceCheckUtils]: 80: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,924 INFO L290 TraceCheckUtils]: 81: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,925 INFO L290 TraceCheckUtils]: 82: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,925 INFO L290 TraceCheckUtils]: 83: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,926 INFO L290 TraceCheckUtils]: 84: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,926 INFO L290 TraceCheckUtils]: 85: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,927 INFO L290 TraceCheckUtils]: 86: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,927 INFO L290 TraceCheckUtils]: 87: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,927 INFO L290 TraceCheckUtils]: 88: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,928 INFO L290 TraceCheckUtils]: 89: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,928 INFO L290 TraceCheckUtils]: 90: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,929 INFO L290 TraceCheckUtils]: 91: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,929 INFO L290 TraceCheckUtils]: 92: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,929 INFO L290 TraceCheckUtils]: 93: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,930 INFO L290 TraceCheckUtils]: 94: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,930 INFO L290 TraceCheckUtils]: 95: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,931 INFO L290 TraceCheckUtils]: 96: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,931 INFO L290 TraceCheckUtils]: 97: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,931 INFO L290 TraceCheckUtils]: 98: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,932 INFO L290 TraceCheckUtils]: 99: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,932 INFO L290 TraceCheckUtils]: 100: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,933 INFO L290 TraceCheckUtils]: 101: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,933 INFO L290 TraceCheckUtils]: 102: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,933 INFO L290 TraceCheckUtils]: 103: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,934 INFO L290 TraceCheckUtils]: 104: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,934 INFO L290 TraceCheckUtils]: 105: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,935 INFO L290 TraceCheckUtils]: 106: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,935 INFO L290 TraceCheckUtils]: 107: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,935 INFO L290 TraceCheckUtils]: 108: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,936 INFO L290 TraceCheckUtils]: 109: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,936 INFO L290 TraceCheckUtils]: 110: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,937 INFO L290 TraceCheckUtils]: 111: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,937 INFO L290 TraceCheckUtils]: 112: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,937 INFO L290 TraceCheckUtils]: 113: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,938 INFO L290 TraceCheckUtils]: 114: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} assume !(main_~i~0#1 < ~N~0); {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,938 INFO L290 TraceCheckUtils]: 115: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} main_~i~0#1 := 0; {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,938 INFO L290 TraceCheckUtils]: 116: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |ULTIMATE.start_main_~j~0#1| 0))} is VALID [2022-02-20 14:16:36,939 INFO L290 TraceCheckUtils]: 117: Hoare triple {3889#(and (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|) (= |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) (= 2 |ULTIMATE.start_main_~R~0#1|))} is VALID [2022-02-20 14:16:36,939 INFO L290 TraceCheckUtils]: 118: Hoare triple {4238#(and (= (+ (- 1) |ULTIMATE.start_main_~j~0#1|) 0) (= ~N~0 1000) (= 2 |ULTIMATE.start_main_~R~0#1|))} 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:36,940 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:36,940 INFO L290 TraceCheckUtils]: 120: Hoare triple {3881#false} assume !false; {3881#false} is VALID [2022-02-20 14:16:36,940 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:36,941 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:16:36,941 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:36,941 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [743031385] [2022-02-20 14:16:36,941 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:36,941 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [537662861] [2022-02-20 14:16:36,941 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [537662861] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:16:36,941 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:16:36,941 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 14:16:36,942 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [305392698] [2022-02-20 14:16:36,942 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:16:36,942 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:36,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:36,942 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:36,964 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:36,964 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 14:16:36,964 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:36,964 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 14:16:36,964 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 14:16:36,965 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:37,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,189 INFO L93 Difference]: Finished difference Result 143 states and 181 transitions. [2022-02-20 14:16:37,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 14:16:37,189 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:37,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:37,191 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:37,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 14:16:37,193 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:37,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-02-20 14:16:37,193 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 44 transitions. [2022-02-20 14:16:37,234 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:37,235 INFO L225 Difference]: With dead ends: 143 [2022-02-20 14:16:37,235 INFO L226 Difference]: Without dead ends: 141 [2022-02-20 14:16:37,236 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:37,236 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:37,236 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:37,237 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states. [2022-02-20 14:16:37,297 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 136. [2022-02-20 14:16:37,297 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:37,297 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:37,298 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:37,298 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:37,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,300 INFO L93 Difference]: Finished difference Result 141 states and 179 transitions. [2022-02-20 14:16:37,300 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 179 transitions. [2022-02-20 14:16:37,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:37,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:37,301 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:37,301 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:37,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:37,303 INFO L93 Difference]: Finished difference Result 141 states and 179 transitions. [2022-02-20 14:16:37,303 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 179 transitions. [2022-02-20 14:16:37,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:37,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:37,304 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:37,304 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:37,304 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:37,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 173 transitions. [2022-02-20 14:16:37,306 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 173 transitions. Word has length 121 [2022-02-20 14:16:37,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:37,307 INFO L470 AbstractCegarLoop]: Abstraction has 136 states and 173 transitions. [2022-02-20 14:16:37,307 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:37,307 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 173 transitions. [2022-02-20 14:16:37,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-02-20 14:16:37,308 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:37,308 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:37,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:37,526 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:37,526 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:37,527 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:37,527 INFO L85 PathProgramCache]: Analyzing trace with hash 1531894057, now seen corresponding path program 1 times [2022-02-20 14:16:37,527 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:37,527 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974509511] [2022-02-20 14:16:37,527 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:37,527 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:37,567 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:37,568 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1024264184] [2022-02-20 14:16:37,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:37,568 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:37,568 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:37,569 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:37,570 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:37,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:37,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 449 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 14:16:37,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:37,747 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:38,971 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:38,972 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 := 2;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:38,972 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:38,972 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:38,973 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:38,973 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:38,973 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:38,974 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:38,974 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:38,975 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:38,975 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:38,976 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:38,976 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:38,976 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:38,977 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:38,977 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:38,978 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:38,978 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:38,978 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:38,979 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:38,979 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:38,980 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:38,980 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:38,980 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:38,981 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:38,981 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:38,982 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:38,982 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:38,982 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:38,983 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:38,983 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:38,984 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:38,984 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:38,984 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:38,985 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:38,985 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:38,986 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:38,986 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:38,986 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:38,987 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:38,987 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:38,987 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:38,988 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:38,988 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:38,989 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:38,989 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:38,989 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:38,990 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:38,990 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:38,991 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:38,991 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:38,991 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:38,992 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:38,992 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:38,993 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:38,993 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:38,993 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:38,994 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:38,994 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:38,995 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:38,995 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:38,996 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:38,996 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:38,996 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:38,997 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:38,997 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:38,998 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:38,998 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:38,998 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:38,999 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:38,999 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:39,000 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:39,000 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:39,001 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:39,001 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:39,002 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:39,002 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:39,002 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:39,003 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:39,003 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:39,004 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:39,004 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:39,004 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:39,005 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:39,005 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:39,006 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:39,006 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:39,006 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:39,007 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:39,007 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:39,008 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:39,008 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:39,008 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:39,009 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:39,009 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:39,010 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:39,010 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:39,010 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:39,011 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:39,011 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:39,012 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:39,012 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:39,013 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:39,013 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:39,013 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:39,014 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:39,014 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:39,015 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:39,015 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:39,016 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:39,016 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:39,016 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:39,017 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:39,017 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:39,018 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:39,018 INFO L290 TraceCheckUtils]: 115: Hoare triple {4869#false} main_~i~0#1 := 0; {4869#false} is VALID [2022-02-20 14:16:39,018 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:39,018 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:39,018 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:39,018 INFO L290 TraceCheckUtils]: 119: Hoare triple {4869#false} assume !(0 == __VERIFIER_assert_~cond#1); {4869#false} is VALID [2022-02-20 14:16:39,018 INFO L290 TraceCheckUtils]: 120: Hoare triple {4869#false} assume { :end_inline___VERIFIER_assert } true; {4869#false} is VALID [2022-02-20 14:16:39,018 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:39,018 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:39,018 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:39,018 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:39,018 INFO L290 TraceCheckUtils]: 125: Hoare triple {4869#false} assume 0 == __VERIFIER_assert_~cond#1; {4869#false} is VALID [2022-02-20 14:16:39,018 INFO L290 TraceCheckUtils]: 126: Hoare triple {4869#false} assume !false; {4869#false} is VALID [2022-02-20 14:16:39,019 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:39,019 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:40,231 INFO L290 TraceCheckUtils]: 126: Hoare triple {4869#false} assume !false; {4869#false} is VALID [2022-02-20 14:16:40,231 INFO L290 TraceCheckUtils]: 125: Hoare triple {4869#false} assume 0 == __VERIFIER_assert_~cond#1; {4869#false} is VALID [2022-02-20 14:16:40,232 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:40,232 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:40,232 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:40,232 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:40,232 INFO L290 TraceCheckUtils]: 120: Hoare triple {4869#false} assume { :end_inline___VERIFIER_assert } true; {4869#false} is VALID [2022-02-20 14:16:40,232 INFO L290 TraceCheckUtils]: 119: Hoare triple {4869#false} assume !(0 == __VERIFIER_assert_~cond#1); {4869#false} is VALID [2022-02-20 14:16:40,232 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:40,232 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:40,232 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:40,232 INFO L290 TraceCheckUtils]: 115: Hoare triple {4869#false} main_~i~0#1 := 0; {4869#false} is VALID [2022-02-20 14:16:40,232 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:40,233 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:40,234 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:40,234 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:40,234 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:40,234 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:40,235 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:40,235 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:40,235 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:40,236 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:40,236 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:40,237 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:40,237 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:40,237 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:40,237 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:40,238 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:40,238 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:40,238 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:40,239 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:40,239 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:40,239 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:40,240 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:40,240 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:40,240 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:40,241 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:40,241 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:40,242 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:40,242 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:40,242 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:40,242 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:40,243 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:40,243 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:40,243 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:40,244 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:40,244 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:40,244 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:40,245 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:40,245 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:40,245 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:40,246 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:40,246 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:40,247 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:40,247 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:40,247 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:40,248 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:40,248 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:40,248 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:40,249 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:40,249 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:40,249 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:40,249 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:40,250 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:40,250 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:40,250 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:40,251 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:40,251 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:40,251 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:40,252 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:40,252 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:40,252 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:40,253 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:40,253 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:40,254 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:40,254 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:40,254 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:40,254 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:40,255 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:40,255 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:40,255 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:40,256 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:40,256 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:40,257 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:40,257 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:40,257 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:40,258 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:40,258 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:40,259 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:40,259 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:40,259 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:40,259 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:40,260 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:40,260 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:40,260 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:40,267 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:40,268 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:40,268 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:40,269 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:40,269 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:40,269 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:40,270 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:40,270 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:40,270 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:40,271 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:40,271 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:40,271 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:40,271 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:40,272 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:40,272 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:40,273 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:40,273 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:40,273 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:40,274 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:40,274 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:40,275 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:40,275 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:40,275 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:40,276 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:40,287 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:40,288 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:40,288 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:40,288 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:40,289 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:40,289 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:40,289 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 := 2;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:40,290 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:40,291 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:40,291 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:40,291 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [974509511] [2022-02-20 14:16:40,291 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:40,291 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1024264184] [2022-02-20 14:16:40,291 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1024264184] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:40,291 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:40,291 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 25] total 49 [2022-02-20 14:16:40,292 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1903979927] [2022-02-20 14:16:40,292 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:40,292 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:40,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:40,293 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:40,506 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:40,506 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 50 states [2022-02-20 14:16:40,506 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:40,507 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 50 interpolants. [2022-02-20 14:16:40,507 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1179, Invalid=1271, Unknown=0, NotChecked=0, Total=2450 [2022-02-20 14:16:40,508 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:16:45,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:45,814 INFO L93 Difference]: Finished difference Result 1222 states and 1488 transitions. [2022-02-20 14:16:45,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2022-02-20 14:16:45,815 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:45,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:16:45,816 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:16:45,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 773 transitions. [2022-02-20 14:16:45,833 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:16:45,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 773 transitions. [2022-02-20 14:16:45,837 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 49 states and 773 transitions. [2022-02-20 14:16:46,640 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:16:46,681 INFO L225 Difference]: With dead ends: 1222 [2022-02-20 14:16:46,681 INFO L226 Difference]: Without dead ends: 1147 [2022-02-20 14:16:46,683 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 275 GetRequests, 204 SyntacticMatches, 0 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1081 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=2329, Invalid=2927, Unknown=0, NotChecked=0, Total=5256 [2022-02-20 14:16:46,684 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 2497 mSDsluCounter, 364 mSDsCounter, 0 mSdLazyCounter, 364 mSolverCounterSat, 344 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s 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, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 14:16:46,684 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2497 Valid, 376 Invalid, 708 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [344 Valid, 364 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 14:16:46,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1147 states. [2022-02-20 14:16:46,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1147 to 256. [2022-02-20 14:16:46,811 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:16:46,811 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:16:46,812 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:16:46,812 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:16:46,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:46,863 INFO L93 Difference]: Finished difference Result 1147 states and 1352 transitions. [2022-02-20 14:16:46,863 INFO L276 IsEmpty]: Start isEmpty. Operand 1147 states and 1352 transitions. [2022-02-20 14:16:46,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:46,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:46,867 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:16:46,867 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:16:46,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:16:46,916 INFO L93 Difference]: Finished difference Result 1147 states and 1352 transitions. [2022-02-20 14:16:46,916 INFO L276 IsEmpty]: Start isEmpty. Operand 1147 states and 1352 transitions. [2022-02-20 14:16:46,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:16:46,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:16:46,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:16:46,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:16:46,919 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:16:46,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 256 states to 256 states and 329 transitions. [2022-02-20 14:16:46,924 INFO L78 Accepts]: Start accepts. Automaton has 256 states and 329 transitions. Word has length 127 [2022-02-20 14:16:46,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:16:46,924 INFO L470 AbstractCegarLoop]: Abstraction has 256 states and 329 transitions. [2022-02-20 14:16:46,925 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:16:46,925 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 329 transitions. [2022-02-20 14:16:46,927 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 248 [2022-02-20 14:16:46,927 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:16:46,927 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:16:46,961 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-20 14:16:47,144 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:16:47,144 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:16:47,145 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:16:47,145 INFO L85 PathProgramCache]: Analyzing trace with hash -456351959, now seen corresponding path program 2 times [2022-02-20 14:16:47,145 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:16:47,145 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245737360] [2022-02-20 14:16:47,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:16:47,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:16:47,230 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:16:47,231 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [795743518] [2022-02-20 14:16:47,231 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:16:47,231 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:16:47,231 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:16:47,233 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:16:47,234 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:16:47,510 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 14:16:47,511 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:16:47,518 INFO L263 TraceCheckSpWp]: Trace formula consists of 845 conjuncts, 49 conjunts are in the unsatisfiable core [2022-02-20 14:16:47,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:16:47,569 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:16:50,495 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:16:50,495 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 := 2;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:16:50,496 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:16:50,496 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:16:50,496 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:16:50,497 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:16:50,497 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:16:50,498 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:16:50,499 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:16:50,500 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:16:50,501 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:16:50,501 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:16:50,501 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:16:50,503 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:16:50,503 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:16:50,504 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:16:50,504 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:16:50,504 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:16:50,505 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:16:50,506 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:16:50,506 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:16:50,507 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:16:50,507 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:16:50,508 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:16:50,509 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:16:50,509 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:16:50,509 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:16:50,510 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:16:50,511 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:16:50,511 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:16:50,512 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:16:50,512 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:16:50,512 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:16:50,513 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:16:50,514 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:16:50,514 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:16:50,515 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:16:50,515 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:16:50,516 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:16:50,517 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:16:50,517 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:16:50,518 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:16:50,518 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:16:50,519 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:16:50,520 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:16:50,520 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:16:50,520 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:16:50,521 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:16:50,522 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:16:50,522 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:16:50,523 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:16:50,523 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:16:50,524 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:16:50,525 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:16:50,525 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:16:50,526 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:16:50,526 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:16:50,531 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:16:50,533 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:16:50,534 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:16:50,534 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:16:50,535 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:16:50,535 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:16:50,536 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:16:50,537 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:16:50,537 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:16:50,537 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:16:50,538 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:16:50,539 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:16:50,539 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:16:50,540 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:16:50,540 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:16:50,541 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:16:50,541 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:16:50,543 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:16:50,543 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:16:50,543 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:16:50,544 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:16:50,545 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:16:50,546 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:16:50,546 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:16:50,546 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:16:50,547 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:16:50,548 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:16:50,549 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:16:50,549 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:16:50,549 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:16:50,550 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:16:50,551 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:16:50,552 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:16:50,552 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:16:50,553 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:16:50,553 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:16:50,554 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:16:50,555 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:16:50,555 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:16:50,555 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:16:50,556 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:16:50,557 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:16:50,557 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:16:50,558 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:16:50,558 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:16:50,558 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:16:50,559 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:16:50,560 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:16:50,560 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:16:50,561 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:16:50,561 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:16:50,562 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:16:50,562 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:16:50,563 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:16:50,563 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:16:50,563 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:16:50,564 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:16:50,579 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:16:50,583 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:16:50,584 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:16:50,585 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:16:50,586 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:16:50,587 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:16:50,588 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:16:50,588 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:16:50,588 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:16:50,590 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:16:50,590 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:16:50,591 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:16:50,591 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:16:50,592 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:16:50,593 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:16:50,594 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:16:50,594 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:16:50,595 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:16:50,595 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:16:50,596 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:16:50,597 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:16:50,597 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:16:50,598 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:16:50,598 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:16:50,599 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:16:50,600 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:16:50,600 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:16:50,601 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:16:50,601 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:16:50,603 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:16:50,603 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:16:50,604 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:16:50,604 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:16:50,605 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:16:50,606 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:16:50,607 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:16:50,607 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:16:50,608 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:16:50,608 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:16:50,616 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:16:50,617 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:16:50,617 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:16:50,618 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:16:50,618 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:16:50,620 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:16:50,621 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:16:50,621 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:16:50,621 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:16:50,622 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:16:50,623 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:16:50,624 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:16:50,624 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:16:50,624 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:16:50,625 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:16:50,626 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:16:50,627 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:16:50,627 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:16:50,628 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:16:50,628 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:16:50,630 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:16:50,630 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:16:50,631 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:16:50,631 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:16:50,631 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:16:50,633 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:16:50,633 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:16:50,634 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:16:50,634 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:16:50,634 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:16:50,635 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:16:50,636 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:16:50,636 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:16:50,637 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:16:50,637 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:16:50,638 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:16:50,638 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:16:50,639 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:16:50,639 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:16:50,640 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:16:50,641 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:16:50,642 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:16:50,642 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:16:50,643 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:16:50,643 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:16:50,645 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:16:50,645 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:16:50,646 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:16:50,646 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:16:50,647 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:16:50,648 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:16:50,649 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:16:50,649 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:16:50,650 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:16:50,650 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:16:50,651 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:16:50,652 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:16:50,652 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:16:50,653 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:16:50,653 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:16:50,654 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:16:50,655 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:16:50,656 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:16:50,656 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:16:50,656 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:16:50,658 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:16:50,659 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:16:50,659 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:16:50,660 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:16:50,660 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:16:50,662 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:16:50,663 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:16:50,663 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:16:50,663 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:16:50,664 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:16:50,666 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:16:50,666 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:16:50,667 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:16:50,667 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:16:50,668 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:16:50,669 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:16:50,670 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:16:50,670 INFO L290 TraceCheckUtils]: 235: Hoare triple {9744#false} main_~i~0#1 := 0; {9744#false} is VALID [2022-02-20 14:16:50,670 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:16:50,670 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:16:50,670 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:16:50,670 INFO L290 TraceCheckUtils]: 239: Hoare triple {9744#false} assume !(0 == __VERIFIER_assert_~cond#1); {9744#false} is VALID [2022-02-20 14:16:50,670 INFO L290 TraceCheckUtils]: 240: Hoare triple {9744#false} assume { :end_inline___VERIFIER_assert } true; {9744#false} is VALID [2022-02-20 14:16:50,671 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:16:50,671 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:16:50,671 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:16:50,671 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:16:50,671 INFO L290 TraceCheckUtils]: 245: Hoare triple {9744#false} assume 0 == __VERIFIER_assert_~cond#1; {9744#false} is VALID [2022-02-20 14:16:50,671 INFO L290 TraceCheckUtils]: 246: Hoare triple {9744#false} assume !false; {9744#false} is VALID [2022-02-20 14:16:50,673 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:16:50,673 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:16:55,976 INFO L290 TraceCheckUtils]: 246: Hoare triple {9744#false} assume !false; {9744#false} is VALID [2022-02-20 14:16:55,976 INFO L290 TraceCheckUtils]: 245: Hoare triple {9744#false} assume 0 == __VERIFIER_assert_~cond#1; {9744#false} is VALID [2022-02-20 14:16:55,976 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:16:55,976 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:16:55,976 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:16:55,976 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:16:55,977 INFO L290 TraceCheckUtils]: 240: Hoare triple {9744#false} assume { :end_inline___VERIFIER_assert } true; {9744#false} is VALID [2022-02-20 14:16:55,977 INFO L290 TraceCheckUtils]: 239: Hoare triple {9744#false} assume !(0 == __VERIFIER_assert_~cond#1); {9744#false} is VALID [2022-02-20 14:16:55,977 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:16:55,977 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:16:55,977 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:16:55,977 INFO L290 TraceCheckUtils]: 235: Hoare triple {9744#false} main_~i~0#1 := 0; {9744#false} is VALID [2022-02-20 14:16:55,977 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:16:55,979 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:16:55,980 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:16:55,980 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:16:55,980 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:16:55,980 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:16:55,981 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:16:55,982 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:16:55,982 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:16:55,982 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:16:55,982 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:16:55,983 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:16:55,984 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:16:55,984 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:16:55,984 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:16:55,984 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:16:55,985 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:16:55,986 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:16:55,986 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:16:55,986 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:16:55,986 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:16:55,987 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:16:55,988 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:16:55,988 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:16:55,988 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:16:55,988 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:16:55,989 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:16:55,990 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:16:55,990 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:16:55,990 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:16:55,990 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:16:55,991 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:16:55,992 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:16:55,992 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:16:55,992 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:16:55,992 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:16:55,993 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:16:55,994 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:16:55,994 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:16:55,994 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:16:55,995 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:16:55,996 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:16:55,996 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:16:55,997 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:16:55,997 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:16:55,997 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:16:55,998 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:16:55,999 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:16:55,999 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:16:55,999 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:16:56,000 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:16:56,001 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:16:56,001 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:16:56,002 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:16:56,002 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:16:56,002 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:16:56,003 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:16:56,004 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:16:56,004 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:16:56,004 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:16:56,005 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:16:56,006 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:16:56,006 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:16:56,006 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:16:56,007 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:16:56,007 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:16:56,008 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:16:56,008 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:16:56,008 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:16:56,009 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:16:56,009 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:16:56,010 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:16:56,010 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:16:56,010 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:16:56,011 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:16:56,011 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:16:56,012 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:16:56,012 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:16:56,013 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:16:56,013 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:16:56,027 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:16:56,030 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:16:56,031 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:16:56,031 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:16:56,032 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:16:56,032 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:16:56,034 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:16:56,035 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:16:56,035 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:16:56,036 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:16:56,036 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:16:56,038 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:16:56,039 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:16:56,039 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:16:56,040 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:16:56,040 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:16:56,042 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:16:56,043 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:16:56,043 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:16:56,044 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:16:56,044 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:16:56,046 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:16:56,047 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:16:56,047 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:16:56,047 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:16:56,048 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:16:56,050 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:16:56,051 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:16:56,051 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:16:56,051 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:16:56,052 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:16:56,054 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:16:56,054 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:16:56,054 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:16:56,055 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:16:56,055 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:16:56,057 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:16:56,057 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:16:56,057 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:16:56,058 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:16:56,058 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:16:56,059 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:16:56,060 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:16:56,060 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:16:56,060 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:16:56,061 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:16:56,063 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:16:56,063 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:16:56,064 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:16:56,064 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:16:56,064 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:16:56,066 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:16:56,066 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:16:56,066 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:16:56,066 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:16:56,067 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:16:56,069 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:16:56,069 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:16:56,070 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:16:56,070 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:16:56,070 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:16:56,072 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:16:56,073 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:16:56,073 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:16:56,073 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:16:56,074 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:16:56,076 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:16:56,077 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:16:56,077 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:16:56,077 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:16:56,078 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:16:56,080 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:16:56,081 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:16:56,081 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:16:56,081 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:16:56,081 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:16:56,083 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:16:56,083 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:16:56,083 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:16:56,083 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:16:56,084 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:16:56,085 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:16:56,085 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:16:56,085 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:16:56,086 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:16:56,086 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:16:56,088 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:16:56,088 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:16:56,088 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:16:56,089 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:16:56,089 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:16:56,091 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:16:56,091 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:16:56,091 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:16:56,092 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:16:56,092 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:16:56,093 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:16:56,094 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:16:56,094 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:16:56,095 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:16:56,095 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:16:56,097 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:16:56,098 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:16:56,098 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:16:56,098 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:16:56,098 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:16:56,101 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:16:56,102 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:16:56,102 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:16:56,102 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:16:56,102 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:16:56,104 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:16:56,104 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:16:56,105 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:16:56,105 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:16:56,105 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:16:56,107 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:16:56,107 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:16:56,109 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:16:56,109 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:16:56,109 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:16:56,111 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:16:56,111 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:16:56,111 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:16:56,113 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:16:56,113 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:16:56,115 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:16:56,116 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:16:56,116 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:16:56,116 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:16:56,116 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:16:56,119 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:16:56,119 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:16:56,122 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:16:56,122 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:16:56,122 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:16:56,125 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:16:56,126 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:16:56,126 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:16:56,126 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:16:56,127 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:16:56,129 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:16:56,130 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:16:56,130 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:16:56,131 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:16:56,131 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:16:56,134 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:16:56,134 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:16:56,134 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:16:56,135 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:16:56,135 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:16:56,135 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:16:56,136 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:16:56,136 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 := 2;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:16:56,137 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:16:56,139 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:16:56,139 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:16:56,139 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1245737360] [2022-02-20 14:16:56,140 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:16:56,140 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [795743518] [2022-02-20 14:16:56,140 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [795743518] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:16:56,140 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:16:56,140 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [49, 49] total 97 [2022-02-20 14:16:56,142 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1689032262] [2022-02-20 14:16:56,142 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:16:56,144 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:16:56,144 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:16:56,145 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:16:56,958 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:16:56,959 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 98 states [2022-02-20 14:16:56,959 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:16:56,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 98 interpolants. [2022-02-20 14:16:56,962 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=4659, Invalid=4847, Unknown=0, NotChecked=0, Total=9506 [2022-02-20 14:16:56,983 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:25,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:25,377 INFO L93 Difference]: Finished difference Result 2482 states and 3024 transitions. [2022-02-20 14:17:25,377 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 97 states. [2022-02-20 14:17:25,377 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:25,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:17:25,378 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:25,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 1553 transitions. [2022-02-20 14:17:25,390 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:25,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 1553 transitions. [2022-02-20 14:17:25,399 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 97 states and 1553 transitions. [2022-02-20 14:17:28,557 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:28,723 INFO L225 Difference]: With dead ends: 2482 [2022-02-20 14:17:28,723 INFO L226 Difference]: Without dead ends: 2347 [2022-02-20 14:17:28,729 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 539 GetRequests, 396 SyntacticMatches, 0 SemanticMatches, 143 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4465 ImplicationChecksByTransitivity, 10.6s TimeCoverageRelationStatistics Valid=9265, Invalid=11615, Unknown=0, NotChecked=0, Total=20880 [2022-02-20 14:17:28,731 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 5888 mSDsluCounter, 749 mSDsCounter, 0 mSdLazyCounter, 730 mSolverCounterSat, 756 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.7s 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, 2.7s IncrementalHoareTripleChecker+Time [2022-02-20 14:17:28,732 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5888 Valid, 761 Invalid, 1486 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [756 Valid, 730 Invalid, 0 Unknown, 0 Unchecked, 2.7s Time] [2022-02-20 14:17:28,734 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2347 states. [2022-02-20 14:17:29,031 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2347 to 496. [2022-02-20 14:17:29,031 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:17:29,032 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:29,033 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:29,033 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:29,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:29,209 INFO L93 Difference]: Finished difference Result 2347 states and 2768 transitions. [2022-02-20 14:17:29,209 INFO L276 IsEmpty]: Start isEmpty. Operand 2347 states and 2768 transitions. [2022-02-20 14:17:29,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:29,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:29,213 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:29,214 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:29,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:17:29,388 INFO L93 Difference]: Finished difference Result 2347 states and 2768 transitions. [2022-02-20 14:17:29,388 INFO L276 IsEmpty]: Start isEmpty. Operand 2347 states and 2768 transitions. [2022-02-20 14:17:29,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:17:29,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:17:29,407 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:17:29,407 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:17:29,408 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:29,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 496 states to 496 states and 641 transitions. [2022-02-20 14:17:29,419 INFO L78 Accepts]: Start accepts. Automaton has 496 states and 641 transitions. Word has length 247 [2022-02-20 14:17:29,419 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:17:29,419 INFO L470 AbstractCegarLoop]: Abstraction has 496 states and 641 transitions. [2022-02-20 14:17:29,420 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:29,420 INFO L276 IsEmpty]: Start isEmpty. Operand 496 states and 641 transitions. [2022-02-20 14:17:29,438 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 488 [2022-02-20 14:17:29,438 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:17:29,438 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:29,464 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:29,651 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:29,651 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:17:29,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:17:29,652 INFO L85 PathProgramCache]: Analyzing trace with hash 1703865129, now seen corresponding path program 3 times [2022-02-20 14:17:29,652 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:17:29,652 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1699674818] [2022-02-20 14:17:29,652 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:17:29,652 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:17:29,800 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:17:29,800 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2007023420] [2022-02-20 14:17:29,800 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 14:17:29,800 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:17:29,801 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:17:29,804 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:29,805 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:30,149 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-02-20 14:17:30,149 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:17:30,151 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 14:17:30,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:17:30,230 INFO L286 TraceCheckSpWp]: Computing forward predicates...